Pandas. Быстрый поиск уникальных строк

Рейтинг: 2Ответов: 1Опубликовано: 04.03.2023

Доброго времени суток.

ЗАДАЧА: найти в датафрейме pandas строки, которые повторяются лишь один раз.

ПРИМЕР: в таблице 2 столбца, по строкам - (1,2) (1,3) (1,2). Запись (1,3) встретилась 1 раз, она нам и нужна (её индекс в датафрейме).

ВОПРОС: как это сделать самым быстрым способом?

было решение «в лоб»: пробегаюсь по фрейму, считая количество встречаемых уникальных записей, если 1 - то это то, что мне нужно

Ответы

▲ 2Принят

Можно удалить дубликаты, останутся только уникальные записи. Забрать индексы

df = pd.DataFrame([[1,2],[1,3],[1,2]])
print(*df.drop_duplicates(keep=False).index) # 1