我想用3个桶做一个A/B实验。如果我有2个bucket,我可以使用方法random.sample
从所有用户中获得2组用户
from random import sample
test = sample(all_users, k=100)
control = set(all_users) - set(test)
由于我需要3组用户,下面的代码是否能确保每个用户在任一变体中都有相同的机会
NUM_USERS = int(len(all_users) * 0.33)
variant1 = sample(all_users, NUM_USERS)
variant2 = sample(set(all_users) - set(variant1), NUM_USERS)
variant3 = set(all_users) - variant1 - variant2
我想会的,但因为它是代码,你可以很容易地进行经验测试。例如,您可以将代码包装成一个函数,并调用它几千次,确保每个条目在任何一个变体中都有相同的结束概率
表达这一点的另一种方式是洗牌元素,然后选择子集。例如,类似于:
相关问题 更多 >
编程相关推荐