【发布时间】:2014-10-14 09:23:01
【问题描述】:
B = randn(1,25,10);
Z = [1;1;1;2;2;3;4;4;4;3];
好的,所以,我想找到 Z=1(或任何彼此相等的数字)的位置,然后在这些特定位置的 25 个点中的每一个上进行平均。在示例中,您将以 1*25*4 数组结尾。
有没有简单的方法来做到这一点?
我不是最精通 Matlab。
【问题讨论】:
-
为什么不
B = randn(10,25);?但无论哪种方式,您都可以通过创建一个逻辑索引向量开始,如下所示:Z == 1以提取正确的4(虽然不应该是3??)第三维中的“列” -
是的,我可以取出第一个维度。我只是模拟了这个问题。 Z 的大小不是 10,它更像是 10,000,可能有 1000 个唯一值。我想我可以使用循环。
标签: matlab multidimensional-array average