Голосов: 0
#1
Анализ данных на языке Python [2021]
Высшая инженерная школа СПбПУ (Санкт-Петербургский Политехнический Университет)
Светлана Городецкая, Анна Заграновская, Дмитрий Федоров
Программа переподготовки предназначена для тех, кто хочет начать работу в сфере анализа больших данных или машинного обучения на позициях аналитика, Data Scientist или Data Engineer.
Наука о данных, или Data science, сегодня является одним из быстро растущих IT-направлений, а Python — это универсальный язык, позволяющий получать данные из произвольных источников и баз данных, обрабатывать их, строить графики и диаграммы.
В результате освоения программы, обучающиеся будут уметь:
- обрабатывать открытые данные с помощью стандартных модулей Python;
- работать с модулем requests;
- писать запросы к БД;
- использовать агрегатных и оконных функций;
- модифицировать данные в БД;
- выполнять операции над векторами и матрицами с помощью модуля NumPy;
- обрабатывать табличные данные с помощью pandas;
- выбирать подмножество из таблицы;
- визуализировать данные;
- осуществлять сбор и подготовку данных с помощью языка Python;
- использовать методы анализа и обработки данных;
- строить модели машинного обучения;
- использовать методы обработки данных для анализа и прогнозирования временных рядов;
- строить модели одномерных временных рядов.
Тема 1. Введение в программирование на языке Python в среде Jupyter Notebook
1.1 Отличия языков программирования.
1.2 Функции в Python.
1.3 Создание функций.
Тема 2. Логические операторы и операции над строками.
2.1 Работа с текстом.Тема 3. Модули.
2.2 Строковый тип данных.
2.3 Функции для работы со строками.
2.4 Преобразование типов.
2.5 Срезы.
3.1 Создание собственных модулей.Тема 4. Методы.
3.2 Загрузка модулей и вызов функций, содержащихся в модуле.
3.3 Создание собственных модулей.
3.4 Отличие запуска модуля от импортирования.
3.5 Автоматизированное тестирование функций.
4.1 Специальные методы и отличие от функций.Тема 5. Списки и преобразование типов.
4.2 Строковые методы в языке Python.
4.3 Отличие вызова метода от вызова функции из модуля.
4.4 Специальные строковые методы.
Практические занятия
Создание модуля для вычисления статистики
5.1 Синтаксические отличия в языках высокого уровня.
5.2 Правила чтения оператора присваивания.
Практические занятияТема 6. Циклы и обработка входных данных.
Формирование выражений с использованием математических, логических, строковых операций, приоритет операций.
6.1 Инструкция цикла for.Тема 7. Множества, кортежи, словари.
6.2 Обработка списков и строк.
6.3 Использование функции range.
6.4 Подходы к созданию списка: генераторы списков.
6.5 Функции высшего порядка.
6.6 Инструкция цикла while.
6.7 Бесконечный цикл.
6.8 Анонимные функции.
6.9 Вложенные циклы.
Практические занятия
Обработка списка и задачи на преобразование типов данных
7.1 Множества в Python.Тема 8. Обработка исключений и работа с файлами.
7.2 Операции над множествами, основные методы.
7.3 Создание множеств.
7.4 Кортежи в Python.
7.5 Операции над кортежами.
7.6 Словари.
7.7 Методы для работы со словарями.
7.8 Реализация подсчета слов и символов с помощью словарей.
7.9 Переменное число параметров.
Практические занятия
Обработка словарей и кортежей.
8.1 Исключения в Python.Тема 9. Основы объектно-ориентированного программирования.
8.2 Обработка исключений.
8.3 Использование исключений для обработки ошибок.
8.4 Чтение из файла.
8.5 Обработка ошибок при работе с файлами.
8.6 Менеджер контекста.
8.7 Методы для чтения, записи и добавления текста.
Практические занятия
Обработка текстовых файлов - копирование, поиск фразы.
9.1 Понятие объекта.Тема 10. Открытые данные.
9.2 Создание класса.
9.3 Объектно-ориентированный подход к программированию.
9.4 Создание методов класса.
9.5 Конструктор объекта.
9.6 Атрибуты объекта и класса.
9.7 Наследование классов.
Практические занятия
Разработка объектно-ориентированного приложения.
10.1 Работа с API.Тема 11. Промежуточная аттестация
10.2 Байтовый тип данных.
10.3 Кодировки.
10.4 Доступ к файлам, находящимся в сети Интернет.
10.5 Доступ к данным через API.
Практические занятия
Обработка данных, полученных с удаленного сайта.
Тема 1. Введение в базы данных и СУБД.
1.1 Введение в базы данных и СУБД.Тема 2. Работа с объектами БД.
1.2 Реляционные СУБД и язык запросов SQL.
- Концепция баз данных и СУБД.
- Принципы организации базы данных.
- Основные функции СУБД.
- Классификация баз данных.
- Преимущества и недостатки БД.
- Основные операции с данными (CRUD-операции).
Практические занятия:
- Основные термины и определения.
- Требования к модели РБД.
- Нормализация.
- Работа с РБД.
- Подключение к БД.
- Язык запросов SQL.
- Базовый синтаксис SQL.
Работа с РБД.
Подключение.
Язык запросов SQL
2.1 Управление таблицами БД.Тема 3. Чтение данных из БД
2.2 Ограничения целостности
- Операторы DDL.
- Создание таблиц БД.
- Определение полей.
- Типы данных.
- Изменение таблиц.
- Удаление таблиц.
Практические занятия:
- Типы ограничений целостности и их назначение.
- Создание ограничений целостности.
Создание таблиц и ограничений целостности
3.1 Написание простых SELECT-запросов.Тема 4. Модификация данных. Транзакции
3.2 Запросы к нескольким таблицам
- Простые запросы.
- Запросы с фильтрацией и сортировкой.
3.3 Использование SET-операторов
- Типы объединений: INNER JOIN, OUTER JOIN, CROSS JOIN.
- Объединение таблицы с самой собой.
3.4 Запросы с группировкой.
- Объединение результирующих наборов записей с помощью SET-операторов (Объединение, пересечение, вычитание).
3.5 Использование аналитических функций
- Группировка и агрегирование данных.
- Фильтрация групп на основе итоговых данных.
- Использование наборов группирования (GROUPING SETS, CUBE и ROLLUP)
Практические занятия
- Анализ данных БД с помощью аналитических (оконных) функций
Чтение данных из БД
4.1 Модификация данныхТема 5. Итоговая аттестация.
4.2 Транзакции
- Добавление данных в БД.
- Изменение данных.
- Удаление данных
Практические занятия
- Определение транзакций.
- Типы транзакций.
- Уровни изоляции транзакций.
Модификация данных.
Транзакции
Тема 1. Консолидация данных
1.1 Введение в ETL.Тема 2. Трансформация данных
1.2 Data Engineer.
1.3 Извлечение данных в ETL
1.4 Очистка данных в ETL
1.5 Преобразование данных в ETL
1.6 Загрузка данных в хранилище
1.7 Загрузка данных из локальных источников
1.8 Обогащение данных
Практические занятия
Работа с векторами и матрицами в NumPy.
Агрегирование данных массива.
2.1 Введение в трансформацию данныхТема 3. Визуализация данных
2.2 Трансформация упорядоченных данных
2.3 Группировка данных
2.4 Слияние данных
2.5 Квантование
2.6 Нормализация и кодирование данных
Практические занятия
Работа с таблицами pandas.
Агрегирование данных из нескольких таблиц.
3.1 Подготовка данных.Тема 4. Очистка и предобработка данных
3.2 Методы и инструменты визуализации.
3.3 Обзор возможностей Python для визуализации.
Практические занятия
Построение графиков с помощью внешних модулей.
4.1 Оценка качества данныхТема 5. Введение в машинное обучение на языке Python
4.2 Технологии и методы оценки качества данных
4.3 Очистка и предобработка
4.4 Фильтрация данных
4.5 Обработка дубликатов и противоречий
4.6 Выявление аномальных значений
4.7 Восстановление пропущенных значений
4.8 Введение с сокращение размерности
4.9 Сокращение числа признаков
Практические занятия
Очистка данных с помощью возможностей pandas.
5.1 Знакомство с библиотекой Scikit-learn.Тема 6. Аттестация
5.2 Представление данных в Scikit-learn.
5.3 Проверка модели.
5.4 Классификация.
5.5 Регрессия.
Тема 1. Введение в анализ данных. Операции над векторами и матрицами в NumPy
1.1 Введение в анализ данных. Возможности Jupyter LabТема 2. Операции над таблицами в pandas
1.2 Возможности модуля NumPy
- Введение в анализ данных.
- Выполнение внешнего кода %run.
- Длительность выполнения кода %timeit.
- Справка по магическим функциям.
- Использование системного командного процессора
Практические занятия:
- Операции над векторами и матрицами в NumPy.
- Сравнение list и ndarray.
- Создание ndarray из списка.
- Атрибуты массивов NumPy.
- Индексация массива.
- Срезы массива.
- Изменение формы массивов.
- Медлительность циклов Python.
- Универсальные функции NumPy.
- Агрегирование.
- Суммирование значений.
- Минимум и максимум.
- Транслирование.
- Сравнение, маски, булева логика.
- Прихотливая индексация. Сортировка массивов
Работа с векторами и матрицами в NumPy.
Агрегирование данных массива.
2.1 Общее знакомство с pandas, обзор возможностейТема 3. Сбор и подготовка данных с помощью языка Python
2.2 Типы данных pandas и операции над ними
- Обзор типов данных pandas.
- Выбор подмножества из таблицы.
- Построение графиков.
- Создание новых столбцов.
- Создание сводной статистики.
- Работа с текстовыми данными.
Практические занятия:
- Работа с объектами Series и DataFrame.
- Использование индексных объектов.
- Переиндексация.
- Удаление элементов из оси.
- Доступ по индексу, выборка, фильтрация.
- Сортировка и ранжирование
Построение графиков.
Работа с текстовыми данными.
Работа с объектами Series и DataFrame.
3.1 Работа с файлами разных форматовТема 4. Анализ данных с помощью возможностей языка Python
3.2 Очистка и подготовка данных
- Чтение и запись CSV, XML, JSON, Excel, HTML
3.3 Модуль requests
- Обработка отсутствующих данных.
- Фильтрация отсутствующих данных.
- Восполнение отсутствующих данных.
- Устранение дубликатов.
- Преобразование данных.
- Замена значений.
- Манипуляции со строками
3.4 Взаимодействие с базами данных (SQL).
- Обзор возможностей модуля requests.
- Обращение к внешним API (погода, курс валют).
3.5 Основы обработки естественного языка
- Работа с реляционными БД (sqlite3), выполнение SQL-запросов.
- SQL-запросы из pandas
Практические занятия:
- Предварительная обработка текста.
- Лексемизация слов.
- Нормализация слов
Работа с файлами разных форматов.
Очистка и подготовка данных.
4.1 Операции над таблицами в pandas5. Итоговая аттестация.
4.2 Визуализация данных
- Иерархическое индексирование.
- Сводная статистика по уровню.
- Комбинирование и слияние наборов данных.
- Изменение формы и поворот.
- Агрегирование данных и групповые операции.
- Метод apply.
- Сводные таблицы
4.3 Временные ряды
- Matplotlib: рисунки, подграфики, цвета, маркеры, аннотации.
- Seaborn/plotly: линейные графики, столбчатые диаграммы, гистограммы
4.4 Анализ данных из открытых источников
- Типы данных, относящиеся к дате и времени.
- Диапазоны дат, сдвиг.
- Скользящие оконные функции
Практические занятия:
- Анализ данных из открытых источников
Визуализация данных.
Анализ данных из социальной сети ВКонтакте.
Тема 1. Введение в анализ и прогнозирование данных
1.1 Первичный анализ данных с использованием описательных статистик и визуализацииТема 2. Линейные модели для классификации
1.2 Проверка статистических гипотез
1.3 Масштабирование, отбор, понижение размерности признаков
1.4 Оценка точности моделей
Практические занятия
Первичный анализ данных.
Проверка различных статистических гипотез.
Масштабирование, отбор и понижение размерности признаков.
Оценка точности построенных моделей.
2.1 Логистическая регрессияТема 3. Нелинейные модели для классификации
2.2 Линейный метод опорных векторов
2.3 Дискриминантный анализ
Практические занятия
Построение линейных модели для классификации.
3.1 Метод ближайших соседейТема 4. Линейные модели для регрессии
3.2 Наивный байесовский классификатор
3.3 Деревья решений для классификации
3.4 Нейронные сети
Практические занятия
Построение нелинейных моделей для классификации.
4.1 Парная регрессияТема 5. Нелинейные модели для регрессии
4.2 Множественная регрессия
4.3 Полиномиальная регрессия
4.4 Регрессия с фиктивными переменными
4.5 Гребневая регрессия
4.6 Лассо регрессия
4.7 Эластичная сеть
4.8 Пуассоновская регрессия
Практические занятия
Построение линейной модели для регрессии.
5.1 Метод ближайших соседейТема 6. Ансамбли и настройка параметров
5.2 Деревья решений для регрессии
5.3 Байесовская регрессия
5.4 Ядерный метод опорных векторов
5.5 Нейронные сети
Практические занятия
Построение нелинейные модели для регрессии
6.1 Проект построения модели машинного обучения для классификацииТема 7. Аттестация
6.2 Проект построения модели машинного обучения для регрессии
Практические занятия
Gостроение ансамблевых моделей, настройка параметров лучшего алгоритма.
Тема 1. Введение в анализ и прогнозирование временных рядов
1.1 Понятие и компоненты временного рядаТема 2. Структура временного ряда
1.2 Анализ временных рядов
1.3 Задача прогнозирования временных рядов
1.4 Первичный анализ данных с использованием описательных статистик и визуализации
1.5 Передискретизация и интерполяция
1.6 Преобразование данных
1.7 Сглаживание скользящей средней
Практические занятия
Проведение первичного анализа, передискретизации, интерполяции, преобразования данных,
Проведение сглаживания временных рядов с помощью скользящих средних.
2.1 Белый шумТема 3. Оценка качества моделей
2.2 Случайное блуждание
2.3 Разложение временного ряда на составляющие компоненты
2.4 Выявление и моделирование тренда
2.5 Выявление и моделирование сезонности
2.6 Выявление и проверка стационарности временного ряда
Практические занятия
Проверка временных рядов и остатков при построении моделей скользящих средних белым шумом.
Проверка данных на случайное блуждание.
Разложение временных рядов на составляющие компоненты.
Удаление их данных тренда с использованием методов интегрирования и моделирования кривых роста.
Удаление из данных сезонной составляющей с использованием разностного метода и моделирование сезонности с помощью полиномов.
Проверка временных рядов на стационарность с помощью разных методов.
3.1 Тестовая и обучающая выборкаТема 4. Модели одномерных временных рядов
3.2 Оценка точности моделей
3.3 Базовый уровень прогноза
3.4 Анализ остатков
3.5 Формы представления задачи прогнозирования временных рядов
Практические занятия
Разбиение временных рядов на обучающую и тестовую выборки с помощью разных методов.
Оценка точности наивного прогноза (базовый уровень прогноза), анализ остатков с помощью разных методов.
Посмотрите на данные них иначе: измените их временную разбивку, сформулируйте задачу прогнозирования временных рядов в терминах задачи регрессии или классификации.
4.1 Прогнозирование с помощью кривых ростаТема 5. Аттестация
4.2 Тренд-сезонная модель
4.3 Тренд-сезонная модель с фиктивными переменными
4.4 Простое экспоненциальное сглаживание (модель Брауна)
4.5 Модель Хольта с линейным и экспоненциальным трендом
4.6 Модель Хольта-Уинтерса и модель Тейла-Вейджа
4.7 Модель стохастической аппроксимации
4.8 Метод Бокса-Дженкинса
4.9 Авторегрессионные модели
4.10 Модели скользящих средних
4.11 Модель ARIMA
4.12 Автокорреляция и частичная автокорреляция
4.13 Поиск по сетке гиперпараметров модели ARIMA
4.14 Прогнозные интервалы
4.15 Проект построения моделей для прогнозирования временных рядов
Практические занятия
Построение разных моделей, определение лучшей модели, повышение качества лучшей модели изменяя гиперпараметры, построение прогнозных интервалов.
Для просмотра содержимого вам необходимо зарегистрироваться!Для просмотра содержимого вам необходимо зарегистрироваться!
Последнее редактирование модератором:
- Статус
- В этой теме нельзя размещать новые ответы.