Numpy 多维数组切片

Numpy multi-dimensional array slicing

我有一个形状为 (100, 50, 20) 的 3-D NumPy 数组。我试图通过使用索引对数组的第三维进行切片,例如,从 1 到 6 和从 8 到 10。

我尝试了下面的代码,但是一直报语法错误

newarr [:,:,1:10] = oldarr[:,:,[1:7,8:11]]

您可以使用 np.r_ 连接切片对象:

newarr [:,:,1:10] = oldarr[:,:,np.r_[1:7,8:11]] 

示例

np.r_[1:4,6:8]
array([1, 2, 3, 6, 7])