Программирование на Pythonдля школьников и студентов СПО

Бесплатная образовательная оффлайн-программа по программированию на Python для школьников и студентов СПО

сентябрь 2023 – май 2024

Зарегистрироваться Подать заявку
Продолжительность
1. год, 144 ак. ч.
Бесплатное обучение
для школьников РФ 8-11 классов и студентов СПО
Сертификат МФТИ
в портфолио абитуриента по завершению обучения
Формат обучения:
очный, оффлайн

Московский физико-технический институт – первый в рейтинге вузов России 2022 в направлении Computer Science по версии Times Higher Education.

В 2018 году в МФТИ создан единственный в России Центр компетенций НТИ по направлению «Искусственный интеллект».

В 2021 году в аналитическом обзоре «Искусственный интеллект в России» ведущей консалтинговой компании CNA МФТИ отмечен как ВУЗ с наиболее развитыми компетенциями в области искусственного интеллекта.

EduMipt – инновационный онлайн-проект дополнительного профессионального образования Московского физико-технического института. Открыт набор на курсы повышения квалификации и программы профессиональной переподготовки в IT-сфере.

С EduMipt можно получить новые компетенции, освоить востребованную профессию на уровне ведущего технического вуза страны. Работодатели отдают предпочтение сильным специалистам с образованием МФТИ.

читать дальше

Для кого?

Школьникам 8-11 классов и студентам СПО

желающим освоить Python с нуля

5

программа

Описание курса
Модуль 1
Модуль 2
Модуль 3
Модуль 4

Программирование на Python (начальный уровень)

Дополнительная общеобразовательная программа «Программирование на Python» (144 ак. часа) от МФТИ разработана для школьников 8-11 классов и студентов СПО, желающих освоить основы анализа данных с использование языка программирования Python в рамках проекта «Код будущего». Обучение бесплатное.

Программа «Программирование на Python» (начальный уровень) направлена на знакомство с базовыми понятиями и элементами языка Python (операторы, числовые и строковые переменные, списки, условия и циклы, функции) и формирование компетенций в области решения задач по программированию. Курс является вводным и лучше всего подойдет слушателям, не имеющим опыта написания программ ни на одном из языков программирования. Содержит множество разнообразных задач по базовым конструкциям языка, что позволяет получить практические навыки программирования на языке Python для решения типовых задач математики и информатики и использовать полученные знания в дальнейшей учебной и профессиональной деятельности.

Программа включает 4 модуля:

  • Введение в Python (36 ак.ч.)
  • Базовые конструкции (36 ак.ч.)
  • Знакомство с коллекциями (36 ак.ч.)
  • Функции (36 ак.ч.)

Цель программы — формирование познавательной активности обучающихся в области функционального программирования, приобретение навыков работы c базовыми структурами языка в интегрированных средах разработки, получение навыков самостоятельного написания кода и разработки эффективных алгоритмов и программ.

Актуальность программы:
Способность написать программу или код постепенно становится базовым навыком. Программирование и вычислительное мышление расширяют возможности и становятся обязательным требованием к любому специалисту. Способность читать и понимать компьютерный код становится более востребованной, поэтому программирование переходит из специального знания в универсальную грамотность.
Указом Президента Российской Федерации от 07.05.2018 г. № 204 «О национальных целях и стратегических задачах развития Российской Федерации на период до 2024 года» поставлена национальная цель – обеспечение ускоренного внедрения цифровых технологий в экономике. В условиях широкого внедрения онлайн -сервисов, электронных услуг, развития цифровой экономики актуальной является проблема подготовки кадров, в том числе в области программирования на языке Python. Отечественные компании испытывают потребность в квалифицированных кадрах, способных решать прикладные задачи на языке программирования Python. Язык программирования Python доступен для освоения лицами любого возраста и профессии. Он позволяет решать широкий круг практических задач: его можно использовать для анализа данных и машинного обучения, бэкенда, веб -разработки, системного администрирования, создания игр и т.д. Программа имеет техническую направленность, в её основу заложены принципы модульности и практической направленности, что обеспечит вариативность обучения. Содержание учебных модулей предполагает детальное изучение алгоритмизации, реализацию межпредметных связей, организацию проектной и исследовательской деятельности обучающихся.

