Let's assume we have two means with corresponding standard errors.

mean_1 = 3.75, se_1 = 0.64
mean_2 = 2.90, se_2 = 0.94

I would like to average the means and account for the standard error. I would like mean_1 to contribute more (since the standard error is lower) to the average than mean_2. A weighted mean if you will.

One way would be to specify weights as the relative magnitude of the standard error like so (I use R's function weighted.mean found in the base stats package):

> weighted.mean(c(3.75, 2.0), w = c((1 -0.64/(0.64+0.94)), (1- 0.94/(0.64+0.94))))
[1] 3.041139

Does that make sense? How would one go about this problem? I would be happy to hear your critiques and suggestions.

  • $\begingroup$ Use the Delta-method ? $\endgroup$ Jun 29, 2012 at 13:48

1 Answer 1


If you believe that these two means are both estimates of the same true value then inverse-variance weighting is the way to go. That's equivalent to fixed-effect meta-analysis.

If you believe that the means are estimating different true values, then things get more tricky. If there were more means, you could do random-effects meta-analysis. In principle that still works with only two means, but your estimate of the between-sample variance will be very imprecise. A fully Bayesian analysis would put an informative prior on the between-sample variance.

  • 2
    $\begingroup$ (+1) 1: there is no evidence of a significant difference in means, so your first suggestion looks applicable. 2: the reason for using inverse-variance weighting is that this is the minimum-variance unbiased estimate of the mean. $\endgroup$
    – whuber
    Jun 29, 2012 at 15:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.