Filter löschen
Filter löschen

How to delete specific rows in a matrix

4 Ansichten (letzte 30 Tage)
Maryam Hamrahi
Maryam Hamrahi am 18 Apr. 2017
Kommentiert: Maryam Hamrahi am 18 Apr. 2017
Hi everybody,
I have a very huge matrix, and I need to deleted rows when some of column numbers are equal to zero.
Here is a simple example.
A=[ a1 a2 a3 a4 a5 a6 a7 a8
b1 b2 b3 b4 b5 0 0 0
c1 c2 c3 c4 c5 0 0 0
d1 d2 d3 d4 d5 d6 d7 d8
.
.
.
.
.
.
.
z1 z2 z3 z4 z5 0 0 0]
how could I delete rows when the last three columns are zero?
Thank you very much.
  1 Kommentar
Maryam Hamrahi
Maryam Hamrahi am 18 Apr. 2017
I used this code to solve a simple example:
A= [1 2 3 4 5 0 0
1 2 4 7 8 0 0
2 3 5 4 3 5 7];
TF = A(:,6:7)==0
% remove
A(TF,:) = []
why I get this error:
Error in Untitled (line 6)
A(TF,:) = []

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Stephen23
Stephen23 am 18 Apr. 2017
Bearbeitet: Stephen23 am 18 Apr. 2017
You need to use all or any:
>> A = [1,2,3,4,5,0,0; 1,2,4,7,8,0,0; 2,3,5,4,3,5,7]
A =
1 2 3 4 5 0 0
1 2 4 7 8 0 0
2 3 5 4 3 5 7
>> B = A(any(A(:,6:7),2),:)
B =
2 3 5 4 3 5 7
  1 Kommentar
Maryam Hamrahi
Maryam Hamrahi am 18 Apr. 2017
Thank you Stephen Cobeldick.
It was very nice of you.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrices and Arrays 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