Python 按顺序删除基于行的两对行数据
基于这个问题,我有一个数据框架,看起来像这样:Python 按顺序删除基于行的两对行数据,python,pandas,Python,Pandas,基于这个问题,我有一个数据框架,看起来像这样: df Data1 Data2 A first A last B first B last C first C last D first D last B first D last B last Data1 Data2 B first B last D first D last 我想消除基于列数据1和列数据2的数据,条件是删除相同的数据,删除出现的第三个数据。数据1列中有数据的B
df
Data1 Data2
A first
A last
B first
B last
C first
C last
D first
D last
B first
D last
B last
Data1 Data2
B first
B last
D first
D last
我想消除基于列数据1和列数据2的数据,条件是删除相同的数据,删除出现的第三个数据。数据1列中有数据的B和D,这是数据2列中没有对的下一个B和D。我想保持数据1和数据2的顺序
我的预期结果如下所示:
df
Data1 Data2
A first
A last
B first
B last
C first
C last
D first
D last
B first
D last
B last
Data1 Data2
B first
B last
D first
D last
详情如下:
Data1 Data2 Label
A first deleted
A last deleted
B first keep
B last keep
C first deleted
C last deleted
D first keep
D last keep
B first deleted
D last deleted
B last deleted
请原谅我解释得不充分。谢谢。这就是你需要的吗<代码>重复的+
删除重复的
df.loc[df.Data1.isin(df.loc[df.duplicated(),'Data1'])].drop_duplicates()
Data1 Data2
2 B first
3 B last
6 D first
7 D last