Необходимо убедиться, что столбец вклада является числовым, а не строками, чтобы получить правильные совпадающие числа, как в SQL.Я думаю, что странные ноты, которые вы получаете, связаны со строковым характером столбца «вклад».Тогда должно работать следующее:
import pandas as pd
import numpy as np
a=pd.DataFrame([['A','Fund_1','0.20','2013-01-01','2013-01-02'],
['B','Fund_1','0.10','2013-01-01','2013-01-02'],['A','Fund_1','0.05','2013-
01-03','2013-01-04'],['B','Fund_1','0.45','2013-01-03','2013-01-04']],
columns=['TraderGroup', 'Fund Name','Contribution','From', 'To'])
print a
a['Contribution'] = pd.to_numeric(a['Contribution'], errors='coerce')
b=a.groupby(['TraderGroup','Fund Name']).agg({'Contribution':np.sum,
'From':'min','To':'max'}).reset_index()
print b