24小时热门版块排行榜    

查看: 2334  |  回复: 6
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

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
可是 由于数据量很大 必须通过程序来实现
谢谢 急急急

[ Last edited by bian890 on 2011-6-30 at 15:54 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

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

xiegangmai

版主 (职业作家)

我没头衔

优秀版主优秀版主优秀版主

【答案】应助回帖

引用回帖:
Originally posted by xiaoqing8569 at 2011-07-01 09:21:22:
非零元素个数如果为0咋办?
   在判断一下就完整了。

更简洁的写法:
CODE:
sum( aa, 2 ) ./ sum( aa ~= 0, 2 )

非零元素为0个,在MATLAB里也能处理的,0 / 0 = nan。
明德厚学、求是创新
5楼2011-07-01 09:23:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

xiaoqing8569

铁杆木虫 (著名写手)

奥林匹亚光学院院长

【答案】应助回帖

★ ★ ★
bian890(金币+5): 有点复杂 2011-07-01 16:40:04
sunyang1988(金币+3): 谢谢帮助 2011-07-01 18:05:04
mathematica代码
mma = {};
ma = {{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}};
ma // MatrixForm
cK = Dimensions[ma];
For[k = 1, k <= cK[[1]], k++,
For[i = 1; j = 0, i <= cK[[2]], i++, If[ma[[k, i]] != 0, j++]];
If[j == 0, mma = Append[mma, 0],
  mma = Append[mma, Evaluate[Plus @@ ma[[k]]/j]]]]
mma
2楼2011-06-30 21:30:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiegangmai

版主 (职业作家)

我没头衔

优秀版主优秀版主优秀版主

【答案】应助回帖

引用回帖:
Originally posted by bian890 at 2011-06-30 15:49:30:
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 ...

楼主看看这样行不?
CODE:
aa = [ 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 ];
A = sum( aa, 2 ); %  按行求和
[ m1, n1 ] = find( aa ~= 0 ); % 找出非零元素下标
[ m2, n2 ] = size( aa ); % 确定矩阵维度
a = zeros( m2, 1 );
for i = 1 : m2
    a( i ) = length( find( m == i ) ); % 找出每行非零元素个数
end
average_aa = A ./ a;  % 求每行非零元素的平均值

明德厚学、求是创新
3楼2011-07-01 09:05:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiaoqing8569

铁杆木虫 (著名写手)

奥林匹亚光学院院长

引用回帖:
Originally posted by xiegangmai at 2011-07-01 09:05:47:
楼主看看这样行不?

[code]aa = [ 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             ...

非零元素个数如果为0咋办?
   在判断一下就完整了。
4楼2011-07-01 09:21:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[公派出国] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +3 5lbyq5wrhb 2026-02-07 4/200 2026-02-08 08:47 by vs90ilomwc
[考博] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +3 5lbyq5wrhb 2026-02-07 4/200 2026-02-08 08:46 by vs90ilomwc
[考博] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +5 2h7du0nuhk 2026-02-07 6/300 2026-02-08 08:12 by vs90ilomwc
[硕博家园] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 6/300 2026-02-08 08:07 by vs90ilomwc
[考博] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 7/350 2026-02-08 08:06 by vs90ilomwc
[教师之家] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 7/350 2026-02-08 07:52 by vs90ilomwc
[找工作] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 7/350 2026-02-08 07:46 by vs90ilomwc
[公派出国] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 8/400 2026-02-08 07:32 by vs90ilomwc
[考博] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 8/400 2026-02-08 07:27 by vs90ilomwc
[教师之家] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 8/400 2026-02-08 07:26 by vs90ilomwc
[硕博家园] 售SCI一区文章,我:8 O5 51O 54,科目齐全 +4 2h7du0nuhk 2026-02-07 8/400 2026-02-08 07:07 by vs90ilomwc
[硕博家园] 博士延得我,科研能力直往上蹿 +8 偏振片 2026-02-02 8/400 2026-02-08 06:52 by liyeqik
[教师之家] 有院领导为了换新车,用横向课题经费买了俩车 +7 瞬息宇宙 2026-02-04 7/350 2026-02-07 21:47 by tfang
[有机交流] 酰胺脱乙酰基 10+5 chibby 2026-02-03 12/600 2026-02-07 19:29 by 江东闲人
[基金申请] 同年申请2项不同项目,第1个项目里不写第2个项目的信息,可以吗 +4 hitsdu 2026-02-06 4/200 2026-02-07 13:07 by jurkat.1640
[基金申请] 有时候真觉得大城市人没有县城人甚至个体户幸福 +9 苏东坡二世 2026-02-04 10/500 2026-02-07 12:37 by 小毛球
[考博] 天津大学招2026.09的博士生,欢迎大家推荐交流(博导是本人) +4 a793625982 2026-02-05 5/250 2026-02-07 10:57 by a793625982
[公派出国] CSC & MSCA 博洛尼亚大学能源材料课题组博士/博士后招生|MSCA经费充足、排名优 +4 雨念 2026-02-01 6/300 2026-02-06 23:32 by MelissaPon
[基金申请] 面上项目申报 +3 Tide man 2026-02-01 3/150 2026-02-05 22:56 by god_tian
[教师之家] 遇见不省心的家人很难过 +18 otani 2026-02-03 22/1100 2026-02-04 11:06 by tangmnt
信息提示
请填处理意见