随机保留字典中的X百分比

4 投票
1 回答
937 浏览
提问于 2025-04-17 12:08

我在这个问题上有点困扰。

我需要随机保留一个字典中的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 个回答

8

如果顺序不重要的话...

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

附言:如果votes_selected实际上是一个字典,那你可以这样做:

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

撰写回答