[已解决] 三维矩阵按照第三维统计等于某值的个数

[复制链接]
ml123 发表于 2020-12-31 10:10:30
有三个三维矩阵a,  b,  c;  
    idx_a    = ~isnan(a);
    idx_b    = ~isnan(b);
    idx_c    = ~isnan(c);


   idx = idx_a==1 & idx_b==1 & idx_c==1

   idx 为三维逻辑数组,我想按照第三维,统计得到等于1的个数,最后得到一个二维矩阵;   
怎么不用for循环,就能实现呢?

最佳答案


maple1314168 发表于 2020-12-31 16:32:33
这样?
ind=rand(2,3,4)>0.5;
sum(ind,3)

5 条回复


帕拉代斯 发表于 2020-12-31 10:18:44
  1. [idx_a(idx_c), idx_b(idx_c)]
复制代码

ml123 发表于 2020-12-31 10:33:45

您理解错了,我想得到idx的:第一行第一列对应的第三维有多少个1,第一行第二列对应的第三维有多少个1,以此类推!!!

帕拉代斯 发表于 2020-12-31 10:51:33
ml123 发表于 2020-12-31 10:33
您理解错了,我想得到idx的:第一行第一列对应的第三维有多少个1,第一行第二列对应的第三维有多少个1, ...

你把数据贴一部分上来啊

maple1314168 发表于 2020-12-31 16:32:33
这样?
ind=rand(2,3,4)>0.5;
sum(ind,3)
回复此楼

ml123 发表于 2021-1-14 10:18:00
maple1314168 发表于 2020-12-31 16:32
这样?
ind=rand(2,3,4)>0.5;
sum(ind,3)

多谢!牛逼!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

热门教程
站长推荐
快速回复 返回顶部 返回列表