Index from one vector to different sized vector

I have a 582x1 column vector and a 3190x2 matrix. I want to extract only those rows of the matrix whose column 1 entry has the same value as any entry in the 582 vector. I can't figure out how to index in this way. I tried changing the size of the column vector to 3190, but it still only compared the entries with the same indexes.

 Respuesta aceptada

Walter Roberson
Walter Roberson el 12 de Sept. de 2020
selected_rows = array3190(ismember(array3190(:,1), vector582),:);

1 comentario

Thanks. I found that the interp function worked well for what I was trying to do.
data1 = interp1(array3190_col1,array3190_col2,vector582)

Iniciar sesión para comentar.

Más respuestas (1)

% v1 the first vector
% v2 the matrix
[~, ~, i2] = intersect(v1, v2(:,1));
newMatrix = v2(t2,:);

Categorías

Etiquetas

Preguntada:

el 12 de Sept. de 2020

Comentada:

el 20 de Nov. de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by