split matrix into two based on column values

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

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

Products

Release

R2021a

Asked:

on 25 May 2021

Answered:

on 25 May 2021

Community Treasure Hunt

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

Start Hunting!