Я использую Pandas, Jupyter Notebooks и Python. У меня есть набор данных с 4 столбцами и 10000 записями. В настоящее время, когда я использую следующий код для получения дубликатов, каким-то образом код подбирает неправильные записи. FYI: тип данных столбцов являются следующие:Pandas Dataframe дублирует записи, собирает неправильные записи
Initial_Date = int64
Final_Date = int64
Origin = object
sub_location = object
Мой текущий код:
dup = df.duplicated(['Initial_Date','Final_Date','Origin','sub_location'], keep='last')
Ниже приведен пример набора данных, который подхватили используя код выше:
00121980,00121980,Australia,Brighton:Queensland
00121980,00121980,Australia,Brisbane:Queensland
17021987,17021987,Bangladesh,Sylhet-Sunamganj
17021987,17021987,Brazil,Sao Paolo suburb
Если вы посмотрите на первые две записи: начальная и конечная дата и Origin совпадают, но sub_origin не подходит, один - Брайтон, а другой - Брисбен.
То же самое применяется в последних двух записях, даты совпадают, но Origin - это не то же самое.
Из этого я понимаю, что df.duplicated не подбирает правильные записи или я не использую его правильно. Имеются ли типы данных с df.duplicated?
Если я просто использую df.duplicated
, тогда возвращаемая булева серия не имеет дубликатов. Может кто-нибудь объяснить/показать мне, как используется .duplicated?
Пожалуйста, имейте в виду, что это не полный набор данных, однако пример, который я представил, является именно той проблемой, которую я имею в реальном наборе данных. Я сузил df.duplicated критерии и наткнулся на эту ошибку.
Спасибо, ребята: D
@Timetraveller Этот ответ на месте. В вашем примере «dup» не показывал все записи, которые были дублированы из-за параметра 'keep = last'. Если 'keep = False' были установлены, вы увидите, что последние две записи были дубликатами других записей, а не друг другом. – piRSquared
@MaxU Привет, что произойдет, если я хочу сбросить дубликаты. Если я выберу keep = False, все экземпляры будут удалены. В приведенном выше примере запись 0,1,2, которая содержит значение 1, будет отброшена, правильно? Что произойдет, если я хочу сохранить одну из трех записей, я могу изменить сохранение на «последний» или «первый»? – Timetraveller
@MaxU Спасибо, друг. – Timetraveller