Вы можете отсортировать значения, тогда groupby
:
a= np.sort(df.to_numpy(), axis=1)
df.groupby([a[:,0], a[:,1]], as_index=False, sort=False).first()
Опция 2 : если у вас много пар c1, c2
, groupby
может быть медленным. В этом случае мы можем назначить новые значения и отфильтровать их по drop_duplicates
:
a= np.sort(df.to_numpy(), axis=1)
(df.assign(one=a[:,0], two=a[:,1]) # one and two can be changed
.drop_duplicates(['one','two']) # taken from above
.reindex(df.columns, axis=1)
)