<pre><code>import datetime
import pandas as pd
data={'id':[1,1,1,1,2,2,2,2],
'date1':[datetime.date(2016,1,1),datetime.date(2016,1,2),datetime.date(2016,1,2),datetime.date(2016,1,4),
datetime.date(2016,1,2),datetime.date(2016,1,4),datetime.date(2016,1,3),datetime.date(2016,1,1)],
'date2':[datetime.date(2016,1,5),datetime.date(2016,1,3),datetime.date(2016,1,5),datetime.date(2016,1,5),
datetime.date(2016,1,4),datetime.date(2016,1,5),datetime.date(2016,1,4),datetime.date(2016,1,1)],
'score1':[5,7,3,2,9,3,8,3],
'score2':[1,3,0,5,2,20,7,7]}
df=pd.DataFrame.from_dict(data)
data={'id':[1,1,2,2],
'date':[datetime.date(2016,1,1),datetime.date(2016,1,2),datetime.date(2016,1,2),datetime.date(2016,1,4)]}
df1=pd.DataFrame.from_dict(data)
data1=[]
x=[]
def agg(df,df1):
for i in range(1,2):
x=list(df1.id)
y=list(df1.date)
data1= df[df.id==x[i]]
data2=data1[data1.date1 > y[i]]
data3=data2[data1.date2 < y[i]]
data4=data3.groupby(['id']).agg({"score1":sum})
x.append(data4)
return data4
agg(df,df1)
</code></pre>
<p>请试试这个</p>