Python 如何将drop_副本应用于分组数据帧?

Python 如何将drop_副本应用于分组数据帧?,python,pandas,dataframe,grouping,Python,Pandas,Dataframe,Grouping,我试图在分组数据帧的每个块中删除重复的行。一个玩具的例子是 import pandas as pd import numpy as np arrays = [['bar', 'bar', 'baz', 'baz', 'foo', 'foo', 'qux', 'qux'], \ ['one', 'two', 'one', 'two', 'one', 'two', 'one', 'two']] tuples = list(zip(*arrays)) index = pd.M

我试图在分组数据帧的每个块中删除重复的行。一个玩具的例子是

import pandas as pd
import numpy as np

arrays = [['bar', 'bar', 'baz', 'baz', 'foo', 'foo', 'qux', 'qux'], \
            ['one', 'two', 'one', 'two', 'one', 'two', 'one', 'two']]
tuples = list(zip(*arrays))
index = pd.MultiIndex.from_tuples(tuples, names=['first', 'second'])
df = pd.DataFrame(np.ones([8,2]), index=index)
print(df)
输出为:

              0  1
first second      
bar   one     1  1
      two     1  1
baz   one     1  1
      two     1  1
foo   one     1  1
      two     1  1
qux   one     1  1
      two     1  1
然而,如果我尝试

print(df.groupby(level='first').apply(lambda d: d.drop_duplicates()))
然后我得到

                    0  1
first first second      
bar   bar   one     1  1
baz   baz   one     1  1
foo   foo   one     1  1
qux   qux   one     1  1

是否有任何方法可以在不使用额外“第一”索引的情况下完成我需要的操作?

group\u keys=False
传递到:


将组密钥=False传递给:


太简单了!万分感谢!太简单了!万分感谢!
In [273]:
df.groupby(level='first', group_keys=False).apply(lambda d: d.drop_duplicates())

Out[273]:
              0  1
first second      
bar   one     1  1
baz   one     1  1
foo   one     1  1
qux   one     1  1