[英]A subset of 3 dimensional matrix in Matlab
假设我们有一个 3 维矩阵A
和X_IND = 4:8
和Y_IND = f(X_IND)
。 f
是一个类似于2*x^2+1
的函数。 我如何从A
提取以下向量:
a = A(X_IND,Y_IND,3)
然而,上述在MATLAB引线方程的矩阵,而结果应该是一个数组,因为Y_IND
是的函数X_IND
。
>> A = randi(9,2,3,3)
A(:,:,1) =
6 8 8
5 2 7
A(:,:,2) =
8 7 9
8 7 2
A(:,:,3) =
8 9 8
2 4 8
>> X_IND = [1 2];
>> Y_IND = X_IND + 1;
>> Z_IND = 3;
>> Z_IND = repmat(3, size(X_IND)); %// all indices should have the same size
>> ind = sub2ind(size(A), X_IND, Y_IND, Z_IND); %// build linear index
>> A(ind)
ans =
9 8
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.