Легким движением руки ускоряем код на Python в 100 раз
Интерпретатор Python по умолчанию — это CPython. Но будем честны, он бывает туповат, медлителен и не предлагает встроенной оптимизации. Если хотите ускорить свой код, то вместо этого используйте модуль Cython. Сейчас объясним, как зачем и почему.
😻 #python
Интерпретатор Python по умолчанию — это CPython. Но будем честны, он бывает туповат, медлителен и не предлагает встроенной оптимизации. Если хотите ускорить свой код, то вместо этого используйте модуль Cython. Сейчас объясним, как зачем и почему.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍38🔥19❤5
Разрушаем мифы pandas: параметр inplace
Распространенное заблуждение: если менять датафрейм "на месте" (
Дело в том, что, вопреки расхожему мнению, большинство операций на месте НЕ предотвращают создание новой копии. Просто inplace возвращает копию по тому же адресу. Но помимо создания копии в этом случае Pandas выполняет некоторые дополнительные проверки, чтобы "убедиться", что DataFrame изменяется правильно. Иногда это может оказаться дорогостоящей операцией.
Вот и выходит: хотели ускорить код, а в итоге замедлили в 2 раза. Не рекомендуем.
😻 #python
Распространенное заблуждение: если менять датафрейм "на месте" (
inplace = True
), то код будет работать быстрее. Мы провели серию экспериментов и готовы разрушить этот миф. Результаты наверху. Выходит, что изменение на месте чаще всего работает медленнее. Но почему так?Дело в том, что, вопреки расхожему мнению, большинство операций на месте НЕ предотвращают создание новой копии. Просто inplace возвращает копию по тому же адресу. Но помимо создания копии в этом случае Pandas выполняет некоторые дополнительные проверки, чтобы "убедиться", что DataFrame изменяется правильно. Иногда это может оказаться дорогостоящей операцией.
Вот и выходит: хотели ускорить код, а в итоге замедлили в 2 раза. Не рекомендуем.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍58🤯11👌10😁1