Convert Cells with space entry to an empty cell

2 ビュー (過去 30 日間)
Caroline Hammoutene
Caroline Hammoutene 2016 年 6 月 30 日
編集済み: José-Luis 2016 年 6 月 30 日
Hey I have a problem: I import data from excel into matlab and I get a cell array. Something weird happens though: Whenn the cell is empty in excel, in matlab in some cases I get a NaN entry and in other cases I get this entry: ' ' I´d like both of them to be empty. Therefor I used
data = cellNaNReplace(data,[])
to replace the NaNs. But I am desperetly searching for a solution for the case of the entry ' '
I would be very happy in any case of good suggestions! Thanks

回答 (2 件)

José-Luis
José-Luis 2016 年 6 月 30 日
編集済み: José-Luis 2016 年 6 月 30 日
a = { '', '', '', 'bla', 'bla';
'', 'bla', 'bla', 'bla', ''}
a(strcmp('',a)) = {[]}
Please remember to accept the answer that best solves your problem.
  2 件のコメント
Caroline Hammoutene
Caroline Hammoutene 2016 年 6 月 30 日
Unfortunately does not work, thank you anyways
José-Luis
José-Luis 2016 年 6 月 30 日
編集済み: José-Luis 2016 年 6 月 30 日
Does not work how? This assume you had gotten rid of the NaN s

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


Shameer Parmar
Shameer Parmar 2016 年 6 月 30 日
Hello Caroline,
I dont know the direct command similar of what you used. like.. cellNaNReplace()
But I am sure, following solution will help you..
let us consider A is the cell array which you got from xlsread, which contains 'NaN' and ''.
for count = 1: length(A)
if isempty(A{count}) || isnan(A{count})
A{count} = [];
end
end
  2 件のコメント
José-Luis
José-Luis 2016 年 6 月 30 日
編集済み: José-Luis 2016 年 6 月 30 日
length() would only work in the case of a column or vector array. You could use numel()
Caroline Hammoutene
Caroline Hammoutene 2016 年 6 月 30 日
unfortunately isempty always returns 0 in this case

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

カテゴリ

Help Center および File ExchangeMatrices and Arrays についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by