Python 带日期限制的总和信息

Python 带日期限制的总和信息,python,pandas,filter,group-by,Python,Pandas,Filter,Group By,我只想通过ID和给定值求和,根据日期范围求和 我试过这个: days=(360) import datetime import pandas as pd group = None df=pd.read_excel(r'C:\Users\xxxx\Desktop\xxxxx.xlsx') for i in days: D = ((datetime.datetime.now()-datetime.timedelta(days=i))) B = D <= df[

我只想通过ID和给定值求和,根据日期范围求和

我试过这个:

days=(360)
import datetime 
import pandas as pd
group = None
df=pd.read_excel(r'C:\Users\xxxx\Desktop\xxxxx.xlsx')
for i in days:
        D = ((datetime.datetime.now()-datetime.timedelta(days=i)))
        B = D <= df['DATE']
        group = df.groupby('ID')['VALUE'].filter(lambda x: B ).sum()
但是有一个错误

TypeError: the filter must return a boolean result
即使是B型也是bool

我需要的结果是:

    ID Value
     1  22
     2  15

我相信您需要在
groupby
之前进行筛选:

 group = df[B].groupby('ID')['VALUE'].sum()
或:

D=((datetime.datetime.now()-datetime.timedelta(days=i)))

B=df.loc[D我认为您需要在
groupby
之前进行筛选:

 group = df[B].groupby('ID')['VALUE'].sum()
或:

D=((datetime.datetime.now()-datetime.timedelta(days=i)))
B=测向位置[D]
 D = ((datetime.datetime.now()-datetime.timedelta(days=i)))
 B = df.loc[D <= df['DATE'], 'VALUE']
 group = B.groupby(df['ID']).sum()