Matlab里,怎么将多个名称相同的矩阵平均?
是这样:我有sub1、sub2、sub3....sub16的mat文件,每个sub里是名称都为a的8*8的矩阵,现在想要将这16个矩阵平均,得到一个平均的矩阵,有什么简便...
是这样:我有sub1、sub2、sub3....sub16的mat文件,每个sub里是名称都为a的8*8的矩阵,现在想要将这16个矩阵平均,得到一个平均的矩阵,有什么简便方法吗?一个小脚本最好
展开
1个回答
展开全部
clc;
clear
tmp = 'sub'; %先构造字符串sub
sum = zeros(8); %用来存储矩阵之和,初始值为8阶零矩阵
for i = 1:16
filename = [tmp num2str(i)]; %每次要载入的mat文件名,就是'subi'的形式
load(filename); %载入文件
sum=sum+a; %矩阵累加
end
sum=sum/16 %矩阵和除以16得到平均
%%%%%%%%%%%%%%%%%%%%%%%%
当然你的MATLAB路径里面确实要有这些MAT文件,并且里面的变量确实是名叫a的8阶矩阵。否则载入了之后发现名字或者维数不对,是不能运行的。
clear
tmp = 'sub'; %先构造字符串sub
sum = zeros(8); %用来存储矩阵之和,初始值为8阶零矩阵
for i = 1:16
filename = [tmp num2str(i)]; %每次要载入的mat文件名,就是'subi'的形式
load(filename); %载入文件
sum=sum+a; %矩阵累加
end
sum=sum/16 %矩阵和除以16得到平均
%%%%%%%%%%%%%%%%%%%%%%%%
当然你的MATLAB路径里面确实要有这些MAT文件,并且里面的变量确实是名叫a的8阶矩阵。否则载入了之后发现名字或者维数不对,是不能运行的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询