arrays - 在 MATLAB 中替换 3D 矩阵的元素

标签 arrays matlab 3d matrix replace

我有一个 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/

相关文章:

matlab - 将图形大小分配给具有给定句柄的图形 (MATLAB)

r - 在 Matlab 中实现的两样本 Kolmogorov-Smirnov 检验 (kstest2) 实现不当?

c - 通过保持光源固定来旋转 OpenGl 中的金字塔

将 char * [] 转换为 C 中的字符串

javascript - 尝试将 JavaScript 中的 for 循环更改为过滤方法单行

java - java程序每周工作时间

javascript - 使用 array.find() 在 javascript 数组中查找元素

algorithm - 如何将坦克的左右电机速度转换为路径/曲率

android - 3D旋转-透视

c# - 在 Kinect 中测量