我一直在使用pandas数据框中的聚合。考虑以下数据框:
df=pd.DataFrame({'a':[1,2,3,4,5,6,7,8],
'batch':['q','q','q','w','w','w','w','e'],
'c':[4,1,3,4,5,1,3,2]})
我必须在批处理列上进行汇总,其中列a
的平均值,列c
的最小值。
我使用以下方法进行汇总:
agg_dict = {'a':{'a':'mean'},'c':{'c':'min'}}
aggregated_df = df.groupby("batch").agg(agg_dict)
问题是我希望最终数据帧具有与原始数据帧相同的列,但在每列中都存在聚合值时稍有不同。 上述聚合的结果是一个多索引数据帧,并且不确定如何将其转换为单个数据帧吗? 我点击了链接:Reverting from multiindex to single index dataframe in pandas。但是,这不起作用,最终输出仍然是多索引数据帧。 太好了,如果有人可以帮忙
答案 0 :(得分:0)
您可以尝试以下代码df.groupby('batch')。aggregate({'c':'min','a':mean})