Бакалавриат
2023/2024
Анализ данных на Python
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Статус:
Курс обязательный (Разработка информационных систем для бизнеса)
Направление:
09.03.04. Программная инженерия
Кто читает:
Кафедра высшей математики
Где читается:
Факультет менеджмента (Пермь)
Когда читается:
2-й курс, 4 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для всех кампусов НИУ ВШЭ
Преподаватели:
Тамбовцева Алла Андреевна
Язык:
русский
Кредиты:
3
Контактные часы:
24
Программа дисциплины
Аннотация
Для образовательной программы дисциплина «Анализ данных на Python» является обязательной. Дисциплина подразделяется на три блока. Первый блок посвящен работе с основными структурами данных в Python, таких как списки, кортежи, словари и массивы. Второй блок посвящен обработке и визуализации данных с помощью библиотек NumpPy, Pandas и Matplotlib. Третий блок посвящен решению прикладных задач в Python и включает темы, связанные со сбором и анализом данных: работа с API, выгрузка данных из веб-страниц, применение статистических критериев и построение моделей линейной регрессии.
Цель освоения дисциплины
- Понятие типа данных, основные структуры данных языка Python; основы алгоритмизации: определение, свойства и средства формализации алгоритмов, методы исследования их свойств, оценки эффективности; управляющие структуры языка Python; методы разработки алгоритмов, конструирования программ для выбора наиболее подходящих алгоритмов и средств их реализации в зависимости от постановки задачи.
- Использовать средства отладки современных систем программирования; реализовать алгоритм на языке Python, используя наиболее подходящие конструкции и структуры данных.
- Навыками разработки программ средней сложности с использованием возможностей современных систем программирования, средств тестирования и отладки, документирования.
Планируемые результаты обучения
- уметь применять методы на индексируемых структурах данных Python;
- уметь выполнять операции на массивах NumPy
- уметь вычислять и интерпретировать числовые характеристики выборки
- уметь загружать и обрабатывать данные с помощью библиотеки pandas
- уметь выполнять предварительную обработку текста и строить облака слов
- уметь выполнять сериализацию и десериализацию JSON в Python
- уметь выполнять парсинг HTML c помощью bs4, уметь выполнять поиск по тэгам и атрибутам
- уметь строить и интерпретировать графики для визуализации качественных и количественных данных
- уметь осуществлять проверку статистических гипотез о доли и среднем с помощью модуля stats и интерпретировать полученные результаты
- уметь строить доверительные интервалы для доли и среднего с помощью модуля stats и интерпретировать полученные результаты
- уметь выявлять связи в количественных данных с помощью библиотеки pandas и модуля stats
- уметь реализовывать иерархический кластерный анализ в Python и интерпретировать полученные результаты
- уметь строить модели линейной регрессии с помощью библиотеки statsmodels и интерпретировать полученные результаты
Содержание учебной дисциплины
- Раздел 1. Индексируемые структуры данных
- Раздел 2. Массивы NumPy и операции на массивах
- Раздел 3. Датафреймы Pandas и операции на датафреймах.
- Раздел 4. Обработка текстовых данных
- Раздел 5. Сбор данных: работа с API
- Раздел 6. Сбор данных: парсинг HTML
- Раздел 7. Визуализация данных
- Раздел 8. Иерархический кластерный анализ
- Раздел 9. Доверительное оценивание и статистические тесты
- Раздел 10. Линейная регрессия
Элементы контроля
- ДЗ1Мини-проект, посвященный анализу данных с помощью библиотек NumPy и Pandas, а также визуализации текстов с помощью облаков слов. Домашние задания, сданные после срока, оцениваются с использованием понижающих коэффициентов: опоздание в пределах часа – штраф 10% от полученной оценки, в пределах суток – штраф 30%. Домашние задания, сданные позже, не принимаются и не оцениваются.
- ДЗ2Мини-проект, включающий три части: парсинг HTML-страницы с помощью средств BeautifulSoup, обработка полученных данных с помощью pandas, визуализация и кластеризация данных. Домашние задания, сданные после срока, оцениваются с использованием понижающих коэффициентов: опоздание в пределах часа – штраф 10% от полученной оценки, в пределах суток – штраф 30%. Домашние задания, сданные позже, не принимаются и не оцениваются.
- ДЗ3Мини-проект, посвященный статистическому оцениванию и построению моделей линейной регрессии в Python. Домашние задания, сданные после срока, оцениваются с использованием понижающих коэффициентов: опоздание в пределах часа – штраф 10% от полученной оценки, в пределах суток – штраф 30%. Домашние задания, сданные позже, не принимаются и не оцениваются.
- Laboratory workЛабораторные работы: небольшие домашние задания, обязательные к выполнению к следующему занятию. Могут включать задачи на закрепление пройденного материала или задачи, предполагающие самостоятельное изучение небольших блоков по основам Python по предложенных материалам (конспекты или видео). Оценка за лабораторные работы – неокругленное среднее арифметическое, посчитанное по всем работам. Поздняя сдача лабораторных работ не предусмотрена.
Промежуточная аттестация
- 2023/2024 4th module0.4 * Laboratory work + 0.2 * ДЗ1 + 0.25 * ДЗ2 + 0.15 * ДЗ3
Список литературы
Рекомендуемая основная литература
- Груздев, А. В. Изучаем Pandas / А. В. Груздев, М. Хейдт , перевод с английского А. В. Груздева. — 2-ое изд., испр. и доп. — Москва : ДМК Пресс, 2019. — 700 с. — ISBN 978-5-97060-670-4. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/131693 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Федоров, Д. Ю. Программирование на языке высокого уровня Python : учебное пособие для среднего профессионального образования / Д. Ю. Федоров. — 2-е изд. — Москва : Издательство Юрайт, 2021. — 161 с. — (Профессиональное образование). — ISBN 978-5-534-11961-9. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/472986 (дата обращения: 27.08.2024).
- Чарльз Уилан - Голая статистика - 9785001008231 - МИФ - 2016 - https://hse.miflib.ru/#/book/14957 - 14957
Рекомендуемая дополнительная литература
- 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