split matrix into two based on column values

1 view (last 30 days)
Hi all,
I need to split a matrix into two based on values in last column of matrix. An example is given below:
A = [ 1 2 1.4; 1 3 1.4; 2 5 1.4; 1 5 81; 3 4 1.4; 5 4 81]
this need to be split into two
one matrix with [1 5 81;5 4 81] and other with rest of the elements of A. Basically if value of column 3 is greater than 80, save it into another matrix. Is it possible to do so without writing a loop

Accepted Answer

Stephan
Stephan on 25 May 2021
A = [ 1 2 1.4; 1 3 1.4; 2 5 1.4; 1 5 81; 3 4 1.4; 5 4 81]
A = 6×3
1.0000 2.0000 1.4000 1.0000 3.0000 1.4000 2.0000 5.0000 1.4000 1.0000 5.0000 81.0000 3.0000 4.0000 1.4000 5.0000 4.0000 81.0000
A1 = A(A(:,end)>80,:)
A1 = 2×3
1 5 81 5 4 81
A2 = A(A(:,end)<=80,:)
A2 = 4×3
1.0000 2.0000 1.4000 1.0000 3.0000 1.4000 2.0000 5.0000 1.4000 3.0000 4.0000 1.4000

More Answers (0)

Categories

Find more on Resizing and Reshaping Matrices in Help Center and File Exchange

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!