从仅某些列具有相同值的Pandas数据框中删除重复的行

我有一个熊猫数据框,如下所示:


A   B   C

1   2   x

1   2   y

3   4   z

3   5   x

我希望在特定列中共享相同值的行只剩下1行。在上面的示例中,我的意思是A和B列。换句话说,如果列A和B的值在数据帧中出现多次,则仅应保留一行(这一点无关紧要)。


FWIW:所谓的重复行(即A列和B列相同)的最大数量为2。


结果应如下所示:


A   B   C

1   2   x

3   4   z

3   5   x

要么


A   B   C

1   2   y

3   4   z

3   5   x


largeQ
浏览 3043回答 2
2回答

POPMUISE

drop_duplicates与参数一起使用,subset仅保留最后重复的行add keep='last':df1 = df.drop_duplicates(subset=['A','B'])#same as#df1 = df.drop_duplicates(subset=['A','B'], keep='first')print (df1)   A  B  C0  1  2  x2  3  4  z3  3  5  xdf2 = df.drop_duplicates(subset=['A','B'], keep='last')print (df2)   A  B  C1  1  2  y2  3  4  z3  3  5  x

慕桂英3389331

如果我只想从列中删除重复项而不删除行。假设我有10行对应于同一时刻。所以我想写txt文件,但是我想一次只打印全部10行,而不是每行显示相同的时间。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python