如何将第一个元素和第n列的每个元素复制到另一个数组中?
例如,假设你有以下数组:
array{[1,2,3,4,5],
[1,2,3,4,5],
[1,2,3,4,5]}
我想选择第一个元素和每个第二个元素,所以我会:
array{[1,3,5],
[1,3,5],
[1,3,5]}
答案 0 :(得分:5)
您可以对列使用切片
>>> a
array([[1, 2, 3, 4, 5],
[1, 2, 3, 4, 5],
[1, 2, 3, 4, 5]])
>>> a[:, ::2]
array([[1, 3, 5],
[1, 3, 5],
[1, 3, 5]])
如@tobias_k所述,如果您想要制作此切片数组的实际副本,可以使用numpy.copy
确保修改不会影响原始数组
>>> np.copy(a[:, ::2])
array([[1, 3, 5],
[1, 3, 5],
[1, 3, 5]])