【发布时间】:2020-10-13 12:22:40
【问题描述】:
我试过这个:
res = df1[~(getattr(df1, 'A').isin(getattr(df2, 'A')) & getattr(df1, 'C').isin(getattr(df2, 'C')))]
它可以工作但是在这个例子中列的列表是可变的 columns = ['A', 'C'] 我如何循环它以根据值动态获取上述表达式列表“列”
exp:df1:
A B C D
0 oo one 0 0
1 bar one1 1 2
2 foo two2 2 4
3 bar one1 3 6
4 foo two 4 8
5 bar two 5 10
6 foo one 6 12
7 fowwo three 7 14
df2:
A B C D
0 oo one 0 0
2 foo two2 2 4
3 bar one1 3 6
4 foo two 4 8
5 bar two 5 10
6 foo one 6 12
7 fowwo three 7 14
回复:
A B C D
1 bar one1 1 2
【问题讨论】:
-
你能解释一下你是怎么得到输出
bar one1的吗,它似乎也出现在两个数据框中? -
是的,这是正确的,只是我将列列表从 ['A','B'] 更改为 ['A', 'C'] 感谢您提及
标签: pandas dataframe duplicates compare multiple-columns