averages of a matrix

3 次查看(过去 30 天)
Anthony Campuzano
Given variable A that contains a row vector of values, and variable w that contains a row vector of weights, compute the weighted average of A and store the result into variable W_A
Examples: Inputs A = [1 2 3], w = [4 6 1] Output W_A = (1*4 + 2*6 + 3*1)/3 = 6.3333
Inputs A = [5.4 3 2.1 7], w = [1 1 0.5 1]
Output W_A = (5.4*1 + 3*1 + 2.1*0.5 + 7*1)/4 = 4.1125
I don't think the question is asking about weighted avg properly, so you can ignore that. I am just trying to figure out the proper code that would be capable of solving the example problems above...
  1 个评论
Salaheddin Hosseinzadeh
Anthony
Be careful what you want. Star Strider mentioned a good point.

请先登录,再进行评论。

回答(2 个)

Star Strider
Star Strider 2015-6-8
The weighted mean is the sum of the product of the values times the weights divided by the sum of the weights:
WgtdMean = sum(A.*w)/sum(w);
See the Wikipedia article: Weighted arithmetic mean.

Salaheddin Hosseinzadeh
Hi Anthony,
This is very basic, please read more
output = mean(A.*B)
That's all

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by