创建更大范围的随机样本
Creating random sample larger that range
我正在尝试创建一个包含 500 个介于(包括)60 和 126 之间的值的样本。我有 ATM:
random.sample(range(60,126),500)
但语法无效,因为样本量大于我指定的范围。
我应该使用 'list' 还是某种迭代来代替,如果是,如何?
您可以使用 random.choices
:
random.choices(range(60, 126), k=500)
这将 return 包含 500 个值的列表,其中每个值都来自提供的范围。值将从每次选择中的同一个集合中采样,因此每个值可能出现不止一次(即使集合大小大于 k
)。
您可以使用 numpy.random.randint 更快更简单的方法
np.random.randint(60, 127, size=500)
我正在尝试创建一个包含 500 个介于(包括)60 和 126 之间的值的样本。我有 ATM:
random.sample(range(60,126),500)
但语法无效,因为样本量大于我指定的范围。
我应该使用 'list' 还是某种迭代来代替,如果是,如何?
您可以使用 random.choices
:
random.choices(range(60, 126), k=500)
这将 return 包含 500 个值的列表,其中每个值都来自提供的范围。值将从每次选择中的同一个集合中采样,因此每个值可能出现不止一次(即使集合大小大于 k
)。
您可以使用 numpy.random.randint 更快更简单的方法
np.random.randint(60, 127, size=500)