假设我们有一个数组a = [5, 2, 3, 8, 4, 1, 9]
我想选择几个元素(不重复),使得所选元素的相对顺序与输入数组中的顺序相同。
使用random.choice
和shuffle=False
似乎无法实现这一点。
a = [5, 2, 3, 8, 4, 1, 9]
rng = np.random.default_rng(42)
rng.choice(a, 4, replace=False, shuffle=False)
输出:
array([9, 5, 1, 8])
我想看:
array([5, 8, 1, 9])
这个结果最简单的方法是什么?
random.choices()
获取选择,然后使用sort()
将其恢复为原始顺序。 - Barmar