Matlab:将字符串和数字读入工作空间

时间:2015-07-08 07:44:47

标签: arrays string matlab file

所以这是我的excel文件test.xlsx

have    1.44E+12    33   noChange   1.44E+12
four    1.44E+12    466  noChange   1.44E+12
have    1.44E+12    467  noChange   1.44E+12
four    1.44E+12    100  noChange   1.44E+12
minutes 1.44E+12    666  noChange   1.44E+12

我使用了EyeT = xlsread(test.xlsx) 我正确的数字,但NaN为字符串值 还有其他功能可以阅读吗? Textscan可能吗?

1 个答案:

答案 0 :(得分:1)

使用xlsread的三个输出。这是一个例子:

Excel文件:

have    1   aa  5
four    2   bb  6
have    3   bb  67

Matlab代码:

>> [num, txt, raw] = xlsread('test.xls') 
num =
     1   NaN     5
     2   NaN     6
     3   NaN    67
txt = 
    'have'    ''    'aa'
    'four'    ''    'bb'
    'have'    ''    'bb'
raw = 
    'have'    [  1]    'aa'     [  5]
    'four'    [  2]    'bb'     [  6]
    'have'    [  3]    'bb'     [ 67]
    [ NaN]    [NaN]    [NaN]    [NaN]

如您所见,num是一个包含数字的矩阵,NaN表示字符串; txt是字符串的单元格数组,数字为''; raw是一个包含数字和字符串的单元格数组。