Python多索引数据帧删除最大值

2024-09-24 00:31:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在python中努力使用多索引数据帧。你知道吗

假设我有这样一个df:

                    count    day     
group    name

  A      Anna        10      Monday
         Beatrice    15      Tuesday

  B      Beatrice    15      Wednesday
         Cecilia     20      Thursday

我需要的是找到每个组的最大名称,并将其从数据帧中删除。你知道吗

最终的df如下所示:

                    count    day     
group    name

  A      Anna        10      Monday

  B      Beatrice    15      Wednesday

你们知道怎么做吗? 我没什么主意了。。。你知道吗

提前谢谢!你知道吗

编辑:

如果原始数据帧是:

                   count    day     
group    name

  A      Anna        10      Monday
         Beatrice    15      Tuesday

  B      Beatrice    20      Wednesday
         Cecilia     15      Thursday

最终df需要:

                    count    day     
group    name

  A      Anna        10      Monday

  B      Beatrice    20      Wednesday

Tags: 数据name名称dfcountgroup主意monday
1条回答
网友
1楼 · 发布于 2024-09-24 00:31:22

更新:

In [386]: idx = (df.reset_index('name')
                   .groupby('group')['name']
                   .max()
                   .reset_index()
                   .values.tolist())

In [387]: df.loc[df.index.difference(idx)]
Out[387]:
                count        day
group name
A     Anna         10     Monday
B     Beatrice     20  Wednesday

In [326]: df.loc[df.index.difference(df.groupby('group')['count'].idxmax())]
Out[326]:
                count        day
group name
A     Anna         10     Monday
B     Beatrice     15  Wednesday

PS很可能有更好的方法。。。你知道吗

相关问题 更多 >