Hi,
can you please help me with this? I have the following cell array
x = {1,[],'ciao',[],[]};
I want to exclude the empty cells, and get another array like this:
y = {1,'ciao'};
Thank you!

 채택된 답변

Niklas Nylén
Niklas Nylén 2014년 1월 15일

2 개 추천

First, check which cells that are empty using the function isempty. Since isempty does not accept cell arrays as input, you can use the cellfun function. This will call a function with each element of a cell array:
index = cellfun(@isempty, x) == 0;
y = x(index)

추가 답변 (1개)

Mischa Kim
Mischa Kim 2014년 1월 15일
편집: Mischa Kim 2014년 1월 15일

3 개 추천

Try y=x(~cellfun('isempty',x))

댓글 수: 4

thanks, this helps me as well...
Thank you . How do I extend this to work for a n-d cell array
Yiqian Qian
Yiqian Qian 2021년 5월 27일
I have the same question above, how to apply this to a specific row or colums.
Nisha Bharti
Nisha Bharti 2021년 10월 10일
Yes, same query

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Cell Arrays에 대해 자세히 알아보기

질문:

2014년 1월 15일

댓글:

2021년 10월 10일

Community Treasure Hunt

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

Start Hunting!

Translated by