所以这里的想法是将数据读入矩阵,然后通过删除多余的列或行(但是向量化)使该矩阵成为方形矩阵,而不使用任何循环而不使用if /其他。这有可能吗?
这是我用循环和if / else
完成的方式load file.dat
r = num2str(size('file',1))
c = num2str(size('file',2))
while (r~=c)
if (r>c)
r--
else (c>r)
c--
end
res = file(1:r,1:c)
save('squarefile.dat', 'res', '-ascii')
谢谢
答案 0 :(得分:4)
给定nxm大的矩阵A
,我们将创建矩阵B
,这是一个方阵,通过从{{1}中删除多余的列或行(取决于哪个维度更大) }:
A
顺便说一句,如果你想覆盖B=A(1:min(size(A)),1:min(size(A)));
并删除多余的信息,这一行也可以写成A=A(1:min(size(A)),...)
......