matlab 求矩阵中行非零向量平均值

如题所述

第1个回答  推荐于2016-09-08

是指对矩阵每行的非零元素求平均值吗?后面一种就是:

>> a=floor(rand(4,4)*3)

a =

     0     2     0     1
     2     1     0     2
     0     1     2     0
     2     0     1     1

>> mean(a,2)

ans =

    0.7500
    1.2500
    0.7500
    1.0000

>> sum(a,2)./sum(a~=0,2)

ans =

    1.5000
    1.6667
    1.5000
    1.3333

本回答被提问者采纳
第2个回答  2014-05-15
这里举个例子,

v=[1 2 3 0
2 3 5 0
2 0 4 5]
s=size(v)
average=zeros(s(1),1)
for i=1:s(1)
average(i)=sum(v(i,:))/s(2);
end
average
第3个回答  2014-05-15
A = randint(5,6,[0 7])
ct = sum(A~=0,2)
R = sum(A,2)./ct
相似回答