数据帧过滤每天的最高值,并再次将其保存在具有2列的DataFrame中

2022-02-26 00:00:00 pandas dataframe pandas-groupby

问题描述

我有一个这样的DataFrame。df:

我将以下函数应用于df

df_new = df.groupby(pd.Grouper(key="longtime",freq="D")).agg({df.columns[1]: [np.max]})
df_new = pd.DataFrame(data= df_new)
print(df_new)

下面您将看到df_new的输出。DatFrame有1列。但是我希望";long";和";Amax";存储在两个单独的列中。我必须如何调整df_new的函数才能实现这一点?


解决方案

agg中的一个元素列表中删除[]以避免MultiIndex并添加DataFrame.reset_index

df_new = (df.groupby(pd.Grouper(key="longtime",freq="D"))
            .agg({df.columns[1]: np.max})
            .reset_index())

相关文章