微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

根据分位数标记变量 [Python]

如何解决根据分位数标记变量 [Python]

我想将一列分成 4 个不同的类,并根据 3 个分位数用 0、1、2、3 标记每个类。

This is my Dataframe
     
0      36.88
1      36.88
2      36.88
3      36.88
4      49.12
       ...  
695    80.88
696    30.98
697    31.22
698    31.22
699    31.76
Name: total_charges,Length: 700,dtype: float64

然后我根据它的分位数拆分我的列:

df['total_charges'].quantile([0.25,0.5,0.75])

0.25    28.750
0.50    40.970
0.75    64.335
Name: total_charges,dtype: float64

现在我想要所有的值

  • 从 0 到 0.25 = 1
  • 0.25 → 50 = 2
  • 0.50 → 0.75 = 3
  • 0.75 à 1 = 4

非常感谢您的帮助:)

解决方法

pd.qcut(df["total_charges"],4,labels=[1,2,3,4])

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。