1
假设我有一个叫做A.保存三维矩阵作为多个二维.MAT文件
我想A(1,1:n,:), A(2,1:n,:), A(3,1:n,:)
等保存为单独的二维.MAT文件三维矩阵:squeeze(A(1,1:n,:)
。
我猜这可能是一种简单的方法,我不知道。
非常感谢!
假设我有一个叫做A.保存三维矩阵作为多个二维.MAT文件
我想A(1,1:n,:), A(2,1:n,:), A(3,1:n,:)
等保存为单独的二维.MAT文件三维矩阵:squeeze(A(1,1:n,:)
。
我猜这可能是一种简单的方法,我不知道。
非常感谢!
查看我的评论,以编程方式定义和分配变量。但是,您可能不需要这里。正如你建议,你可以循环
for i = 1 : 5
B = squeeze(A(i, 1 : n, :);
save(['slice', num2str(i), '.mat'], 'B');
end
并将其分配给你写信给不同的文件中的一个变量。
两个非常有用的意见,谢谢! – user2855666
.mat文件只能保存变量。所以你需要定义这些变量然后保存它们:'A1 = squeeze(A(1,1:n,:));保存file1 A1',等 –
有没有什么办法可以使用for循环呢?不知何故'A',num2str(i)= squeeze(A(i,1:n,:))'不起作用。 – user2855666
'eval(['A',num2str(i),'= squeeze(A(i,1:n,:));']);'会做。赋值命令在这里被合成为一个字符串,然后由'eval'评估。 –