假设我有一个这样的numpy数组
import numpy as np
array_shape = (5,6,7,8,9,4)
big_array = np.random.random(array_shape)
如果我想调用特定的切片,我需要知道轴和索引,即
small_array = big_array[:,:,3,:,:,:]
我希望能够编写一个在给定参数(2,3)(即第三轴,第四索引)时返回“ small_array”的函数。问题是我看不到如何正确设置参数格式。
感谢您的帮助!
答案 0 :(得分:2)
使用numpy.take
。 big_array[:,:,3,:,:]
等同于np.take(big_array, 3, axis=2)
:
(big_array[:,:,3,:,:] == np.take(big_array, 3, axis=2)).all()
# True