Я пытаюсь выяснить самый быстрый способ выполнить поиск и сортировку на фрейме данных pandas. Ниже приведены данные до и после того, что я пытаюсь выполнить.
До:
flightTo flightFrom toNum fromNum toCode fromCode
ABC DEF 123 456 8000 8000
DEF XYZ 456 893 9999 9999
AAA BBB 473 917 5555 5555
BBB CCC 917 341 5555 5555
После поиска/сортировки:
flightTo flightFrom toNum fromNum toCode fromCode
ABC XYZ 123 893 8000 9999
AAA CCC 473 341 5555 5555
В этом примере я пытаюсь отфильтровать "рейсы", которые существуют между конечными пунктами назначения. Это должно быть сделано с помощью некоторого метода отбрасывания дубликатов, но меня смущает то, как обрабатывать все столбцы. Будет ли бинарный поиск лучшим способом сделать это? Подсказки оценили, изо всех сил пытаясь понять это.
Возможный крайний случай:
Что если данные подключены и наши конечные соединения находятся в одном столбце?
flight1 flight2 1Num 2Num 1Code 2Code
ABC DEF 123 456 8000 8000
XYZ DEF 893 456 9999 9999
После поиска/сортировки:
flight1 flight2 1Num 2Num 1Code 2Code
ABC XYZ 123 893 8000 9999
Этот случай логически не должен происходить. В конце концов, как вы можете пойти DEF-ABC и DEF-XYZ? Вы не можете, но "конечными точками" все равно будет ABC-XYZ