[英]MATLAB how to vectorize this while loop
所以這里的想法是將數據讀入矩陣,然后通過刪除多余的列或行(但是向量化)使該矩陣成為方陣,而不使用任何循環而不使用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')
謝謝
給定一個nxm大的矩陣A
,我們將通過從A
刪除多余的列或行(取決於哪個維度更大)來創建矩陣B
,這是一個方陣。
B=A(1:min(size(A)),1:min(size(A)));
順便說一句,如果你想要覆蓋A
並刪除多余的信息,這一行也可以寫成A=A(1:min(size(A)),...)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.