Анализ данных на Python: различия между версиями
Строка 211: | Строка 211: | ||
|- | |- | ||
| [https://github.com/allatambov/PyPerm24/blob/main/hw01.ipynb Домашнее задание №1] || 20 мая 23:59 (по Перми)|| [https://www.dropbox.com/request/HlHlDJIqODEAgpl1ba1H ссылка] на Dropbox | | [https://github.com/allatambov/PyPerm24/blob/main/hw01.ipynb Домашнее задание №1] || 20 мая 23:59 (по Перми)|| [https://www.dropbox.com/request/HlHlDJIqODEAgpl1ba1H ссылка] на Dropbox | ||
+ | |- | ||
+ | | [https://github.com/allatambov/PyPerm24/blob/main/hw02.ipynb Домашнее задание №2] || 10 июня 23:59 (по Перми)|| [https://www.dropbox.com/request/5olhTQGFBaDbMRF8PFUw ссылка] на Dropbox | ||
|- | |- | ||
|} | |} |
Версия 15:35, 25 мая 2024
Дорогие студенты!
Это страница обязательного курса «Анализ данных на Python», читаемого на программе «Разработка информационных систем для бизнеса»
2 курса бакалавриата в 4 модуле 2023-2024 учебного года.
Занятия ведёт: Тамбовцева Алла Андреевна.
Содержание
- 1 Правила игры
- 2 Среда для работы
- 3 Материалы курса
- 3.1 Неделя 0. Про Python и Jupyter Notebook
- 3.2 Неделя 1. Индексируемые структуры данных в Python
- 3.3 Лабораторная работа 1. Условные конструкции и индексируемые структуры
- 3.4 Неделя 2. Знакомство с массивами NumPy
- 3.5 Лабораторная работа 2. Работа с массивами, ввод и вывод
- 3.6 Неделя 3. Словари, массивы NumPy, датафреймы Pandas
- 3.7 Лабораторная работа 3. Функции и lambda-функции
- 3.8 Неделя 4. Операции с датафреймами Pandas, введение в визуализацию
- 3.9 Лабораторная работа 4. Методы на строках и работа с txt-файлами
- 3.10 Неделя 4*. Обработка текстов и облака слов
- 3.11 Неделя 5. Примеры работы с API
- 3.12 Лабораторная работа 5. Работа со словарями
- 3.13 Неделя 6. Парсинг HTML с Beautiful Soup и Pandas
- 4 Домашние задания
Правила игры
Формула оценки: 0.4 × Лабораторные работы + 0.2 × ДЗ1 + 0.25 × ДЗ2 + 0.15 × ДЗ3.
Пояснения:
- Лабораторные работы: небольшие домашние задания, обязательные к выполнению к следующему занятию.
Могут включать задачи на закрепление пройденного материала или задачи, предполагающие самостоятельное
изучение небольших блоков по основам Python по предложенных материалам (конспекты или видео).
Всего запланировано 8 лабораторных работ с одинаковым весом. - Домашние задания: объёмные домашние задания по итогу нескольких пройденных тем. Представляют собой
индивидуальные мини-проекты, в которых необходимо поработать с предложенными данными по инструкции
и проинтерпретировать предложенные результаты. - Поздняя сдача лабораторных работ не предусмотрена.
- Домашние задания, сданные после срока, оцениваются с использованием понижающих коэффициентов:
опоздание в пределах часа – штраф 10% от полученной оценки, в пределах суток – штраф 30%.
Домашние задания, сданные позже, не принимаются и не оцениваются.
Среда для работы
Перед занятиями необходимо установить дистрибутив Anaconda (скачать можно здесь), который включает в себя
интерпретатор языка Python, библиотеки для обработки, анализа и визуализации данных, а также среду для работы
Jupyter Notebook. Также есть возможность работать в Jupyter Notebook онлайн, используя ресурс Google Colab
(для создания и редактирования файлов нужен аккаунт Gmail).
Подробности по установке и работе – см. ниже в неделе 0.
Материалы курса
Неделя 0. Про Python и Jupyter Notebook
Для подготовки к работе на курсе можно ознакомиться со следующими материалами онлайн-курса:
- Видео. Подготовка рабочего места, инструкция по открытию файлов в Jupyter Notebook.
- Видео. Первая программа, задачи для тренировки.
А также с материалами по работе в Jupyter Notebook и Google Colab:
- Запуск Jupyter без Anaconda Navigator (инструкция).
- Работа в Jupyter Notebook (видео), работа в Google Colab (видео).
Дополнительно:
- Набор текста в Jupyter (видео, ipynb).
- Markdown: больше про Markdown, знакомство с Jupyter Notebook и Markdown (читать, ipynb).
- LaTeX: Overleaf, документация, материалы других курсов по LaTeX.
Неделя 1. Индексируемые структуры данных в Python
- «Сырые» ipynb-файлы с занятий: группа 1, группа 2, группа 3, группа 4.
- Обзор индексируемых структур данных в Python: строки, кортежи, списки (ipynb).
- Цикл for и его аналоги: списковые включения и функция map() (ipynb).
Дополнительно:
- Визуализатор кода от Pythontutor.
- Методы на списках (ipynb), методы на строках (ipynb).
Лабораторная работа 1. Условные конструкции и индексируемые структуры
Для выполнения лабораторной работы необходимо знать формулировку логических выражений
и конструкцию if-elif-else в Python. Для этого (на выбор) можно:
- Прослушать материал темы 2 Условия и логические выражения онлайн-курса «Python как иностранный».
- Прочитать конспект лекции Логические выражения и условные конструкции.
- Изучить материалы онлайн-учебника Pythontutor.
Также могут пригодиться дополнительные материалы по методам на списках из недели 1.
Лабораторная работа | Задания | Дедлайн | Куда сдавать |
---|---|---|---|
Лабораторная работа 1 | ipynb | 13 апреля 11:30 | ссылка на Dropbox |
Неделя 2. Знакомство с массивами NumPy
- «Сырые» ipynb-файлы с занятий: пара 1, пара 2.
- Списки vs массивы (ipynb).
- Описание выборки, сохранённой в массив (ipynb).
Дополнительно:
- Официальная документация NumPy.
Лабораторная работа 2. Работа с массивами, ввод и вывод
Для выполнения лабораторной работы помимо материалов недели 2 необходимо понимать
устройство ввода и вывода в Python и быть знакомыми с методами .split() и .join(). Для этого можно:
- Прочитать конспект лекции Ввод-вывод и форматирование строк.
- Прочитать конспект лекции Методы .split() и .join() и разбор задач по этой теме.
Лабораторная работа | Задания | Дедлайн | Куда сдавать |
---|---|---|---|
Лабораторная работа 2 | ipynb | 20 апреля 11:30 | ссылка на Dropbox |
Неделя 3. Словари, массивы NumPy, датафреймы Pandas
- Файл к занятию: ipynb.
- Словари и массивы, последовательности и датафреймы Pandas (ipynb).
- Введение в датафреймы pandas: загрузка и описание данных (ipynb), файл Salaries.csv.
Дополнительно:
- Официальная документация pandas.
- PEP8: стандарты оформления кода.
Лабораторная работа 3. Функции и lambda-функции
Для выполнения лабораторной работы помимо материалов недели 3 необходимо уметь писать
пользовательские функции, lambda-функции и сочетать их с другими функциями Python. Для этого можно:
- Прослушать материал темы 8 Функции (достаточно первого раздела) онлайн-курса «Python как иностранный».
- Прочитать конспект лекции Функции (для желающих – более подробная лекция И.В.Щурова).
- Прочитать конспект по lambda-функциям.
Лабораторная работа | Задания | Дедлайн | Куда сдавать |
---|---|---|---|
Лабораторная работа 3 | ipynb | 27 апреля 11:30 | ссылка на Dropbox |
Неделя 4. Операции с датафреймами Pandas, введение в визуализацию
- Файл к занятию (ipynb).
- Операции с датафреймами Pandas (ipynb), файл Salaries.csv.
- Практикум по pandas (ipynb), решения (ipynb), файл final.xlsx.
Дополнительно:
- Официальная документация по обработке строк с модулем str в pandas.
- Цвета в matplotlib, палитра цветов от Google, colorscheme.ru.
Лабораторная работа 4. Методы на строках и работа с txt-файлами
Для выполнения лабораторной работы необходимо самостоятельно познакомиться с обработкой txt-файлов.
Для этого (на выбор) можно:
- Прослушать материал темы 9 Текстовые файлы и таблицы онлайн-курса «Python как иностранный».
- Прочитать конспект лекции Чтение и запись txt-файлов (txt-файл здесь).
Также могут пригодиться дополнительные материалы по методам на строках из недели 1.
Лабораторная работа | Задания | Дедлайн | Куда сдавать |
---|---|---|---|
Лабораторная работа 4 | ipynb | 4 мая 23:59 | ссылка на Dropbox |
Неделя 4*. Обработка текстов и облака слов
Синхронного занятия нет, предлагается видеозапись и конспект.
Данная тема будет включена во вторую часть первого домашнего задания.
- Файлы для работы: stopwords-ru.txt, guitar.jpeg, text-practice.ipynb, сайт Freepik как источник изображений.
- Видеозаписи: предварительная обработка текста (01), облако слов (02), добавление маски (03).
- Подробный конспект с решениями (ipynb).
Неделя 5. Примеры работы с API
Дополнительно:
- Документация API ВКонтакте.
- Документация модуля requests, статья о состояниях HTTP.
- Дальнейшая работа с постами ВКонтакте – анализ тональности (ipynb, файл comments_as_rows.csv)
- Небольшой практикум с примерами работы с API Википедии (ipynb).
Лабораторная работа 5. Работа со словарями
Для выполнения лабораторной работы необходимо вспомнить о словарях (неделя 3),
при необходимости ознакомиться со следующими материалами:
- Конспект по словарям.
- Pythontutor: словари, w3schools: dictionaries.
Лабораторная работа | Задания | Дедлайн | Куда сдавать |
---|---|---|---|
Лабораторная работа 5 | ipynb | 18 мая 11:30 | ссылка на Dropbox |
Неделя 6. Парсинг HTML с Beautiful Soup и Pandas
- Введение в HTML (слайды).
- Практикум по парсингу HTML с BeautifulSoup: тэги и атрибуты (ipynb), решения (ipynb).
- Парсинг таблиц с Pandas (ipynb).
Дополнительно:
- Документация библиотеки bs4 (Beautiful Soup).
- Ловля исключений и обработка ошибок: документация для try-except.
- Введение в управление браузером с Selenium.
Домашние задания
Домашнее задание | Дедлайн | Куда загружать |
---|---|---|
Домашнее задание №1 | 20 мая 23:59 (по Перми) | ссылка на Dropbox |
Домашнее задание №2 | 10 июня 23:59 (по Перми) | ссылка на Dropbox |