Несколько рекомендаций, как оптимизировать поиск значений в больших DataFrame:
- Использовать векторизованные операции. sky.pro Они выполняются с высокой скоростью на уровне C и значительно быстрее традиционных методов. sky.pro Для итераций по данным можно использовать методы .apply(), .itertuples() и .iterrows(). sky.pro
- Обратиться к функциям NumPy или Cython. sky.pro NumPy повышает производительность и оптимизирует использование памяти, а Cython позволяет значительно увеличить скорость исполнения кода. sky.pro
- Не маскировать весь DataFrame для выбора известной серии. stackoverflow.com Лучше замаскировать только серию и выбрать значение. stackoverflow.com
- Использовать .item() вместо< {0-host} /strong>. stackoverflow.com Это даёт небольшое, но заметное улучшение, особенно для фреймов данных меньшего размера. stackoverflow.com
- Если количество подстрок мало, то быстрее искать по одной за раз. stackoverflow.com Для этого нужно передать аргумент regex=False в функцию contains. stackoverflow.com
Выбор метода зависит от объёма данных и требуемой скорости обработки. sky.pro Для тестирования производительности можно использовать специализированные утилиты, например timeit. sky.pro