Не попадитесь на накрученные каналы! Узнайте, не накручивает ли канал просмотры или подписчиков Проверить канал на накрутку
Прикрепить Телеграм-аккаунт Прикрепить Телеграм-аккаунт

Телеграм канал «Постоянный репозиторий по Python»

Постоянный репозиторий по Python
381
0
1
0
321
Подписчики
Всего
1 811
Сегодня
0
Просмотров на пост
Всего
136
ER
Общий
7.52%
Суточный
6.35%
Динамика публикаций
Telemetr - сервис глубокой аналитики
телеграм-каналов
Получите подробную информацию о каждом канале
Отберите самые эффективные каналы для
рекламных размещений, по приросту подписчиков,
ER, количеству просмотров на пост и другим метрикам
Анализируйте рекламные посты
и креативы
Узнайте какие посты лучше сработали,
а какие хуже, даже если их давно удалили
Оценивайте эффективность тематики и контента
Узнайте, какую тематику лучше не рекламировать
на канале, а какая зайдет на ура
Попробовать бесплатно
Показано 7 из 381 поста
Смотреть все посты
Пост от 02.10.2026 17:17
2
0
0
«МЫ КОМАНДА»: пройдите обучение в 4 квартале 2026 года и получите корпоративную скидку 30%.

Условия акции:
— от 5 сотрудников на одном курсе — скидка 30% каждому участнику;
— от 5 сотрудников на разных курсах — скидка 20% каждому участнику.

Скидка действует на все курсы Академии Информационных Систем, включая программы вендоров.
Можно выбрать одну программу для всей команды или направить сотрудников на разные курсы в зависимости от их профессиональных задач.

Акция действует с 1 октября по 31 декабря 2026 года.
Скидки по акциям не суммируются.

Соберите команду и развивайте компетенции сотрудников на выгодных условиях!
Пост от 01.10.2026 10:03
4
0
0
Пост от 01.10.2026 10:03
1
0
0
Пост от 29.09.2026 10:47
30
0
1
🐼 Одна из самых недооценённых возможностей Pandas – метод query()

Большинство пользователей фильтруют данные так:
result = df[(df["price"] > 1000) & (df["category"] == "Ноутбуки")]
Такой код абсолютно корректен.

Но когда условий становится много, он быстро превращается в длинную конструкцию со скобками, кавычками и логическими операторами.
В Pandas есть более читаемый способ – метод query().
result = df.query("price > 1000 and category == 'Ноутбуки'")
Согласитесь, выглядит гораздо ближе к обычному языку или SQL.

Почему это удобно?
✅ Код проще читать.
✅ Меньше скобок и повторений df["..."].
✅ Легче добавлять новые условия.

Особенно это ощущается, когда фильтрация занимает не одну, а пять-шесть строк.

Когда использовать?
query() отлично подходит для:
- фильтрации таблиц;
- подготовки данных перед визуализацией;
- анализа данных в Jupyter Notebook;
- быстрого исследования датасета.

Есть ли недостатки?
Да.
Если имя столбца содержит пробелы или специальные символы, придётся использовать обратные кавычки:
df.query("`Total Sales` > 1000")
Поэтому лучше сразу давать столбцам простые и понятные имена.

💡 Интересный факт
Многие аналитики, которые хорошо знают SQL, переходят на query() практически сразу. Причина проста – условия начинают выглядеть привычнее, а код становится заметно легче читать.
Пост от 24.09.2026 10:21
19
0
0
🐼 Почему merge() – одна из самых важных функций в Pandas

Если спросить аналитиков, какой метод Pandas они используют чаще всего, многие ответят именно merge().

Почему?
Потому что в реальных проектах данные почти никогда не хранятся в одной таблице.

Например:
📋 В одной таблице находятся заказы:
order_id customer_id amount
101 1 1500
102 2 2300

А в другой – информация о клиентах:
customer_id name
1 Иван
2 Анна

По отдельности эти таблицы полезны, но настоящая аналитика начинается только после их объединения.

Что делает merge()?
Он объединяет таблицы по общему ключу.
Например:
orders = orders.merge(
customers,
on="customer_id",
how="left"
)
После этого в таблице заказов появятся имена клиентов.
Но есть одна проблема…

Представьте, что в таблице клиентов случайно оказалось две записи для одного и того же customer_id.

После объединения количество строк внезапно увеличится.
Не потому что Pandas ошибся.
А потому что данные нарушают ожидаемую структуру.
Это одна из самых распространённых причин ошибок в аналитике.

Как защитить себя?
Многие не знают, что у merge() есть параметр validate.
Например:
orders = orders.merge(
customers,
on="customer_id",
how="left",
validate="many_to_one"
)
Теперь Pandas сам проверит, что каждому клиенту соответствует только одна запись.

