gpt4 book ai didi

Python:如何获取随机子集

转载 作者:行者123 更新时间:2023-12-04 14:22:17 25 4
gpt4 key购买 nike

我如何在 python 中获得一组 s 的随机子集?我试着做

from random import sample, randint

def random_subset(s):
length = randint(0, len(s))
return set(sample(s, length))

但是我现在意识到这显然不起作用,因为 len(s) 是随机子集的 s 的分布从 0n 并不统一。

我确定我可以计算该分布并以概率或类似的方式使用 numpy 的样本,但我更喜欢纯 python 的东西。

最佳答案

我刚刚意识到我可以简单地浏览 s 中的每个元素并独立决定是否保留它。像这样的东西

from random import randint

def random_subset(s):
out = set()
for el in s:
# random coin flip
if randint(0, 1) == 0:
out.add(el)
return out

这具有正确的分布。

关于Python:如何获取随机子集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54758465/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com