我将矩阵值保存到.mat文件中供以后使用。矩阵大小为5.6kx3.4k。矩阵内的值范围为0-10k。当我使用 - save(x.mat)
保存矩阵时,大小约为80MB。但是,当我将相同的矩阵等同于另一个矩阵b = x;
然后将该矩阵保存为.mat文件时,大小会增加,有时会大幅增加。为什么会这样?
另外,我在保存这些矩阵的方式上做错了吗?
答案 0 :(得分:2)
(等效)命令
save('x.mat')
save x.mat
告诉MATLAB将工作区的全部内容保存在名为" x.mat"的文件中。 - 所以,如果你这样做
>> x = randn(5000, 100);
>> save('x.mat');
你会得到一个大小的文件,如果你那么做
>> b = x;
>> save('x.mat');
您的文件大小会翻倍,因为您现在有两个矩阵(x
和b
)保存在其中。
如果要保存特定变量,可以执行
>> save('x.mat', 'x');
>> save('b.mat', 'b');
将创建两个文件" x.mat"和" b.mat"其中分别包含x
和b
。当然,不要求文件名与变量名匹配 - 执行
>> save('unicorn.mat', 'x');
>> save('apricot.mat', 'b');
将创建两个文件" unicorn.mat"和" apricot.mat"其中分别包含x
和b
。