我已经检查了numpy文档,但是一些索引仍然没有找到我。我有一个numpy数组,它的形状是(40000,432),它看起来像:
arr = [[1,2,3......431,432],
[1,2,3......431,432],
[1,2,3......431,432],
....................
[1,2,3......431,432]'
[1,2,3......431,432]]
我想在一个范围(即20-50)上对每个数组进行子集化,以便形状为(40000,30)并且它看起来像:
subarr = [[20,21,22...48,49,50],
[20,21,22...48,49,50],
[20,21,22...48,49,50],
.....................
[20,21,22...48,49,50]]
我尝试的所有东西要么给我一个错误,要么给我形状(30,432),这不是我需要的。如何沿着我想要的轴对二维数组进行子集?
答案 0 :(得分:2)
您想使用numpy
slicing:
arr = np.zeros((40000, 432))
subarr = arr[:, 20:50]
print(subarr.shape)
<强>输出强>
(40000L, 30L)
形状输出中的L
表示整数是Python类型long
。