gpt4 book ai didi

Pandas 为每行获取上下栅栏

转载 作者:行者123 更新时间:2023-12-04 15:39:03 25 4
gpt4 key购买 nike

我的输入数据框是;

Grp          A          B       C
Men 10 15 20
Women 15 10 25
Baby 5 10 20
Men 3 8 25
Men 7 5 30
Baby 5 2 8
Women 10 6 3

我怎样才能为独特的群体获得这个上下围栏?

期望的输出是;

GRP        Upper_A     Lower_A      Upper_B     Lower_B   Upper_C   Lower_C
Men
Women
Baby

你能帮我解决这个问题吗?PS:上限值和下限值是盒须值。

最佳答案

使用GroupBy.aggSeries.quantile ,指定新的列名称,然后通过 f-strings 展平 MultiIndex:

df = df.groupby('Grp').agg([('Upper', lambda x: x.quantile(.75)), 
('Lower',lambda x: x.quantile(.25))])
df.columns = [f"{b}_{a}" for a,b in df.columns]
print (df)
Upper_A Lower_A Upper_B Lower_B Upper_C Lower_C
Grp
Baby 5.00 5.00 8.0 4.0 17.0 11.0
Men 8.50 5.00 11.5 6.5 27.5 22.5
Women 13.75 11.25 9.0 7.0 19.5 8.5

关于Pandas 为每行获取上下栅栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58643015/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com