Credible intervals for estimated values


I work on a multinomial multilevel model of electoral preference with brm (I use the MRP method). With the model I generate a probability prediction on a database with 480 rows (let’s call it data_est).

In a first attempt, I made the prediction with the function

“predict(model, ndraws=2500,newdata=data_est,summary=T)”

and I obtain a table with the probabilities for each row of each category (P(Y=partyA) , P(Y=partyB),…). With them, I took the mean as a point estimator and the quantiles (.025 and .975) as the “credibility interval”, but they are very wide.

Seeing this post

I made a prediction now with the “fitted” function in the “data_est” database and the summary gives me the estimate (“Estimate.P(Y=partyA)”, “Estimate.P(Y=partyB)”, . …), the error (“Est.Error.P(Y=partyA)”, “Est.Error.P(Y=partyB)”, …) and the quantiles corresponding to each category (“Q2.5. P(Y=partyA)” and “Q97.5.P(Y=partyA)”, …) per row.

i get probabilities for every category (column) for each “individual” (row), estimates and quantiles, something like…

          Estimate.P(Y=pA)     Est.Error.P(Y=pA)      Q2.5.P(Y=pA)    Q97.5.P(Y=pA) ...
                   <dbl>                  <dbl>             <dbl>       <dbl>
 1                0.0742                 0.0337            0.0177       0.153
 2                0.0712                 0.0320            0.0161       0.149
 3                0.0632                 0.0284            0.0133       0.128
 4                0.120                  0.0504            0.0288       0.231
 5                0.0851                 0.0367            0.0196       0.170

I have a question, to obtain a “general” estimator, is it correct to only obtain the (weighted) average? Something like


or is there something else to do? And for the quantiles? (low_partyA=mean(“Q2.5.P(Y=partyA)”))?
or am i doing something wrong?

with “predict” function only obtain the estimated by row (not quantiles or “error”), and with this column i get mean and quantiles (in my first attempt like paul.buerkner said in the post above), i get someting like this:

party    low (.025)           mean         up(.975)   
A           .04                .08            .16
B            .26               .40            .58

but this values are to wide.

For “fitted” function, if i summarise Estimates.P(Y=pA) obtain a similar value like my mean above, but my question is if it´s ok make the same (mean value) for Q2.5.P(Y=pA) and Q97.5.P(Y=pA)? because if i do it i get this:

party    low (.025)          mean         up(.975)
A            .06               .08            .11
B            .34               .40            .46

and this is more closed.

Thank you all.

I prefer to summarize as the last step in order to carry uncertainty forward. If you summarize already summarized estimates you will likely get a false sense of reduced uncertainty in the estimates.

This is a nice post regarding the difference between fitted and predict

1 Like