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