Целью курса является формирование и/или совершенствование теоретических знаний и умений в области анализа данных с применением языка Python, а также приобретение практических навыков обработки данных на языке Python для широкого круга специалистов, работающих с данными.
Знания и умения, полученные в результате изучения
В результате обучение на курсе слушатели будут
Знать:- Основные принципы анализа данных с помощью возможностей языка Python.
- Возможности выполнения операций над векторами и матрицами в NumPy.
- Типы данных pandas.
- Основы обработки естественного языка.
- Принципы работы с файлами разных форматов.
- Методы очистки и подготовки данных.
- Принципы взаимодействия с базами данных (SQL).
Уметь:- Умение использовать Jupyter Lab, использование системного командного процессора.
- Выполнение операций над векторами и матрицами с помощью модуля NumPy.
- Обработка табличных данных с помощью pandas.
- Умение выбрать подмножество из таблицы.
- Умение визуализировать данные.
- Умение осуществлять сбор и подготовку данных с помощью языка Python, работа с модулем requests.
- Умение взаимодействовать с базами данных (SQL).
Иметь навыки:- Осуществлять сбор и подготовку необходимых для анализа и визуализации данных с помощью языка Python.
- Работать с модулем requests.
- Осуществлять анализ данных из различных источников средствами языка Python.
- Использовать модули NumPy и pandas для анализа данных.
- Визуализировать аналитические данные.
Тема 1. Введение в анализ данных. Операции над векторами и матрицами в NumPy1.1 Введение в анализ данных. Возможности Jupyter Lab
Введение в анализ данных.
Выполнение внешнего кода %run.
Длительность выполнения кода %timeit.
Справка по магическим функциям.
Использование системного командного процессора
1.2 Возможности модуля NumPy
Операции над векторами и матрицами в NumPy.
Сравнение list и ndarray.
Создание ndarray из списка.
Атрибуты массивов NumPy.
Индексация массива.
Срезы массива.
Изменение формы массивов.
Медлительность циклов Python.
Универсальные функции NumPy.
Агрегирование.
Суммирование значений.
Минимум и максимум.
Транслирование.
Сравнение, маски, булева логика.
Прихотливая индексация. Сортировка массивов
Практические занятия:
Работа с векторами и матрицами в NumPy.
Агрегирование данных массива.
Тема 2. Операции над таблицами в pandas2.1 Общее знакомство с pandas, обзор возможностей
Обзор типов данных pandas.
Выбор подмножества из таблицы.
Построение графиков.
Создание новых столбцов.
Создание сводной статистики.
Работа с текстовыми данными.
2.2 Типы данных pandas и операции над ними
Работа с объектами Series и DataFrame.
Использование индексных объектов.
Переиндексация.
Удаление элементов из оси.
Доступ по индексу, выборка, фильтрация.
Сортировка и ранжирование
Практические занятия:
Построение графиков.
Работа с текстовыми данными.
Работа с объектами Series и DataFrame.
Тема 3. Сбор и подготовка данных с помощью языка Python3.1 Работа с файлами разных форматов
Чтение и запись CSV, XML, JSON, Excel, HTML
3.2 Очистка и подготовка данных
Обработка отсутствующих данных.
Фильтрация отсутствующих данных.
Восполнение отсутствующих данных.
Устранение дубликатов.
Преобразование данных.
Замена значений.
Манипуляции со строками
3.3 Модуль requests
Обзор возможностей модуля requests.
Обращение к внешним API (погода, курс валют).
3.4 Взаимодействие с базами данных (SQL).
Работа с реляционными БД (sqlite3), выполнение SQL-запросов.
SQL-запросы из pandas
3.5 Основы обработки естественного языка
Предварительная обработка текста.
Лексемизация слов.
Нормализация слов
Практические занятия:
Работа с файлами разных форматов.
Очистка и подготовка данных.
Тема 4. Анализ данных с помощью возможностей языка Python4.1 Операции над таблицами в pandas
Иерархическое индексирование.
Сводная статистика по уровню.
Комбинирование и слияние наборов данных.
Изменение формы и поворот.
Агрегирование данных и групповые операции.
Метод apply.
Сводные таблицы
4.2 Визуализация данных
Matplotlib: рисунки, подграфики, цвета, маркеры, аннотации.
Seaborn/plotly: линейные графики, столбчатые диаграммы, гистограммы
4.3 Временные ряды
Типы данных, относящиеся к дате и времени.
Диапазоны дат, сдвиг.
Скользящие оконные функции
4.4 Анализ данных из открытых источников
Анализ данных из открытых источников
Практические занятия:
Визуализация данных.
Анализ данных из социальной сети ВКонтакте.
5. Итоговая аттестация.