Требования:
Требования к уровню подготовки: отсутствуют.

Требования к статусу обучающегося: школьники 8-10 классов общеобразовательных организаций.

Требования к оборудованию для самостоятельной работы обучающихся: персональные компьютеры/ноутбуки, Visual Studio, доступ в Интернет.

Требования к программному обеспечению для самостоятельной работы: операционная система (желательно Windows); браузеры: Yandex Browser, Chrome, Chrome Mobile, Firefox, Opera, Safari, Mobile Safari, Edge, Python; среда Wing IDE 101 (версии 6 или выше); среда PyCharm Community Edition.

Рекомендации для обучающихся: до начала обучения по программе необходимо установить оборудование и программное обеспечение; своевременно выполнять задания для самостоятельной работы, которые будут размещены на цифровой платформе МФТИ в соответствии с изучаемыми темами.

Задачи:

  • сформировать ответственное отношение к учению, готовности и способности, обучающихся к саморазвитию и самообразованию на основе мотивации к обучению и познанию, осознанному выбору и построению дальнейшей индивидуальной траектории образования на базе ориентировки в мире профессий и профессиональных предпочтений, с учётом устойчивых познавательных интересов
  • сформировать умение соотносить свои действия с планируемыми результатами, осуществлять контроль своей деятельности в процессе достижения результата, определять способы действий в рамках предложенных условий и требований, корректировать свои действия в соответствии с изменяющейся ситуацией
  • сформировать умение определять понятия, создавать обобщения, устанавливать аналогии, классифицировать, самостоятельно выбирать основания и критерии для классификации, устанавливать причинно-следственные связи, строить логическое рассуждение, умозаключение (индуктивное, дедуктивное и по аналогии) и делать выводы
  • сформировать умение организовывать учебное сотрудничество и совместную деятельность с учителем и сверстниками; работать индивидуально и в группе: находить общее решение и разрешать конфликты на основе согласования позиций и учёта интересов; формулировать, аргументировать и отстаивать своё мнение

Результаты:

  • знание необходимой терминологии («информация», «алгоритм», «исполнитель», «модель»), смысла этих понятий и умение применять полученные знания на практике
  • умение соблюдать сетевой этикет, другие базовые нормы информационной этики и права при работе с компьютерными программами и в сети Интернет
  • умение выполнять созданные программы, осуществлять их разработку, тестирование и отладку, используя изученный язык программирования
  • развитие умений составить и записать алгоритм для конкретного исполнителя
  • формирование знаний об алгоритмических конструкциях— линейной, условной и циклической, логических значениях и операциях
  • навыки пошагового выполнения алгоритмов, умение осуществлять данные операции как вручную, так и с использованием компьютера
  • умение определять результат выполнения алгоритма при заданных исходных данных
  • знание основных понятий и этапов проектной деятельности

Программа носит практико-ориентированный характер. Все занятия включают как теоретический блок, так и практическую работу для формирования практических навыков в области программирования. Закрепление навыков происходит в процессе самостоятельной работы обучающихся, которые предусмотрены при изучении всех тем. Для практической работы будут использоваться дата сеты от индустриальных партнеров МФТИ.

Календарный учебный график

Введение в Python

Модуль включает 6 тем. В конце модуля проводится промежуточная аттестация.

Цели:

  • знакомство со средой разработки Python
  • изучение основных типов данных, команд ввода-вывода

Задачи:

  • познакомить с процессом установки интерпретатора Python
  • познакомить со средой разработки и исполнением кода
  • познакомить с функцией print() и именованными аргументами sep и end
  • рассмотреть понятие переменной и требования к ней
  • познакомить с оператором присваивания, множественным присваиванием
  • познакомить с функцией input() и научить вводить данные с клавиатуры
  • показать устройство памяти и ссылок в Python
  • познакомить с представлением целых чисел в памяти компьютера
  • познакомить со встроенными числовыми типами и строками
  • научить использовать арифметические операции над числами и строками

Тема 1. Установка языка Python. Среда разработки. (5 ак.ч.)

  • знакомство с процессом установки интерпретатора Python
  • знакомство со средой разработки и исполнением кода
  • организация личного кабинета, поиск и выкладывание материалов
  • знакомство с системой автоматизированной проверки задач

