Этюды для программистов на Python
2.54K subscribers
44 photos
3 videos
7 files
149 links
👋 Привет, я Дима, руководитель образовательных проектов в @Positive_Technologies и Python-евангелист.
Пишу про обработку данных на языке Python 🐼, управление проектами и преподавание.
Связаться со мной → @dm_fedorov
Download Telegram
Несколько летних новостей 🐍

1⃣ записал небольшое видео про этапы анализа данных на языке Python, видео доступно по ссылке.

2⃣ также на днях вышло 3-е издание моего пособия по основам языка Python, бумажная версия представлена на сайте издательства.

📚 Остальные переводы, обзоры и кейсы по анализу данных по ссылке 🐼
🔥 Подготовил новый перевод с кейсами: Исследуем отношение между переменными 🐼

1⃣ Мы будем визуализировать отношения с помощью диаграмм рассеяния (scatter plots), диаграмм размаха (box plots) и скрипичных диаграмм (violin plots).

2⃣ И количественно определять отношения, используя корреляцию (correlation) и простую регрессию (simple regression).

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

👉 Ссылка на html-версию

👉 Ссылка на Colab

🐍 Остальные переводы по ссылке: https://dfedorov.spb.ru/pandas/
👍3
🔥Подготовил новый перевод с кейсами 🕺

В этом блокноте используется вычислительный подход к пониманию вероятности. Мы будем использовать данные Общего социального опроса, чтобы вычислить вероятность таких предположений, как:

Если я выберу случайного респондента в опросе, какова вероятность, что это будут женщины?

Если я выберу случайного респондента, какова вероятность того, что он будет работать в банковской сфере?

Оттуда мы исследуем две взаимосвязанные концепции:

❗️Конъюнкция, которая представляет собой вероятность того, что оба утверждения верны; например, какова вероятность выбора женщины-банкира?

❗️Условная вероятность, которая представляет собой вероятность того, что одно утверждение верно, при условии, что верно другое; например, учитывая, что респондент - женщина, какова вероятность того, что она банкир? 🐼

👉Ссылка на html-версию

👉Ссылка на Colab

🐍 Остальные переводы по ссылке: https://dfedorov.spb.ru/pandas/
👍1
🔥Подготовил новый перевод про возможности библиотеки HoloViz с кейсами 🕺

API-интерфейс Pandas .plot() стал де-факто стандартом для высокоуровневого построения графиков в Python и теперь поддерживается множеством различных библиотек, которые используют набор базовых механизмов построения графиков для обеспечения дополнительных возможностей.

В этом блокноте мы исследуем возможности стандартного API .plot и продемонстрируем дополнительные возможности, предоставляемые .hvplot, которые включают бесшовную интерактивность в развернутых информационных панелях и рендеринг на стороне сервера больших наборов данных.

Чтобы показать эти особенности, мы будем использовать набор данных в виде таблиц о землетрясениях.

👉Ссылка на html-версию

🐍 Остальные переводы по ссылке: https://dfedorov.spb.ru/pandas/
🔥7👍1
🐍 После длительного перерыва вернулся с хорошими новостями.

Разместил свой полный курс видео по Python и анализу данных: https://dfedorov.spb.ru/python3/
🔥84👍14👎1
Почти год прошел с момента прошлой публикации.

Пакет pandas по-прежнему продолжает набирать популярность: создается множество модулей, использующих тип DataFrame в качестве обмена данными.
Визуализация в Python становится ближе к пользователю, а на моем сайте появилось несколько новых разделов! 😇

👉Учебники по анализу данных на Python (в оригинале) - обновляемая подборка открытых учебников на языке Python. Здесь собраны топовые учебные курсы и книги. Разместил ссылки в порядке убывания их значимости.

👉Справочники и учебники по визуализации (в оригинале) - подборка открытых учебных курсов и статей о визуализации: Streamlit, Vega-Lite, Altair и пр.

