24小时热门版块排行榜    

查看: 520  |  回复: 2

bian890

铜虫 (初入文坛)

[求助] matlab 不规则矩阵 求平均值

1.2183    1.747      1.8489      1.4564     0.73688     0.30712
0             1.5151    1.7323      1.5583    0.92972     0.47214
0             0              1.3433    1.3868       1.02        0.65397
0             0               0              0.7261    0.8505      0.73462
0             0               0              0.3687     0.48778   0.65311
0              0              0               0              0.3067     0.4287
0              0               0               0               0              0
请问怎么求非0处的平均值呢? 就相当于是不规则矩阵了
比如 第一行(1.2183+1.747+1.8489+1.4564+0.73688+0.30712)/6
第二行(1.5151+1.7323+1.5583+0.92972+0.47214)/5
可是 由于数据量很大 必须通过程序来实现 可是怎么实现呢  难啊
谢谢 急急急
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sudo

木虫 (正式写手)

【答案】应助回帖

★ ★ ★
余泽成(金币+3): 谢谢参与应助! 2011-06-30 17:57:55
bian890(金币+10): 谢谢 很好 不错 2011-07-01 16:31:23
matlab做这种事情很擅长呢

如果对矩阵每一行的非零值求均值(最后生成一个列向量):
CODE:
sum(a,2)./sum(a~=0,2)

如果对矩阵所有非零值求均值:
CODE:
mean(a(a~=0))

2楼2011-06-30 16:29:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
3楼2011-07-02 21:33:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 bian890 的主题更新
信息提示
请填处理意见