Я хотел бы сделать следующее:Удаление дублирующихся строк, но сохранить те, с определенным значением в одной колонке (панды питон)
Если две строки имеют точно такое же значение, в 3-х столбцов («ID»,» символ "и" дата ") и имеют либо« X », либо« T »в одном столбце (« сообщение »), затем удалите обе эти строки. Однако, если две строки имеют одинаковое значение в одних и тех же 3 столбцах, но значение, отличное от «X» или «T» в другом столбце, затем оставить без изменений.
Вот пример моего фрейма данных:
df = pd.DataFrame({"ID":["AA-1", "AA-1", "C-0" ,"BB-2", "BB-2"], "symbol":["A","A","C","B","B"], "date":["06/24/2014","06/24/2014","06/20/2013","06/25/2014","06/25/2015"], "message": ["T","X","T","",""] })
Обратите внимание, что первые две строки имеют одинаковые значения значений для столбцов «ID», «символ», и «дата», и «Т "и" X "в столбце" message ". Я хотел бы удалить эти две строки.
Однако последние две строки имеют одинаковое значение в столбцах «ID», «символ» и «дата», но пустое (отличное от «X» или «T») в столбце «сообщение».
Я заинтересован в применении функции к большому набору данных с несколькими миллионами строк. До сих пор, что я пытался поглощает всю мою память,
спасибо, и я признателен за любую помощь,
Просто поясните - хотите ли вы сохранить повторяющиеся строки в случае, если их больше 2? – Stefan
Я должен, вероятно, сделать это более ясным в своем вопросе. Мои данные попадают парами.Для каждой строки «Х» существует (или, по крайней мере, должна быть) ровно одна строка «Т» с другими столбцами, равными, за исключением столбца «сообщение». В этом случае, по крайней мере, если данные были собраны правильно, должны быть только пары совпадающих наблюдений. – dleal