Программирование для дата-журналистики

Материалы по математике, 2018-19 учебный год
Перейти к: навигация, поиск

Это страничка курса «Программирование» на магистерской программе «Журналистика данных».

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

Софт

Мы используем 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 — он выполнится и вам покажут тут же результат.

Также вы можете использовать Google Colab и вообще ничего не устанавливать. Но тогда для работы вам потребуется доступ в Интернет.

Материалы

Как использовать

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

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

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

Основы программирования

неделя тема конспект доп. материалы видео задачи
1 Первое знакомство. ipynb PT: арифметические операции, целые и вещественные числа видео ps01
2 Списки и цикл for. ipynb PT: цикл for, списки видео ps02
3 Ещё о циклах. split, join и range. ipynb, split и join: ipynb PT: split и join видео ps03
4 Проверка условий. if и while ipynb PT: split и join, if, while видео
5 Функции ipynb PT: функции видео ps04
6 Словари ipynb PT словари видео ps05, ps06

Программирование

неделя тема конспект доп. материалы видео задачи
7 Списковые включения и zip list comprehensions (списковые включения), zip PT списковые включения[1] видео
8 Работа с файлами Файловый ввод-вывод официальная документация (англ.)
9 Изменямость списков. Сортировка Изменяемость списков. Сортировка Sorting howto (англ.) видео ps07
10 Ещё о функциях Задачи
11 Ещё о работе с файлами: пути, кодировки и прочие трудности краткий конспект ps08
12 Ещё о файлах и функциях. Немного веб-скреппинга. выборщики возвращаются, веб-скреппинг Оригинальная документация (англ.): requests BeautifulSoup видео про скреппинг ps09
13 Ещё о веб-скреппинге сырой конспект занятия
14 Работа с открытыми API с помощью XML и JSON. конспект XML, JSON, Интерактивное исследование JSON в Jupyter. видео про XML видео про JSON. ps10
15-16 Исключения. Библиотека pandas об исключениях, конспект по pandas с комментариями, что делали на занятиях: раз, два Официальная документация pandas: 10-минутное введение (обзор возможностей), pandas cookbook, индексация и выбор данных (подробно), plotly.express. видео про pandas ps11

Данные

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