Бакалавриат
2020/2021





Python для извлечения и обработки данных
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Лучший по критерию «Новизна полученных знаний»
Статус:
Курс обязательный (Клеточная и молекулярная биотехнология)
Направление:
06.03.01. Биология
Где читается:
Факультет биологии и биотехнологии
Когда читается:
1-й курс, 1, 2 модуль
Формат изучения:
с онлайн-курсом
Язык:
русский
Кредиты:
5
Контактные часы:
20
Программа дисциплины
Аннотация
Курс «Python для извлечения и обработки данных» имеет целью обучить студентов не только работе в Python, но и основам программирования вообще, поскольку наиболее базовые принципы являются схожими почти во всех языках программирования. При решении ряда задач исследователи часто сталкиваются с необходимостью работать с большими массивами данных. Характер данных может быть очень разным: последовательности нуклеиновых кислот (ДНК, РНК), аминокислот (белки). Для того чтобы эффективно работать с разными типами данных, необходимо знать основы программирования, так как именно навыки программирования позволяют автоматически собирать необходимую информацию за достаточно быстрое время. В качестве языка программирования в данном курсе используется Python. Язык Python на данный момент является очень популярным, в том числе в исследованиях в рамках естественных наук. Дисциплина подразделяется на два блока. Первый блок посвящен основам программирования и включает необходимые для дальнейшей работы в Python темы: переменные и типы данных, списки и кортежи, словари, условные конструкции, циклы и функции. Второй блок посвящен решению прикладных задач в Python и включает темы, связанные со сбором и анализом данных: выгрузка данных с сайтов, парсинг веб-страниц, работа с таблицами, визуализация и разведывательный анализ данных. Студентам будет предложен проект, при выполнении которого они смогут применить полученные знания для анализа генома. Базовые навыки программирования позволят работать с биологическими данными различного уровня и размеров эффективнее и уже сегодня являются достаточно востребованными навыками у специалистов естественнонаучного профиля.
Цель освоения дисциплины
- Овладение навыками программирования на языке Python, овладение методами сбора и обработки данных для решения задач анализа биологических последовательностей и биологической статистики
Планируемые результаты обучения
- Умеет работать в среде Jupyter Notebook, умеет создавать переменные разных типов
- Умеет решать прикладные задачи с применением условных конструкций и циклов
- Умеет писать функции на Python и тестировать их
- Умеет загружать файлы с данными разных форматов (cvs, txt и основанных на них биологических FASTA, genbank)
- Умеет выполнять операции с массивами NumPy
- Умеет выгружать информацию из веб- страниц на примере NCBI
- Умеет выгружать информацию с помощью API
- Умеет выполнять базовые операции с табличными данными средствами Python
- Знает этапы предварительной обработки текста и умеет реализовывать их на практике
- Знает особенности типов и структур данных: словарь, список, вложенные структуры, float, int, строка
Содержание учебной дисциплины
- Начало работы в Python.Установка Python 3 (дистрибутив Anaconda). Знакомство с интерфейсом Jupyter Notebook. Элементы языка разметки Markdown. Установка и импортирование библиотек. Элементарные вычисления в Python. Переменные в Python. Типы данных в Python: числовой, целочисленный, логический, строковый. Преобразование типов.
- Управляющие конструкции в Python.Понятие управляющих конструкций. Построение блок-схемы для понимания структуры кода. Условные конструкции и операторы if-else. Особенности использования оператора elif
- Циклы в PythonЦиклы for и while. Применение циклов к строкам, спискам, кортежам и словарям. Альтернатива коду с циклами: списковые включения.
- Структуры данных в PythonСписки, кортежи, множества, словари. Изменяемые и неизменяемые типы данных.
- Функции в PythonУстройство функций в Python. Написание простейших функций. Lambda-функции. Исключения. Поиск ошибок в коде и отладка.
- Работа с файламиРабота с файлами в Python: открытие, изменение, сохранение. Разные форматы хранения данных: csv-файлы, json-файлы, txt-файлы.
- Работа с текстамиРегулярные выражения
- Массивы NumPyМассивы vs списки в Python. Работа с массивами NumPy. Применение массивов в анализе данных.
- Работа с таблицамиОбзор возможностей библиотеки pandas. Преобразование датафреймов pandas: добавление строк и столбцов в таблицу, фильтрация строк по условиям. Группировка и агрегирование данных. Объединение таблиц.
- Работа с html-файламиВведение в HTML и элементы веб-дизайна. Извлечение данных из веб-страниц. Парсинг html-файлов в Python с помощью библиотек requests и BeautifulSoup.
- Работа с APIЗнакомство с API. API как источник данных.
Элементы контроля
- Контрольная работаКонтрольная работа проводится в письменной форме с использованием синхронного прокторинга. Контрольная работа проводится на платформе Онлайн-образование в НИУ ВШЭ (https://online.hse.ru/), прокторинг на платформе Экзамус (https://hse.student.examus.net). На платформе Экзамус доступно тестирование системы (https://lms.demo.examus.net/syscheck_st). Компьютер студента должен удовлетворять требованиям: https://elearning.hse.ru/data/2020/05/07/1544135594/Технические%20требования%20к%20ПК%20студента.pdf.
- Тесты
- Онлайн-курсОнлайн-курс "Python для извлечения и обработки данных" [URL: https://openedu.ru/course/hse/PYTHON/].
- Проект
- Защита проекта
Промежуточная аттестация
- Промежуточная аттестация (2 модуль)0.15 * Защита проекта + 0.2 * Контрольная работа + 0.2 * Онлайн-курс + 0.25 * Проект + 0.2 * Тесты
Список литературы
Рекомендуемая основная литература
- Nelli, F. (2018). Python Data Analytics : With Pandas, NumPy, and Matplotlib (Vol. Second edition). New York, NY: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1905344
- Федоров Д. Ю. - ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ PYTHON 2-е изд. Учебное пособие для СПО - М.:Издательство Юрайт - 2019 - 161с. - ISBN: 978-5-534-11961-9 - Текст электронный // ЭБС ЮРАЙТ - URL: https://urait.ru/book/programmirovanie-na-yazyke-vysokogo-urovnya-python-446505
Рекомендуемая дополнительная литература
- G. Nair, V. (2014). Getting Started with Beautiful Soup. Birmingham, UK: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=691839