感兴趣日期前几天的数量总和

时间:2018-09-11 18:34:13

标签: python pandas datetime

我有一个洪水数据量(0 [无水灾]至3 [大水灾])和每天时间尺度上的降水的数据框。这是数据的片段:

     date       Size    ppt
2017-09-13      0.0     0.000000
2017-09-14      0.0     34.709998
2017-09-15      0.0     0.000000
2017-09-16      0.0     0.000000
2017-09-17      0.0     0.000000
2017-09-18      0.0     0.600000
2017-09-19      3.0     157.439998

我对洪水发生前“ X”天的降雨量多少感兴趣,而不仅是洪水当天的降雨量。例如,使用上述数据,在2017年9月19日洪水之前的7天里,约193毫米下降了,在前三天约158毫米下降了。但是,我不知道该如何编码。外面有人可以帮忙吗?

谢谢:)

1 个答案:

答案 0 :(得分:2)

我猜您仅关注洪水泛滥的行,即Size!= 0。您可以在应用下面的代码后过滤掉这些行。

给出如下数据框rain

     date       Size    ppt
2017-09-13      0.0     0.000000
2017-09-14      0.0     34.709998
2017-09-15      0.0     0.000000
2017-09-16      0.0     0.000000
2017-09-17      0.0     0.000000
2017-09-18      0.0     0.600000
2017-09-19      3.0     157.439998


## 7-day cumulative precipitation
rain['ppt_7day'] = rain['ppt'].rolling(7).sum()
## 3-day cumulative precipitation
rain['ppt_3day'] = rain['ppt'].rolling(3).sum()

输出:

          date size     ppt    ppt_7day    ppt_3day
0  2017-09-13     0       0         NaN         NaN
1   2017-09-14    0   34.71         NaN         NaN
2   2017-09-15    0       0         NaN   34.709998
3   2017-09-16    0       0         NaN   34.709998
4   2017-09-17    0       0         NaN    0.000000
5   2017-09-18    0     0.6         NaN    0.600000
6   2017-09-19    3  157.43  192.739998  158.030000