Тема 2. Вывод данных (5 ак.ч.)

  • понятие о языке высокого уровня Python
  • структура программы, функция print() именованными аргументами sep и end
  • стандарт PEP8

Тема 3. Типы данных и переменные (5 ак.ч.)

  • понятие константы
  • понятие переменной и требования к ней
  • оператор присваивания, множественное присваивание
  • функция input(), ввод данных с клавиатуры
  • устройство памяти и ссылок в Python

Тема 4. Арифметика строк (5 ак.ч.)

  • представление строк в памяти компьютера
  • арифметические операции над строками

Тема 5. Арифметика чисел (6 ак.ч.)

  • представление чисел в памяти компьютера
  • арифметические операции над числами
  • «утиная типизация» в Python

Тема 6. Обработка цифр числа (6 ак.ч.)

  • алгоритм получения цифр n-значного числа

Промежуточная аттестация (4 ак.ч.)

Базовые конструкции

Модуль включает 6 тем. В конце модуля проводится промежуточная аттестация.
Цели:

  • знакомство с условными логическими конструкциями языка Python, итерационными и условными циклами

Задачи:

  • познакомить с логическим типом данных
  • научить составлять сложные логические условия с использованием операторов and, or, not
  • познакомить с особенностями «ленивых» логических выражений в Python
  • познакомить с конструкцией «ветвление»
  • научить записывать полную и неполную форму ветвления с помощью условного оператора
  • познакомить с многообразием способов записи ветвления, каскадным ветвлением
  • познакомить с конструкцией «цикл»
  • научить записывать цикл с известным количеством повторений с помощью оператора for, читать
  • последовательности с помощью for
  • показать назначение и способы использования переменной цикла внутри циклической конструкции
  • познакомить с разными способами использования функции range(), с отрицательным шагом, циклом по строке
  • научить записывать цикл с известным условием продолжения работы с помощью оператора while и способами досрочного выхода из цикла
  • познакомить с причинами возникновения бесконечного цикла
  • научить обрабатывать последовательности с помощью циклов

Тема 1. Логический тип данных. Логические операции. Условный оператор. (5 ак.ч.)

  • логический тип данных, запись логических условий на языке Python
  • условный оператор
  • неполный условный оператор

Тема 2. Составные условия. Каскадный условный оператор. (5 ак.ч.)

  • составление сложных логических условий с использованием операторов and, or, not
  • особенности выполнения сложных логических условий в Python
  • многообразие способов записи ветвления – каскадное ветвление

Тема 3. Цикл с параметром for (5 ак.ч.)

  • синтаксис оператора for, особенности записи цикла
  • чтение последовательности
  • итерирование по объектам
  • фильтрация
  • функция next от iterable-объекта
  • функция enumerate

Тема 4. Переменная цикла for (5 ак.ч.)

  • функция range()
  • переменная цикла
  • использование переменной цикла
  • изменение переменной
  • изменение переменной в цикле
  • выражения с числами от 1 до n

Тема 5. Варианты цикла for (6 ак.ч.)

  • разные виды range
  • шаг в range
  • отрицательный шаг
  • использование шага цикла
  • цикл по строке

Тема 6. Цикл while. Организация разветвлений в цикле. (6 ак.ч.)

  • синтаксис оператора while
  • операторы досрочного выхода из цикла continuе, break, pass
  • условие после выхода из цикла
  • бесконечный цикл
  • причины бесконечного цикла
  • обработка последовательностей

Промежуточная аттестация (4 ак.ч.)

Знакомство с коллекциями

Модуль включает 6 тем. В конце модуля проводится промежуточная аттестация.
Цели:

  • познакомить с коллекциями в Python: строками, списками, кортежами и приемами работы с ними

Задачи:

  • рассмотреть такие коллекции, как строки, списки, кортежи, множества, словари
  • познакомить со способами их создания и операциями для работы с ними

Тема 1. Работа со строками. Индексы, срезы строк (5 ак.ч.)

  • знакомство с типом данных str
  • индексация строки, особенности индексов, отрицательные индексы
  • срезы строк, срезы с отрицательными индексами
  • сокращенная запись среза
  • первые и последние n символов
  • срез с шагом
  • разные типы срезов

