pandas获取某列最大值的所有数据的两种方法
作者:lytcreate.
本文主要介绍了pandas获取某列最大值的所有数据实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
第一种方法
按照某列进行由大到小的排序,然后再进去去重,保留第一个值,最终保留的结果就是最大值的数据
# 由大到小排序 data_frame = data_frame.sort_values(by='column_a', ascending=False) # 按照column_b列去重保留第一条,剩下的值即为最大值 data_frame.drop_duplicates(labels='column_b', keep='first', inplace=True)
第二种方法
获取某列最大值的索引,然后再反取索引对应的行即可
比如,有一个daframe有A,B,C三列,现在需要取C列每个值对应A列最大的值:
df = pd.DataFrame({ 'A': [1, 4, 7, 10, 2], 'B': [5, 2, 9, 3, 6], 'C': [8, 8, 1, 1, 1] }) print(df) print('----------------') # 需要取C列每个值对应的A列的最大值 df_new = df.groupby('C')['A'].agg(pd.Series.idxmax) print(df_new) print('----------------') df = df.iloc[df_new] print(df)
到此这篇关于pandas获取某列最大值的所有数据实现示例的文章就介绍到这了,更多相关pandas获取某列最大值内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!