根据列中最先出现的字符串/类别,保留该行并删除pandas中的其他行

我有一个数据帧

df = pd.DataFrame([["A","X",1], ["B","W",0.9], ["B","X",0.8],
                   ["A","W",0.7], ["B","Z",8], ["B","Y",48],
                   ["A","Y",98],["A","Z",56]], columns=["id","key","val"])

在id列上的groupby之后,在列键中,在W和X中首先出现的保留该行并删除另一行,类似地在Y和Z之间保留基于首先出现的行并在groupby/common之后删除另一行。

预期输出:

df_out = pd.DataFrame([["A","X",1], ["B","W",0.9], ["B","Z",8],
                       ["A","Y",98]], columns=["id","key","val"])

该怎么做呢?

转载请注明出处:http://www.hhy777.com/article/20230526/2403718.html