How can I delete a row from a cell aray, with empty cell as first column

2 visualizaciones (últimos 30 días)
I have a cell aray with 2 columns.
A={[7;8],6;[],19;[3;4;5;6],11;[],25;[4;5],58;[],63}
I want to delete all rows which contain empty cells.How can I do that?

Respuesta aceptada

Ken Atwell
Ken Atwell el 25 de Mzo. de 2014
Editada: Ken Atwell el 25 de Mzo. de 2014
I think this is what you are after: The line of code below will call isempty on each row in the first column, and then trim A to only those rows that are not empty.
>> A(~cellfun(@isempty, A(:,1)), :)
ans =
[2x1 double] [ 6]
[4x1 double] [11]
[2x1 double] [58]
  2 comentarios
Dimitris Kokkinos
Dimitris Kokkinos el 25 de Mzo. de 2014
It was exactly what I was looking for.So simple,but so difficult to find. Thank you Ken.
Arnab Roy
Arnab Roy el 1 de Dic. de 2020
Very elegant solution, thank you Ken!

Iniciar sesión para comentar.

Más respuestas (1)

Andrei Bobrov
Andrei Bobrov el 25 de Mzo. de 2014
A(~any(cellfun(@isempty, A),2), :)

Categorías

Más información sobre Functions 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