我有一个d维数组 A 和向量 inds ,长度等于d。我想访问 inds 的值

理想情况下,我会做类似 A(* inds)的事情(从Python借用解压缩语法)。我不确定如何在MATLAB中执行此操作。

如果我执行 A(inds),我实际上从 A 中获得了单独的值,这不是我想要的。我想要的是 inds 的元素i作为函数调用 A ()中的第i个参数。

最佳答案

一种解决方案是从带下标的索引inds的向量中创建comma-separated list。您可以通过使用NUM2CELL将其转换为单元格数组,然后在为{:}编制索引时使用A语法来做到这一点:

inds = num2cell(inds);
value = A(inds{:});

关于matlab - MATLAB:使用列表访问多维数组的元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6390766/

10-12 19:49