👉Python и кибербезопасность - здесь добавил обзор модуля MSTICPy (пакет от Microsoft для анализа инцидентов ИБ), способ обработки хеш-значений и PE/ELF-файлов на языке Python, пример нечеткого хеширования, простую обработку YARA-правил.

👉Дополнительные темы по языку Python - здесь немного про устройство виртуальной машины Python, пример 1 и пример 2 создания простого модуля на языке Си.

❗️Добавил новые справочные презентации по основам pandas: тип Series, тип DataFrame, сводные таблицы, агрегирование и группировка, слияние и соединение, объединение наборов данных, приведение данных в порядок и пр.
👏95👎1
Позитивная команда 🟥 в поисках аналитика данных (удаленка + офис в Москве).

👉 Требуемые знания, навыки и опыт:
- высшее образование математическое/техническое;
- опыт работы на позиции системного аналитика/бизнес аналитика от 2х лет;
- опыт работы с BI инструментами;
- опыт работы с ETL-инструментами;
- опыт работы с DWH (Clickhouse/Arenadata/Apache Hadoop);
- опыт участия в процессах Управления Данными, Управления Качеством данных;
- опыт проведения бизнес/системного анализа, формализации требований;
- знание SQL на базовом уровне (select, join, update, insert, case).

👉 Задачи:
- разработка технический требований для построения дашбордов/витрин/отчетности
- разработка макетов дашбордов/витрин/отчетности;
- участие в улучшении качества данных посредством изменения бизнес-процессов добавление необходимых метрик и т.д.;
- анализ систем-источников в компании, подготовка бизнес требований и функциональных требований для сбора данных под расчет метрик;
- анализ альтернативных источников данных в компании для обогащения отчетности и оптимизации их сбора;
- написание технических заданий на доработку систем-источников, хранилища данных;
- подготовка дата-сетов (набора данных) и использование их в BI инструменте;
- проведение обучения бизнес пользователей по построению дашбордов в BI на подготовленных ранее наборах данных;
- участие в демо и тестировании дашбордов/витрин/отчетности.

#вакансии
Please open Telegram to view this post
VIEW IN TELEGRAM
6👎1
Коллеги, поделитесь, какие технологии / языки, помимо Python, вы активно используете для обработки данных?
Anonymous Poll
10%
Bash
3%
PowerShell
1%
Rust
56%
Excel
76%
SQL
12%
R
5%
JavaScript
1%
C#
1%
Julia
2%
Java
Этюды для программистов на Python pinned «Коллеги, поделитесь, какие технологии / языки, помимо Python, вы активно используете для обработки данных?»
Позитивная ML-команда 🟥 в поисках Senior ML Engineer (удаленка + семь офисов в России).

👉 Задачи:
- Предстоит применять техники машинного обучения/статистики/анализа данных или понимать, что можно решить проще и эффективнее традиционными способами для продуктов ⬜️ (обнаружение атак в реальном времени, пост анализ, классификация протоколов, детектирования аномалий, поиск похожих инцидентов и новых "знаний").
- Предстоит внедрять решения в продукты, включая проектирование частей ML-компонент, использующих ML-модели, написания кода для частей, использующих ML-компоненты продукта, проходить код ревью и взаимодействовать с разработчиками продуктов, различных их частей.
- Также предстоит сталкиваться и думать над актуальными проблемами ML-безопасности (как offence так и defence) и способами их решения — это не совсем исследовательская позиция, но быть вовлеченным или желать вовлекаться в актуальные проблемы как ML так и ИБ очень важно.

👉 Что ждём от кандидата:
- Опыт работы на ML позиции > 3 лет.
- Понимание основ статистики, техник машинного обучения в частности глубокого обучения, а также опыт работы с какими-то конкретными задачами. Важна не супер-глубина, сколько умение решать задачу относительно целей и ограничений.
- Хорошие технические познания в Python, опыт с другими языками тоже приветствуются.
- Опыт работы с Linux-based ОС, Docker.
- Знания основ CS: алгоритмы и структуры данных (не на уровне олимпиадников, а на уровне опыта применения).
- Опыт работы в командах c agile/kanban процессами.
- Опыт доведения прототипов до прода.

