Convert cell array to double

4 Ansichten (letzte 30 Tage)
Xiao Tang
Xiao Tang am 17 Jul. 2012
Hi guys,
I have a variable called MKVALM2PRSALEM came from
[~,~, MKVALM2PRSALEM] = xlsread('C:\Users\X...\199001.xlsx','Sheet1','M3:X502');
Part of the matrix is like,
Notice that there are nulls like '@NA' and '@CF'.
How can I transfer this matrix into double format like the following picture, and keep all nulls like NaN?
When I tried to use str2double(MKVALM2PRSALEM), it returns a all nulls matrix. Actually I want to have the result like
MKVALM2PRSALEM = xlsread('C:\Users\X...\199001.xlsx','Sheet1','M3:X502');
But I can't directly use that syntax because MKVALM2PRSALEM actually comes from a larger cell array.

Akzeptierte Antwort

Jan
Jan am 17 Jul. 2012
MKVALM2PRSALEM(cellfun(@ischar, MKVALM2PRSALEM)) = {NaN};
ABCDEFGHIJKLM_ = cell2mat(MKVALM2PRSALEM);

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 17 Jul. 2012
MKVALM2PRSALEM(cellfun(@ischar, MKVALM2PRSALEM)) = {NaN};
  1 Kommentar
Xiao Tang
Xiao Tang am 17 Jul. 2012
Thanks Walter. But the format of MKVALM2PRSALEM is still in cell array, rather than double.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by