python 和 numpy:从现有分布中获取随机分布

python and numpy: Get random distribution from existing distribution

我有一个给定的样本分布,例如 [1,2,3,4,6,10]。由此我想获得一个随机样本列表,其中的值来自初始样本。所以基本上我想要随机顺序的相同样本(因此随机样本集中的样本数量保持不变)。我可以使用 random.sample() 来做到这一点,但我不确定这到底有多随机。

numpy 中是否有类似的功能可供我用于科学目的?

您可以使用 random.shuffle :

>>> import random
>>> a=[1,2,3,4,6,10]
>>> random.shuffle(a)
>>> a
[1, 3, 6, 2, 10, 4]

在 numpy 中与 numpy.random.shuffle 相同:

>>> import numpy as np
>>> np.random.shuffle(a)
>>> a
[4, 6, 10, 3, 1, 2]