• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Магистратура 2019/2020

Программирование для анализа данных

Лучший по критерию «Новизна полученных знаний»
Статус: Курс обязательный (Коммуникации, основанные на данных)
Направление: 42.04.01. Реклама и связи с общественностью
Когда читается: 1-й курс, 2 модуль
Формат изучения: без онлайн-курса
Преподаватели: Никушин Алексей Вячеславович, Тамбовцева Алла Андреевна
Прогр. обучения: Коммуникации, основанные на данных
Язык: русский
Кредиты: 3

Программа дисциплины

Аннотация

Настоящая дисциплина читается на 1 курсе магистратуры образовательной программы «Коммуникации, основанные на данных» и относится к блоку базовых дисциплин программы. В результате успешного освоения курса студенты будут знать: • особенности интерфейса Jupyter Notebook; • переменные и базовые объекты в Python; уметь: • адекватно оценивать корректность использования методов анализа данных, применяемых при решении практических задач; владеть: • навыками программирования в Python; • навыками работы с наборами данных; • обработки и анализа данных с помощью библиотеки Pandas.
Цель освоения дисциплины

Цель освоения дисциплины

  • Целями освоения дисциплины «Программирование для анализа данных» являются: - овладение навыками программирования на языке Python; - овладение навыками работы в среде интерактивной разработки Jupyter Notebook; - овладение методами обработки, анализа и визуализации качественных и количественных данных для решения прикладных задач, возникающих в сфере управления интегрированными коммуникациями и маркетинга.
Планируемые результаты обучения

Планируемые результаты обучения

  • Знает особенности интерфейса Jupyter Notebook, переменные и базовые объекты в Python.
  • Использует библиотеку pandas для анализа данных
  • Умеет выполнять анализ и визуализацию данных в Python.
  • Владеет навыками парсинга данных и работы с базами данных в Python.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Тема 1. Введение в работу с Python и Jupyter Notebook.
    Установка Jupyter Notebook в составе Anaconda.  Особенности интерфейса Jupyter Notebook.  Язык разметки Markdown.  Установка и загрузка библиотек в Python.  Документация к Python и ресурсы, посвященные программированию в Python.  Переменные в Python.  Типы данных: числовой, целочисленный, текстовый, логический. Преобразование типов.  Объекты в Python.  Основные структуры данных: списки и словари. Создание, доступ, добавление и удаление, выбор элементов и сортировка.  Циклы.  Дополнительные структуры данных: кортежи и множества. Операции с кортежами и множествами.  Функции.  Обработка исключений.  Работа с файлами в Python.  Чтение JSON-файлов с помощью Python.  Модуль для работы с операционной системой.
  • Тема 2. Основы работы с библиотекой Pandas.
     Объекты Series и DataFrame.  Чтение данных в DataFrame из текстовых файлов (txt, csv, tsv), загрузка таблиц Excel (xls, xlsx).  Чтение данных в DataFrame из объектов Python.  Конвертация файлов в разных форматах с помощью Pandas.  Первичный обзор данных.  Преобразование типов колонок.  Выбор, добавление и удаление колонок.  Предобработка данных.  Работа с пропущенными значениями и дубликатами.  Выборка строк/столбцов и построение срезов.  Использование списков для получения срезов.  Изменение элементов DataFrame по условиям.  Применение методов к столбцам с помощью apply.  Группировка данных.  Построение сводных таблиц.  Объединение данных.  Трансформация данных.  Работа с колонками типа datetime.  Работа со строками в pandas.
  • Тема 3. Разведывательный анализ данных в Python. Визуализация количественных и качественных данных в Python. Визуализация данных с помощью Pandas.
     Описательный анализ с помощью pandas-profiling.  Описательные статистики: среднее арифметическое, среднеквадратичное отклонение, медиана, квантили, квартили и процентили.  Разведывательный анализ данных: типы и распределения данных.  Выявление связей между качественными и количественными переменными.  Построение базовых графиков с помощью Pandas.  Визуализация количественных данных в Python: гистограммы, графики плотности распределения, ящики с усами, скрипичные диаграммы (violin plots), диаграммы рассеяния, матрицы диаграмм рассеяния. Визуализация качественных данных в Python: таблицы сопряженности, столбчатые и круговые диаграммы.  Дополнительные инструменты визуализации: matplotlib, seaborn, plotly  Работа с форматом графиков: изменение фона, палитра цветов, типы маркеров и линий, редактирование легенды графика.
  • Тема 4. Работа с API. Парсинг HTML-страниц. Работа с базами данных из Python.
     Библиотека requests.  Принципы работы API: GET- и POST-запросы.  Получение данных по API.  Преобразование данных API для загрузки в DataFrame.  Парсинг HTML-страниц с помощью библиотеки BeautifulSoup.  Передача данных парсинга в DataFrame.  Работа с базами данных в Python.  Загрузка полученных из базы данных в DataFrame.
Элементы контроля

Элементы контроля

  • неблокирующий Осам. работа – самостоятельная работа.
  • неблокирующий Од/з – домашнее задание.
  • неблокирующий Оэкз – экзамен
    Экзамен представляет собой набор задач по пройденным темам, которые выполняются на компьютере в Python (Jupyter Notebook). Во время выполнения экзамена студенту разрешается использовать материалы лекций и семинаров, а также пользоваться Интернет-ресурсами, посвященными программированию и анализу данных в Python. Коммуникация с другими студентами и использование социальных сетей во время экзамена не допускается. Экзамен оценивается по 10-ти балльной шкале.
Промежуточная аттестация

Промежуточная аттестация

  • Промежуточная аттестация (2 модуль)
    0.3 * Од/з – домашнее задание. + 0.3 * Осам. работа – самостоятельная работа. + 0.4 * Оэкз – экзамен
Список литературы

Список литературы

Рекомендуемая основная литература

  • McKinney, W. (2018). Python for Data Analysis : Data Wrangling with Pandas, NumPy, and IPython (Vol. Second edition). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1605925
  • Pilgrim, M. (2009). Dive Into Python 3. New York: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=326208

Рекомендуемая дополнительная литература

  • Python для сложных задач: наука о данных и машинное обучение : пер. с англ., Плас, Дж. Вандер, 2019
  • Vanderplas, J. T. (2016). Python Data Science Handbook : Essential Tools for Working with Data (Vol. First edition). Sebastopol, CA: Reilly - O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=nlebk&AN=1425081