簡體   English   中英

MATLAB將3D矩陣的高度向量評估為2D矩陣

[英]MATLAB evaluate height vector of a 3D matrix into a 2D matrix

我正在用MATLAB編程,希望使我的代碼盡可能高效。 但是我遇到了一個問題。

我有一個3D矩陣(行,列,高度)和一個2D矩陣(行,列)

我想將height列的最大值保存在2D矩陣的相應單元格中。 這可以通過for循環來完成。

for i=1:row
    for j=1:column
        2D(i,j)=nanmax(3D(i,j,:));
    end
end

但是還有其他方法嗎? 就像是:

2D(mask)=3D(mask,nanmax(:));

掩碼是一個邏輯矩陣,可能只包含一個掩碼就可以使它更容易。

任何幫助將不勝感激! 謝謝賈斯珀

你有沒有嘗試過

twoD = nanmax( threeD, [], 3 );

如果有遮罩,則可以使用時間變量

tmp = nanmax( threeD, [], 3 );
twoD(mask) = tmp(mask);

聚苯乙烯
最好不要在Matlab中使用ij作為變量名

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM