我有一个 3D 矩阵,它由 3 个 500x500 元素的矩阵组成。现在,我想使用第三个矩阵并将其所有大于 100 的值替换为 0。如果我有一个矩阵 a,我的代码将简单地为:
a(a>100)=0
但是,在我的例子中,我需要获取 3D 矩阵的第三个矩阵,即 a(:,:,3)。 如果我现在尝试使用相同的代码:
a(:,:,3)(a(:,:,3)>100)=0
我收到消息“()-索引必须出现在索引表达式的最后。”
关于如何表达它有什么想法吗?
最佳答案
怎么样
a(:,:,3) = (a(:,:,3)<100).*a(:,:,3);
?
关于arrays - 在 MATLAB 中替换 3D 矩阵的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13531573/