Все курсы Главная Лекции и семинары Домашние задания Дополнительно Проект

Icons made by Flat Icons from www.flaticon.com
https://www.flaticon.com/authors/flat-icons

Python для сбора данных

Материалы занятий

 Тема 1. Введение в Python и Jupyter Notebook

Инструкция по работе с Jupyter Notebook.
Знакомство с Jupyter Notebook и Markdown (intro-jupyter.ipynb).
Вычисления и переменные в Python (intro-variables.ipynb)

Дополнительно:

Pythontutor: визуализатор кода на Pythontutor, вычисления.
Markdown and Jupyter: больше про Markdown, интерактивные виджеты в Jupyter.
LaTeX: ShareLaTeX для желающих, документация на английском, материалы других курсов по LaTeX

 Тема 2. Типы данных в Python. Ввод и вывод. Форматирование строк.

Типы переменных, ввод и вывод в Python (intro-types.ipynb).
Форматирование строк (str-formatting.ipynb).

Семинар 1: ввод-вывод и приведение типов (icef-seminar01.ipynb), решения (icef-seminar01-solutions.ipynb)

Дополнительно:

Pythontutor: ввод и вывод

 Тема 3. Списки и цикл for. Методы на строках.

Списки и цикл for: введение (lists-1.ipynb)
Списки: методы на списках (lists-2.ipynb), видео-лекция (ссылка)
Генераторы списков и enumerate() (more-lists.ipynb), видео-лекция (ссылка)

Методы .split() и .join() (split-join.ipynb)
Методы на строках (ссылка).

Семинар 2: списки и строки (icef-seminar02.ipynb), решения (icef-seminar02-solution.ipynb), видео-разбор задач 7-9 (ссылка).

Дополнительно:

Pythontutor: списки, цикл for, строки

 Тема 4. Проверка условий и условные конструкции. Цикл while.

Проверка условий (conditions.ipynb), видео-лекция (ссылка).
Условные конструкции (if-else.ipynb)
Цикл while (while.ipynb), видео-лекция (ссылка).

Семинар 3: условные конструкции и цикл while (icef-seminar03.ipynb), решения (icef-seminar03-solution.ipynb), видео-разбор (ссылка)

Дополнительно:

Сравнение pass vs continue (ссылка)
Pythontutor: условия, цикл while

 Тема 5. Структуры данных в Python: кортежи и словари.

Кортежи (tuples.ipynb), видео-лекция (ссылка).
Словари (dicts.ipynb).

Дополнительно:

Множества (sets.ipynb).
Задачи на словари с решением (ссылка).
Pythontutor: словари, множества

 Тема 6. Функции.

Полная лекция по функциям (functions.ipynb), видео-лекция (ссылка) по введению в функции.

Семинар 4: функции (icef-seminar04.ipynb), решения (icef-seminar04-solution.ipynb), видео-разбор (ссылка)

Дополнительно:

Конспект по lambda-функциям (ссылка)
Pythontutor: функции и рекурсия

 Тема 7. Массивы NumPy и датафреймы Pandas.

Массивы NumPy и датафреймы pandas (arrays-pandas.ipynb), видео-лекция (arrays-1, arrays-2, pandas-intro).
Работа с файлами (os-files.ipynb), видео-разбор (ссылка).
Работа с датафреймами pandas: часть 1 (pandas-01.ipynb), видео-лекция (pandas-1, pandas-2)
Работа с датафреймами pandas: часть 2 (pandas-02.ipynb), видео-разбор (pandas-3)
Работа с датафреймами pandas: часть 3 (pandas-03.ipynb), видео-разбор (apply-lambda, grouping-1, grouping-2)
Семинар 5: группировка и агрегирование (icef-seminar05.ipynb), решения (icef-seminar05-solutions.ipynb), видео-разбор (seminar-json)

Данные: firtree.csv, data-27257-2020-02-03.json

Дополнительно:

Официальные тьюториалы Pandas: ссылка
Официальные тьюториалы NumPy: ссылка
Более сложный пример с группировкой и агрегированием: ссылка, данные для примера: elect.csv

 Тема 8. Визуализация и разведывательный анализ данных.

Визуализация с seaborn (seaborn-graphs.ipynb), видео-разбор (seaborn-1, seaborn-2)
Семинар 6: графики и виджеты (icef-seminar06.ipynb), решения (icef-seminar06-solutions.ipynb), видео-разбор (seminar-seaborn)

Данные: Chile.csv

Дополнительно:

Больше про статистику в Python

 Тема 9. Парсинг HTML-файлов и управление браузером с Selenium.

Парсинг HTML с BeautifulSoup (icef-html.ipynb), видео-разбор (часть 1)
Семинар 7: парсинг html-файлов (icef-seminar07.ipynb), решения (icef-seminar07-solution.ipynb)

Ссылка для скачивания драйверов selenium для Chrome, ссылка для скачивания драйверов selenium для Mozilla, инструкция по решению проблем на Mac
Управление браузером c Selenium (icef-selenium.ipynb), видео-разбор (часть 2)
Обработка исключений (except.ipynb)

Дополнительно:

Сайт W3schools, еще пример с Selenium

 Тема 10. Работа с API.

Работа с API mos.ru (mos-API.ipynb), документация здесь, видео-запись (понедельник, четверг)
Работа с API ВКонтакте (lect-vk-api.ipynb, vk-add.ipynb), получение доступа, видео-запись (понедельник, четверг)

Дополнительно:

Python Datetime и формат дата-время, автоматическая рассылка писем с gmail