Borrar filtros
Borrar filtros

How to delete columns of a matrix that have fewer than 3 non-zero elements

3 visualizaciones (últimos 30 días)
Hello,
How can I delete columns of a matrix that have fewer than 3 non-zero elements? Thank you!
  4 comentarios
osminbas
osminbas el 1 de Mzo. de 2012
Yes, that is what I meant. Fewer than 3 non-zero elements.
osminbas
osminbas el 1 de Mzo. de 2012
I can define it as matrix A is 5x5. Say two columns (column 1 and 3) have only 2 non-zero elements.

Iniciar sesión para comentar.

Respuesta aceptada

Wayne King
Wayne King el 1 de Mzo. de 2012
Hi, I'm sure this isn't the most efficient way:
x =[
5 0 1 4 1
3 0 0 2 1
1 0 2 2 4
4 3 0 2 3
4 2 0 1 3];
for nn =1:size(x,2)
numz(nn) = length(find(x(:,nn)==0));
end
x(:,numz>2) = [];
  1 comentario
osminbas
osminbas el 1 de Mzo. de 2012
Actually I did this:
for nn =1:size(x,2)
numz(nn)=length(find(x(:,nn)~=0));
end
x(:,numz<3)=[];
It worked! Thank you!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by