多个维度的花式索引

多个维度的花式索引,第1张

多个维度的花式索引

假设

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]]


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5631508.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存