Тема 2. Сравнение строк, методы строк (5 ак.ч.)

  • операции со строками
  • сравнение букв
  • сравнение слов
  • перестановка строк
  • латинские буквы
  • сравнение произвольных символов
  • стандарт ASCII, таблица ASCII
  • сравнение произвольных строк
  • прописные буквы
  • сравнение строк с числами
  • методы строк: find(), rfind(), count(), replace()
  • форматированные строки
  • f-строки

Тема 3. Списки. Методы списков (5 ак.ч.)

  • структура данных – списки, особенности данной структуры
  • понятие элемента списка, индекса элемента, значения элемента, срезы
  • заполнение списка
  • вывод списка
  • обработка списка
  • последовательный поиск, сортировка: метод sort(), функция sorted()
  • методы списков: append(), index(), pop(), split(), метод строки join()

Тема 4. Списочные выражения. Кортежи (5 ак.ч.)

  • способ создания списков: list comprehension, примеры использования
  • считыванием входных данных
  • условия в списочном выражении
  • вложенные циклы
  • структура данных – кортеж, примеры кортежей
  • кортеж с одним элементом
  • особенности кортежей, зачем использовать кортежи вместо списков
  • индексация кортежей, срезы
  • операция конкатенация и умножение на число
  • встроенные функции sum(), min(), max()
  • методы index(), count()$
  • перебор кортежей, распаковка
  • сортировка кортежей, сравнение
  • преобразование кортежей в список и строку и наоборот

Тема 5. Множества (6 ак.ч.)

  • множества в математике: конечные и бесконечные множества, равенство множеств, подмножество и надмножество, пустое множество
  • структура данных – множество в python
  • создание множества, пустое множество
  • вывод множества
  • дубликаты при создании множеств
  • приемы работы с множествами: функция len(), оператор принадлежности in, встроенные функции sum(), min(), max()
  • методы множеств
  • операции над множествами

Тема 6. Словари (6 ак.ч.)

  • структура данных – словарь
  • отличия словарей от списков
  • создание словарей, обращение по ключу, создание словарей на основе списков и кортежей
  • пустой словарь
  • вывод словаря
  • особенности словарей
  • встроенные функции len(),sum(),min(),max()
  • оператор принадлежности in
  • перебор словарей
  • распаковка словаря
  • форматированный вывод словарей
  • сравнение словарей
  • методы keys(), values() и items()
  • добавление и изменение элементов в словаре, удаление элементов из словаря
  • методы get(), update(), рop(), popitem(), clear(), copy()

Промежуточная аттестация (4 ак.ч.)

Функции

Модуль включает 6 тем. В конце модуля проводится промежуточная аттестация.
Цели:

  • познакомить с парадигмами программирования
  • научить использовать функции и их комбинации для решения сложных задач

Задачи:

  • познакомить с синтаксисом простых функций, особенностями возвращаемых значений и аргументов
  • научить использовать анонимную (лямбда) функцию, а также локальные и глобальные переменные

Тема 1. Функции. Обязательные параметры. Значения функций (5 ак.ч.)

  • синтаксис функции, назначение функции
  • функции без параметров
  • функции с параметрами
  • локальные и глобальные переменные

Тема 2. Функции. Необязательные параметры (5 ак.ч.)

  • позиционные, необязательные аргументы
  • именованные аргументы, целесообразность применения именованные аргументы
  • комбинирование позиционных и именованных аргументов
  • изменяемые типы в качестве значений по умолчанию

Тема 3. Функции с переменным числом аргументов (5 ак.ч.)

  • переменное количество аргументов
  • передача аргументов в форме списка и кортежа
  • получение и передача именованных аргументов в виде словаря
  • keyword-only аргументы

Тема 4. Функции как объекты (5 ак.ч.)

  • функции как объекты
  • функции в качестве аргументов других функций
  • встроенные функции, принимающие функции в качестве аргументов
  • функции в качестве возвращаемых значений других функций

Тема 5. Функции высшего порядка map(), zip(), filter(), reduce() (6 ак.ч.)

  • функции высшего порядка
  • самописные функции map(),zip(), filter(), reduce()
  • модуль operator

