О чём курс
Этот тренинг рассматривает возможности языка программирования Python для сбора и анализа данных. Python является современным, мощным языком программирования, который позволяет разрабатывать сложное программное обеспечение с использованием традиционного императивного программирования, использовать возможности функционального программирования и создавать повторно используемый код на основе объектно-ориентированного подхода. Этот тренинг ориентирован на начинающих (Junior) программистов, а также более опытных разработчиков (Regular), которые переходят на Python с других языков программирования и желают изучить его экосистему.
Тренинг охватывает следующие темы:
- Введение. Здесь рассматривается история Python, а также приводится информация о программном обеспечении, которое будет использовано на тренинге.
- Описание проекта. В этом разделе приводится описание разрабатываемого проекта.
- Регулярные выражения. В этом модуле подробно рассматривается работа с регулярными выражениями в языке Python. Регулярные выражения используются для поиска информации по шаблону, а также при разборе текста (парсинге) и для изменения.
- Работа с HTTP-клиентом. В этом модуле слушатели изучают взаимодействие по протоколу HTTP к web-серверам и микросервисам
- Графический интерфейс пользователя в Python. wxPython. Этот модуль полностью посвящен разработке графического интерфейса пользователя на основе обертки кроссплатформенной библиотеки wxWidgets для языка Python – wxPython.
- Математика в Python. NumPy. В этом модуле слушатели изучат основы использования мощной математической библиотеки для работы с векторами и многомерными матрицами.
- Анализ данных с помощью Pandas. Завершающий модуль тренинга фокусирует слушателей на анализе данных с помощью библиотеки Pandas, что является актуальным для всех, кто хочет анализировать и делать выводы на основе большого объема данных. Также в рамках модуля будет рассмотрен процесс построения графиков на основе собранных ранее данных.
Цели
Освоить необходимые компетенции для сбора данных, математической обработки и анализа данных с применением языка Python.
Целевая аудитория
Junior и Regular разработчики на языке Python.
Предварительная подготовка
- Понимание принципов парадигмы объектно-ориентированного программирования
- Понимание принципа работы протокола HTTP
- Прохождение курсов SCRIPT-002, SCRIPT-003 или наличие опыта практической работы на Python от полугода
Для кого
Разработчик
Улучшаемые навыки
Основы работы с библиотеками для анализа данных
Визуализация данных
Обработка и очистка данных
Анализ данных с помощью статистических методов
Работа с реальными наборами данных
Темы курса
01
Вступление. Краткое введение в курс (теория + практика)
1. 1. Теория:
1.1.1. Основные особенности языка Python.
1.1.2. Получение исходного кода проекта.
1.2. Практика:
1.2.1. Подготовка виртуального окружения под будущий проект.
2.1. Теория:
2.1.1. Описание проекта.
03
Регулярные выражения (теория + практика)
3.1. Теория:
3.1.1. Базовые конструкции регулярных выражений Атрибуты Content.
3.1.2. Объединения и группы.
3.1.3. Match-объекты и группирующие скобки.
3.1.4. Сложные позиционные шаблоны (lookarounds).
3.2. Практика:
3.2.1. Разработка первого прототипа приложения для работы с курсами валют.
3.2.2. Поиск и группировка данных, получаемых из html-файла, с помощью регулярных выражений.
04
Работа с HTTP-клиентом (теория + практика)
4.1. Теория:
4.1.1. Основы пакета Requests. Доступные методы REST-API.
4.1.2. Содержимое ответа 4.1.3. Переадресация.
4.1.4. Передача данных в запросе.
4.2. Практика:
4.2.1. Создание HTTP-клиента на базе Requests.
4.2.2. Получение html-страниц с данными с удаленного ресурса.
05
Графический интерфейс. wxPython (теория + практика)
5.1. Теория:
5.1.1. Введение в wxPython. Простейшее приложение.
5.1.2. Базовые элементы GUI.
5.1.3. Механизм связывания.
5.1.4. События.
5.1.5. Абсолютное и относительное позиционирование элементов.
5.2. Практика:
5.2.1. Разработка графического интерфейса приложения с набором необходимых элементов.
06
Математика в Python. NumPy (теория + практика)
6.1. Теория:
6.1.1. Знакомство с NumPy. Основы.
6.1.2. Работа с матрицами и n-мерными массивами.
6.1.3. Математические операции и алгоритмы.
6.1.4. Статистические метрики. Скользящая средняя (MA), простая скользящая средняя (SMA).
6.2. Практика:
6.2.1. Создание матрицы с набором статистических данных.
6.2.2. Вычисление скользящей средней.
07
Анализ данных с помощью Pandas. Графики (теория + практика)
7.1. Теория:
7.1.1. Основы Pandas.
7.1.2. Сбор и хранение данных в Pandas.
7.1.3. Вычисления в Pandas.
7.1.4. Визуализация данных, графики.
7.2. Практика:
7.2.1. Применение структур данных Pandas для хранения статистических данных.
7.2.2. Расчеты и построение графиков.
Чему вы научитесь
01
Научитесь использовать основные библиотеки Python для анализа данных, такие как NumPy и pandas
02
Освоите методы визуализации данных с использованием библиотек
03
Научитесь техникам обработки и очистки данных, включая работу с пропущенными значениями, дубликатами и аномалиями
04
Освоите применение статистических методов для анализа данных, включая описательную статистику, корреляцию и регрессионный анализ
05
Научитесь загружать, анализировать и визуализировать реальные наборы данных из различных источников