Python:如何选择10个随机样本n次

时间:2015-05-18 16:36:37

标签: python

尝试

import numpy as np
import random

with open(r'C:\Python27\Lib\site-packages\visual\examples\hsp.txt') as f:

    random.choice(set(f),10)

def repeat(f,N):
    for _ in itertools.repeat(None,N): f()

错误

  

TypeError:choice()只需要2个参数(给定3个)

如果我用50代替N,它也会给我一个无效的语法。

1 个答案:

答案 0 :(得分:1)

来自Python文档

random.sample(population, k)


Return a k length list of unique elements chosen from the population sequence. Used for random sampling without replacement.

New in version 2.3.

返回包含来自总体的元素的新列表,同时保持原始总体不变。结果列表按选择顺序排列,因此所有子切片也将是有效的随机样本。这允许抽奖获奖者(样本)被划分为大奖和第二名获胜者(下属)。

人口中的成员不需要是可以清洗或独特的。如果总体包含重复,则每次出现都是样本中可能的选择。

要从一系列整数中选择样本,请使用xrange()对象作为参数。对于从大量人群中采样,这种方法特别快且节省空间:样本(xrange(10000000),60)。