Компьютерные инструменты обработки данных

Материалы по математике, 2015-16 учебный год, НИУ ВШЭ
Перейти к: навигация, поиск

Курс «Компьютерные инструменты обработки данных» (в учебном плане «Статистика») ставит своей целью дать слушателям базовые навыки сбора и обработки данных с помощью стандарных инструментов современной Data Science: языков программирования Python и R.

  • Автор курса: Щуров И.В.

Инструменты

Python

Мы используем Python версии 3 и оболочку Jupyter (ранее известную как IPython Notebook). Чтобы их установить, проще всего скачать пакет Anaconda. Обратите внимание: вам нужна версия с Python 3.x.

После установки Anaconda у вас появится:

  • Под Windows: в меню «Пуск» пункт «Anaconda», в нём подпункт «IPython Notebook».
  • Под Mac OS X: приложение Anaconda Launcher, в нём пункт ipython-notebook.

После запуска IPython Notebook у вас откроется окно браузера (и лучше пусть это будет не Internet Explorer, под ним IPython Notebook работает с некоторым скриптом, а иногда не работает) со списком файлов. В нём надо выбрать New → Python 3. Откроется новая вкладка браузера, в ней будет запущен пустой notebook, состоящий из отдельных ячеек (cells). В ячейку с кодом можно вписать код и нажать Shift+Enter — он выполнится и вам покажут тут же результат.

Для установки дополнительных пакетов вам необходимо открыть консоль (это может быть Anaconda Prompt под Windows или стандартный «Терминал» под Mac OS или Linux) и набрать команду conda install <название пакета> (например, conda install seaborn).

Вы можете также запустить Jupyter онлайн здесь, но данные там не сохранятся и возможности будут ограничены.

Работа с ipynb-файлами

Чтобы скачать ipynb-файл, нужно кликнуть на иконку в красном кружке правой кнопкой и выбрать «сохранить файл как» или аналогичный пункт меню

Мы выкладываем материалы курса в виде ipynb-файлов. По ссылкам ниже вы можете просмотреть эти файлы. Если вы хотите открыть этот файл у себя, то вам необходимо скачать его (нажав на иконку в правом верхнем углу страницы с лекцией) и положить в каталог, из которого Jupyter открывает ноутбуки: например, воспользовавшись кнопкой Upload в самом Jupyter (на экране со списком файлов). Также этот каталог можно найти по строчке Serving notebooks from local directory: /home/user/IPython, появляющейся в чёрненьком окошке при запуске Jupyter; здесь /home/user/IPython — искомый путь.

Чтобы загрузить файл в IPython Notebook, можно нажать на кнопку Upload

Материалы

занятие тема конспект доп. материалы видео задачи
1 Первое знакомство ipynb PT: арифметические операции, целые и вещественные числа видео ДЗ№1
2 Оператор if. Типы данных. Списки. ipynb PT: условная инструкция, списки проверка условий, списки (до «цикл for»)
3 Разрезание и склеивание списков (join(), split()) и параметры print() ipynb (раздел «Ввод-вывод списков») PT: split и join ввод-вывод списков
4 Циклы for и while. Ссылок много, но из каждой нужен только один раздел: Цикл for, алгоритмы с циклами, цикл while, enumerate PT: for, while
5 Функции ipynb PT: функции, сортировка видео ДЗ№2
6 Словари. Списковые включения. Обработка строк Словари, списковые включения Форматирование строк Ещё немного про строки PT: словари, списковые включения[1]. Шпаргалка по форматированию строк (англ.) видео
7 Извлечение данных из HTML-страниц с помощью BeautifulSoup. ipynb Оригинальная документация (англ.): requests BeautifulSoup. видео
8-9 Работа с API с помощью JSON и XML. Эмуляция браузеров ipynb: XML, JSON. RoboBrowser и Selenium. Документация по API MediaWiki (движка Википедии): основная на английском, на русском, автогенерированная на английском, на русском. RoboBrowser, неофициальная документация по Python-Selenium (её проще читать, чем официальную). видео: XML, JSON. ДЗ№3
10 Pandas: введение ipynb Официальная документация pandas: 10-минутное введение (обзор возможностей), pandas cookbook, индексация и выбор данных (подробно).
11-12 Pandas: продолжение о погоде, о регрессиях Официальная документация pandas: Мультииндексы

Данные

Дополнительные материалы

  • PT использует термин «генераторы списков» вместо «списковые включения»