我有一些xls文件,它们都在特定列中合并了单元格。因此,当我使用xlsread时,该列的数据将被读取为NaN。 例如,当我的数据是:
1 2 2 5
3 1 2 1
2 4 2 3
如果最后一列是第4列和第5列的合并结果,当我使用xlsread时输出将为:
1 2 2 NaN
3 1 2 NaN
2 4 2 NaN
对于我的真实数据,在导入之前在excel中取消合并列是很费时的。如何以合并格式将它们导入MATLAB?
答案 0 :(得分:0)
我已经测试过保存一些带有合并单元格中的数字的Excel 2013工作表,格式为.xlsx或.xls格式,然后用xlsread
将它们读入MATLAB R2016b并正确读取数字。因此,无论您的版本表现不同,或者如Phil Goddard的评论中所述,合并单元格中的值都将格式化为Excel中的文本。
正如菲尔所说,如果你使用语法
[num, txt, both] = xlsread('myfile.xls')
结果将是一个数字矩阵num
,其中仅是数字的单元格值,单元格数组txt
仅包含 单元格作为文本的值,以及包含所有单元格的值的单元格数组both
,作为适当的数字或字符向量。如果您的列或行包含混合数字和文本,则文本单元格将在NaN
中返回num
个值。