【问题标题】:Python Pandas. Describe() by date蟒蛇熊猫。按日期描述()
【发布时间】:2021-02-18 17:12:49
【问题描述】:

我想绘制面板数据随时间推移的汇总统计数据。 X 轴是时间,Y 轴是感兴趣的变量,包括平均值、最小值/最大值、P25、P50、P75 等。

这基本上会循环并计算每个日期的所有单独观察的统计数据,然后绘制它们。

我想要做的与下面类似,但 y 轴将是日期而不是 1-10。

import numpy as np
import pandas as pd
# Create random data
rd = pd.DataFrame(np.random.randn(100, 10))
rd.describe().T.drop('count', axis=1).plot()

在我的数据集中,每个人的时间序列相互叠加。

我尝试运行以下命令,但我似乎获得了整个数据集的描述性统计数据,并且没有按日期细分。

rd = rd.groupby('period').count().describe()
print (rd)
rd.show()

【问题讨论】:

    标签: python pandas numpy


    【解决方案1】:

    以下面的数据框为例:

    df = pd.DataFrame({'Values':[10,20,30,20,40,60,40,80,120],'period': [1,2,3,1,2,3,1,2,3]})
    df
    
        Values  period
    0   10      1
    1   20      2
    2   30      3
    3   20      1
    4   40      2
    5   60      3
    6   40      1
    7   80      2
    8   120     3
    

    现在,使用groupby 按日期绘制描述性统计数据:

    df.groupby('period').describe()['Values'].drop('count', axis = 1).plot()
    

    【讨论】:

    • 谢谢。有趣的是您的代码运行,但是当我用我的数据框替换时,我收到以下错误:AttributeError:'GroupedData' object has no attribute 'describe'
    • 你能显示你的数据框吗?您可以编辑主要问题并提供数据框的minimal reproducible example。也许我会明白为什么会出现错误。
    • 在编辑中添加了代码。我想我需要先以某种方式将我的数据添加到数据框中?谢谢。
    • 我要问的是您是否可以分享您的数据框的外观。是不是像我提供的示例中的df
    • 添加了 df.我认为它需要添加到熊猫 df 中?
    猜你喜欢
    • 2018-10-10
    • 2021-11-09
    • 2021-02-09
    • 1970-01-01
    • 2016-10-16
    • 1970-01-01
    • 2020-12-16
    • 1970-01-01
    • 2022-12-13
    相关资源
    最近更新 更多