Just to make clear there are ; for every 5 elements in the example to separate the rows, I hope it is clear, sorry about that
remove rows from a matrix on a specific condition
97 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Dimitris
am 1 Feb. 2013
Kommentiert: Jona Gladines
am 12 Okt. 2020
I want to remove rows from a matrix when a specific condition is satisfied.
For example, lets as assume that I have the following 5x5 matrix :
A= [ 5 3 3 1 4
6 6 3 1 0
6 2 2 2 0
4 2 3 2 0
1 1 1 1 2 ]
and I want to delete the rows of this matrix when the elements of the 5th column are equal to 0, so I will be left with the first and last row as an outcome:
A= [ 5 3 3 1 4
1 1 1 1 2 ]
Thanks
Akzeptierte Antwort
Daniell Algar
am 1 Feb. 2013
Try
A= [ 5 3 3 1 4; 6 6 3 1 0; 6 2 2 2 0; 4 2 3 2 0; 1 1 1 1 2 ]
A(A(:, 5)== 0, :)= []
3 Kommentare
Raghu Vamsi
am 9 Jan. 2020
What if the 0 is not exactly in the 5th Column but random in cells, then how to solve the same issue?
Jona Gladines
am 12 Okt. 2020
@Raghu Vamsi, If still needed, repeat for every column. As it wil only remove the rows with a 0 in that specific column.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!