Python для аналитиков данных

34 урока

Практический и всеобъемлющий курс Python для аналитиков данных - основной для менторской программы по анализу данных. Он предназначен для начинающих, в том числе и для тех, кто раньше никогда не программировал. При этом мы стремимся к значительному погружению в детали, но при этом сохраняем практическую направленность. Чтобы обеспечить комфортный старт, курс начинается с видео об установке Python и редактора кода. Обучение программированию начинается с основ: обзора переменных и типов данных, а заканчивается продвинутыми концепциями, в том числе и объектно-ориентированным программированием.

Курс сопровождается значительным количеством практических примеров и домашними заданиями, направленными на закрепление материала. В ходе обучения мы напишем несколько больших проектов, чтобы не просто решать мини-задачи, а учиться создавать целые программы, состоящие из нескольких модулей и пакетов. В итоге, полученных знаний и навыков будет более чем достаточно для успешной работы в любой сфере анализа данных.

Структура курса

No image for course

Итерационные контексты

Цикл for - одна из самых обобщенных конструкций. For позволяет единообразно обходить широкий круг последовательностей: строки, списки, словари, множества и даже файлы. В данной лекции мы рассмотрим итерационные контексты - механизм последовательного перебора последовательностей на основе протокола итерации: iterable и iterator. Это позволит получить глубокое понимание самой модели обработки последовательностий в Python: почему часть методов и функций (к примеру, dict.keys(), zip, any, ...) вместо списков возвращает объекты, почему некоторые последовательности не могут быть пройдены в цикле дважды и т.п. В итоге, мы напишем свой собственный итерируемый объект, который поддерживает обход от первого элемента до последнего в цикле for. Изучив эту лекцию, вы перестанете воспринимать Python как магию за счет значительного роста понимания того, что происходит под капотом.

No image for course

Мега-продвинутый проект на Python

Этот проект - вершина нашего курса и является опциональным, хотя и рекомендуемым. Его уровень сложности относится к категории "сложнейший". Необходимо будет не просто на высоком уровне применить все знания, полученные в рамках этого курса, но и думать масштабно, т.е. строить приложение, а не скрипт, делающий разовую задачу. Кроме того, в данном проекте встречается ряд сложных алгоритмических задач, необходимо тщательно проверять данные, введенные пользователем и стремиться обрабатывать ошибки. Кроме того, одним из требований проекта - написать полный пакет модульных тестов, что автоматически требует продумать архитектуру приложения. В итоге, пространство для творчества в рамках этого проекта огромно, количество задач и практики программирования становится по истине неограниченным.