Тема 6. Анонимные функции (6 ак.ч.)

  • определение анонимных функций
  • условный оператор в теле анонимной функции
  • передача аргументов в анонимную функцию
  • ограничения анонимных функций

Промежуточная аттестация (4 ак.ч.)




Описание курса
Модуль 1
Модуль 2
Модуль 3
Модуль 4

Анализ данных на Python

Дополнительная общеобразовательная программа «Программирование на Python» (144 ак. часа) от МФТИ разработана для школьников 8-11 классов и студентов СПО, желающих освоить основы анализа данных с использование языка программирования Python в рамках проекта «Код будущего». Обучение бесплатное.

1. Анализ данных применяется во многих областях науки и бизнеса для выявления важных закономерностей. Одним из наиболее эффективных инструментов для работы с данными являются языки программирования, в частности язык Python.

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

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

  • Базовые конструкции(36 ак.ч.)
  • Знакомство с коллекциями (36 ак.ч.)
  • Работа с числовыми данными NumPy (36 ак.ч.)
  • Анализ данных с помощью библиотеки Pandas (36 ак.ч.)

Цель программы — помочь учащимся в освоении основных конструкций и библиотек анализа данных для языка Python, а также сформировать компетенции для проведения первичного анализа данных с помощью этих инструментов.

2. Требования к уровню подготовки: отсутствуют.

Требования к статусу обучающегося: школьники 8-10 классов общеобразовательных организаций.

Требования к оборудованию для самостоятельной работы обучающихся: персональные компьютеры/ноутбуки, Visual Studio, доступ в Интернет.

Требования к программному обеспечению для самостоятельной работы: операционная система (желательно Windows); браузеры: Yandex Browser, Chrome, Chrome Mobile, Firefox, Opera, Safari, Mobile Safari, Edge, Python; среда Wing IDE 101 (версии 6 или выше); среда PyCharm Community Edition.

Рекомендации для обучающихся: до начала обучения по программе необходимо установить оборудование и программное обеспечение; своевременно выполнять задания для самостоятельной работы, которые будут размещены на цифровой платформе МФТИ в соответствии с изучаемыми темами.

3. В процессе обучения будут сформированы следующие предметные знания и умения:

  • знание необходимой терминологии («информация», «алгоритм», «исполнитель», «модель»), смысла этих понятий и умение применять полученные знания на практике;
  • умение соблюдать сетевой этикет, другие базовые нормы информационной этики и права при работе с компьютерными программами и в сети Интернет;
  • умение выполнять созданные программы, осуществлять их разработку, тестирование и отладку, используя изученный язык программирования;
  • развитие умений составить и записать алгоритм для конкретного исполнителя; формирование знаний об алгоритмических конструкциях— линейной, условной и циклической, логических значениях и операциях;
  • навыки пошагового выполнения алгоритмов, умение осуществлять данные операции как вручную, так и с использованием компьютера;
  • умение определять результат выполнения алгоритма при заданных исходных данных;
  • умение визуализировать данные при помощи инструментов Python и библиотеки Matplotlib
  • знание основных понятий и этапов проектной деятельности.
  • умение собирать данные из открытых источников при помощи инструментов библиотеки Beautiful Soup и сохранять их в виде файлов

4. Программа носит практико-ориентированный характер. Все занятия включают как теоретический блок, так и практическую работу для формирования практических навыков в области программирования. Закрепление навыков происходит в процессе самостоятельной работы обучающихся, которые предусмотрены при изучении всех тем. Для практической работы будут использоваться дата сеты от индустриальных партнеров МФТИ.

Календарный учебный график

Базовые конструкции

Модуль состоит из 6 тем. В конце модуля проводится промежуточная аттестация.
Цель модуля – дать основы программирования на языке Python. Настроить среду разработки.

Тема 1. Установка Python и JupyterLab. Понятие кода, интерпретатора, программы. Исполнение кода и отладка (5 ак.ч.)
Решение задач типа:

  • Установите на свою рабочую станцию Python и JupyterLab подходящим для вашей системы пакетным менеджером
  • Выведите на экран сумму двух чисел для проверки работоспособности установленного интерпретатора

