Timegrouper的Timegrouper

时间:2016-07-08 21:43:01

标签: python python-2.7 pandas

您好我有以下Timegrouper数据框,其中每分钟计算每分钟最大值的最大值:

in: 
newdf2 = newdf.groupby(pd.TimeGrouper(freq='15T')).max().fillna(0)
Out:

                         Count
time                    
2016-04-20 05:30:00        4.0
2016-04-20 05:45:00        0.0
2016-04-20 06:00:00        0.0
2016-04-20 06:15:00        6.0
2016-04-20 06:30:00        5.0

我希望这回到这样的分钟:

                         Count
time                    
2016-04-20 05:31:00        4.0
2016-04-20 05:32:00        4.0
2016-04-20 05:33:00        4.0
2016-04-20 05:34:00        4.0
2016-04-20 05:35:00        4.0
...
2016-04-20 05:44:00        4.0
2016-04-20 05:45:00        0.0

我尝试使用interval ='1T'再次进行timegrouper,但这不会返回任何内容。

我可以通过简单的pandas功能实现这一目标吗?

1 个答案:

答案 0 :(得分:2)

我认为resample需要ffill

df = df.resample('1T').ffill()
print (df)
                     Count
time                      
2016-04-20 05:30:00    4.0
2016-04-20 05:31:00    4.0
2016-04-20 05:32:00    4.0
2016-04-20 05:33:00    4.0
2016-04-20 05:34:00    4.0
2016-04-20 05:35:00    4.0
2016-04-20 05:36:00    4.0
2016-04-20 05:37:00    4.0
2016-04-20 05:38:00    4.0
2016-04-20 05:39:00    4.0
2016-04-20 05:40:00    4.0
2016-04-20 05:41:00    4.0
2016-04-20 05:42:00    4.0
2016-04-20 05:43:00    4.0
2016-04-20 05:44:00    4.0
2016-04-20 05:45:00    0.0
2016-04-20 05:46:00    0.0
...
...