2

数字と文字のセルを含む「data.xlsx」ファイルがあります。

このコマンドを実行すると:

 [num,txt,raw] = xlsread('data.xlsx');

私が得た:

num =

NaN   NaN   NaN  
NaN   NaN     6  
NaN   NaN   NaN  
  4   NaN   NaN  

txt = 

'a'    'd'    'g'
'b'    'e'    '' 
'c'    'f'    'h'
''     ''      ''

両方を含む新しい変数を取得する方法はありますか? 何かのようなもの:

生=

'a'    'd'    'g'
'b'    'e'    '6' 
'c'    'f'    'h'
'4'     ''      ''

多分num2strを使って?

私は私の問題を解決しました、ありがとう

yuk のソリューションでは、次のようになりました。 ここに画像の説明を入力

ps私のバージョンはMatlab 2010aです。

4

2 に答える 2

2
[~,~,raw] = xlsread('data.xlsx');
%# find numbers
containsNumbers = cellfun(@isnumeric,raw);
%# convert to string
raw(containsNumbers) = cellfun(@num2str,raw(containsNumbers),'UniformOutput',false);
于 2012-06-14T15:17:00.163 に答える
0

入力ファイルでセルが空の場合、文字列を含むセルを含むAlon のソリューションに加えて。'NaN'

の後に追加するだけxlsreadです:

containsNaNs = cellfun(@isnan,raw);
raw(containsNaNs) = {''};
于 2012-06-14T15:35:24.173 に答える