index multiple columns together on different critera

11 visualizaciones (últimos 30 días)
Jacob Matson
Jacob Matson el 13 de Ag. de 2020
Editada: madhan ravi el 13 de Ag. de 2020
I have a maxtrix of 2 columns, I want to pull out a new matrix with all the rows where column 1 is <0.2 and column 2 is >0.2. The row values are matched, both columns need to stay together.
A= [0.09 0.48
0.5 0.1
0.04 0.3]
I want make the new matrix to return
B= [0.09 0.48
0.04 0.3]
I've tried things like these, but I only end up with the first column
idx=A(:,1)<0.2 | A(:,2)>0.2;
B=A(idx)
B=[0.09
.04]
How do I return column 2 as well?

Respuesta aceptada

Walter Roberson
Walter Roberson el 13 de Ag. de 2020
B=A(idx, :)

Más respuestas (2)

hosein Javan
hosein Javan el 13 de Ag. de 2020
A= [0.09 0.48
0.5 0.1
0.04 0.3];
idx1 = A(:,1)<0.2 ; idx2 = A(:,2)>0.2;
B(:,1) = A(idx1,1); B(:,2) = A(idx2,2);
% answer in command window
B =
0.0900 0.4800
0.0400 0.3000

madhan ravi
madhan ravi el 13 de Ag. de 2020
Editada: madhan ravi el 13 de Ag. de 2020
“I want to pull out a new matrix with all the rows where column 1 is <0.2 and column 2 is >0.2.”
idx = A(:,1)<0.2 & A(:,2)>0.2;
A(idx, :)

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by