【问题标题】:How can I plot my groupby() result?如何绘制我的 groupby() 结果?
【发布时间】:2017-01-20 02:58:54
【问题描述】:

我正在对我的数据运行groupby(),如下所示:

user.groupby(["DOC_ACC_DT", "DOC_ACTV_CD"]).agg("sum")["SUM_DOC_CNT"]

这导致了这个分组数据:

DOC_ACC_DT  DOC_ACTV_CD
2015-07-01  BR              1
            PT              1
2015-07-02  BR              1
            PT              1
2015-07-06  BR              1
            PT              1
2015-07-08  BR              1
2015-07-09  AD              2
            PT              1
2015-07-13  AD             50
            BR             52
            PT              1
2015-07-14  AD              6
            BR              5
            PT              1
2015-07-16  BR              1
            PT              1
2015-07-23  AD             13
            BR             14
            PT              3
2015-07-27  BR              1
            PT              1

我现在要做的只是由DOC_ACTV_CD 绘制。请不要说天之间有间隔,所以我必须在没有发生任何事情的天之间填写零值,例如

2015-07-23  AD             13
            BR             14
            PT              3
2015-07-25  BR              1
            PT              1

必须变成

2015-07-23  AD             13
            BR             14
            PT              3
2015-07-24  AD              0
            BR              0
            PT              0
2015-07-25  AD              0
            BR              1
            PT              1

在我为ADBRPT 在一个图中绘制时间序列之前。最快的方法是什么?

【问题讨论】:

    标签: python pandas plot nan resampling


    【解决方案1】:

    你可以使用:

    df = user.groupby(["DOC_ACC_DT", "DOC_ACTV_CD"]).agg("sum")["SUM_DOC_CNT"]
    df.unstack().resample('D').replace(np.nan,0).plot()
    

    【讨论】:

    • 谢谢。它返回警告,问题在于函数fillna(0)
    猜你喜欢
    • 1970-01-01
    • 2016-03-17
    • 2018-02-24
    • 2013-03-06
    • 2016-02-09
    • 2022-06-22
    • 1970-01-01
    • 1970-01-01
    • 2022-11-16
    相关资源
    最近更新 更多