Skip to content Skip to sidebar Skip to footer

Panadas Rolling Sum Based On Multiply Minutes In Python

I have this df dateTime 1min hour minute X EXPECTED Rolling_X 2017-09-19 02:00:04 2017-09-19 02:00:00 2 0 93 93 2017-09-19 02:00:04 2017-09-19 02:00:00

Solution 1:

Change your floor argument.

s = df['dateTime'].dt.floor('2T').diff().shift(-1).eq(pd.Timedelta('2 minutes'))
s1 = df['X'].cumsum()
df['2min_CumX'] = s.mul(s1).diff().where(lambda x: x < 0).ffill().add(s1, fill_value=0)

Output:

dateTime1minhourminuteXEXPECTEDRolling_X2min_CumX02017-09-19 02:00:04  2017-09-19 02:00:00     20939393.012017-09-19 02:00:04  2017-09-19 02:00:00     2019494.022017-09-19 02:00:04  2017-09-19 02:00:00     2019595.032017-09-19 02:00:22  2017-09-19 02:00:00     2029797.042017-09-19 02:01:31  2017-09-19 02:01:00     2109797.052017-09-19 02:01:31  2017-09-19 02:01:00     2119898.062017-09-19 02:01:32  2017-09-19 02:01:00     2119999.072017-09-19 02:01:34  2017-09-19 02:01:00     2109999.082017-09-19 02:01:35  2017-09-19 02:01:00     2109999.092017-09-19 02:01:35  2017-09-19 02:01:00     2109999.0102017-09-19 02:01:39  2017-09-19 02:01:00     211100100.0112017-09-19 02:01:58  2017-09-19 02:01:00     212102102.0122017-09-19 02:01:58  2017-09-19 02:01:00     210102102.0132017-09-19 02:02:02  2017-09-19 02:02:00     22333.0142017-09-19 02:02:32  2017-09-19 02:02:00     22033.0152017-09-19 02:02:32  2017-09-19 02:02:00     22144.0162017-09-19 02:02:40  2017-09-19 02:02:00     22151919.0172017-09-19 02:02:41  2017-09-19 02:02:00     2262525.0182017-09-19 02:02:44  2017-09-19 02:02:00     2212626.0192017-09-19 02:02:53  2017-09-19 02:02:00     2232929.0202017-09-19 02:03:00  2017-09-19 02:03:00     2313030.0212017-09-19 02:03:00  2017-09-19 02:03:00     2313131.0222017-09-19 02:03:05  2017-09-19 02:03:00     2313232.0232017-09-19 02:04:07  2017-09-19 02:04:00     24777.0242017-09-19 02:04:58  2017-09-19 02:04:00     24299.0252017-09-19 02:05:22  2017-09-19 02:05:00     25112020.0262017-09-19 02:05:36  2017-09-19 02:05:00     25113131.0

Post a Comment for "Panadas Rolling Sum Based On Multiply Minutes In Python"