【发布时间】:2014-12-31 22:01:55
【问题描述】:
给定一个矩阵A,如何在特定范围内获得大于x 的元素(及其索引)?
例如
A = [1:5; 2:6; 3:7; 4:8; 5:9]
A =
1 2 3 4 5
2 3 4 5 6
3 4 5 6 7
4 5 6 7 8
5 6 7 8 9
例如,我希望所有大于 5 的元素都出现在A(2:4,3:5) 范围内。我应该得到:
元素:
6 , 6 , 7 , 6 , 7 , 8
指数:
14, 18, 19, 22, 23, 24
A(A>5) 会给我所有大于 5 的条目。
A(2:4,3:5) 将给出2:4,3:5 范围内的所有元素。
我想要两者的某种组合。是否有可能或唯一的方法是将所需的范围放在另一个数组B 中,然后才执行B(B>5)?显然这里有两个问题:我会丢失原始索引,而且速度会更慢。我在大量矩阵上执行此操作。
【问题讨论】:
-
有些相关:stackoverflow.com/q/3627107/2647279。所以答案是否定的,除非你使用一些丑陋的技巧。