pandas假设要用 groupby('姓') 对数据第一列分组
姓
2 王
3 李
4 王
7 张
8 王
9 李
12 张
pandas怎么求groupby分组后各组内最大值所在初始数据的行号?
首先对数据集进行groupby分组:
grouped_data = data.groupby('group_column')
然后使用apply方法,对每个分组进行处理,在处理的过程中,使用idxmax方法找到该组内最大值所在原始数据的行号,并返回该行号。最后将所有结果合并即可。
def get_max_row(grouped_df):
max_idx = grouped_df['value_column'].idxmax()
return max_idx
result = grouped_data.apply(get_max_row)
能具体一点吗?这个表是什么样的?
像mysql一样分组后排序,limit 1?