Python相当于SQL:SELECT w / MAX()和GROUP BY

时间:2016-10-11 22:46:08

标签: python sql pandas group-by max

我有这样的数据:

length

我希望按ID列进行分组,同时将SOME_NUM的最大值保留为单独的列。这在SQL中很容易:

df = pd.DataFrame( {
    'ID': [1,1,2,3,3,3,4],
    'SOME_NUM': [8,10,2,4,0,5,1]
} );

df
    ID    SOME_NUM
0   1     8
1   1     10
2   2     2
3   3     4
4   3     0
5   3     5
6   4     1

但我找不到相应的Python代码。看起来这应该很容易。有人有解决方案吗?

期望的结果:

SELECT ID,
       MAX(SOME_NUM)
FROM DF
GROUP BY ID;

1 个答案:

答案 0 :(得分:4)

看看你如何使用Pandas ...使用

中的groupby功能
df.groupby("ID").max()