matlab 多个矩阵保存问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab 多个矩阵保存问题相关的知识,希望对你有一定的参考价值。

matlab 我在一个文件中随机生成了10个矩阵,由于后面要继续用到这些矩阵,故需要保存。如何用比较方便的方法保存这些矩阵,除了每个用save(‘filename.mat’,‘filename’)外?

save filename.mat M1 M2 M3....M10
把变量名挨个输上去回车就行了
另外,如果单独变更某一个,存的时候,后面要加 -append,这样不会覆盖掉别的。
参考技术A save保存矩阵最方便,而且可以一次存多个变量。如果用其它的,要一行行输出追问

如何用一个save语句同时保存我这10个矩阵(M1,M2……M10)?多谢

matlab,怎样读取多个mat文件再保存为一整个矩阵mat文件?

如图,X1--X20.mat都是只有一列的矩阵(M*1),想把他们一列一列顺序组合成一个大矩阵(M*20)也保存为一个mat文件,代码怎么写?谢谢

参考技术A for ii=1:1:20
Filepath=['C:\Users\...'];%文件路径
FileName=[' Filepath','\X',num2str(ii),'.mat'];
a=importdata(FileName);
data(:,ii)=a;
end
Filedata=[Filepath,'\data.mat'];
save(Filedata,'data');追问

您好,我运行出来有问题,是这个样子(250就是原问题里的20,我的数量变了而已)

追答

那说明你原始.mat文件格式是struct格式,将data(:,ii)=a;这句调整一下,让a变成double形式的行向量即可

追问

我原始就是double类型的列矩阵,不知道是不是跟我保存文件有关,

  filename1=strcat('X',num2str(isum),'.mat')

        save(filename1,'X')

我是这样存的,isum就是运行次数,每一次的X数据是不一样的,文件名是X1到X250,但是我每一个点开还是叫X,不知道是否我保存文件有问题

追答

跟你怎么存的没关系
a=importdata(FileName);
这句导入之后,看a是否为struct类型,如果是,再令a=a.data试试

追问

请问a=a.data应该加在哪里?而且感觉只提取出了第250列数据

还没解决,已私信

本回答被提问者和网友采纳

以上是关于matlab 多个矩阵保存问题的主要内容,如果未能解决你的问题,请参考以下文章

matlab,怎样读取多个mat文件再保存为一整个矩阵mat文件?

在 Matlab 中自动生成变量名并保存到文件

如何读写Matlab的mat文件?

MATLAB矩阵保存为图像问题,为啥保存图像为空白? RGB值为255。

在 MatLab 中保存矩阵

矩阵无法保存在 MATLAB [关闭]