Тема 2. Переменные. Базовые типы данных. Основные операторы. Целочисленная арифметика (5 ак.ч.)
Решение задач типа:

  • Вычислите дробь 466/115 с точностью до 6 знака после запятой
  • Вычислите остаток от деления числа 2^2048 на 3

Тема 3. Конструкция ветвление. Условный оператор. Каскадный условный оператор. Вложенные условия (5 ак.ч.)
Решение задач типа:

  • Вычислите и выведите на экран евклидово расстояние между подаваемыми на вход координаты точек

Тема 4. Контрольная работа (5 ак.ч.)
Решение задач типа:

  • Реализуйте математическую функцию sign(x)
  • Напишите программу, которая принимает на вход номер месяца вашего рождения, и выводит строку «Вы родились в НАЗВАНИЕ_МЕСЯЦА»

Тема 5. Цикл for. Организация циклов (6 ак.ч.)
Решение задач типа:

  • Получив на вход два числа, выведите на экран все простые числа, находящиеся между ними

Тема 6. Цикл while. Организация разветвлений в цикле (6 ак.ч.)
Решение задач типа:

  • Вычислите последовательность Фибоначчи для подаваемого на вход числа
  • Вычислите факториал подаваемого на вход числа
  • Выведите на экран сумму натуральных чисел от 1 до подаваемого на вход числа

Знакомство с коллекциями

Модуль 2. Знакомство с коллекциями
Модуль состоит из 6 тем. В конце модуля проводится промежуточная аттестация.
Цель модуля – показать основные приемы работы со строками, списками, кортежами. Применять для создания программ как готовые функции, так и написанные самостоятельно.

Тема 1. Строки. Срезы. Методы строк (5 ак.ч.)
Решение задач типа:

  • Для строки ‘1234567890abcdefghij’ выведите все символы с четными номерами
  • В подаваемой на вход строке замените все цифры на точки

Тема 2. Списки. Методы списков. Списочные выражения. Кортежи (5 ак.ч.)
Решение задач типа:

  • Дан числовой список элементов. Составьте из него новый список, в который попадут только элементы меньше 100
  • Напишите программу, которая считывает список целых чисел и выводит на экран кортеж из уникальных элементов этого списка, упорядоченных по возрастанию

Тема 3. Функции. Области видимости переменных. Функции с переменным числом аргументов. Значения по умолчанию (5 ак.ч.)
Решение задач типа:

  • Напишите функцию проверки четности числа
  • Напишите функцию, удваивающую вхождение введенного символа в тексте

Тема 4. Контрольная работа (5 ак.ч.)
Решение задач типа:

  • Представьте в виде списка строк текст ‘One;two;three;four;five’, разделив его по символу ‘;’
  • В переменной data хранится список из фиксированного набора описаний. Отобразите в новой строке все уникальные элементы data и их количество по убыванию

Тема 5. Лямбда функции. Сортировка с параметром key (6 ак.ч.)
Решение задач типа:

  • С помощью лямбда-функции отсортируйте список чисел по последней цифре

Тема 6. Функции высшего порядка: map, filter, zip (6 ак.ч.)
Решение задач типа:

  • Напишите лямбда-функцию для удвоения всех элементов списка
  • Дан список точек из кортежей из двух чисел вида [(3, -2), (7, 1), (0, 4)]. С помощью лямбда-функции отсортируйте список по возрастанию расстояния от начала координат до точки
  • Напишите лямбда-функцию для создания списка положительных чисел из списка вида [19, -8, 4, 0, -2, 15]

Работа с числовыми данными NumPy

Модуль 3. Работа с числовыми данными NumPy
Модуль состоит из 6 тем. В конце модуля проводится промежуточная аттестация.
Цель модуля – научить применению инструментов библиотек NumPy и Matplotlib при работе с числовыми данными для вычисления простых метрик и визуализации информации

Тема 1. Множества (5 ак.ч.)
Решение задач типа:

  • На входе функция получает строку или список чисел. Преобразуйте их в множество и посчитайте его мощность

