Polars: самая быстрая библиотека для обработки данных
Polars или Pandas? Кто быстрее?
Устанавливаем Polars:
Перемещаемся в Jupyter Notebook.
Импортируем нужные нам библиотеки:
Набор данных, на котором будут проводиться все тесты:
Набор данных представляет из себя таблицу с лучшими бомбардирами футбольных лиг с 2016 по 2020 год.
Время считывания файла:
Видно, что Pandas проиграл по скорости считывания файла практически в два раза.
Далее вызовем метод shape, чтобы посмотреть на размерность нашего набора данных:
В данном противостоянии Polaris оказался ненамного быстрее Pandas. Идем дальше.
Теперь проведем фильтрацию нашего набора данных. Давайте посмотрим на игроков, которые забили больше 20 голов за один сезон и играют в La Liga (Чемпионат Испании):
Polaris с фильтрацией справился быстрее нежели Pandas. Посмотрим на результат фильтрации:
Стоит отметить, что под названием колонки Polaris пишет ее тип, что крайне удобно, на мой взгляд.
Давайте попробуем сгруппировать наши данные, сгруппируем по именам футболистов и подсчитаем среднее количество голов, который каждый игрок забил за 4 сезона и посмотрим на время выполнения группировки:
Pandas проиграл по скорости группировки в 1,5 раза, посмотрим на результат группировки (выберем топ-5):
Последним этапом сравнения быстродействия станет запись в CSV файл, возьмем наши сгруппированные данные и сохраним их:
Polars оказался быстрее Pandas по сохранению файла в 2 раза.
В заключение хочу отметить, что всем, кто занимается анализом данных, стоит обратить внимание на данную библиотеку, синтаксис практически не отличается от синтаксиса Pandas, но скорость у Polars выше. Так же оставлю ссылку на документацию Polars: тык.