复制 numpy 数组的每第 n 列
Copy every nth column of a numpy array
如何复制另一个数组中第 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]}
您可以对列使用切片
>>> 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 if you want to make an actual copy of this sliced array, you can use numpy.copy
所述,以确保修改不会影响原始数组
>>> np.copy(a[:, ::2])
array([[1, 3, 5],
[1, 3, 5],
[1, 3, 5]])
如何复制另一个数组中第 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]}
您可以对列使用切片
>>> 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 if you want to make an actual copy of this sliced array, you can use numpy.copy
所述,以确保修改不会影响原始数组
>>> np.copy(a[:, ::2])
array([[1, 3, 5],
[1, 3, 5],
[1, 3, 5]])