我在寻找一个完美的解决方案,以在MATLAB这个非常简单的问题。 假设我有一个矩阵
>> M = magic(5)
M =
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
和形式的逻辑变量
I =
0 0 0 0 0
0 1 1 0 0
0 1 1 0 0
0 0 0 0 0
0 0 0 0 0
如果我尝试检索的元素M
相关联的1
价值观I
,我得到的列向量
>> M(I)
ans =
5
6
7
13
什么是得到矩阵的最简单的方法[5 7 ; 6 13]
[5 7 ; 6 13]
从该逻辑索引?
如果我知道的非零元素的形状I
,我可以使用索引后重塑,但是这不是一个一般的情况。
另外,我知道,对于这种类型的MATLAB索引的默认行为强制执行关于情况,即非零值的一致性I
没有形成一个矩阵,但我不知道是否有这个特定的简单解决方案案件。