Бакалавриат
2023/2024
Python для сбора и анализа данных
Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Статус:
Курс обязательный (Компьютерные науки и анализ данных)
Направление:
01.03.02. Прикладная математика и информатика
Где читается:
Факультет компьютерных наук
Когда читается:
1-й курс, 3 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Язык:
русский
Кредиты:
3
Контактные часы:
40
Программа дисциплины
Аннотация
На сегодняшний день Python является стандартом индустрии для анализа данных. По окончании этого курса, студенты получат в свое распоряжение набор аналитических инструментов, которые им пригодятся как в академии, так и при работе в частном или государственном секторе. Целью этого курса является развитие навыков программирования и создание крепкой практической базы для анализа и презентации данных.
Цель освоения дисциплины
- Курс должен помочь студентам освоить основные библиотеки Python для анализа данных и научить проводить первичный анализ данных с помощью этих библиотек.
Планируемые результаты обучения
- Знать библиотеку numpy для анализа данных
- Знать библиотеку pandas для анализа данных
- Знать об особенностях многопоточности в Python и уметь ускорять код, использующий вышеописанные библиотеки
- Знать язык SQL, иметь навыки работы с реляционными БД
- Понимать основные отличия модели MapReduce от Spark
- Понимать основные принципы работы распределенных систем, модель MapReduce.
- Уметь написать простое веб-приложение на языке Python
- Уметь развернуть простое веб-приложение с использованием технологии Docker, понимать принципы ее работы
- Уметь развернуть простое веб-приложение с использованием технологии Kubernetes, понимать принципы ее работы
- Уметь решать задачи на визуализацию данных с помощью модулей matplotlib, seaborn, plotly
- Уметь работать с API и проектировать его
- Уметь интегрировать работу с базой данных в сервис, реализовывать миграции баз данных.
- Понимать основы работы с многопоточностью и многопроцессностью, синхронизацией потоков исполнения
Содержание учебной дисциплины
- Модуль numpy
- Модули matplotlib, seaborn, plotly для визуализации данных.
- Global Interpreter Lock в Python. Модуль multiprocessing. Вопросы производительности python и pandas.
- Реляционные базы данных и SQL
- Распределенные системы, свойства и задачи. CAP теорема.
- Spark: основные идеи, сравнение с MapReduce.
- Создание приложения с помощью FastAPI - 1.Создание первого приложения с помощью FastAPI, sqlalchemy, миграции баз данных с alembic, структура API.
- Облачные вычисления. Виртуализация и её типы.
- Концепция Docker Swarm. Kubernetes. Основные компоненты архитектуры K8s.
- Модуль pandas.
Элементы контроля
- Homework
- БонусБонусный проект, без его выполнения можно заработать максимальный балл по курсу
Список литературы
Рекомендуемая основная литература
- Лучано, Р. Python. К вершинам мастерства / Р. Лучано , перевод с английского А. А. Слинкин. — Москва : ДМК Пресс, 2016. — 768 с. — ISBN 978-5-97060-384-0. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/93273 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
Рекомендуемая дополнительная литература
- Eric Matthes. (2019). Python Crash Course, 2nd Edition : A Hands-On, Project-Based Introduction to Programming: Vol. 2nd edition. No Starch Press.