• A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

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

2022/2023
Учебный год
RUS
Обучение ведется на русском языке
3
Кредиты
Кто читает:
Институт медиа
Статус:
Курс обязательный
Когда читается:
2-й курс, 1, 2 модуль

Преподаватели


Пиманов Даниил Владимирович


Щербаков Игорь Андреевич

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

Аннотация

Курс «Программирование и анализ данных» является обязательным курсом на образовательной программе «Журналистика данных». Курс состоит из трех блоков. Первый блок включает базовые элементы языка программирования Python, второй блок представляет собой знакомство с инструментами обработки, визуализации и разведывательного анализа данных в Python, третий блок посвящен выгрузке информации из веб-страниц и баз данных, а также основам работы с открытыми данными.
Цель освоения дисциплины

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

  • Целями освоения дисциплины являются овладение навыками программирования на языке Python, овладение методами сбора и обработки данных для решения задач дата-журналистики, овладение элементами веб-дизайна для визуализации данных и создания собственных проектов.
Планируемые результаты обучения

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

  • Знать особенности работы с современными дистрибутивами Python
  • Знает этапы предварительной обработки текста и умеет реализовывать их на практике
  • Применяет готовые функции Python, пишет собственные функции на Python, умеет работать с классами, описывает собственные объекты в Python и определяет методы на них
  • Программа для сбора открытых данных
  • Программа на языке Python для работы с базами данных
  • Реализация REST интерфейс
  • Умеет выполнять операции с массивами NumPy
  • Умеет загружать и сохранять файлы с данными различных форматов
  • Умеет загружать файлы с данными; выполняет обработку табличных данных средствами Python
  • Умеет работать в среде Jupyter Notebook, создает переменные разных типов, выполняет приведение типов
  • Умеет решать прикладные задачи с применением циклов
  • Умеет создавать списки, кортежи, множества и словари в Python, обращаться к их элементам и изменять их
  • Умеет создавать списки, решает прикладные задачи с применением условных конструкций
  • Умеет строить графики математических функций и визуализировать данные в Python, знает этапы разведывательного анализа данных и умеет реализовывать их на практике
Содержание учебной дисциплины

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

  • Начало работы в Python
  • Управляющие конструкции в Python
  • Структуры данных в Python
  • Циклы в Python
  • Функции и классы в Python
  • Работа с файлами
  • Работа с текстами
  • Массивы NumPy
  • Работа с таблицами
  • Визуализация и разведывательный анализ данных
  • Высокопроизводительные дистрибутивы Python
  • Веб-программирование с помощью Python
  • Открытые данные
  • Современные СУБД
Элементы контроля

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

  • неблокирующий Домашние задания
    Домашние задания предполагают решение задач по программированию по пройденным темам. С учетом разного уровня подготовки студентов домашние задания представляют собой набор задач разной сложности, которые весят разное количество баллов. В начале каждого домашнего задания указано общее число баллов, которое нужно набрать, чтобы получить оценку 10. Таким образом, студент может выбирать, какие задачи ему решать. Например, если за все домашнее задание нужно набрать 8 баллов, чтобы получить оценку 10, студент может решить 8 задач по одному баллу или 4 задачи по одному баллу и одну задачу на 4 балла. Кроме того, студент может решить больше задач, чтобы потренироваться. Все задачи будут проверены и оценены, но получить оценку выше 10 за домашнее задание невозможно. Оценка за домашние задания, которая подставляется в формулу оценивания, определяется как округленное до целого среднее арифметическое оценок, полученных за домашние работы (способ округления – стандартный арифметический). Домашние задания, сданные после срока, оцениваются с использованием понижающих коэффициентов: опоздание в пределах часа – штраф 10% от полученной оценки, в пределах суток – штраф 20%, в пределах недели – штраф 50%. Домашние задания, сданные через неделю после указанного срока и позже, не принимаются и не оцениваются.
  • неблокирующий Проект
    Проект представляет собой написание корректно работающей программы прикладного назначения с последующей устной защитой в виде презентации. Проект включает в себя следующие части: программа Python (файл с расширением .py или файл Jupyter Notebook с расширением .ipynb), самостоятельно созданная веб-страница и презентация, включающая публичную демонстрацию работы программы. Проект обязательно должен включать использование навыков, полученных в результате прохождения тем второго и третьего модулей, то есть работу с веб-страницами, сохранение данных в датафрейм pandas с последующей их обработкой или анализом, визуализацию данных. Проект выполняется в командах.
Промежуточная аттестация

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

  • 2021/2022 учебный год 2 модуль
    0.5 * Проект + 0.5 * Домашние задания
  • 2021/2022 учебный год 3 модуль
    0.5 * Проект + 0.5 * Домашние задания
  • 2021/2022 учебный год 4 модуль
    0.5 * Проект + 0.5 * Домашние задания
  • 2022/2023 учебный год 2 модуль
    0.5 * Проект + 0.5 * Домашние задания
Список литературы

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

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

  • Nelli, F. (2018). Python Data Analytics : With Pandas, NumPy, and Matplotlib (Vol. Second edition). New York, NY: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1905344
  • Федоров, Д. Ю.  Программирование на языке высокого уровня Python : учебное пособие для среднего профессионального образования / Д. Ю. Федоров. — 2-е изд. — Москва : Издательство Юрайт, 2019. — 161 с. — (Профессиональное образование). — ISBN 978-5-534-11961-9. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/446505 (дата обращения: 28.08.2023).

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

  • Perkins, J. (2014). Python 3 Text Processing with NLTK 3 Cookbook. Birmingham: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=836632
  • Python и анализ данных, Маккинли, У., 2015
  • Скрапинг веб - сайтов с помощью Python : сбор данных из современного интернета, Митчелл, Р., 2016

Авторы

  • Абрамов Роман Сергеевич
  • Федорова Ксения Александровна