我试图用熊猫来分析数据帧。我的问题类似于:
How to get rows with min values in one column, grouped by other column, while keeping other columns?
除了这个问题(这在我的例子中非常重要),如果分组列有多个最小值,我还需要找到其他列的最小值。如果没有,我需要看到相应的值。你知道吗
这是一个基本的例子
df = pd.DataFrame({'id' : [1,1,1,2,2],
'A' : [8,6,6,8,9],
'B' : [1,2,4,5,4]})
当此数据帧按“id”分组并按我所需进行聚合(首先在“A”上,然后在“B”上)时,下面是我希望看到的输出:
id A B
1 6 2
2 8 5
注意,当id为1时,有多行具有列“A”的最小值。相应的“B”列值为2和4。因此,它们的最小值作为“B”列的结果返回。你知道吗
我不知道R,所以,我不明白上面链接的答案。不管怎样,这是一个不同的版本。你知道吗
另一种方法是默认情况下利用
groupby
排序group_keys
。因此,groupby'id, A'
会将每个ID
的minA
组推到顶部。之后,在B
、reset_index
和drop_duplicate
上调用min
IIUC,按
B
排序后使用idxmin
相关问题 更多 >
编程相关推荐