查找 DataFrame 中两列中有重复项的行

Min*_*tli -2 python filter dataframe

DataFrame 给出如下

df = pd.DataFrame({'col1' : [1,2,9,2,9,6], 'col2' : [13,4,5,4,5,0], 'col3' : [8,23,5,4,9,5]})
   col1 col2 col3
0   1   13   8
1   2   4    23
2   9   5    5
3   2   4    4
4   9   5    9
5   6   0    5
Run Code Online (Sandbox Code Playgroud)

如何过滤此 DataFrame,以便仅获取 col1 和 col2 中都有重复项的行。所以最终 DataFrame 应该是这样的:

df_new
   col1 col2 col3
0   2    4    23
1   2    4    5
2   9    5    4
3   9    5    9
Run Code Online (Sandbox Code Playgroud)

gsh*_*hka 5

使用pd.DataFrame.duplicated()

df_new = df[df.duplicated(subset=["col1", "col2"], keep=False)]
Run Code Online (Sandbox Code Playgroud)