只在python中置换数组中的某些元素

时间:2017-07-12 14:10:53

标签: python arrays

考虑这个数组:

array = np.array([2, 4, 23, 11, 0, 9])

有没有办法获得奇数索引的元素的随机排列?

可能的输出示例:

[2, 11, 23, 4, 0, 9]
[2, 4, 23, 9, 0, 11]

请注意,偶数索引为2,23,0的元素应保持不变

1 个答案:

答案 0 :(得分:4)

您可以使用array[1::2]选择所有奇数元素,然后使用np.random.shuffle()对其进行随机播放:

np.random.shuffle(array[1::2])