progr_sirius_2021

To GitHub

Основы программирования для биологов. 1-15 ноября 2021 года, НТУ Сириус

Рабочая программа дисциплины

Преподаватели и связь

Преподаватели: Алексей Константинович Шайтан, д.ф.-м.н., alex@intbio.org; Григорий Алексеевич Армеев, к.ф.-м.н. g.armeev@intbio.org

Ассистенты: Анна Грибкова, a.gribkova@intbio.org; Лавприт Сингх-Пальчевская, l.singh@intbio.org; Анастасия Князева, a.kniazeva@intbio.org

Расписание

Расписание доступно здесь.

Описание:

Разработанная программа по новой самостоятельной дисциплине «Основы программирования для биологов» предназначена для подготовки магистров-биологов. Ее особенность состоит в изложении современных подходов к прикладному программированию для решения задач в области биоинформатики и биологии. Данная программа нацелена на формирование базовых навыков прикладного программирования на языках Python и R. Программа включает 4 раздела: работа с языком Python, применение прикладных библиотек для анализа данных, применение прикладных библиотек для визуализации результатов, применение языка R для обработки и визуализации данных. Фокусом первого раздела является знакомство студента с основами применения языка Python. Особое внимание уделяется организации воспроизводимых конвейеров по обработке данных. Второй раздел включает в себя знакомство с прикладными библиотеками Numpy и Pandas. В разделе приведены примеры обработки данных на различных примерах. Третий раздел посвящен прикладным библиотекам для построения графиков и визуализации результатов. В разделе приведены подходы к построению диаграмм и графиков по результатам анализа данных. Четвертый раздел посвящен изучению основ языка R. В разделе обсуждается применение R-studio для обработки и визуализации данных.

Рекомендованные справочные материалы:

Необходимое программное обеспечение:

  1. Доступ в интернет и браузер Google Chrome.
  2. Учетная запись для использования Гугл Диска.
  3. Язык R https://cran.r-project.org
  4. R-Studio. https://www.rstudio.com

Программа курса:

День 1.

Занятие 1. Вводная лекция. Программирование: история, языки, инструменты, применение в биологии, введение в ОС Linux и работу в командной строке. Первые вычислительные машины, эволюция языков программирования, понятие компилируемых и интерпретируемых языках программирования, ассемблер, Basic, Fortran, Pascal, C/C++, Perl, Python, Java, JavaScript, R, Bash. Понятие о программном обеспечении с открытым программным кодом. Типичные задачи, требующие навыков программирования в биологии. Инструменты для разработки программ, IDE, VisualStudio, PyCharm, Sublime. Cреды для интерактивного программирования и обработки данных Matlab, Mathematica, Jupiter Notebooks, RStudio. Google Collab. Системы контроля версий, git, GitHub. Репозитории программ. Типы операционных систем, POSIX-совместимые ОС, ОС Linux, работа в командной строке, командные интерпретаторы/оболочки, bash, bash-скрипты. Слайды лекции.
Занятие 2. Введение в язык R. История R. Установка R-Studio. Знакомство с R-Studio. Пример использования. Установка пакетов. Понятие переменных и векторов. Типы переменных. Математические операции с переменными. Понятие рамки данных. Извлечение данных из рамки данных. Описательная статистика данных. Построение простейших графиков. Задание функций. Работа с распределениями случайных величин. Проверка статистических гипотез.
Материалы занятий
- О языке R
- R-studio установка
- Архив пакетов R CRAN
- Пример использования для анализа диф. экспресии генов
- Присмер анализа распределений
- Установка и использование пакетов
- Типы данных и их задание
- Data.frame (рамка данных) – таблица состоящая из нескольких векторов одинаковой длины, но возможно различных типов.
- Введение в работу с рамками данных
- Первый объект в контейнере имеет индекс 1 в языке R, а не 0, как в Python
- Чтение и запись csv-файлов
- Перостейшие графики в R
- Открытые данные РФ
- Пример: скачаем данные с сайта data.gov.ru https://data.gov.ru/opendata/3234016192-sportsathlets в виде csv-файла, импортируем в R-studio, построим график зависимости количества спортсменов от количества тернеров
- Практическая задача: скачайте любой датасет, постройте график, отправьте в Discord-канал.
- Работа с распределениями случайных величин в R.
- Анализ случайных величин и статистические тесты.
Занятие 3. Введение в язык R. Прикладные аспекты. Стратегия применения R для анализа данных. Преобразование рамок данных. Построение графиков с помощью пакета ggplot2. Создание интерактивных графиков. Работа с геномными и биоинформатическими данными. Проект Bioconductor.
Материалы занятий
- Книга "R for Data Science"
- Стратегия Split-Apply-Combine
- Стратегия Split-Apply-Combine пример
- Возможности ggplot2
- Интерактивные графики Plotly
- Bioconductor
- Популярные пакеты
- Пример

День 2.

Занятие 1
Лекция
Занятия 2-3
Ноутбук с практическими заданиями

День 3.

Занятие 1
Лекция
Занятия 2-3
Ноутбук с практическими заданиями

День 4.

Занятие 1
Лекция
Занятия 2-3
Ноутбук с практическими заданиями

День 5.

Занятие 1
Лекция
Занятия 2-3
Ноутбук с практическими заданиями

День 6.

Занятие 1
Лекция
Занятия 2-3
Ноутбук с практическими заданиями

День 7.

Занятие 1
Лекция
Занятия 2-3
Ноутбук с практическими заданиями

День 8.

Занятие 1
Лекция
Занятия 2-3
Ноутбук с практическими заданиями

День 9.

Занятие 1
Лекция
Занятия 2-3
Ноутбук с практическими заданиями

День 10.

Лекция
Занятия 2-3
Ноутбук с практическими заданиями

Критерии оценивания.

Эказамен по курсу планируется 15 ноября 2021 года.