在MATLAB中,我想通过矢量检索矩阵中特定位置的值
v = [1, 2, 3, 4];
A(v)
A(v(:))
我该怎么做?
向量的长度不是固定的,因此我无法对A(v(1), v(2), v(3), v(4))
进行硬编码。
答案 0 :(得分:2)
使用num2cell
将v
转换为单元格数组(例如cellv
),然后提取cellv
的元素作为逗号分隔的值以索引A
并概括地实现A(v(1), v(2), v(3), v(4), ... v(n))
。
cellv = num2cell(v);
A(v{:})