将复杂的excel或csv文件读入matlab

时间:2011-08-29 19:07:30

标签: excel matlab file-io

我有一个excel文件,它是文本文件和数值的混合。 例如,文件看起来像这样,

25  file1
26  file2

这里25是第一个单元格(第1行,第1列)中的数值。 “file1”表示第二个单元格(row1,column2)中的内容。它可以是由多个段落组成的短文本文件。

我想将这个excel文件加载到matlab中,并将其存储到2 * 2矩阵中。每个矩阵条目对应于矩阵单元。

我尝试了xlsread,但它没有用。我也试过textscan,但它似乎能够处理单元格只有字符串的情况。这里,一些单元格的内容本身就是文本文件。

1 个答案:

答案 0 :(得分:3)

如果使用XLSREAD读取Excel文件,则可以使用第三个输出参数来检索文本和数字数据(未处理)。

实施例

Book1.xls contents

>> [~,~,raw] = xlsread('Book1.xls')
raw = 
    [25]    'hello world.'
    [26]       [1x38 char]

>> raw{2,2}
ans =
this is an example
of multi-line
text

请注意,XLSREAD仅限于MS Excel打开/读取文件的功能,因此一些特别大的文件(根据我的经验,100万行)将只能部分读取。