Python для сбора и анализа данных: различия между версиями
Строка 2: | Строка 2: | ||
Авторы курса: Щуров Илья Валерьевич, Тамбовцева Алла Андреевна | Авторы курса: Щуров Илья Валерьевич, Тамбовцева Алла Андреевна | ||
+ | |||
Лекции и семинары ведет: Тамбовцева Алла Андреевна | Лекции и семинары ведет: Тамбовцева Алла Андреевна | ||
Версия 00:01, 4 марта 2021
Это страница факультатива «Python для сбора и анализа данных», читаемого в МИЭФ в 2020/2021 учебном году.
Авторы курса: Щуров Илья Валерьевич, Тамбовцева Алла Андреевна
Лекции и семинары ведет: Тамбовцева Алла Андреевна
Содержание
Правила игры
- Формула оценки: 0.4 * ДЗ + 0.2 * Онлайн + 0.4 * Проект.
- Сдача домашних заданий с опозданием допускается, но со штрафом: за задержку в пределах часа – 15% от полученной оценки, в пределах суток – 30%, в пределах двух дней – 50%.
- Курс читается с использованием онлайн-курсов на платформе DataCamp. Бесплатный доступ к платформе студентам предоставляется.
Программное обеспечение
Перед занятиями необходимо установить дистрибутив Anaconda (скачать можно здесь), который включает в себя интерпретатор языка Python, библиотеки для обработки, анализа и визуализации данных, а также среду для работы Jupyter Notebook. Также есть возможность работать в Jupyter Notebook онлайн, используя ресурс Google Colab (для создания и редактирования файлов нужен аккаунт Gmail). Но в долгосрочной перспективе предпочтительнее установить Anaconda.
Материалы занятий
10 февраля Видеозапись
Тема 1. Введение в Python и Jupyter Notebook
- Инструкция по работе с Jupyter Notebook. Знакомство с Jupyter Notebook и Markdown (конспект, intro-jupyter.ipynb).
- Вычисления и переменные в Python (конспект, intro-variables.ipynb).
- Pythontutor: визуализатор кода, вычисления.
- Markdown и Jupyter: больше про Markdown, интерактивные виджеты в Jupyter.
- LaTeX: ShareLaTeX для желающих, документация на английском, материалы других курсов по LaTeX.
Тема 2. Типы данных в Python. Ввод и вывод.
- Типы переменных, ввод и вывод в Python (конспект, intro-types.ipynb). Pythontutor: ввод и вывод.
- Форматирование строк (конспект, str-formatting.ipynb).
- Семинар 1: ввод-вывод и приведение типов (задания, icef-seminar01.ipynb, решения (конспект, icef-seminar01-solutions.ipynb).
17 февраля Видеозапись
Тема 3. Списки и цикл for. Методы на строках.
- Списки и цикл for: введение (конспект, lists-1.ipynb). Списки: методы на списках. (конспект, lists-2.ipynb). Pythontutor: списки, цикл for.
- Генераторы списков и enumerate() (конспект, more-lists.ipynb).
- Методы на строках (ссылка). Pythontutor: строки. Методы .split() и .join() (конспект, split-join.ipynb).
- Семинар 2: списки и строки (задания, icef-seminar02.ipynb), решения (конспект, icef-seminar02-solutions.ipynb).
24 февраля Видеозапись
Тема 4. Проверка условий и условные конструкции. Цикл while.
- Проверка условий (конспект, conditions.ipynb). Условные конструкции (конспект, if-else.ipynb). Pythontutor: условия.
- Цикл while (конспект, while.ipynb). Pythontutor: цикл while. Сравнение continue и pass (статья).
- Семинар 3: условные конструкции и цикл while (задания, icef-seminar03.ipynb), решения (конспект, icef-seminar03-solution.ipynb).
Тема 5*. Структуры данных в Python: кортежи, множества, словари.
- Тема изучается на DataCamp (задания online 2 и online 3).
- Вспомогательные лекции: кортежи (конспект, tuples.ipynb), словари (конспект, dicts.ipynb), множества (конспект).
- Примеры задач на словари с решениями (конспект, файл).
3 марта Видеозапись
Тема 6. Функции в Python.
- Полная лекция по функциям (конспект, автор И.В.Щуров), ipynb-файл с занятия. Lambda-функции (конспект, файл).
- Семинар 4: функции (задания, icef-seminar04.ipynb), решения (конспект, icef-seminar04-solutions.ipynb).
- Pythontutor: функции и рекурсия.
Дополнительные материалы
Библиотека SymPy для символьных вычислений
Введение в SymPy: часть 1 (sympy-1.ipynb). Введение в SymPy: часть 2 (sympy-2.ipynb). Задачи по SymPy (sympy-problems.ipynb). Официальная документация SymPy.
Работа с текстом в Python
Библиотека pymorphy2 (морфологический анализатор). Библиотека pymystem3 (предобработка текста). Тьюториал для построения облака слов (word cloud).
Объекты и классы в Python
Конспект по классам, материалы по классам от W3schools.
Статистика и анализ данных в Python
Материалы по статистическим тестам и линейным регрессиям в Python.
Домашние задания и online
Домашнее задание | Ссылка | Дедлайн |
---|---|---|
Online 1 | DataCamp: глава Python Lists | 17 февраля 18:10 |
Online 2 | DataCamp: глава Fundamental data types | 24 февраля 18:10 |
Домашнее задание 1 | задание, hw01.ipynb, сдавать на Dropbox | 28 февраля 23:59 |
Online 3 | DataCamp: глава Dictionaries - the root of Python | 5 марта 23:59 |
Online 4 | DataCamp: глава Default arguments, variable-length arguments and scope | 10 марта 18:10 |
Домашнее задание 2 | задание, hw02.ipynb, сдавать на Dropbox | 11 марта 23:59 |