How to calculate the mean value of the non vero value in a vector?

1 次查看(过去 30 天)
How to calculate the mean value of the non vero value in a vector?
For example there is a vector contains 3 values M = [0.7,0.3,0]
the mean value in this case should be 0.5

采纳的回答

Star Strider
Star Strider 2022-9-3
M = [0.7,0.3,0];
Mmean = mean(M(M~=0))
Mmean = 0.5000

更多回答(1 个)

James Tursa
James Tursa 2022-9-3
编辑:James Tursa 2022-9-3
Another way that doesn't require any data copying:
M = [0.7,0.3,0];
sum(M)/nnz(M)
ans = 0.5000
Be aware that if there are no non-zero elements, this will return NaN (same as Star's method).

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by