Магистратура
2023/2024
Основы программирования в Python и анализа данных
Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Лучший по критерию «Новизна полученных знаний»
Статус:
Курс обязательный (Социология публичной сферы и цифровая аналитика)
Направление:
39.04.01. Социология
Кто читает:
Департамент социологии
Где читается:
Факультет социальных наук
Когда читается:
1-й курс, 1, 2 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Прогр. обучения:
Социология публичной сферы и цифровая аналитика
Язык:
русский
Кредиты:
6
Контактные часы:
60
Программа дисциплины
Аннотация
Цель учебной дисциплины – познакомить студентов с основами языка программирования Python в приложении к анализу данных в социальных науках. Эта цель достигается через решение двух параллельных задач: познакомить с такими основами языка программирования Python, как (1) установка и интерфейс Jupyter, (2) модули и пакеты, (3) наиболее востребованные классы данных и их индексирование, (4) циклы for in и while, (5) условные конструкции if elif else, (6) пакет pandas, датафрейм и его индексирование; познакомить с такими основами анализа данных, как (1) переменные и их типы шкал, (2) статгипотезы и дов.интервалы. Знакомство с программированием происходит в контексте решения содержательных социологических задач, предполагающих анализ данных. В результате освоения дисциплины студенты смогут решать простейшие задачи анализа данных посредством самостоятельного написания кода на языке программирования Python, привлечения релевантных пакетов и модулей этой среды, интерпретации выдачи.
Цель освоения дисциплины
- Научиться осознанному программированию на уровне достаточном для самостоятельного решения социологических задач с привлечением программистских навыков; общения с подрядчиками-программистами на одном языке; понимания программистских схем и границ их применимости.
- Изучить основы Python, его пакеты и модули, позволяющие осуществлять веб-скрапинг, структурировать собранные данные в формат Excel, применять описательную статистику и искать связи между парой переменных с учётом их типов шкал.
Планируемые результаты обучения
- Устанавливает сборку Anaconda, запускает и использует Jupyter Notebook, пишет простую программу на Python, использует Google Colab
- Умеет посредством Python правильно оформлять выгруженные характеристики в удобную таблицу Excel
- Умеет анализировать архитектуру веб-источника, пользоваться модулями в среде Python для выгрузки больших данных со статических веб-страниц, а также владеет универсальным алгоритмом веб-скэпинга
- Различает три основных типа шкал переменных (номинальные, порядковые, интервальные-числовые) на основе ориентиров
- Умеет применять к переменным релевантные методы описательной статистики (одномерные частотные таблицы и графики, меры центральной тенденции и неоднородности) и корректно интерпретировать результаты
- Умеет пользоваться модулями в среде Python для анализа данных в социальных науках
- Умеет применять к переменным релевантные методы парной связи (коэффициент корреляции Пирсона, коэффициент ранговой корреляции Спирмана, критерий Хи-квадрат и его остатки) и корректно интерпретировать результаты
Содержание учебной дисциплины
- Занятие 1. Введение
- Занятие 2. Основы Python на примере применения пакетов requests, bs4 и pandas
- Занятие 3. Основы Python на примере углублённого парсинга посредством пакета bs4
- Занятие 4. Основы Python на примере углублённого парсинга посредством комбинации пакетов bs4 и re
- Занятие 5. Сборка итогового скрипта для веб-скрапинга характеристик конкурсов сайта fl.ru
- Занятие 6. Основы Python на примере операций над файловой системой посредством пакета os
- Занятие 7. Знакомство с типами шкал и распределениями переменных
- Занятие 8. Меры центральной тенденции и однородности
- Занятие 9. Парная связь интервальных переменных
- Занятие 10. Парная связь переменных, среди которых есть номинальная
Элементы контроля
- Домашняя работа №1Сбор данных в рамках персонального или командного мини-проекта
- Активность на занятииАктивность на занятиях выставляется на каждом занятии за обоснованные ответы и демонстрацию проделанной работы
- ЭкзаменЭкзамен в формате теста
- Контрольная работа №1Решение задач в соответствии с уникальным вариантом работы
- Домашняя работа №2Первичный анализ собранных данных в рамках персонального или командного мини-проекта
- Контрольная работа №2Решение задач в соответствии с уникальным вариантом работы
Промежуточная аттестация
- 2023/2024 учебный год 2 модуль0.2 * Активность на занятии + 0.14 * Домашняя работа №1 + 0.15 * Домашняя работа №2 + 0.125 * Контрольная работа №1 + 0.125 * Контрольная работа №2 + 0.26 * Экзамен
Список литературы
Рекомендуемая основная литература
- Harish Garg. (2018). Mastering Exploratory Analysis with Pandas : Build an End-to-end Data Analysis Workflow with Python. Packt Publishing.
Рекомендуемая дополнительная литература
- 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