cell within a cell

2 次查看(过去 30 天)
Fabricio
Fabricio 2013-3-16
Hello, I have a problem that is taking me some time. I have a 994*15 cell and within those cells there are empty arrays [] and there are arrays of 1*3. It is a bit random. I am trying to get rid of the the empty cells but keep the same cell columns because they are results that will need to be compared afterwards.
Don't hesitate to ask questions. I tried with a loop and the function find, but the results are not working with cells.
  2 个评论
Matt J
Matt J 2013-3-17
Are you sure they are empty "cell arrays'? The symbol [] is an empty numeric array.
Regardless, if you want to maintain the same 994x15 shape, then anything you remove will have to be replaced by something. You have to decide what that will be.
Fabricio
Fabricio 2013-3-17
Well they are denoted with [], The answer bellow really did the trick!

请先登录,再进行评论。

回答(1 个)

Azzi Abdelmalek
Azzi Abdelmalek 2013-3-17
编辑:Azzi Abdelmalek 2013-3-17
A(cellfun(@isempty,A))=[] % A is your cell array
  2 个评论
Fabricio
Fabricio 2013-3-17
Thank you, this seems to work! I appreciate your input.
Jan
Jan 2013-3-17
As usual I want to stress, that cellfun is faster with the string methods: cellfun('isempty',A).

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by