Простой вопрос панд:
Есть ли drop_duplicates()
чтобы удалить каждую строку, участвующую в дублировании?
Эквивалентный вопрос заключается в следующем: имеют ли панды разницу в наборах для данных?
Например:
In [5]: df1 = pd.DataFrame({'col1':[1,2,3], 'col2':[2,3,4]})
In [6]: df2 = pd.DataFrame({'col1':[4,2,5], 'col2':[6,3,5]})
In [7]: df1
Out[7]:
col1 col2
0 1 2
1 2 3
2 3 4
In [8]: df2
Out[8]:
col1 col2
0 4 6
1 2 3
2 5 5
так что, возможно, что-то вроде df2.set_diff(df1)
создаст это:
col1 col2
0 4 6
2 5 5
Тем не менее, я не хочу полагаться на индексы, потому что в моем случае мне приходится иметь дело с dataframes, которые имеют разные индексы.
Кстати, я изначально думал о расширении текущего drop_duplicates()
, но теперь я понимаю, что второй подход, использующий свойства теории множеств, был бы гораздо полезнее в целом. Однако оба подхода решают мою текущую проблему.
Спасибо!