随机保留字典的X百分比

时间:2012-02-01 18:05:49

标签: python django

我正在努力解决这个问题。

我需要随机保留字典的X%以进行某些分析。

用户将输入他们想要保留的数据的百分比 示例值:10,50,70,100

因此,当用户输入30时,我将如何随机保留每100个元素中的30个?

我尝试了以下但是它没有用,因为我需要一本字典。建议?

images = {}
for vote in votes_selected:
    images[int(vote['id_left'])] = 1
    images[int(vote['id_right'])] = 1
selected_images = random.sample(images, int(len(images) * 50/100))

1 个答案:

答案 0 :(得分:8)

如果订购无关紧要......

import random
random.sample(votes_selected, int(len(votes_selected) * DATA_PERCENTAGE / 100))

P.S。如果votes_selected实际上是一个字典,那么你可以这样做:

dict(random.sample(votes_selected.iteritems(), int(len(votes_selected) * DATA_PERCENTAGE / 100)))