Weighted arithmetic mean

The weighted arithmetic mean is similar to an ordinary arithmetic mean (the most common type of average), except that instead of each of the data points contributing equally to the final average, some data points contribute more than others. The notion of weighted mean plays a role in descriptive statistics and also occurs in a more general form in several other areas of mathematics.

If all the weights are equal, then the weighted mean is the same as the arithmetic mean. While weighted means generally behave in a similar fashion to arithmetic means, they do have a few counterintuitive properties, as captured for instance in Simpson's paradox.

Basic example
Given two school classes, one with 20 students, and one with 30 students, the grades in each class on a test were:


 * Morning class = 62, 67, 71, 74, 76, 77, 78, 79, 79, 80, 80, 81, 81, 82, 83, 84, 86, 89, 93, 98


 * Afternoon class = 81, 82, 83, 84, 85, 86, 87, 87, 88, 88, 89, 89, 89, 90, 90, 90, 90, 91, 91, 91, 92, 92, 93, 93, 94, 95, 96, 97, 98, 99

The straight average for the morning class is 80 and the straight average of the afternoon class is 90. The straight average of 80 and 90 is 85, the mean of the two class means. However, this does not account for the difference in number of students in each class (20 versus 30); hence the value of 85 does not reflect the average student grade (independent of class). The average student grade can be obtained by averaging all the grades, without regard to classes (add all the grades up and divide by the total number of students):



\bar{x} = \frac{4300}{50} = 86. $$

Or, this can be accomplished by weighting the class means by the number of students in each class (using a weighted mean of the class means):


 * $$\bar{x} = \frac{(20\times80) + (30\times90)}{20 + 30} = 86.$$

Thus, the weighted mean makes it possible to find the average student grade in the case where only the class means and the number of students in each class are available.

Convex combination example
Since only the relative weights are relevant, any weighted mean can be expressed using coefficients that sum to one. Such a linear combination is called a convex combination.

Using the previous example, we would get the following weights:



\frac{20}{20 + 30} = 0.4 $$



\frac{30}{20 + 30} = 0.6 $$

Then, apply the weights like this:

\bar{x} = (0.4\times80) + (0.6\times90) = 86. $$

Mathematical definition
Formally, the weighted mean of a non-empty finite multiset of data $$\{x_1, x_2, \dots, x_n\},$$ with corresponding non-negative weights $$\{w_1, w_2, \dots, w_n\}$$ is


 * $$\bar{x} = \frac{ \sum\limits_{i=1}^n w_i x_i}{\sum\limits_{i=1}^n w_i},

$$

which means:



\bar{x} = \frac{w_1 x_1 + w_2 x_2 + \cdots + w_n x_n}{w_1 + w_2 + \cdots + w_n}. $$

Therefore, data elements with a high weight contribute more to the weighted mean than do elements with a low weight. The weights cannot be negative. Some may be zero, but not all of them (since division by zero is not allowed).

