Borrar filtros
Borrar filtros

How to delete specific rows in a matrix

4 visualizaciones (últimos 30 días)
Maryam Hamrahi
Maryam Hamrahi el 18 de Abr. de 2017
Comentada: Maryam Hamrahi el 18 de Abr. de 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 comentario
Maryam Hamrahi
Maryam Hamrahi el 18 de Abr. de 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,:) = []

Iniciar sesión para comentar.

Respuesta aceptada

Stephen23
Stephen23 el 18 de Abr. de 2017
Editada: Stephen23 el 18 de Abr. de 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 comentario
Maryam Hamrahi
Maryam Hamrahi el 18 de Abr. de 2017
Thank you Stephen Cobeldick.
It was very nice of you.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Matrices and Arrays en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by