#вакансии
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Про метод apply в pandas

Возвращаемся к изучению основ pandas 🐼 в формате теория + самостоятельная практика 🤓

Частый кейс, который решается благодаря методу apply - заполнение значений в таблице, исходя из показаний в других столбцах. Например, в популярном датасете titanic множество пропусков в столбце с возрастом пассажиров (age).

Можем заполнить их несколькими способами: 1️⃣ заменить константой, 2️⃣ средним по столбцу или 3️⃣ более сложным способом, учитывая другие столбцы (на рисунке показан пример таблицы с пропущенным значением в столбце age).

👉 Пример кейса titanic с методом apply доступен по ссылке, по традиции внутри блокнота есть Colab.

👨‍🏫 Закрепить понимание темы предлагаю решением кейса с классификацией вин 🍷 по ссылке в Colab.
Please open Telegram to view this post
VIEW IN TELEGRAM
17👏14
Подготовил по ссылке сводный блокнот про различные способы загрузки и выгрузки данных в Python и pandas 👨‍🏫

Рассматриваю темы:
- модули csv, json, sqlite3 🖥
- функции read_csv, read_table, read_excel, read_html, read_sql 🐼
- функции to_csv, to_excel, to_html 🐼
Please open Telegram to view this post
VIEW IN TELEGRAM
👏447
На прошлом месте работы в вузе 👨‍🏫, будучи начальником отдела анализа данных, я часто рассказывал про открытую науку, которая включает 6 составляющих:

1️⃣ открытые данные
2️⃣ открытый доступ
3️⃣ открытая методика исследования
4️⃣ открытый исходный код 🖥 🐼
5️⃣ открытая экспертная оценка
6️⃣ открытое образование

👉 Подробно разбираю каждый термин в статье по ссылке. Планирую развивать эту тему и далее.

👉 Свой диплом по анализу сетевого трафика (2009 года) оформил по правилам открытой науки: по ссылке доступны исходные данные (ARFF), программы (🖥, SQL) и методика исследования 👨‍🔬
Please open Telegram to view this post
VIEW IN TELEGRAM
👏357
Please open Telegram to view this post
VIEW IN TELEGRAM
71👏17
Этюды для программистов на Python pinned «На сайте большое обновление: на странице с лекциями по Python появились упражнения по каждой из тем (больше 80 различных заданий 🔥): 👉 Упражнения к занятию 1 👉 Упражнения к занятию 2 👉 Упражнения к занятию 3 👉 Упражнения к занятию 4 👉 Упражнения к занятию…»
👋 О чем этот блог? Пост для новых друзей

Привет, я Дима (@dm_fedorov), руководитель образовательных проектов в Positive Technologies (@cyber_edu) 🔴 и Python-евангелист 🖥.

Здесь я делюсь своим опытом: пишу про обработку данных на языке Python 🐼, управление проектами и преподавание.

А еще я автор книги об основах программирования! 👨‍🏫

Буду рад новым знакомствам 😊

Ниже собрал для вас несколько полезных ссылок 👇

0️⃣ Уроки про Python

1️⃣ Бесплатный открытый онлайн-курс по Python (Лекториум)

2️⃣ Введение в pandas

3️⃣ Уроки по визуализации данных

4️⃣ Кейсы и упражнения про pandas
Please open Telegram to view this post
VIEW IN TELEGRAM
52👏11
Этюды для программистов на Python pinned «👋 О чем этот блог? Пост для новых друзей Привет, я Дима (@dm_fedorov), руководитель образовательных проектов в Positive Technologies (@cyber_edu) 🔴 и Python-евангелист 🖥. Здесь я делюсь своим опытом: пишу про обработку данных на языке Python 🐼, управление…»
А вот и наш открытый онлайн-курс по Python доступен для изучения 👨‍🏫

Присоединяйтесь в любое время! Обучение бесплатное 🖥

https://www.lektorium.tv/python
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
72👏14