Я бы сделал комбинацию вещей.
- Используйте
pandas.Series.str.split
, чтобы разделить запятыми - Используйте
apply(frozenset)
, чтобы получить такой набор, который я могу использовать duplicated
- Использование
pandas.Series.duplicated
с keep='last'
df[~df.A.str.split(',').apply(frozenset).duplicated(keep='last')]
A
1 123,17
3 80,123
4 25,60
5 25,42
Адресация комментариев
df.A.apply(
lambda x: tuple(sorted(map(int, x.split(','))))
).drop_duplicates().apply(
lambda x: ','.join(map(str, x))
)
0 25,60
1 17,123
2 80,123
5 25,42
Name: A, dtype: object
Настройка
df = pd.DataFrame(dict(
A='60,25 123,17 123,80 80,123 25,60 25,42'.split()
))