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

Материалы по математике, 2018-19 учебный год
Перейти к: навигация, поиск
(Программирование)
(Программирование: Исключения. Библиотека pandas)
Строка 131: Строка 131:
 
| [http://www.youtube.com/watch?v=5aelkl2HAow видео про XML] [http://www.youtube.com/watch?v=tC618tbA5Yk видео про JSON].
 
| [http://www.youtube.com/watch?v=5aelkl2HAow видео про XML] [http://www.youtube.com/watch?v=tC618tbA5Yk видео про JSON].
 
| [https://nbviewer.jupyter.org/url/python.math-hse.info/static/assignments_release/dj2018/ps10/ps10.ipynb ps10]
 
| [https://nbviewer.jupyter.org/url/python.math-hse.info/static/assignments_release/dj2018/ps10/ps10.ipynb ps10]
 +
|-
 +
| 15-16
 +
| Исключения. Библиотека <code>pandas</code>
 +
| [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%208.ipynb#Немного-про-исключения об исключениях], [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%2012.ipynb конспект по pandas с комментариями], что делали на занятиях: [https://nbviewer.jupyter.org/url/math-info.hse.ru/f/2018-19/dj-prog/pandas1.ipynb раз], [https://nbviewer.jupyter.org/url/math-info.hse.ru/f/2018-19/dj-prog/pandas2.ipynb два]
 +
| Официальная документация <code>pandas</code>: [http://pandas.pydata.org/pandas-docs/stable/10min.html 10-минутное введение] (обзор возможностей), [http://pandas.pydata.org/pandas-docs/stable/tutorials.html#pandas-cookbook pandas cookbook], [http://pandas.pydata.org/pandas-docs/stable/indexing.html индексация и выбор данных] (подробно), [https://www.plotly.express plotly.express].
 +
| [http://www.youtube.com/watch?v=ENKfnIEXyKw видео] про pandas
 +
| [http://nbviewer.jupyter.org/url/python.math-hse.info/static/assignments_release/dj2018/ps11/ps11.ipynb ps11]
 
|}
 
|}
  
 
== Данные ==
 
== Данные ==
 
* [http://math-info.hse.ru/f/2018-19/spb-python/testfile.html table.html]
 
* [http://math-info.hse.ru/f/2018-19/spb-python/testfile.html table.html]

Версия 22:19, 27 апреля 2019

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

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

Софт

Мы используем 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 использует термин «генераторы списков» вместо «списковые включения»