Разница между страницами «Python (МИЭФ)» и «MediaWiki:Sidebar»

Материалы по математике, 2017-18 учебный год
(Различия между страницами)
Перейти к навигации Перейти к поиску
 
(Новая страница: «**Заглавная страница|Заглавная страница *Факультет социальных наук, ОП «Политология» **...»)
 
Строка 1: Строка 1:
Факультатив по Python для МИЭФ.
+
**Заглавная страница|Заглавная страница
  
Ведёт: Илья Щуров.
+
*Факультет социальных наук, ОП «Политология»
 +
** Математика и статистика, часть 1|Математика и статистика, часть 1
  
==Инструменты==
+
** Математика и статистика, часть 2|Математика и статистика, часть 2
===Python===
 
Мы используем Python версии 3 и оболочку Jupyter (ранее известную как IPython Notebook). Чтобы их установить, проще всего скачать пакет [http://continuum.io/downloads Anaconda]. Обратите внимание: вам нужна версия с Python 3.x.
 
  
После установки Anaconda у вас появится:
+
** Теория игр|Теория игр
  
* Под Windows: в меню «Пуск» пункт «Anaconda», в нём подпункт «IPython Notebook».
+
** Математические модели политической экономики|Математические модели политической экономики
  
* Под Mac OS X: приложение Anaconda Launcher, в нём пункт ipython-notebook.
+
** Основы программирования в Python|Основы программирования в Python
  
После запуска IPython Notebook у вас откроется окно браузера (и лучше пусть это будет не Internet Explorer, под ним IPython Notebook работает с некоторым скриптом, а иногда не работает) со списком файлов. В нём надо выбрать New → Python 3. Откроется новая вкладка браузера, в ней будет запущен пустой notebook, состоящий из отдельных ячеек (cells). В ячейку с кодом можно вписать код и нажать Shift+Enter — он выполнится и вам покажут тут же результат.
+
*Факультет социальных наук, ОП «Социология»
 +
** Дискретная математика для социологов|Дискретная математика для социологов
  
Для установки дополнительных пакетов вам необходимо открыть консоль (это может быть Anaconda Prompt под Windows или стандартный «Терминал» под Mac OS или Linux) и набрать команду <code>conda install <название пакета></code> или <code>pip install <название пакета></code> (например, <code>conda install seaborn</code>).
+
*Школа лингвистики
 +
** Дискретная математика для лингвистов|Дискретная математика для лингвистов
  
Вы можете также запустить Jupyter онлайн [http://try.jupyter.org здесь], но данные там не сохранятся и возможности будут ограничены.
+
** Математический анализ и линейная алгебра|Математический анализ и линейная алгебра
  
===Работа с ipynb-файлами===
+
** Теория вероятностей и математическая статистика|Теория вероятностей и математическая статистика
Мы выкладываем материалы курса в виде ipynb-файлов. По ссылкам ниже вы можете просмотреть эти файлы. Если вы хотите открыть этот файл у себя, то вам необходимо скачать его (нажав на иконку в правом верхнем углу страницы с лекцией) и положить в каталог, из которого Jupyter открывает ноутбуки: например, воспользовавшись кнопкой Upload в самом Jupyter (на экране со списком файлов). Также этот каталог можно найти по строчке <code>Serving notebooks from local directory: /home/user/IPython</code>, появляющейся в чёрненьком окошке при запуске Jupyter; здесь <code>/home/user/IPython</code> — искомый путь.
 
  
==Материалы==
+
** Математические основы компьютерной лингвистики 2|Математические основы компьютерной лингвистики 2
===Занятие 1===
 
* Первое знакомство: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%201.ipynb конспект], [http://www.youtube.com/watch?v=5Y5tKPKhurA видео].
 
**
 
**  Дополнение: PT [http://pythontutor.ru/lessons/inout_and_arithmetic_operations/ арифметические операции], [http://pythontutor.ru/lessons/int_and_float/ целые и вещественные числа].
 
  
* Списки и цикл <code>for</code>: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%202.ipynb конспект], [https://www.youtube.com/watch?v=kBu3g-ITjY4 видео].
+
*Факультет коммуникаций, медиа и дизайна
**  
+
** Программирование для дата-журналистики|Программирование для дата-журналистики
**  Дополнение: PT [http://pythontutor.ru/lessons/lists/ списки].
 
  
* Ввод-вывод списков, проверка условий, цикл <code>while</code>: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%203.ipynb конспект], [http://www.youtube.com/watch?v=uzgaCV8KZA0 видео]
+
** Алгебра и анализ (1 курс)|Алгебра и анализ (1 курс)
**
 
**  Дополнение: PT  [http://pythontutor.ru/lessons/lists/#section_2 split и join], [http://pythontutor.ru/lessons/ifelse/ if], [http://pythontutor.ru/lessons/while/ while]
 
  
===Занятие 2===
+
*Совместный бакалавриат ВШЭ-РЭШ
* Присвоение vs. копирование: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%202.ipynb#Присвоение-и-копирование-списков конспект].
+
** Статистика и открытые данные|Статистика и открытые данные
  
* Функции: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%204.ipynb конспект] [https://www.youtube.com/watch?v=NYrYSFyCg4w видео].
+
** Дифференциальные уравнения|Дифференциальные уравнения
**
 
**  Дополнение: PT [http://pythontutor.ru/lessons/functions/ функции].
 
  
* Списковые включения (list comprehensions): [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%205.ipynb#Списковые-включения-(list-comprehensions) конспект] [https://www.youtube.com/watch?v=z8bu_b5BboI&feature=youtu.be&t=24m59s видео]
+
*МИЭФ
**  
+
** Python (МИЭФ)|Python (МИЭФ)
**  Дополнение: PT [http://pythontutor.ru/lessons/lists/#section_3 списковые включения][1]], [http://pythontutor.ru/lessons/2d_arrays/ двумерные массивы]
 
 
 
* Словари: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%205.ipynb конспект], [http://www.youtube.com/watch?v=z8bu_b5BboI видео]
 
**
 
**  Дополнение: PT [http://pythontutor.ru/lessons/dicts/ словари]
 
 
 
===Занятие 3===
 
* Сортировка: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%206.ipynb#Сортировка конспект], [https://www.youtube.com/watch?v=1w0NG-pfcsg&feature=youtu.be&t=9m17sвидео]
 
**
 
**  Дополнение: [https://docs.python.org/3/howto/sorting.html Sorting howto] (англ.)
 
 
 
* Файлы: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%207.ipynb#Файловый-ввод-вывод конспект]
 
**
 
**  Дополнение: [https://docs.python.org/3/tutorial/inputoutput.html официальная документация] (англ.)
 
 
 
* pandas и датафреймы: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%2012.ipynb конспект по базовым возможностям pandas], [http://www.youtube.com/watch?v=ENKfnIEXyKw видео к конспекту], [https://www.youtube.com/watch?v=Llc1WYlhXgU&feature=youtu.be&t=1h28m55s видео с занятия].
 
**
 
**  Официальная документация <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 индексация и выбор данных] (подробно).
 
 
 
===Занятие 4===
 
* Продвинутые возможности pandas: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%2013.ipynb конспект], [https://www.youtube.com/watch?v=acqKtanx0y4 видео второй половины занятия].
 
 
 
* Официальная документация <code>pandas</code>: [http://pandas.pydata.org/pandas-docs/stable/advanced.html Мультииндексы]
 
 
 
===Занятие 5===
 
* Ещё о pandas.
 
 
 
* Извлечение данных из веб-страниц с помощью BeautifulSoup и requests: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%208.ipynb конспект], [http://www.youtube.com/watch?v=3nPksaHTMGI видео]
 
**
 
**  Оригинальная документация (англ.): [http://docs.python-requests.org/en/latest/ requests] [http://www.crummy.com/software/BeautifulSoup/bs4/doc/ BeautifulSoup].
 
 
 
===Занятие 6 (планируется)===
 
* Продвинутые возможности веб-скреппинга, работа с API.
 
 
 
* Извлечение данных с помощью RoboBrowser: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%2010.ipynb#Эмуляция-действий-с-браузером конспект], [https://www.youtube.com/watch?v=tC618tbA5Yk&feature=youtu.be&t=11m10s видео]
 
**
 
**  Оригинальная документация (англ.): [http://robobrowser.readthedocs.org/en/latest/ RoboBrowser]
 
 
 
* Работа с открытыми API с помощью XML: [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%209.ipynb конспект], [http://www.youtube.com/watch?v=5aelkl2HAow видео].
 
 
 
* JSON и API: [http://nbviewer.math-hse.info/github/ischurov/nesopendata2017/blob/master/API-JSON.ipynb конспекты] [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%2010.ipynb ещё один пример].
 
 
 
* [http://nbviewer.math-hse.info/github/ischurov/pythonhse/blob/master/Lecture%2010.ipynb#Selenium конспект]
 
**
 
**  [http://selenium-python.readthedocs.org/ неофициальная документация] по Python-Selenium (её проще читать, чем официальную).
 
 
 
==Итоговый проект==
 
* [http://math-info.hse.ru/2017-18/Python_(%D0%9C%D0%98%D0%AD%D0%A4)/%D0%9F%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D0%B0_%D0%B8%D1%82%D0%BE%D0%B3%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B0 Правила итогового проекта]
 
 
 
==Примечания==
 
* ↑ PT использует термин «генераторы списков» вместо «списковые включения»
 

Версия 14:24, 8 февраля 2020

    • Заглавная страница|Заглавная страница
  • Факультет социальных наук, ОП «Политология»
    • Математика и статистика, часть 1|Математика и статистика, часть 1
    • Математика и статистика, часть 2|Математика и статистика, часть 2
    • Теория игр|Теория игр
    • Математические модели политической экономики|Математические модели политической экономики
    • Основы программирования в Python|Основы программирования в Python
  • Факультет социальных наук, ОП «Социология»
    • Дискретная математика для социологов|Дискретная математика для социологов
  • Школа лингвистики
    • Дискретная математика для лингвистов|Дискретная математика для лингвистов
    • Математический анализ и линейная алгебра|Математический анализ и линейная алгебра
    • Теория вероятностей и математическая статистика|Теория вероятностей и математическая статистика
    • Математические основы компьютерной лингвистики 2|Математические основы компьютерной лингвистики 2
  • Факультет коммуникаций, медиа и дизайна
    • Программирование для дата-журналистики|Программирование для дата-журналистики
    • Алгебра и анализ (1 курс)|Алгебра и анализ (1 курс)
  • Совместный бакалавриат ВШЭ-РЭШ
    • Статистика и открытые данные|Статистика и открытые данные
    • Дифференциальные уравнения|Дифференциальные уравнения
  • МИЭФ
    • Python (МИЭФ)|Python (МИЭФ)