[已解决] 如何导入多个excel表格的某一列并计算其均值?

[复制链接]
lhy242000 发表于 2020-7-2 03:40:50
现有10个excel表格,需要导入每个表格“mark”那一列的所有数据并计算其平均值,最后把十个平均值输出到一个数组里面。如果是只需要计算单个表格的话,我用了以下代码:
  1. [num,txt]=xlsread('data_1.xls')
  2. n=find(strcmp(txt(1,2:end),'mark'));
  3. cj=num(1:end,n)
  4. A=mean(cj)
复制代码
但是现在有十个表格,该如何快速计算这十个表格,而不是反复运行十次上述代码?提前感谢愿意帮忙的朋友!

最佳答案


帕拉代斯 发表于 2020-7-2 09:11:31
用dir('*.xls')获取10个excel文件的文件名,然后用for循环处理就好了
file = dir('*.xls');
for i = 1:length(file)
[num,txt]=xlsread(file(i).name);
...
end
回复此楼

3 条回复


帕拉代斯 发表于 2020-7-2 09:11:31
用dir('*.xls')获取10个excel文件的文件名,然后用for循环处理就好了
file = dir('*.xls');
for i = 1:length(file)
[num,txt]=xlsread(file(i).name);
...
end
回复此楼

lhy242000 发表于 2020-7-2 11:51:49
帕拉代斯 发表于 2020-7-2 09:11
用dir('*.xls')获取10个excel文件的文件名,然后用for循环处理就好了
file = dir('*.xls');
for i = 1:leng ...

原来如此,非常感谢!然后我又遇到了一个问题,不知道可否请您帮忙解答一下。就是我有两个文件夹的里面的表格需要处理,需要分别求出某个文件夹中所有表格的mark列的均值,然后分别生成两个数组,记为A和B。请问可否有简单方法在一个程序内同时将这两个数组AB求出?还是必须要运行两次程序,一次求出A,另一次求出B?

帕拉代斯 发表于 2020-7-2 13:01:54
lhy242000 发表于 2020-7-2 11:51
原来如此,非常感谢!然后我又遇到了一个问题,不知道可否请您帮忙解答一下。就是我有两个文件夹的里面的 ...

cd命令换到另外的文件夹路径,再把代码重复用一次
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
相关文章
热门教程
站长推荐
快速回复 返回顶部 返回列表