穷遛客 2021-04-24 10:15 采纳率: 77.8%
浏览 39
已采纳

一个样本分年份计算按占比20%的数量计算均值

按收入final_income排序后,分年份(WAVE)计算BMI均值,计算结果类似下面这样,请问是用分箱操作吗?

  • 写回答

2条回答 默认 最新

  • 关注

    这个数据处理关键的是按百分比进行分段, 可以用pd.qcut(), 只不过先分组后分段, 分段的关键步骤可参考:

    import pandas as pd
    import numpy as np
    
    data = pd.DataFrame({'值':np.random.randint(10,100,1000),'类型':np.random.choice(['a','b','c'],1000)})
    
    # 不分组
    data['分段'] = pd.qcut(data['值'],q=5)
    
    # 分组
    data['分组_分段'] = data.groupby('类型').apply(lambda x: pd.qcut(x['值'],q=5,labels=['低','低中','中','中高','高'])).values
    
        值 类型             分段 分组_分段
    0  25  a  (9.999, 27.0]     低
    1  23  a  (9.999, 27.0]     低
    2  90  a   (84.0, 99.0]     高
    3  40  b   (27.0, 45.0]     低
    4  34  c   (27.0, 45.0]    中高
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥100 复现论文:matlab仿真代码编写
  • ¥15 esp32驱动GC9A01循环播放视频
  • ¥15 惠普360g9的最新bios
  • ¥30 这个功能用什么软件发合适?
  • ¥60 微信小程序,取消订单,偶尔订单没有改变状态
  • ¥15 用pytorch实现PPO算法
  • ¥15 关于调制信号的星座图?
  • ¥30 前端传参时,后端接收不到参数
  • ¥15 这是有什么问题吗,我检查许可证了但是显示有呢
  • ¥15 机器学习预测遇到的目标函数问题