首页 > 解决方案 > 在 MATLAB 中使用 readmatrix 加载多个 Excel 文件

问题描述

我在下面有这个简短的代码,但我试图将 5 个 excel 文件,名称 101、102、103、104 和 105.xlsx 作为单独的单元格导入 matlab 的工作区,这样我以后可以通过调用每个单元格数组中的列来制作数字。

它们具有相同数量的列 (BS:BX) 我只需要 6 列,但会有不同的行。我是 MATLAB 新手,所以也许我在这里遗漏了一些简单的东西,它不喜欢“filename = (k,'%dtrf.xlsx');”这一行。“无效的表达式。调用函数或索引变量时,请使用括号。否则,请检查不匹配的分隔符。”

clear all

close all

mkdir myfolder

dir myfolder

for k = 101 : 105

filename = (k,'*.xlsx');

data = readmatrix(strcat(filename),'Range','BS:BX');

end

标签: matlab

解决方案


根据您提供的错误消息和格式(k,'%dtrf.xlsx'),您的循环可能应该类似于:

data=cell([5 1]);
for k=101:105
  filename=sprintf('%dtrf.xlsx',k);
  data{k-100} = readmatrix(filename,'Range','BS:BX');
end

其中BS,BX被假定为 .xlsx 文件中的有效列名。


推荐阅读