如何绘制我的groupby()结果?

时间:2016-09-12 15:51:47

标签: python pandas plot nan resampling

我在这样的数据上运行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的时间序列之前。最快的方法是什么?

1 个答案:

答案 0 :(得分:2)

您可以使用:

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