【发布时间】:2015-07-03 11:03:04
【问题描述】:
所以我在 MATLAB 中有一个 100000-by-2 矩阵。我只想提取第二列中的元素,这些元素在第一列中的对应行都具有相同的元素。例如。如果我们有:
A = [1 2
3 4
2 6
1 5
4 1
1 3]
然后指定我们希望第二列中的所有元素以1 作为它们在第一列中的对应值。所以我希望上面变成:
2
5
3
有谁知道如何在 MATLAB 中做到这一点?
【问题讨论】:
-
A( find(A(:,1)==1) , 2 )会做你想做的事。阅读有关逻辑索引的 Matlab 文档。 -
你甚至可以删除
find,所以它变成A( A(:,1)==1, 2) -
哎呀...愚蠢的我指的是逻辑索引,但仍在使用
find。 @hbaderts 是对的,忘记find,但仍然阅读 Matlab 中的逻辑索引。 -
谢谢!完全按照我的意愿工作。
-
@Hoki 发帖回答?
标签: arrays matlab sorting extract