The formulas are simplified when the weights are normalized such that they sum up to $$1$$, i.e.:
 * $$ \sum_{i=1}^n {w_i'} = 1$$.

For such normalized weights the weighted mean is then:
 * $$\bar {x} = \sum_{i=1}^n {w_i' x_i}$$.

Note that one can always normalize the weights by making the following transformation on the original weights:
 * $$w_i' = \frac{w_i}{\sum_{j=1}^n{w_j}}$$.

Using the normalized weight yields the same results as when using the original weights:
 * $$\begin{align}

\bar{x} &= \sum_{i=1}^n w'_i x_i= \sum_{i=1}^n \frac{w_i}{\sum_{j=1}^n w_j} x_i = \frac{ \sum_{i=1}^n w_i x_i}{\sum_{j=1}^n w_j} \\ & = \frac{ \sum_{i=1}^n w_i x_i}{\sum_{i=1}^n w_i}. \end{align} $$ The ordinary mean $$\frac {1}{n}\sum_{i=1}^n {x_i}$$ is a special case of the weighted mean where all data have equal weights, $$w_i=1$$.

The standard error of the weighted mean (unit input variances), $$\sigma_{\bar{x}}$$ can be shown via uncertainty propagation to be:

\sigma_{\bar{x}} = \left(\sqrt{\sum_{i=1}^n {w_i}} \right)^{-1} $$

Statistical properties
The weighted sample mean, $$\bar{x}$$, is itself a random variable. Its expected value and standard deviation are related to the expected values and standard deviations of the observations, as follows. For simplicity, we assume normalized weights (weights summing to one).

If the observations have expected values
 * $$E(x_i )={\mu_i},$$

then the weighted sample mean has expectation
 * $$E(\bar{x}) = \sum_{i=1}^n {w_i' \mu_i}. $$

In particular, if the means are equal, $$\mu_i=\mu$$, then the expectation of the weighted sample mean will be that value,
 * $$E(\bar{x})= \mu. $$

For uncorrelated observations with variances $$\sigma^2_i$$, the variance of the weighted sample mean is
 * $$ \sigma^2_{\bar x} = \sum_{i=1}^n {w_i'^2 \sigma^2_i}$$

whose square root $$\sigma_{\bar x}$$ can be called the standard error of the weighted mean (general case).

Consequently, if all the observations have equal variance, $$\sigma^2_i= \sigma^2_0$$, the weighted sample mean will have variance
 * $$ \sigma^2_{\bar x} = \sigma^2_0 \sum_{i=1}^n {w_i'^2},$$

where $$1/n \le \sum_{i=1}^n {w_i'^2} \le 1$$. The variance attains its maximum value, $$\sigma_0^2$$, when all weights except one are zero. Its minimum value is found when all weights are equal (i.e., unweighted mean), in which case we have $$ \sigma_{\bar x} = \sigma_0 / \sqrt {n} $$, i.e., it degenerates into the standard error of the mean, squared.

Note that because one can always transform non-normalized weights to normalized weights all formula in this section can be adapted to non-normalized weights by replacing all $$w_i' = \frac{w_i}{\sum_{i=1}^n{w_i}}$$.

Variance weights
For the weighted mean of a list of data for which each element $$x_i$$ potentially comes from a different probability distribution with known variance $$\sigma_i^2$$, one possible choice for the weights is given by the reciprocal of variance:



w_i = \frac{1}{\sigma_i^2}. $$

The weighted mean in this case is:



\bar{x} = \frac{ \sum_{i=1}^n \left( x_i \sigma_i^{-2} \right)}{\sum_{i=1}^n \sigma_i^{-2}}, $$

and the standard error of the weighted mean (with variance weights) is:



\sigma_{\bar{x}} = \sqrt{\frac{ 1 }{\sum_{i=1}^n \sigma_i^{-2}}}, $$

Note this reduces to $$ \sigma_{\bar{x}}^2 = \sigma_0^2/n$$ when all $$\sigma_i = \sigma_0$$. It is a special case of the general formula in previous section,
 * $$ \sigma^2_{\bar x} = \sum_{i=1}^n {w_i'^2 \sigma^2_i} = \frac{ \sum_{i=1}^n {\sigma_i^{-4} \sigma^2_i} }{\left(\sum_{i=1}^n \sigma_i^{-2}\right)^2}.$$

The equations above can be combined to obtain:

\bar{x} = \sigma_{\bar{x}}^2 \sum_{i=1}^n \frac{x_i}{\sigma_i^2}. $$

The significance of this choice is that this weighted mean is the maximum likelihood estimator of the mean of the probability distributions under the assumption that they are independent and normally distributed with the same mean.

Correcting for over- or under-dispersion
Weighted means are typically used to find the weighted mean of historical data, rather than theoretically generated data. In this case, there will be some error in the variance of each data point. Typically experimental errors may be underestimated due to the experimenter not taking into account all sources of error in calculating the variance of each data point. In this event, the variance in the weighted mean must be corrected to account for the fact that $$\chi^2$$ is too large. The correction that must be made is


 * $$\hat{\sigma}_{\bar{x}}^2 = \sigma_{\bar{x}}^2 \chi^2_\nu $$

where $$\chi^2_\nu$$ is the reduced chi-squared:


 * $$\chi^2_\nu = \frac{1}{(n-1)} \sum_{i=1}^n \frac{ (x_i - \bar{x} )^2}{ \sigma_i^2 };$$

The square root $$\hat{\sigma}_{\bar{x}}$$ can be called the standard error of the weighted mean (variance weights, scale corrected).

When all data variances are equal, $$\sigma_i = \sigma_0$$, they cancel out in the weighted mean variance, $$\sigma_{\bar{x}}^2$$, which again reduces to the standard error of the mean (squared), $$\sigma_{\bar{x}}^2 = \sigma^2/n$$, formulated in terms of the sample standard deviation (squared),
 * $$\sigma^2 = \frac {\sum_{i=1}^n (x_i - \bar{x} )^2} {n-1}. $$

Bootstrapping validation
It has been shown by bootstrapping methods that the following is an accurate estimation for the square of the standard error of the mean (general case):



\sigma_{\bar{x}}^2 = \frac{n}{(n-1)w_s^2} \left[\sum (w_i x_i - w_s \bar{x})^2 - 2 \bar{x} \sum (w_i - w_s)(w_i x_i - w_s\bar{x}) + \bar{x}^2 \sum (w_i - w_s)^2 \right] $$

where $$w_s = \sum w_i$$. Further simplification leads to



\sigma_{\bar{x}}^2 = \frac{n}{(n-1)w_s^2} \sum w_i^2(x_i - \bar{x})^2 $$

Weighted sample variance
Typically when a mean is calculated it is important to know the variance and standard deviation about that mean. When a weighted mean $$\mu^*$$ is used, the variance of the weighted sample is different from the variance of the unweighted sample.

The biased weighted sample variance $$\hat \sigma^2_\mathrm{w}$$ is defined similarly to the normal biased sample variance $$\hat \sigma^2$$:



\begin{align} \hat \sigma^2\ &= \frac{\sum_{i=1}^N \left(x_i - \mu\right)^2} N \\ \hat \sigma^2_\mathrm{w} &= \frac{\sum_{i=1}^N w_i \left(x_i - \mu^*\right)^2 }{V_1} \end{align} $$ where $$V_1 = \sum_{i=1}^N w_i$$, which is 1 for normalized weights. If the weights are frequency weights (and thus are random variables), it can be shown that $$\hat \sigma^2_\mathrm{w}$$ is the maximum likelihood estimator of $$\sigma^2$$ for iid Gaussian observations.

For small samples, it is customary to use an unbiased estimator for the population variance. In normal unweighted samples, the N in the denominator (corresponding to the sample size) is changed to N &minus; 1 (see Bessel's correction). In the weighted setting, there are actually two different unbiased estimators, one for the case of frequency weights and another for the case of reliability weights.

Frequency weights
If the weights are frequency weights, then the unbiased estimator is:



\begin{align} s^2\ &= \frac {\sum_{i=1}^N w_i \left(x_i - \mu^*\right)^2} {V_1 - 1} \end{align} $$

This effectively applies Bessel's correction for frequency weights.

For example, if values $$\{2, 2, 4, 5, 5, 5\}$$ are drawn from the same distribution, then we can treat this set as an unweighted sample, or we can treat it as the weighted sample $$\{2, 4, 5\}$$ with corresponding weights $$\{2, 1, 3\}$$, and we get the same result either way.

If the frequency weights $$\{w_i\}$$ are normalized to 1, then the correct expression after Bessel's correction becomes



\begin{align} s^2\ &= \frac {V_1} {V_1 - 1}\sum_{i=1}^N w_i \left(x_i - \mu^*\right)^2 \end{align} $$

where the total number of samples is $$V_1$$ (not $$N$$). In any case, the information on total number of samples is necessary in order to obtain an unbiased correction, even if $$w_i$$ has a different meaning other than frequency weight.

Note that the estimator can be unbiased only if the weights are not standardized nor normalized, these processes changing the data's mean and variance and thus leading to a loss of the base rate (the population count, which is a requirement for Bessel's correction).

Reliability weights
If the weights are instead non-random (reliability weights), we can determine a correction factor to yield an unbiased estimator. Assuming each random variable is sampled from the same distribution with mean $$\mu$$ and actual variance $$\sigma_{\text{actual}}^2$$, taking expectations we have,



\begin{align} \operatorname{E} [\hat \sigma^2] &= \frac{ \sum_{i=1}^N \operatorname{E} [(x_i - \mu)^2]} N \\ &= \operatorname{E} [(X - \operatorname{E}[X])^2] - \frac{1}{N} \operatorname{E} [(X - \operatorname{E}[X])^2] \\ &= \left( \frac{N - 1} N \right) \sigma_{\text{actual}}^2 \\ \operatorname{E} [\hat \sigma^2_\mathrm{w}] &= \frac{\sum_{i=1}^N w_i \operatorname{E} [(x_i - \mu^*)^2] }{V_1} \\ &= \operatorname{E}[(X - \operatorname{E}[X])^2] - \frac{V_2}{V_1^2} \operatorname{E}[(X - \operatorname{E}[X])^2] \\ &= \left(1 - \frac{V_2 }{ V_1^2}\right) \sigma_{\text{actual}}^2 \end{align} $$

where $$V_2 = \sum_{i=1}^N w_i^2$$. Therefore, the bias in our estimator is $$\left(1 - \frac{V_2 }{ V_1^2}\right) $$, analogous to the $$ \left( \frac{N - 1} {N} \right)$$ bias in the unweighted estimator. This means that to unbias our estimator we need to pre-divide by $$1 - \left(V_2 / V_1^2\right) $$, ensuring that the expected value of the estimated variance equals the actual variance of the sampling distribution.

The final unbiased estimate of sample variance is:

\begin{align} s^2\ &= \frac{\hat \sigma^2_\mathrm{w}} {1 - (V_2 / V_1^2)} \\ &= \frac {\sum_{i=1}^N w_i (x_i - \mu^*)^2} {V_1 - (V_2 / V_1)} \end{align} $$, where $$\operatorname{E}[s^2] = \sigma_{\text{actual}}^2$$.

The degrees of freedom of the weighted, unbiased sample variance vary accordingly from N &minus; 1 down to 0.

The standard deviation is simply the square root of the variance above.

As a side note, other approaches have been described to compute the weighted sample variance.

Weighted sample covariance
In a weighted sample, each row vector $$\textstyle \textbf{x}_{i}$$ (each set of single observations on each of the K random variables) is assigned a weight $$\textstyle w_i \geq0$$.

Then the weighted mean vector $$\textstyle \mathbf{\mu^*}$$ is given by


 * $$ \mathbf{\mu^*}=\frac{\sum_{i=1}^N w_i \mathbf{x}_i}{\sum_{i=1}^N w_i}.$$

And the weighted covariance matrix is given by:



\begin{align} \Sigma &= \frac {\sum_{i=1}^N w_i \left(\mathbf{x}_i - \mu^*\right)^T \left(\mathbf{x}_i - \mu^*\right)} {V_1}. \end{align} $$

Similarly to weighted sample variance, there are two different unbiased estimators depending on the type of the weights.

Frequency weights
If the weights are frequency weights, the unbiased weighted estimate of the covariance matrix $$\textstyle \mathbf{\Sigma}$$, with Bessel's correction, is given by:



\begin{align} \Sigma &= \frac {\sum_{i=1}^N w_i \left(\mathbf{x}_i - \mu^*\right)^T \left(\mathbf{x}_i - \mu^*\right)} {V_1 - 1}. \end{align} $$

Note that this estimator can be unbiased only if the weights are not standardized nor normalized, these processes changing the data's mean and variance and thus leading to a loss of the base rate (the population count, which is a requirement for Bessel's correction).

Reliability weights
In the case of reliability weights, the weights are normalized:


 * $$ V_1 = \sum_{i=1}^N w_i = 1. $$

(If they are not, divide the weights by their sum to normalize prior to calculating $$V_1$$:


 * $$ w_i' = \frac{w_i}{\sum_{i=1}^N w_i} $$

Then the weighted mean vector $$\textstyle \mathbf{\mu^*}$$ can be simplified to


 * $$ \mathbf{\mu^*}=\sum_{i=1}^N w_i \mathbf{x}_i.$$

and the unbiased weighted estimate of the covariance matrix $$\textstyle \mathbf{\Sigma}$$ is:



\begin{align} \Sigma &= \frac{\sum_{i=1}^N w_i}{\left(\sum_{i=1}^N w_i\right)^2-\sum_{i=1}^N w_i^2} \sum_{i=1}^N w_i \left(\mathbf{x}_i - \mu^*\right)^T \left(\mathbf{x}_i - \mu^*\right) \\ &= \frac {\sum_{i=1}^N w_i \left(\mathbf{x}_i - \mu^*\right)^T \left(\mathbf{x}_i - \mu^*\right)} {V_1 - (V_2 / V_1)}. \end{align} $$

The reasoning here is the same as in the previous section.

Since we are assuming the weights are normalized, then $$V_1 = 1$$ and this reduces to:


 * $$\Sigma=\frac{\sum_{i=1}^N w_i \left(\mathbf{x}_i - \mu^*\right)^T \left(\mathbf{x}_i - \mu^*\right)}{1-V_2}.$$

If all weights are the same, i.e. $$\textstyle w_{i} / V_1=1/N$$, then the weighted mean and covariance reduce to the unweighted sample mean and covariance above.

Vector-valued estimates
The above generalizes easily to the case of taking the mean of vector-valued estimates. For example, estimates of position on a plane may have less certainty in one direction than another. As in the scalar case, the weighted mean of multiple estimates can provide a maximum likelihood estimate. We simply replace the variance $$\sigma^2$$ by the covariance matrix $$\Sigma$$ and the arithmetic inverse by the matrix inverse (both denoted in the same way, via superscripts); the weight matrix then reads:



\text{W}_i = \Sigma_i^{-1}. $$

The weighted mean in this case is:



\bar{\mathbf{x}} = \Sigma_{\bar{\mathbf{x}}} \left(\sum_{i=1}^n \text{W}_i \mathbf{x}_i\right), $$

(where the order of the matrix-vector product is not commutative), in terms of the covariance of the weighted mean:



\Sigma_{\bar{\mathbf{x}}} = \left(\sum_{i=1}^n \text{W}_i\right)^{-1}, $$

For example, consider the weighted mean of the point [1 0] with high variance in the second component and [0 1] with high variance in the first component. Then


 * $$\mathbf{x}_1 := \begin{bmatrix}1 & 0\end{bmatrix}^\top, \qquad \Sigma_1 := \begin{bmatrix}1 & 0\\ 0 & 100\end{bmatrix}$$
 * $$\mathbf{x}_2 := \begin{bmatrix}0 & 1\end{bmatrix}^\top, \qquad \Sigma_2 := \begin{bmatrix}100 & 0\\ 0 & 1\end{bmatrix}$$

then the weighted mean is:



\begin{align} \bar{\mathbf{x}} & = \left(\Sigma_1^{-1} + \Sigma_2^{-1}\right)^{-1} \left(\Sigma_1^{-1} \mathbf{x}_1 + \Sigma_2^{-1} \mathbf{x}_2\right) \\[5pt] & =\begin{bmatrix} 0.9901 &0\\ 0& 0.9901\end{bmatrix}\begin{bmatrix}1\\1\end{bmatrix} = \begin{bmatrix}0.9901 \\ 0.9901\end{bmatrix} \end{align} $$

which makes sense: the [1 0] estimate is "compliant" in the second component and the [0 1] estimate is compliant in the first component, so the weighted mean is nearly [1 1].

Accounting for correlations
In the general case, suppose that $$\mathbf{X}=[x_1,\dots,x_n]^T$$, $$\mathbf{\Sigma}$$ is the covariance matrix relating the quantities $$x_i$$, $$\bar{x}$$ is the common mean to be estimated, and $$\mathbf{J}$$ is a design matrix equal to a vector of ones $$[1, ..., 1]^T$$ (of length $$n$$). The Gauss–Markov theorem states that the estimate of the mean having minimum variance is given by:


 * $$\sigma^2_\bar{x}=(\mathbf{J}^T \mathbf{W} \mathbf{J})^{-1},$$

and


 * $$\bar{x} = \sigma^2_\bar{x} (\mathbf{J}^T \mathbf{W} \mathbf{X}),$$

where:


 * $$\mathbf{W} = \mathbf{\Sigma}^{-1}.$$

Decreasing strength of interactions
Consider the time series of an independent variable $$x$$ and a dependent variable $$y$$, with $$n$$ observations sampled at discrete times $$t_i$$. In many common situations, the value of $$y$$ at time $$t_i$$ depends not only on $$x_i$$ but also on its past values. Commonly, the strength of this dependence decreases as the separation of observations in time increases. To model this situation, one may replace the independent variable by its sliding mean $$z$$ for a window size $$m$$.



z_k=\sum_{i=1}^m w_i x_{k+1-i}. $$

Exponentially decreasing weights
In the scenario described in the previous section, most frequently the decrease in interaction strength obeys a negative exponential law. If the observations are sampled at equidistant times, then exponential decrease is equivalent to decrease by a constant fraction $$0<\Delta<1$$ at each time step. Setting $$w=1-\Delta$$ we can define $$m$$ normalized weights by
 * $$w_i=\frac {w^{i-1}}{V_1},$$

where $$V_1$$ is the sum of the unnormalized weights. In this case $$V_1$$ is simply
 * $$V_1=\sum_{i=1}^m{w^{i-1}} = \frac {1-w^{m}}{1-w},$$

approaching $$V_1=1/(1-w)$$ for large values of $$m$$.

The damping constant $$w$$ must correspond to the actual decrease of interaction strength. If this cannot be determined from theoretical considerations, then the following properties of exponentially decreasing weights are useful in making a suitable choice: at step $$(1-w)^{-1}$$, the weight approximately equals $${e^{-1}}(1-w)=0.39(1-w)$$, the tail area the value $$e^{-1}$$, the head area $${1-e^{-1}}=0.61$$. The tail area at step $$n$$ is $$\le {e^{-n(1-w)}}$$. Where primarily the closest $$n$$ observations matter and the effect of the remaining observations can be ignored safely, then choose $$w$$ such that the tail area is sufficiently small.

Weighted averages of functions
The concept of weighted average can be extended to functions. Weighted averages of functions play an important role in the systems of weighted differential and integral calculus.