arrays - 如何在 MATLAB 中遍历 n 维矩阵中的每个元素?

标签 arrays matlab matrix multidimensional-array iteration

我有一个问题。我需要遍历 MATLAB 中 n 维矩阵中的每个元素。问题是,我不知道如何针对任意数量的维度执行此操作。我知道我可以说

for i = 1:size(m,1)
    for j = 1:size(m,2)
        for k = 1:size(m,3)

等等,但是有没有办法针对任意数量的维度做到这一点?

最佳答案

您可以使用线性索引来访问每个元素。

for idx = 1:numel(array)
    element = array(idx)
    ....
end

如果您不需要知道 i,j,k 的位置,这很有用。但是,如果您不需要知道您所在的索引,您最好使用 arrayfun()

关于arrays - 如何在 MATLAB 中遍历 n 维矩阵中的每个元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/758736/

相关文章:

matlab - 从另一个矩阵开始构建一个矩阵

sql - PostgreSQL 中数组是否全部为 NULL

javascript - 如何查找键值对数组中最大的数字 JavaScript

matlab - 从 Kinect 接收到的深度图像是什么

Matlab - 从[MxN]矩阵元素中快速减去[1xN]数组

c++ vs MATLAB 速度优化。例如。我的 matlab 代码运行速度比 C++ 快?

r - 如何根据逻辑从数值矩阵生成向量或因子(无 for 循环)

php 将数组放入数组中

java - 任何人都可以将这个 A[] 和 B[] 连接到数组 C[] 吗?

c++ - C++ 中的二维矩阵