假设
import numpy as npnp.random.seed(0)n,m,k = 2,3,5A = np.arange(n*m*k,0,-1).reshape((n,m,k))print(A)# [[[30 29 28 27 26]# [25 24 23 22 21]# [20 19 18 17 16]]# [[15 14 13 12 11]# [10 9 8 7 6]# [ 5 4 3 2 1]]]B = np.random.randint(k, size=(n,m))print(B)# [[4 0 3]# [3 3 1]]
要创建此数组,
print(A.reshape(-1, k)[np.arange(n * m), B.ravel()])# [26 25 17 12 7 4]
作为
nxm使用花式索引的数组:
i,j = np.ogrid[0:n, 0:m]print(A[i, j, B])# [[26 25 17]# [12 7 4]]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)