Borrar filtros
Borrar filtros

Removing zero columns from matrix

102 visualizaciones (últimos 30 días)
Esegboria Osarhemen
Esegboria Osarhemen el 10 de Feb. de 2019
Comentada: Ömer BOZKURT el 16 de Ag. de 2022
This is my code:
N=3;
x=randi(9,3,N)
func = @(index)bsxfun(@minus,x(:,1:N),x(:,index));
mat = cell2mat(arrayfun(func,1:N,'uni',0))
This is my output:
0 -5 -4 5 0 1 4 -1 0
0 0 -6 0 0 -6 6 6 0
0 -2 5 2 0 7 -5 -7 0
How do I remove columns with zeros?

Respuesta aceptada

madhan ravi
madhan ravi el 10 de Feb. de 2019
Editada: Guillaume el 1 de Abr. de 2020
matrix(:,any(matrix == 0))=[] % removes column if there is any zero in the column
matrix(:,all(matrix == 0))=[] % removes column if the entire column is zero
  4 comentarios
madhan ravi
madhan ravi el 2 de Abr. de 2020
Thank you Jon and Guillaume:)
Ömer BOZKURT
Ömer BOZKURT el 16 de Ag. de 2022
Hello Sir. I have a question about delete columns. I want to delete columns if columns have more than 3 zero. How can I find it? Thanks for helping.

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by