У меня есть фрейм данных с количеством практически идентичных строк. Мне нужно написать код, который позволил бы выбрать одну из строк в паре (или группе из 3 или 4) строк, которые похожи по имени, фамилии, V1 и P1, но отличаются по V2 и P2, а затем удалить ненужную строку. Какая строка должна быть сохранена, будет определено следующим условием: если P1 = P2, строка должна быть сохранена, если P1 P2, тогда строка с наибольшим P2 должна быть сохранена. .
id Name Surname V1 P1 V2 P2
15 John Smith 0.80 4 0.75 2
16 John Smith 0.80 4 1.00 3
17 John Smith 0.80 5 0.75 2
18 John Smith 0.80 5 1.00 3
19 John Smith 0.75 2 0.75 2
20 John Smith 0.75 2 1.00 3
Результат, который я ожидаю, будет выглядеть следующим образом:
id Name Surname V1 P1 V2 P2
16 John Smith 0.80 4 1.00 3
18 John Smith 0.80 5 1.00 3
19 John Smith 0.75 2 0.75 2
Есть ли простой способ сделать это?
Расширенный набор данных
id Name Surname V1 P1 V2 P2
194 Lisa Paul 0,1 1 0,2 1
195 Lisa Paul 0,1 1 0,4 5
196 Lisa Paul 0,1 4 0,5 1
197 Lisa Paul 0,1 4 0,1 5
198 Lisa Paul 0,1 2 0,1 1
199 Lisa Paul 0,1 2 0,4 5
201 Lisa Paul 0,1 3 0,2 1
202 Lisa Paul 0,1 3 0,1 5
203 Lisa Paul 0,1 5 0,3 1
204 Lisa Paul 0,1 5 0,2 5
205 Lisa Paul 0,1 6 0,2 1
206 Lisa Paul 0,1 6 0,1 5