Тема 2. Словари (5 ак.ч.)
Решение задач типа:

  • Создайте словарь, в котором ключами будут числа от 1 до 10, а значениями эти же числа, возведенные в куб
  • Дан словарь, состоящий из пар слов, являющихся синонимами. Для подаваемого на вход слова определите его синоним.

Тема 3. Работа с файлами. Чтение и запись данных (5 ак.ч.)
Решение задач типа:

  • Считайте файл целиком при помощи метода read(). Выведите в обратном порядке содержимое всего файла

Тема 4. Особенные типы данных в NumPy. Работа с векторами и матрицами (5 ак.ч.)
Решение задач типа:

  • На вход подается numpy массив a и целое b. Возвратите numpy массив, состоящий из индексов всех вхождений числа b в массив a
  • Создайте трехмерный массив numpy 3x3x3 со случайными значениями.

Тема 5. Вычисление главных статистических метрик с помощью NumPy (среднее, медиана, мода, дисперсия) (6 ак.ч.)
Решение задач типа:

  • Пусть a – непустой двумерный numpy массив. Найдите медиану и дисперсию по колонкам
  • Считайте из файла массив. Вычислите среднее и среднеквадратичное отклонение элементов

Тема 6. Визуализация данных с Matplotlib (6 ак.ч.)
Решение задач типа:

  • Постройте на общих осях графики f(x) = x и f(x) = 1/x
  • На вход подается имя файла с построчными координатами точек. Визуализируйте эти точки на графике, постепенно меняя с каждой точкой градиент цвета от красного к черному

Анализ данных с помощью библиотеки Pandas

Модуль 4. Анализ данных с помощью библиотеки Pandas
Модуль состоит из 6 тем. В конце модуля проводится промежуточная аттестация.
Цель модуля – научить собирать данные из открытых источников с помощью библиотеки Beautiful Soup и сохранять их в виде файлов. Показать, как с помощью библиотеки Pandas анализировать собранные данные и находить в них зависимости

Тема 1. Работа с табличными данными Pandas (5 ак.ч.)
Решение задач типа:

  • Считайте из csv файла данные, положите их датафрейм Pandas и выведите на экран первые 10 строк
  • Дан словарь, содержащий фамилии учеников и их оценку за экзамен. Преобразуйте словарь в датафрейм и посчитайте в нём значение среднего балла

Тема 2. Сбор данных в сети Интернет. Библиотека Beautiful Soup (5 ак.ч.)
Решение задач типа:

  • Дана простая web страница с заголовком и несколькими параграфами. С помощью библиотеки Beautiful Soup выделите из страницы содержимое параграфов и запишите их в текстовый файл

Тема 3. Анализ взаимосвязей и описательная статистика (5 ак.ч.)
Решение задач типа:

  • Дан фрейм данных с числовыми столбцами. С помощью функции pd.plotting.scatter_matrix() создайте матрицу точечных графиков для всех столбцов

Тема 4. Сводные таблицы (5 ак.ч.)
Решение задач типа:

  • Дан csv файл вида «Врач,Диагноз,Продолжительность». С помощью сводной таблицы Pandas посчитайте, сколько раз какой врач ставил каждый из диагнозов

Тема 5. Агрегирование данных и групповые операции (6 ак.ч.)
Решение задач типа:

  • Дан датафрейм со сводной таблицей животных в зоопарке, содержащей номер, вид и норму питьевой воды в сутки. С помощью методов агрегации посчитайте количество видов животных и общей объем требуемой воды

Тема 6. Подготовка к итоговому проекту (6 ак.ч.)
Разбор содержания тем проектов:

  • Сбор отзывов с сата доставки готовой еды и поиск зависимости оценки отзыва от сезона / времени дня
  • Визуализация пиков заболеваемости Covid-19 на основе открытых датасетов
  • Реализация Contact Book для хранения разнообразных контактных данных, на основе csv файла с поддержкой функции поиска по разным полям
  • Реализация игры «Камень, Ножницы, Бумага» с хранением и выводом на экран статистики всех когда-либо сыгранных матчей
  • Автоматизированный сбор данных о цене какого-либо товаре в течение месяца, визуализация динамики цены на графике и подсчет средних значений цены



Партнеры

Copyright © 2024 МФТИ
Политика обработки персональных данных МФТИ
Задать вопрос