将分位数计算输出转换为数据帧[重复]

问题描述 投票:0回答:1

我正在尝试计算分位数输出并且很接近,但不确定如何将我的输出转换为数据框。

x.groupby(['day'])['mins'].quantile(.5)

这给了我我想要的,

输出不是数据框,我需要输出是数据框。

输出看起来像:

    day
    2019-06-28    3.0
    2019-06-30    4.0
    2019-07-02    3.0
    2019-07-06    3.0
    2019-07-08    3.0
    Name: mins, dtype: float64
python pandas dataframe quantile
1个回答
2
投票

你只需要执行reset_index()

df = pd.DataFrame({'mins': [1, 2, 2, 10, 6],
                   'day':['2019-06-28','2019-06-28','2019-06-30','2019-06-30','2019-07-02']})

res = df.groupby(['day'])['mins'].quantile(0.5).reset_index()
res.rename(columns={'mins':'quantile_value'},inplace=True)
print(res)
          day  quantile_value
0  2019-06-28   1.5
1  2019-06-30   6.0
2  2019-07-02   6.0

希望能解决你的问题

© www.soinside.com 2019 - 2024. All rights reserved.