python - 根据权重百分比在数据框中随机分配值
问题描述
例如我有以下数据框
ID A/B Test
1234
3456
6789
3987
我想根据 50% 的分布为 A/B 测试列随机分配一个“Y”或“N”。换句话说,我想拆分 df 并确保 50% 的记录有“Y”和 50% 的“N”,但这些值应该随机分配。
输出数据框:
ID A/B Test
1234 Y
3456 N
6789 N
3987 Y
请帮忙!
谢谢
解决方案
您可以使用np.random.choice
:
df['A/B Test'] = np.random.choice(['Y','N'], size=len(df))
请注意,如果您的数据足够长,则此方法有效,并且您将拥有大致相同数量的Y
和N
。也就是说,您可能有 9995Y
和 10005 N
。
推荐阅读
- c# - 在 ASP.NET MVC 中更新多个选择下拉列表(选择 2)
- asp.net-web-api - Azure 托管服务出错“发送请求时出错”
- json - 如何从 JSON API 调用项目并添加到 TabBar - Flutter
- java - 为什么我的多线程程序会出现三种结果?
- google-drive-api - 无法使用邮递员在 Google Drive 中创建文件夹
- javascript - DataTable 中的 rowsPerPageOptions 未显示
- android - 我的 build.gradle 文件出现错误
- reactjs - 在 docker 容器中使用 React 部署 ExpressJS
- c# - 有没有办法使用谷歌应用脚本识别谷歌演示文稿中的隐藏幻灯片?
- spring - Eclipse 氧气的 Spring Tool Suite(STS) 插件