Мы — образовательная платформа в сфере аналитики Симулейтив: simulative.ru
Создаём курсы-симуляторы, где обучаем на кейсах из реального бизнеса.
Канал по ML: @modprod
Наш уютный чат: @itresume_chat
Поддержка: @simulative_support
Post #2979
1.26K
Как писать красивый код на Pandas
Одна из самых классных фишек Pandas, которой многие не пользуются — это
Большая проблема кода на Pandas в том, что его сложно читать — у нас либо слишком длинные строки с последовательным применением методов, либо куча лишних переопределений переменных. Например, вариант 1:
Вариант 2:
А вот как пишут код на Pandas люди, которые шарят в Pandas и любят красивый код:
Этот код писал один из членов нашей команды, Даниил. Чтобы понять его на 100%, надо немного погрузиться в задачу и понимать Pandas, но одно можно сказать точно — это максимально красиво и удобно! Согласны?
Делается
1. Вся последовательность команд оборачивается в скобки;
2. Каждая новая операция переносится на новую строку.
А если ещё красиво оформить отступы (как в примере), то вообще будет отлично! В основном, IDE, в которой вы пишите код, делает это за вас.
Как вам такой метод? Ждём 🔥
➡️ Ну а если хотите еще лучше разбираться в Pandas — присоединяйтесь к нам в бесплатном курсе! Регистрация: simulative.ru/pandas
📊 Simulative
Одна из самых классных фишек Pandas, которой многие не пользуются — это
method chaining или цепочки методов. Большая проблема кода на Pandas в том, что его сложно читать — у нас либо слишком длинные строки с последовательным применением методов, либо куча лишних переопределений переменных. Например, вариант 1:
# Здесь у нас длинная строка с кучей методов - все в кашу
df.do().do_more().do_something_else()...
Вариант 2:
# Здесь каждое действие делается в отдельной строке
# так еще и лишнее переопределение df происходит
df = df.do()
df = df.do_more()
df = df.do_something_else()
...
А вот как пишут код на Pandas люди, которые шарят в Pandas и любят красивый код:
redistributed_orders_amount = (
area_orders_agg.drop(columns="warehouse_name")
.rename(columns={"preferred_warehouse": "warehouse_name"})
.query("~is_local_delivery")
.groupby(group_fields)["orders_amount"]
.sum()
.rename("redistributed_orders_amount")
)
Этот код писал один из членов нашей команды, Даниил. Чтобы понять его на 100%, надо немного погрузиться в задачу и понимать Pandas, но одно можно сказать точно — это максимально красиво и удобно! Согласны?
Делается
method chaining очень просто (в коде выше видно):1. Вся последовательность команд оборачивается в скобки;
2. Каждая новая операция переносится на новую строку.
А если ещё красиво оформить отступы (как в примере), то вообще будет отлично! В основном, IDE, в которой вы пишите код, делает это за вас.
Как вам такой метод? Ждём 🔥
➡️ Ну а если хотите еще лучше разбираться в Pandas — присоединяйтесь к нам в бесплатном курсе! Регистрация: simulative.ru/pandas
📊 Simulative
- 🔥 11
- 👍 9
- ❤ 1
- 👎 1




