我需要重置 3 维矩阵的“下三角”。 这意味着,如果原始矩阵是:
C(:,:,1) = [1 2 3 ; 2 4 6 ; 3 6 9]
C(:,:,2) = [2 4 6 ; 4 8 12 ; 6 12 18]
C(:,:,3) = [3 6 9 ; 6 12 18 ; 9 18 27]
那么得到的矩阵应该是:
C(:,:,1) = [1 2 3 ; 2 4 6 ; 3 6 9]
C(:,:,2) = [0 0 0 ; 4 8 12 ; 6 12 18]
C(:,:,3) = [0 0 0 ; 0 0 0 ; 9 18 27]
知道这样的事情是如何完成的吗? (我原来的3dim矩阵很大)
谢谢!
最佳答案
内置的 triu
无法处理这个 3D 数组,但您可以在一个简单的循环中完成。
for k = 2:size(C, 3)
C(1:k-1,:,k) = 0;
end
关于arrays - 如何重置 3 维矩阵的 'lower triangle',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40846604/