Getting 1 value from another.

1 回表示 (過去 30 日間)
James Connor
James Connor 2015 年 10 月 24 日
コメント済み: Jan 2015 年 10 月 25 日
Lets say we have an array
20 4
21 5
22 3
23 2
24 1
25 2
26 7
if that table say =x how do I return a value in the first row from the second for example if I have x(:,2)==7 give ans=26 (first column corresponding to 7). Another example would be x(:,2)==2 give ans=25 Thanks
  1 件のコメント
Jan
Jan 2015 年 10 月 24 日
Why not 23 for the value 2?

サインインしてコメントする。

回答 (1 件)

Jan
Jan 2015 年 10 月 24 日
x = [20 4; ...
21 5; ...
22 3; ...
23 2; ...
24 1; ...
25 2; ...
26 7]
search = 2;
index = (x(:, 2) == search);
result = x(index, 1)
  3 件のコメント
James Connor
James Connor 2015 年 10 月 24 日
Sorry I didnt explain my question well, I mean for like max(x(:,2)); which would be 7 thus output a value of 26.
Jan
Jan 2015 年 10 月 25 日
Perhaps you mean:
[value, index] = max(x(:, 2));
x(index, 1)

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by