Если это не так – вы сразу получите ошибку.

Почему это важно?
Иногда отчёт выглядит абсолютно корректно.
Но после объединения:
сумма продаж становится больше;
количество клиентов увеличивается;
показатели перестают совпадать с BI-системой.
Причина может быть всего одна — неправильное объединение таблиц.

💡 Полезный совет
Возьмите за правило:
Если вы уверены в структуре данных — всегда используйте validate.
Это одна небольшая строка кода, которая способна сэкономить часы поиска ошибок.
Пост от 17.09.2026 10:18
2
0
0
🐼 Почему опытные аналитики почти никогда не используют apply(), если можно обойтись без него?

Одна из первых функций, которую осваивают в Pandas, — это apply().
Она кажется универсальным решением:
«Нужно обработать каждую строку? Используем apply().»
И действительно, код работает.
Но есть одна проблема…

Что происходит внутри?
Когда вы используете apply(axis=1), Pandas фактически начинает обрабатывать строки по одной.

То есть часть преимуществ Pandas теряется, и вычисления переходят на уровень обычного Python.
Из-за этого производительность может значительно снизиться на больших таблицах.

Как делают опытные разработчики?
Они сначала задают себе вопрос:
Можно ли решить задачу без apply()?
Например, вместо обработки каждой строки отдельно часто достаточно выполнить операцию сразу над целым столбцом:
df["revenue"] = df["price"] * df["quantity"]
Или использовать встроенные методы Pandas:
where()
mask()
map()
replace()
строковые методы .str
методы работы с датами .dt
Практически всегда они работают быстрее, потому что рассчитаны на обработку целых массивов данных.

Когда apply() действительно нужен?
Конечно, бывают ситуации, когда без него не обойтись.

Например:
сложная бизнес-логика;
вызов собственной функции;
обработка данных, которую нельзя выразить стандартными средствами Pandas.
Но это скорее исключение, чем правило.

Какой подход лучше?
Опытные разработчики обычно придерживаются такого порядка:
Попробовать решить задачу встроенными возможностями Pandas.
Если не получилось — использовать векторные операции.
И только потом задумываться об apply().

💡 Интересный факт
Во многих проектах замена нескольких вызовов apply() на векторные операции позволяет ускорить обработку данных в несколько раз, не меняя алгоритм и не используя дополнительные библиотеки.
Именно поэтому при код-ревью вопрос:
«А здесь точно нужен apply?
можно услышать очень часто.
Пост от 10.09.2026 10:15
21
0
1
🐼 Знаете ли вы, что Pandas умеет работать с данными, которые не помещаются в оперативную память?

Когда говорят о Pandas, часто можно услышать:
«Pandas подходит только для небольших таблиц.»
На самом деле это не совсем так.

Конечно, Pandas загружает данные в память, но это не означает, что он не способен обрабатывать большие файлы.
Представьте ситуацию
Есть CSV-файл размером 50 ГБ.
Если попытаться прочитать его обычным способом:
df = pd.read_csv("sales.csv")
то, скорее всего, памяти компьютера просто не хватит.
Но у Pandas есть режим построчной обработки.
Достаточно указать параметр chunksize:
import pandas as pd

total = 0

for chunk in pd.read_csv("sales.csv", chunksize=100_000):
# Каждый chunk — это обычный DataFrame
total += chunk["sales"].sum()

print(total)

Что здесь происходит?
Вместо загрузки всего файла Pandas:
читает первые 100 000 строк;
создаёт DataFrame;
отдаёт его программе;
освобождает память;
переходит к следующим 100 000 строк.

Таким образом можно обработать файл практически любого размера.

Где это полезно?
✅ журналы событий (лог-файлы);
✅ банковские транзакции;
✅ данные с датчиков;
✅ большие CSV-выгрузки из BI-систем;
✅ результаты работы ETL-процессов.

Но есть нюанс
При работе по частям не все операции становятся возможными.
Например, сортировку всего файла или объединение данных между разными частями придётся организовывать отдельно.

Зато вычислить:
сумму;
среднее;
количество записей;
статистики;
агрегаты по группам
можно без каких-либо проблем.

💡 Интересный факт
Многие считают, что для больших данных сразу нужно переходить на Spark или Dask.
На практике же оказывается, что правильное использование chunksize позволяет решить значительную часть задач обычными средствами Pandas, без развёртывания дополнительных систем.
Именно поэтому опытные аналитики сначала стараются максимально использовать возможности Pandas, а уже потом переходят к более тяжёлым инструментам.
Смотреть все посты