Trimming Null Characters off a multi-dimensional cell array

1 回表示 (過去 30 日間)
Bryce Johnson
Bryce Johnson 2019 年 6 月 10 日
コメント済み: dpb 2019 年 6 月 11 日
I'm trying to trim the null characters off a multi-dimensional cell array that looks like this:
A={'a','b','c'; ----> desired output A={'a','b','c';
't','y',[]; 't','y',[];
[],'z',[]; [],'z',[];}
[],[],[];
[],[],[]}
When I use A(~cellfun('isempty',A)) I end up getting back a colum vector of everything but the null characters. I understand I could probably just use a for loop to find the longest column, then cut it from there, however I may be taking in a lot of data and my code is already quite slow, so I was wondering if there was any elegant/fast solutions to this problem?

採用された回答

dpb
dpb 2019 年 6 月 10 日
>> A(any(~cellfun(@isempty,A),2),:)
ans =
3×3 cell array
{'a' } {'b'} {'c' }
{'t' } {'y'} {0×0 double}
{0×0 double} {'z'} {0×0 double}
>>
  4 件のコメント
Bryce Johnson
Bryce Johnson 2019 年 6 月 11 日
Oh I see now, I tought that was a smiley face for some reason! Thank you for your intuitive explanation it will definelty help me when solving problems like this in the future!
dpb
dpb 2019 年 6 月 11 日
Would seem then you're still at the learning level that spending some time working thru the excercises at the Getting Started link in the documentation would pay back many times over on time invested...

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by