МОВС Основы программирования на Python (ММОВС23, 1-2 модули) — различия между версиями
м (add planned 5th hw) |
(Добавлены 12, 13, 14 лекции) |
||
(не показано 13 промежуточных версии ещё одного участника) | |||
Строка 1: | Строка 1: | ||
==О курсе== | ==О курсе== | ||
− | Занятия проводятся в [https://us06web.zoom.us/j/86555948101?pwd=L01SRjVvd3RhazRoVkVoREZlaFg1dz09 Zoom] '''по вторникам в 19:40''' | + | Занятия проводятся в <strike>[https://us06web.zoom.us/j/86555948101?pwd=L01SRjVvd3RhazRoVkVoREZlaFg1dz09 Zoom]</strike> [https://us06web.zoom.us/j/86766261787?pwd=cTZmajdybXdCNGIzbUxnejFnY0Jldz09 новая ссылка] '''по вторникам в 19:40''' |
+ | |||
+ | Онлайн-курсы: | ||
+ | * Python для извлечения и обработки данных: https://edu.hse.ru/course/view.php?id=132749 | ||
+ | * Сбор и анализ данных в Python: https://edu.hse.ru/course/view.php?id=132492 | ||
==Контакты== | ==Контакты== | ||
Строка 18: | Строка 22: | ||
|- | |- | ||
| style="background:#eaecf0;" | Морозов Антон || [https://t.me/MAntonV @MAntonV] | | style="background:#eaecf0;" | Морозов Антон || [https://t.me/MAntonV @MAntonV] | ||
+ | |- | ||
+ | | style="background:#eaecf0;" | Зуев Гордей || [https://t.me/WhiteShape @WhiteShape] | ||
+ | |- | ||
+ | | style="background:#eaecf0;" | Сокур Илья || [https://t.me/ilias_ml @ilias_ml] | ||
|} | |} | ||
Строка 29: | Строка 37: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | + | ! Занятие !! Тема !! Дата !! Ссылки | |
|- | |- | ||
| style="background:#eaecf0;" | '''1''' [[https://www.youtube.com/watch?v=QDPsZt9SlkQ&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect01.%20Data%20types Ноутбуки]] Основные типы и структуры данных. | | style="background:#eaecf0;" | '''1''' [[https://www.youtube.com/watch?v=QDPsZt9SlkQ&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect01.%20Data%20types Ноутбуки]] Основные типы и структуры данных. | ||
− | || 05.09.23 | + | || 05.09.23 || |
|- | |- | ||
| style="background:#eaecf0;" | '''2''' [[https://www.youtube.com/watch?v=fhgl4POcxAw&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect02.%20Data%20types%202 Ноутбуки]] Основные типы и структуры данных. Продолжение | | style="background:#eaecf0;" | '''2''' [[https://www.youtube.com/watch?v=fhgl4POcxAw&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect02.%20Data%20types%202 Ноутбуки]] Основные типы и структуры данных. Продолжение | ||
− | || 12.09.23 | + | || 12.09.23 || |
|- | |- | ||
| style="background:#eaecf0;" | '''3''' [[https://www.youtube.com/watch?v=8TDbTguBtt8&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect03.%20Loops Ноутбуки]] Ветвления, циклы | | style="background:#eaecf0;" | '''3''' [[https://www.youtube.com/watch?v=8TDbTguBtt8&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect03.%20Loops Ноутбуки]] Ветвления, циклы | ||
− | || 26.09.23 | + | || 26.09.23 || |
|- | |- | ||
− | | style="background:#eaecf0;" | '''4''' [[https://www.youtube.com/watch?v=Av0L8YHz8hE&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/blob/master/lect04.%20Functions/Functions.ipynb Ноутбук]] Функции, рекурсия, генераторы, декораторы. Сложность вычислений || 03.10.23 || | + | | style="background:#eaecf0;" | '''4''' [[https://www.youtube.com/watch?v=Av0L8YHz8hE&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/blob/master/lect04.%20Functions/Functions.ipynb Ноутбук]] Функции, рекурсия, генераторы, декораторы. Сложность вычислений || 03.10.23 || [https://habr.com/ru/articles/320288/ Статья про генераторы] на Хабре |
|- | |- | ||
− | | style="background:#eaecf0;" | '''5''' [[ Запись]] || [[ Ноутбук]] Регулярные выражения | + | | style="background:#eaecf0;" | '''5''' [[https://www.youtube.com/watch?v=nfvORkyJNXA&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/blob/master/lect05.%20Regex/regexp.ipynb Ноутбук]] Регулярные выражения |
− | || 10.10.23 || | + | || 10.10.23 || [https://habr.com/ru/articles/349860/ Статья] про регулярки на Хабре, [https://stepik.org/course/107335/syllabus Курс на Stepik] про регулярки <br/>[https://regex101.com/ regex101] - сайт для разбора регулярных выражений, [https://docs.python.org/3/library/re.html Доки] библиотеки re, [https://pynative.com/python-regex-findall-finditer/ описание работы метода finditer] |
|- | |- | ||
− | | style="background:#eaecf0;" | '''6''' [[ Запись]] || [[ | + | | style="background:#eaecf0;" | '''6''' [[https://www.youtube.com/watch?v=DBGTFo-oMVs&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect06.%20Web-scraping Ноутбуки]] Парсинг || 17.10.23 || |
|- | |- | ||
− | | style="background:#eaecf0;" | '''7''' [[ Запись]] || [[ Ноутбук]] Введение в | + | | style="background:#eaecf0;" | '''7''' [[https://www.youtube.com/watch?v=k5EdrAXAgXc&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect07.%20NumPy%20 Ноутбук]] Введение в NumPy |
− | || || || | + | || 19.10.23 (Чт.) || |
+ | |- | ||
+ | |||
+ | | style="background:#eaecf0;" | '''8''' [[https://www.youtube.com/watch?v=Gr6R4awHOrM&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect08.%20Pandas Ноутбук]] Pandas. Разведочный анализ данных | ||
+ | || 24.10.23 || | ||
|- | |- | ||
| Конец первого модуля | | | Конец первого модуля | | ||
|- | |- | ||
− | | style="background:#eaecf0;" | ''' | + | | style="background:#eaecf0;" | '''9''' [[https://www.youtube.com/watch?v=gYDdCn8j-dI&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect09.%20Data%20visualization Ноутбук]] Визуализация данных |
− | || | + | || 31.10.23 || |
− | + | ||
|- | |- | ||
− | | style="background:#eaecf0;" | ''' | + | | style="background:#eaecf0;" | '''10''' [[https://www.youtube.com/watch?v=ZFV7dw3M4r4&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect10.%20(OOP)%20Classes Ноутбук]] Классы и основы ООП |
− | + | || 07.11.23 || | |
|- | |- | ||
− | | style="background:#eaecf0;" | ''' | + | | style="background:#eaecf0;" | '''11''' [[https://www.youtube.com/watch?v=ANXApBug6Hg&list=PLmA-1xX7IuzDMSdaH9B67TYDe2c4oFwSV Запись]] || [[https://github.com/pileyan/Python_2023_Master/blob/master/lect10.%20(OOP)%20Classes/Multiarmed%20bandits.ipynb Ноутбук]] ООП 2. Многорукие бандиты || 14.11.23 || |
− | + | ||
|- | |- | ||
− | | style="background:#eaecf0;" | ''' | + | | style="background:#eaecf0;" | '''12''' [[https://youtu.be/-LUmbOXInIo?si=a6VJEBmNx_v5Y66R Запись]] || [[ Ноутбук]] Анализ текстовой информации 1: Исправление опечаток || 21.11.23 || |
|- | |- | ||
− | | style="background:#eaecf0;" | ''' | + | | style="background:#eaecf0;" | '''13''' [[https://youtu.be/eF5ehS2Jaco?si=Sfy3n2utNpnj6GVa Запись]] || [[https://github.com/pileyan/Python_2023_Master/blob/master/lect11_neighbors/neighbors%C2%A0.ipynb Ноутбук]] Анализ текстовой информации 2: Appproximate Nearest Neighbors (ANN) search - Faiss || 12.12.23 || |
+ | |- | ||
+ | | style="background:#eaecf0;" | '''14''' [[https://youtu.be/MuObAsBtFnk?si=ArcLe0mj57fRr9Vt Запись]] || [[https://github.com/pileyan/Python_2023_Master/tree/master/lect12.%20t-digest%20and%20quantiles Ноутбук]] Пайплайн EDA и (возможно) трюки в IPython и Jupyter || 19.12.23 || | ||
|- | |- | ||
|} | |} | ||
Строка 101: | Строка 113: | ||
== Домашние задания == | == Домашние задания == | ||
− | Инвайт в [https://anytask.org/ Anytask]: <code>BCB3V6W</code> | + | Инвайт в [https://anytask.org/course/1035 Anytask]: <code>BCB3V6W</code> |
# [https://github.com/pileyan/Python_2023_Master/blob/master/homework/hw_01.ipynb ДЗ-1: Типы данных], выдано 14.09.23, '''дедлайн: 24.09.23 23:59 (МСК)''' | # [https://github.com/pileyan/Python_2023_Master/blob/master/homework/hw_01.ipynb ДЗ-1: Типы данных], выдано 14.09.23, '''дедлайн: 24.09.23 23:59 (МСК)''' | ||
# [https://github.com/pileyan/Python_2023_Master/blob/master/homework/hw_02.ipynb ДЗ-2: Функции], выдано 04.10.23, '''дедлайн: 17.10.23 23:59 (МСК)''' | # [https://github.com/pileyan/Python_2023_Master/blob/master/homework/hw_02.ipynb ДЗ-2: Функции], выдано 04.10.23, '''дедлайн: 17.10.23 23:59 (МСК)''' | ||
− | # | + | # [https://github.com/pileyan/Python_2023_Master/blob/master/homework/hw_03.ipynb ДЗ-3: Парсинг, регулярки, немного NumPy], выдано 20.10.23, '''ЖЁСТКИЙ Дедлайн: 01.11.23 23:59 (МСК)''' |
− | # | + | # [https://github.com/pileyan/Python_2023_Master/blob/master/homework/hw_04.ipynb ДЗ-4: pandas, визуальный анализ], выдано 08.11.23, '''дедлайн: 21.11.23 23:59 (МСК)''' |
− | # | + | # ООП |
+ | |||
+ | == Тесты == | ||
+ | 1) [https://forms.yandex.ru/u/6520e5c2c09c02875e63cae1/ "Структуры данных, функции"], '''Дедлайн: 10.10.23 (Вт.) 23:59 МСК'''<br/> | ||
+ | 2) [https://forms.yandex.ru/u/653639653e9d088871dafe56/ "Регулярные выражения, numpy"], '''Дедлайн: 25.10.23 (Ср.) 23:59 МСК'''<br/> | ||
+ | 3) [https://forms.gle/eXSHSJ4jKto33rod9 "NumPy, Pandas, визуализация"], '''Дедлайн: 17.11.23 (Пт.) 23:59 МСК'''<br/> | ||
+ | 4) "ООП"<br/> | ||
+ | 5) | ||
== Литература == | == Литература == |
Текущая версия на 16:21, 23 декабря 2023
Содержание
О курсе
Занятия проводятся в Zoom новая ссылка по вторникам в 19:40
Онлайн-курсы:
- Python для извлечения и обработки данных: https://edu.hse.ru/course/view.php?id=132749
- Сбор и анализ данных в Python: https://edu.hse.ru/course/view.php?id=132492
Контакты
Чат курса в TG: https://t.me/+MAwRza1aQ9Q4MzNi
Преподаватель: Пиле Ян Эрнестович (https://www.hse.ru/org/persons/591284001)
Ассистент | Telegram |
---|---|
Калашникова Анастасия | @kalassnikovaa |
Флоринский Михаил | @roflinski |
Морозов Антон | @MAntonV |
Зуев Гордей | @WhiteShape |
Сокур Илья | @ilias_ml |
Материалы курса
Ссылка на плейлист курса на YouTube: YouTube-playlist
Ссылка на GitHub с материалами курса: GitHub repository
После 4-го занятия возможны перестановки по блокам тем
Занятие | Тема | Дата | Ссылки |
---|---|---|---|
1 [Запись] | [Ноутбуки] Основные типы и структуры данных. | 05.09.23 | |
2 [Запись] | [Ноутбуки] Основные типы и структуры данных. Продолжение | 12.09.23 | |
3 [Запись] | [Ноутбуки] Ветвления, циклы | 26.09.23 | |
4 [Запись] | [Ноутбук] Функции, рекурсия, генераторы, декораторы. Сложность вычислений | 03.10.23 | Статья про генераторы на Хабре |
5 [Запись] | [Ноутбук] Регулярные выражения | 10.10.23 | Статья про регулярки на Хабре, Курс на Stepik про регулярки regex101 - сайт для разбора регулярных выражений, Доки библиотеки re, описание работы метода finditer |
6 [Запись] | [Ноутбуки] Парсинг | 17.10.23 | |
7 [Запись] | [Ноутбук] Введение в NumPy | 19.10.23 (Чт.) | |
8 [Запись] | [Ноутбук] Pandas. Разведочный анализ данных | 24.10.23 | |
9 [Запись] | [Ноутбук] Визуализация данных | 31.10.23 | |
10 [Запись] | [Ноутбук] Классы и основы ООП | 07.11.23 | |
11 [Запись] | [Ноутбук] ООП 2. Многорукие бандиты | 14.11.23 | |
12 [Запись] | Ноутбук Анализ текстовой информации 1: Исправление опечаток | 21.11.23 | |
13 [Запись] | [Ноутбук] Анализ текстовой информации 2: Appproximate Nearest Neighbors (ANN) search - Faiss | 12.12.23 | |
14 [Запись] | [Ноутбук] Пайплайн EDA и (возможно) трюки в IPython и Jupyter | 19.12.23 |
Записи консультаций
Формула оценивания
Оценка = 0.3*ОТесты + 0.7*ОДЗ
Распределительное задание
Ноутбук на GitHub. Дедлайн: 08.09.23 (Пт), 23:59 МСК
По результатам мы можем порекомендовать вам не посещать настоящий курс и идти на курсы MLOps. Начало
(1-й модуль, Елизавета Гаврилова) и MLOps
(2-й модуль, Владислав Гончаренко)
Вторая опция не проходить курс: сдать проект, требования по которым описаны ниже.
Заполненный ноутбук с заданиями распределительного тестирования нужно приложить в Anytask в соответствующий слот.
Проект
Получить оценку за этот курс по альтернативному треку (без ДЗ и тестов) можно путём сдачи проекта.
Требования:
В целом, вас не хочется ограничивать, но предложение преподавателя такое:
- Парсер;
- Разведочный анализ данных/какую-то обработку этих собранных данных;
- Потенциальную обработку ошибок (парсер не завелся/запрос вам отправили неправильный);
- Неплохо бы фронтенд взаимодействия с пользователем (например, в телеге бота запилить);
- И выкладку на сервер, чтоб работало без вашего включенного компа.
Итоговая цель примерно такова, что проект должен отвечать на вопрос: Умеет ли студент на некотором уровне решать задачи с помощью питона.
Если у вас есть альтернативные предложения по проекту - готовы их обсудить.
Домашние задания
Инвайт в Anytask: BCB3V6W
- ДЗ-1: Типы данных, выдано 14.09.23, дедлайн: 24.09.23 23:59 (МСК)
- ДЗ-2: Функции, выдано 04.10.23, дедлайн: 17.10.23 23:59 (МСК)
- ДЗ-3: Парсинг, регулярки, немного NumPy, выдано 20.10.23, ЖЁСТКИЙ Дедлайн: 01.11.23 23:59 (МСК)
- ДЗ-4: pandas, визуальный анализ, выдано 08.11.23, дедлайн: 21.11.23 23:59 (МСК)
- ООП
Тесты
1) "Структуры данных, функции", Дедлайн: 10.10.23 (Вт.) 23:59 МСК
2) "Регулярные выражения, numpy", Дедлайн: 25.10.23 (Ср.) 23:59 МСК
3) "NumPy, Pandas, визуализация", Дедлайн: 17.11.23 (Пт.) 23:59 МСК
4) "ООП"
5)
Литература
- Лутц Марк, "Программирование на Python"
- Dan Bader, "Python Tricks: The Book"
- Гарри Персиваль, "Python. Разработка на основе тестирования"
- Micha Gorelick & Ian Ozsvald "High Performance Python"