【python】加权中位数计算

1.安装模块

pip install wquantiles

2.数据准备

state = ["阿拉巴马州","阿拉斯加州","亚利桑那州","阿肯色州","加利福尼亚州","科罗拉多州","康涅狄格州","特拉华州"]
population = [4779736,710231,6392017,2915918,37253956,5029196,3574097,897934]
murder = [5.7,5.6,4.7,5.6,4.4,2.8,2.4,5.8]

df = pd.DataFrame({"州":state,"人口":population,"谋杀率":murder})
df
人口谋杀率
0阿拉巴马州47797365.7
1阿拉斯加州7102315.6
2亚利桑那州63920174.7
3阿肯色州29159185.6
4加利福尼亚州372539564.4
5科罗拉多州50291962.8
6康涅狄格州35740972.4
7特拉华州8979345.8

3.计算加权中位数

wquantiles模块的内部方法
def median(data, weights):
    """
    Weighted median of an array with respect to the last axis.

    Alias for `quantile(data, weights, 0.5)`.
    """
    return quantile(data, weights, 0.5)
计算平均谋杀率(加权中位数)

调用wquantiles模块

import wquantiles
wquantiles.median(df["谋杀率"],df["人口"])

结果:4.448750497554494

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值