What is the meaning in this instrument

1 次查看(过去 30 天)
I want to know the meaning of this MATLAB command
>> v = unique(m(d==1,2))
where m and d are matrices with dimensions (50x2) and (50x1) respectively.

采纳的回答

Walter Roberson
Walter Roberson 2018-2-2
d == 1 where d is a vector, produces a logical vector as output -- a vector of true and false values.
When you use a logical vector as a subscript, that is called "logical indexing", and it selects for output all locations where the vector is true. In this context, those are used to select rows -- so the m(d==1,2) selects column 2 of all rows of m corresponding to the positions where d==1 is true.
v = unique(m(d==1,2))
acts the same as
temp = find(d==1);
v = unique(m(temp, 2))

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Operators and Elementary Operations 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by