Getting 1 value from another.

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

Respuestas (1)

Jan
Jan el 24 de Oct. de 2015

0 votos

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 comentarios

James Connor
James Connor el 24 de Oct. de 2015
Is it possible to do it by only considering rows. Like 2 is on the 6th row thus output 25?
James Connor
James Connor el 24 de Oct. de 2015
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 el 25 de Oct. de 2015
Perhaps you mean:
[value, index] = max(x(:, 2));
x(index, 1)

Iniciar sesión para comentar.

Categorías

Preguntada:

el 24 de Oct. de 2015

Comentada:

Jan
el 25 de Oct. de 2015

Community Treasure Hunt

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

Start Hunting!

Translated by