且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

pandas groupby,您将获得一列的最大值和另一列的最小值

更新时间:2022-12-10 09:54:37

使用 groupby + agg (dict),因此必须按subset reset_index 进行转换column.

Use groupby + agg by dict, so then is necessary order columns by subset or reindex_axis. Last add reset_index for convert index to column if necessary.

df = a.groupby('user').agg({'num1':'min', 'num2':'max'})[['num1','num2']].reset_index()
print (df)
  user  num1  num2
0    a     1     3
1    b     4     5

与什么相同:

df = a.groupby('user').agg({'num1':'min', 'num2':'max'})
                      .reindex_axis(['num1','num2'], axis=1)
                      .reset_index()
print (df)
  user  num1  num2
0    a     1     3
1    b     4     5