1

所以这里的想法是将数据读入矩阵,然后通过删除多余的列或行使该矩阵成为方阵,但向量化,根本不使用任何循环,也不使用 if/else。这可能吗?

这就是我使用循环和 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')

谢谢你

4

1 回答 1

4

给定一个Anxm 大的矩阵,我们将B通过从以下位置删除多余的列或行(取决于哪个维度更大)来创建一个方阵矩阵A

B=A(1:min(size(A)),1:min(size(A)));

顺便说一句,这行也可以写成A=A(1:min(size(A)),...)好像要覆盖A和删除多余的信息...

于 2013-02-15T07:54:19.737 回答