Модуль 1 «Язык Python, синтаксис, типы данных, циклы, функции. Обработка текста, регулярные выражения»
1. Синтаксис Python, типы данных
2. Условные операторы, циклы, range, enumerate
3. Изменяемые типы: списки, словари
4. Функции и процедурное программирование
5. Простая обработка текста без регулярных выражений. Регулярные выражения и их применение 1
Лекция «Синтаксис Python, типы данных, операторы, циклы»,
Лекция «Регулярные выражения и их применение»
Практическая работа «Решение задач при помощи стандартных средств языка Python»
Лабораторная работа «Написать функцию, решающую некоторую задачу»
Модуль 2. «Введение в ООП.»
1. Основные понятия и определения
2. Инкапсуляция, Полиморфизм. Наследование
3. Магические методы. Переопределение методов
4. Пример проектирования класса
Лекция «Классы в Python»,
Практическая работа «Реализация класса пользователя социальной сети»
Лабораторная работа «Задача на переопределение магических методов»
Модуль 3 «Модуль NumPy: работа с многомерными массивами и линейная алгебра»
1. Модуль NumPy: многомерные массивы. Типы элементов. Создание массивов. Сохранение/загрузка массивов
2. Принципы работы с массивами: element-wise ops, broadcasting, slicing, indexing, ufuncs
3. Важные функции для работы с массивами. Линейная алгебра
4. Примеры решения задач при помощи NumPy
Лекция «Модуль NumPy: многомерные массивы»
Практическая работа «Загрузка данных в массив и их обработка»
Лабораторная работа «Загрузка и фильтрация данных, вычисление производных значений»
Модуль 4 «Модуль Matplotlib: визуализация данных. Модуль SciPy – численные методы»
1. Модуль Matplotlib. Принцип работы: figure, axis.
2. Виды графиков: plot, scatter, bar, hist, contour, и др.
3. Цветовые карты, работа с изображениями как с массивами данных
4. Интерполяция (scipy.interpolate), интегрирование (scipy.integrate), оптимизация (scipy.optimize)
Лекция «Модуль Matplotlib: визуализация данных»
Практическая работа «Решение оптимизационной задачи и визуализация результатов»
Лабораторная работа «Построение графиков средних величин»
Модуль 5 «Модуль Pandas: работа с таблицами, загрузка и анализ данных»
1. Модуль Pandas (Python for Data Analysis). Основные типы данных: Series, DataFrame
2. Доступ к данным. Статистические методы
3. Загрузка данных из CSV, XLS, HDF5. Группировка и агрегирование. Сводные таблицы
4. Пример анализа данных. Применение NumPy, Pandas, Matplotlib
Лекция «Модуль Pandas (Python for Data Analysis)»
Практическая работа «Анализ данных при помощи Pandas»
Лабораторная работа «Построение сводных таблиц в Pandas»
Модуль 6 «Примеры анализа данных на датасетах»
1. Пример анализа датасета: поток велосипедистов через мост Fremont Bridge
2. Пример анализа датасета: "Open policing project" Стэнфордского университета
Лекция «Примеры анализа данных на примере двух датасетов»
Практическая работа «Загрузка данных из интернета, анализ и визуализация»
Лабораторная работа «Ответить на вопросы по датасету»
Модуль 7 «Введение в Базы данных, Модуль sqlite3»
1. Введение в базы данных
2. Основы SQL
3. Работаем с SQLite базой данных из Python
Лекция «Базы данных. Основы SQL»
Практическая работа «Решение задач на составление запросов к указанной БД»
Модуль 8 «Извлечение данных из веб-страниц. API. Введение во Flask. Знакомство с фреймворком Dash»
1. Структура веб-приложения. HTTP. Модули urllib, requests, BeautifulSoup
2. Работа с API. Модуль JSON
3. Создание страницы во Flask
4. Передача параметров в адресной строке
5. Определение макета приложения Dash. Применение стилей к компонентам
Лекция «Принципы работы веб приложений. HTTP, API», Лекция «Знакомство с фреймворками Flask и Dash»
Практическая работа «Создать приложение, позволяющее на веб странице заполнить анкету»
Лабораторная работа «Решение задач на API Яндекс карт»