【发布时间】:2020-11-08 05:22:59
【问题描述】:
我有以下 DataFrame nq 我想为其绘制线图。
-1、-2 等列表示在date 列中给出的日期之前和之后的用户得分,即如果nq.date = 2020-10-23 则nq.-1 =2020-10-22。我尝试了以下代码,但它产生了KeyError: (-7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7)。有没有办法解决这个问题?
nq
UserId | date |-7|-6|-5|-4|-3|-2|-1|0 |1 |2 |3 |4 |5 |6 |7
1 2009-10-17 17:38:32.590 |0 |0 |0 |0 |0 |0 |5 |0 |1 |0 |0 |0 |0 |0 |0
2 2009-10-19 00:37:23.067 |0 |0 |0 |0 |0 |2 |1 |0 |1 |0 |0 |8 |0 |0 |0
3 2009-10-20 08:37:14.143 |0 |0 |0 |0 |0 |0 |3 |0 |0 |0 |0 |0 |0 |0 |0
4 2009-10-21 18:07:51.247 |0 |7 |0 |0 |0 |0 |1 |0 |0 |0 |0 |0 |0 |0 |0
5 2009-10-22 21:25:24.483 |0 |0 |0 |0 |0 |0 |1 |0 |0 |0 |0 |0 |0 |0 |0
代码
nq.plot(kind='line',x=nq[-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7], y=nq[-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7].mean())
【问题讨论】:
-
图表应该是什么样子的?
-
@ipj x 轴应该有从 -7 到 7 的标签,y 轴应该有标签的平均值。
标签: python pandas datetime matplotlib time-series