2024-04-25 01:49:43 发布
网友
我有这个数据框
col1 col2 col3 0 2 A 1 1 1 A 100 2 3 B 12 3 4 B 2
我想从有A的所有列中选择最高的col1值,然后从有B的所有列中选择一个,以此类推,即这是所需的输出
col1 col2 col3 0 2 A 1 3 4 B 2
我知道我需要一些groupby('col2'),但我不知道之后该用什么。你知道吗
这就是你想要的吗?你知道吗
In [16]: df.groupby('col2').max().reset_index() Out[16]: col2 col1 0 A 2 1 B 4
使用groupby('col2')然后使用idxmax来获取每个组中最大值的索引。最后,使用这些索引值对原始数据帧进行切片。你知道吗
groupby('col2')
idxmax
df.loc[df.groupby('col2').col1.idxmax()]
注意,原始数据帧的索引值被保留。你知道吗
这就是你想要的吗?你知道吗
使用
groupby('col2')
然后使用idxmax
来获取每个组中最大值的索引。最后,使用这些索引值对原始数据帧进行切片。你知道吗注意,原始数据帧的索引值被保留。你知道吗
相关问题 更多 >
编程相关推荐