首页 > 解决方案 > 如何在 Pandas Python 中获得第二大值

问题描述

这是我的代码:

maxData = all_data.groupby(['Id'])[features].agg('max')
all_data = pd.merge(all_data, maxData.reset_index(), suffixes=["", "_max"], how='left', on=['Id'])

现在,我如何获取上述代码中的第二个最大值(groupBy Id),而不是获取最大值

标签: pythonpandas

解决方案


尝试使用nlargest

maxData = all_data.groupby(['Id'])[features].apply(lambda x:x.nlargest(2)[1]).reset_index(drop=True)

推荐阅读