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

Знаю, что многие из вас ее уже читали ☺️

Буду благодарен за отзывы на Озоне:
https://www.ozon.ru/product/programmirovanie-na-yazyke-vysokogo-urovnya-python-177783809/

На данный момент я дописываю новое дополненное издание, надеюсь, до нового года оно появится в продаже! 😇

PS. немного устаревшая электронная версия лежит на сайте: https://dfedorov.spb.ru/python3/
Составил сравнительную таблицу между мышлением программиста и аналитика данных.
Выяснилось, что аналитик во многом использует инструментарий мышления ученого: постановка и проверка гипотез, разработка моделей и пр. Программист в больше степени инженер, который ориентирован на создание нового.
Выводы: аналитиков нельзя обучать по шаблонам программистов и наоборот, в программу обучения аналитиков необходимо включить курс по научной деятельности.
А вы знали, что в pandas можно создавать собственные методы? Это позволяет значительно упростить жизнь аналитика, например, при создании сводных таблиц. На эту тему перевел статью Криса Моффита: http://blog.dfedorov.spb.ru/all/sozdanie-prostyh-svodnyh-tablic-v-pandas-s-pomoschyu-sidetable/
Друзья, единственный способ освоить Python - это решать практические задачи или кейсы! 👨‍🏫

Сегодня представляю две заметки на эту тему.

1) Эволюция командной оболочки от Python к Jupyter Lab: http://blog.dfedorov.spb.ru/all/evolyuciya-komandnoy-obolochki-python/

2) IPython для системного администрирования (разбираемся с классом IPython.utils.text.SList):
http://blog.dfedorov.spb.ru/all/poluchit-identifikatory-processov-prinadlezhaschih-polzovatelyu/
Задача для разминки: вывести список поддиректорий в текущей директории несколькими способами.

Решение (4 способа): http://blog.dfedorov.spb.ru/all/opredelyaem-podkatalogi-v-tekuschem-kataloge/
Мышление определяется языком программирования.
Часто о мышлении говорят в терминах парадигм программирования.

Парадигмы — различные подходы человека к осмыслению одного и того же явления.

Выделяют четыре основных парадигмы программирования и множество универсальных.

К основным относят:
- Императивное программирование
- Функциональное программирование
- Декларативное программирование
- Объектно-ориентированное программирование

В отличие от научных парадигм (вспомним гео-гелиоцентрическую систему мира) в программировании происходит расширение, а не исключение парадигм.

Все подробности по ссылке:
http://blog.dfedorov.spb.ru/all/paradigmy-v-myshlenii-programmista/
Много раз на занятиях по Python я говорил, что списковые включения - это стильно, модно и молодежно. Они быстрее функциональщины типа фильтров, а сегодня решил запустить сравнение для версии 3.8... и вот:
Один из самых частых вопросов про Python: зачем нужны кортежи?
Ответ: для хранения отдельных записей, в которых позиция элементов и их структура имеют значение.
Например, в базе с помощью кортежей хранятся координаты (широта и долгота) нескольких городов.
1
Друзья, УрФУ запустил чудесный бесплатный открытый курс "Программирование глубоких нейронных сетей на Python" на платформе OpenEDU 🥳

Для прохождения курса предварительно надо знать линейную алгебру и Python🐍

По ссылке сам курс: https://openedu.ru/course/urfu/PYDNN
Завершил перевод официальной документации по pandas! Ура! ❤️

Темы занятий:
01. Какие данные обрабатывает pandas?
02. Как мне читать и записывать табличные данные?
03. Как выбрать подмножество из DataFrame?
04. Как строить график в pandas?
05. Как создать новые столбцы?
06. Как рассчитать сводную статистику?
07. Как изменить раскладку таблиц?
08. Как объединить данные из нескольких таблиц?
09. Как легко обрабатывать данные временных рядов?
10. Как манипулировать текстовыми данными?

Ссылки на блокноты и Colab лежат здесь: http://dfedorov.spb.ru/pandas/
Завершил перевод статьи "Pandas за 10 минут" 🥳
Правда, название звучит, как С++ за 24 часа 😄
Ссылка на Блокнот (внутри есть Colab): http://dfedorov.spb.ru/pandas/Pandas%20%D0%B7%D0%B0%2010%20%D0%BC%D0%B8%D0%BD%D1%83%D1%82.html
Перевод статьи о сводных таблицах (pivot_table) в pandas 🥳🐍
🔥 Завершил перевод "Подробного руководства по группировке и агрегированию с помощью pandas" от Криса Моффитта (по ссылке Блокнот и Colab)

Все переводы доступны на странице
Перевел две интересные статьи! 🥳

👉 Обзор типов данных pandas (по ссылке Блокнот и Colab)
👉 Очистка данных о валюте с помощью pandas (по ссылке Блокнот и Colab)

Все переводы доступны на странице 🐍
Перевод статьи об использовании типа данных категории в pandas 🐼

Все переводы по pandas и уроки по Python доступны на странице 🐍
🐼 Перевод советов по выбору столбцов в DataFrame с помощью iloc и filter (внутри Colab)

🐍Остальные переводы уроков по pandas по ссылке
У меня две новости и обе хорошие 🥳

1) Добавил несколько кейсов и упражнений по Pandas и NumPy (можно прокачать скиллы по анализу товаров) по ссылке

2) Завершил перевод статьи "Типичные задачи Excel, продемонстрированные в pandas".
Продолжаем традицию еженедельных переводов и сегодня две статьи про особенности использования groupby в (🐼)

1) Объяснение функций Grouper и Agg в Pandas

2
) Понимание функции transform в Pandas

Кейсы по анализу данных и переводы доступны по ссылке 🐍