I have a dataframe with 3 columns in Python:
Name1 Name2 Value
Juan Ale 1
Ale Juan 1
and would like to eliminate the duplicates based
You can convert to frozenset and use pd.DataFrame.duplicated.
res = df[~df[['Name1', 'Name2']].apply(frozenset, axis=1).duplicated()]
print(res)
Name1 Name2 Value
0 Juan Ale 1
frozenset is necessary instead of set since duplicated uses hashing to check for duplicates.
Scales better with columns than rows. For a large number of rows, use @Wen's sort-based algorithm.