在python中随机抽样

诺比

您好,请使用下面的代码,当size> 5时,将引发以下错误。python 2.7中是否会存在另一个随机函数,该函数可以从初始个体生成6个或更多不同的样本,因此总体上将附加6个列表。谢谢

import random as rand

population = []
individual = [1,2,3,4,5]
size = 5

for ind in individual:
        population.append((rand.sample(individual, size)))

print "pop", population

#output
pop =  [[1, 3, 5, 2, 4], [3, 4, 5, 2, 1], [3, 1, 2, 4, 5], [1, 5, 3, 4, 2], [1, 5, 3, 2, 4]] 
#Error Message
Traceback (most recent call last):
  File "C:/Users/AMAMIFE/Desktop/obi/tt.py", line 10, in <module>
    population.append((rand.sample(individual, size)))
  File "C:\Python27\x86\lib\random.py", line 321, in sample
    raise ValueError("sample larger than population")
ValueError: sample larger than population
罗伯·沃茨

您在sample这里使用的方式似乎不正确。从中随机random.sample(a_sequence, n)选择n对象a_sequence例如:

>>> import random
>>> my_list = range(5)
>>> random.sample(my_list, 3)
[0, 3, 2]
>>> random.sample(my_list, 3)
[4, 1, 0]
>>> random.sample(my_list, 3)
[2, 0, 4]
>>> random.sample(my_list, 3)
[4, 0, 2]
>>> random.sample(my_list, 3)
[1, 4, 3]

尝试从5个项目的列表中采样6个项目是没有意义的。取出5个项目后,没有第六个项目可供您取出。

当您说要从大小为5的列表中抽样5个项目时,只是说您希望所有内容都以随机顺序排列。如果要获取n这些,请尝试使用itertools.permutations

>>> import random
>>> import itertools
>>> my_list = range(5)
>>> random.sample(list(itertools.permutations(my_list)), 5)
[(4, 2, 1, 3, 0), (3, 0, 2, 4, 1), (2, 3, 0, 4, 1), (4, 3, 0, 1, 2), (4, 0, 3, 2, 1)]
>>> random.sample(list(itertools.permutations(my_list)), 6)
[(0, 2, 1, 4, 3), (1, 2, 4, 0, 3), (1, 0, 3, 2, 4), (2, 1, 4, 3, 0), (0, 3, 2, 1, 4), (4, 2, 0, 1, 3)]
>>> random.sample(list(itertools.permutations(my_list)), 7)
[(4, 3, 1, 2, 0), (3, 0, 1, 2, 4), (2, 0, 1, 3, 4), (4, 2, 3, 1, 0), (0, 4, 1, 3, 2), (3, 0, 2, 1, 4), (0, 1, 2, 3, 4)]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Excel中的随机抽样

来自分类Dev

Elasticsearch中的加权随机抽样

来自分类Dev

随机抽样分组

来自分类Dev

高效随机抽样

来自分类Dev

生成重复随机抽样

来自分类Dev

从概率分布中随机抽样一定次数

来自分类Dev

在R中没有替换的重复分层随机抽样

来自分类Dev

使用 clusterR 从大型栅格中随机抽样

来自分类Dev

不同类别的随机抽样

来自分类Dev

SQL Server快速随机抽样

来自分类Dev

从数据帧进行分层随机抽样

来自分类Dev

随机抽样的子集,用R替换

来自分类Dev

熊猫数据框随机抽样

来自分类Dev

如何在10000次重复中优化r中的分层随机抽样

来自分类Dev

如何在 python 中生成随机抽样。与整数。给定总和和大小

来自分类Dev

R中代码中的每种可能组合,而不是随机抽样

来自分类Dev

在进行随机抽样时,您是否考虑事件的不同概率?(在R中)

来自分类Dev

如何在随机抽样中获得3个没有重复的列表?(右)

来自分类Dev

在进行随机抽样时,您是否考虑事件的不同概率?(在R中)

来自分类Dev

从随机抽样中提取R中的近似概率密度函数(pdf)

来自分类Dev

R:随机抽样各种类别的观测值

来自分类Dev

Numpy.copy无法正常工作以进行随机抽样

来自分类Dev

如何随机抽样所有类别的数据?

来自分类Dev

使用游程长度编码进行随机抽样(RLE)

来自分类Dev

R:随机抽样各种类别的观测值

来自分类Dev

Numpy.copy无法正常工作以进行随机抽样

来自分类Dev

无需替换即可随机抽样,同时保持表格数据的自然顺序

来自分类Dev

按组随机抽样:如何指定n,而不是权重?(使用DataFrameGroupBy.sample)

来自分类Dev

使用 sample() 进行随机抽样会产生意想不到的结果

Related 相关文章

热门标签

归档