我有一个数据框,想要消除具有相同值但在不同列中的重复行:
df = pd.DataFrame(columns=['a','b','c','d'], index=['1','2','3'])
df.loc['1'] = pd.Series({'a':'x','b':'y','c':'e','d':'f'})
df.loc['2'] = pd.Series({'a':'e','b':'f','c':'x','d':'y'})
df.loc['3'] = pd.Series({'a':'w','b':'v','c':'s','d':'t'})
df
Out[8]:
a b c d
1 x y e f
2 e f x y
3 w v s t
行 [1],[2] 具有值 {x,y,e,f},但它们排列成十字形 - 即,如果您将行 [2] 中的列 c,d 与 a,b 交换,您将得到重复的。
我想删除这些行并只保留一行,以获得最终输出:
df_new
Out[20]:
a b c d
1 x y e f
3 w v s t
我怎样才能有效地实现这一目标?