You are now following this Submission
- You will see updates in your followed content feed
- You may receive emails, depending on your communication preferences
This function calculates the weighted arithmetic, harmonic, or geometric mean of a set of input value arrays and weight arrays.
There are really two modes of operation:
1) If there is only one input value array and weight array, the weighted mean is calculated across all elements in this array. The user can specify which dimension to calculate the weighted mean across, or even specify 'all' in which case the arrays are flattened and only a scalar value is returned.
2) If there are multiple input value arrays and weight arrays, the element-by-element weighted mean is output across the N input value and weight arrays.
Examples:
Mode 1:
>> scalarMean = weighted_mean('harmonic',[1 2 3],[0.2, 0.3, 0.2]); %the output is single scalar value
>> arrayMean = weighted_mean('arithmetic',[1 2 3],[0.2, 0.3, 0.2],1); %the output is a vector of size (3x1)
Mode 2:
>> arrayMean = weighted_mean('geometric',[1,2,3],[4,5,6],[0.2,0.3,0.2],[0.2,0.1,0.1]); %the output is a vector of size (1x3)
Cite As
Anthony Kendall (2026). Weighted Means (https://www.mathworks.com/matlabcentral/fileexchange/19254-weighted-means), MATLAB Central File Exchange. Retrieved .
General Information
- Version 1.0.0.0 (3.03 KB)
MATLAB Release Compatibility
- Compatible with any release
Platform Compatibility
- Windows
- macOS
- Linux
| Version | Published | Release Notes | Action |
|---|---|---|---|
| 1.0.0.0 |
