加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

如何随机地将“是/否”(比例为7:3)附加到pandas数据帧中的列?

发布时间:2020-12-20 12:10:43 所属栏目:Python 来源:网络整理
导读:我有一个数据框,由三列组成.我想使用 python-pandas将“Yes”或“No”附加到其中一个列. Yes:No之间的比例是7:3. 有没有人试过这个? 解决方法 随着numpy的 random.choice : df["new_column"] = np.random.choice(["Yes","No"],len(df),p=[0.7,0.3]) 注意
我有一个数据框,由三列组成.我想使用 python-pandas将“Yes”或“No”附加到其中一个列. Yes:No之间的比例是7:3.

有没有人试过这个?

解决方法

随着numpy的 random.choice

df["new_column"] = np.random.choice(["Yes","No"],len(df),p=[0.7,0.3])

注意:np.random.choice包含独立的试验(除非你传递replace = False).在每次试验中,获得“是”的概率为0.7.最后,你可能不会完全达到70%的比例.然而,对于2480500行,这个二项分布将近似于正态分布,平均值为2480500 * 0.7,标准差为sqrt(2480500 * 0.7 * 0.3).使用/ -3标准差(概率为99.73%),您将得到(0.69913,0.70087)之间的比率.但如果你想要70%,你可以使用熊猫的样本作为@EdChum suggested,我猜它有一个修正因子.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读