我有一个多索引数据框,为简单起见,如下所示;
Values
01-01-2010 Belgium 1
Belgium 7
UK 3
UK 4
UK 2
France 1
France 3
02-01-2010 Belgium 4
UK 7
UK 10
UK 2
France 4
我需要尝试求和每天每个国家的价值。 实际数据框架包含40个国家/地区大约10年的数据。
是否有使用resample()函数执行此操作的简单方法? 我似乎无法使用多索引。我也许可以将这些国家改回专栏?
任何帮助深表感谢。
答案 0 :(得分:2)
groupby
您的索引
df2 = df.groupby(level=[0,1])['Values'].sum()
print(df2)
01-01-2010 Belgium 8
France 4
UK 9
02-01-2010 Belgium 4
France 4
UK 19
Name: Values, dtype: int64
答案 1 :(得分:1)
实际上,认为如果我允许索引首先是列,这会起作用;
sum_df = df.groupby(['Time','From Country']).agg({'Value': 'sum'})