Задать вопрос
@lPolar
data scientist

Можно ли использовать PyPy в связке с Pandas?

Всем привет.
На протяжении трех-четырех месяцев использую pandas в связке с matplotlib и numpy в качестве основного инструмента для обработки, хранения, визуализации и анализа данных. Как интерпретатор python сначала использовал стандартный CPython дистрибутив, потом перешел на Anaconda, в нем были "из коробки" установлены blaze и bokeh.
Сейчас думаю попробовать PyPy как интерпретатор языка, в силу его скорости (а тесты показывают очень хорошую скорость), однако интересует мнение тех, кто пользовался - какие сложности с совместимостью модулей для PyPy и т.д.?
  • Вопрос задан
  • 3187 просмотров
Подписаться 3 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
Вряд ли.

PyPy не дружит с модулями на C/C++. Поддержку numpy до сих пор не реализовали полностью (хотя работать уже можно).

+ Не думаю, что это даст значительный прирост производительности, так pandas и numpy сами по себе довольно быстрые и написаны с использованием C/C++.

Посмотрите в сторону Cython, кстати. Он отлично работает с сишными модулями и позволяет увеличить производительность за счет строгой типизации, компиляции в C/C++ и прямого вызова C/C++ функций из кода на python. Литературы на русском по нему, вроде, нет, но есть очень хорошая документация на английском.

Если нужно ускорить код на python, не обязательно менять интерпретатор.
Можно просто переписать критические места на C/C++ и запускать, используя ctypes.
Можно использовать scipy.weave - позволяет вставлять инлайновый C/C++ код.
Если используешь numpy, то есть еще интересная штука - numexpr. Оптимизирует вычисления с numpy массивами.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы