-2

假设我们有一个 3 维矩阵A和。 是一个类似的函数。如何从中提取以下向量:X_IND = 4:8Y_IND = f(X_IND)f2*x^2+1A

a = A(X_IND,Y_IND,3)

但是,MATLAB 中的上述方程会导致一个矩阵,而结果应该是一个数组,因为Y_IND它是 的函数X_IND

4

1 回答 1

1

用于sub2ind建立线性索引。这是一个例子:

>> 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
于 2015-11-23T23:18:01.307 回答