数组作为matlab中向量的索引

时间:2013-01-16 17:52:07

标签: arrays matlab matrix-indexing

我偶然发现了一些matlab代码,其中1D向量(说“长度为100的信号”)被3D矩阵索引(比如“距离”,尺寸为10x10x10),结果(“信号(距离)”)是3D矩阵具有完全相同的尺寸10x10x10作为3D矩阵索引。

matlab实际上做了什么?向量的元素在哪里?你知道要搜索的关键词吗?

我搜索了stackoverflow和mathworks帮助页面,其中包含“索引”等关键字,但我没有找到任何有用的内容......

谢谢!

1 个答案:

答案 0 :(得分:3)

another answer of mine中,我在“使用矩阵下标进行线性索引”部分中解释,也可以使用另一个矩阵进行索引。

下标矩阵简单地转换为列向量,并用于线性索引。但是,生成的矩阵始终与下标矩阵具有相同的维度

例如,假设:

A = [10 20 30 40 50 60 70 80 90];
I = [1 3; 1 2];

在这种情况下,A(I)与撰写reshape(A(I(:)), size(I))相同。结果是:

ans = 
    10    70
    10    40