index multiple columns together on different critera

8 Ansichten (letzte 30 Tage)
Jacob Matson
Jacob Matson am 13 Aug. 2020
Bearbeitet: madhan ravi am 13 Aug. 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?

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 13 Aug. 2020

Weitere Antworten (2)

hosein Javan
hosein Javan am 13 Aug. 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 am 13 Aug. 2020
Bearbeitet: madhan ravi am 13 Aug. 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, :)

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by