1

我正在尝试使用 xlsread 函数读取 6000x2700 的电子表格(xlsx 文件)。

我有两个问题:

首先,当我使用类似的东西时

[num,txt,~]=xlsread(input_file,input_sheet,'A1:CYY6596')

Matlab 一直显示“忙碌”并失去响应(而我可以在 30 秒内在 excel 中打开它)。

如果我不想遍历 xlsx 文件的范围,有什么解决方案吗?换句话说,我可以使用 xlsread 将这种大小的电子表格转储到 matlab 中吗?

或者,也许我可以使用循环逐个范围地读取这些文件,但除非我先读取整个文件,否则我无法识别每个电子表格的最后一列。因此,如果我无法识别最后一列,则很难进行循环并对文件进行解释。

所以我的第二个问题是:有没有办法在不阅读整个电子表格的情况下识别电子表格的最后一列?

谢谢。

编辑:但是,如果我运行仅读取电子表格的前 400 列('A1:RY6596')的类似代码,则不会发生此类问题。

4

2 回答 2

1

你用的是哪个版本的matlab?matlab 加载 bix Excel 文件时出现问题。在 csv 中转换 Excel 并使用 M = csvread(filename)。您也可以尝试将 .xlsx 转换为 .xls。

于 2016-04-15T07:33:13.423 回答
0

您可以在文件交换中试用该工具

于 2016-04-16T10:14:02.977 回答