• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Basics of Programming in R

2019/2020
Academic Year
RUS
Instruction in Russian
5
ECTS credits
Delivered at:
Department of Higher Mathematics (Independent HSE Departments)
Course type:
Elective course
When:
3 year, 3, 4 module

Instructor

Программа дисциплины

Аннотация

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

Цель освоения дисциплины

  • Целями освоения дисциплины «Основы программирования в R» являются овладение навыками программирования на языке R, овладение методами обработки, визуализации и анализа качественных и количественных данных для решения политологических и социально-экономических задач.
Планируемые результаты обучения

Планируемые результаты обучения

  • знать: - основные методы обработки и визуализации качественных и количественных данных в R; уметь: - находить необходимую статистическую информацию для работы на языке программирования; владеть: - навыками программирования в R; - навыками работы с базами данных.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Установка R и RStudio. Особенности интерфейса RStudio. Установка библиотек.
    Базовые объекты R: переменные, векторы, списки, матрицы. Установка R и RStudio. Консоль R. Знакомство с интерфейсом RStudio. Язык разметки Markdown. Создание файлов Rmarkdown. Публикация кода на Rpubs. Установка и загрузка библиотек в R. Знакомство с документацией R. R как калькулятор. Переменные в R. Типы данных: числовой, целочисленный, логический, текстовый. Преобразование типов. Факторы (factor vectors) и уровни. Базовые объекты в R: векторы, списки, матрицы. Векторы: создание, доступ к элементам, изменение, добавление и удаление элементов, выбор элементов, сортировка. Матрицы и списки: создание, доступ к элементам, изменение, добавление и удаление элементов.
  • Форматы данных. Загрузка данных в R. Работа с текстовыми файлами в R
    Разнообразие форматов данных: таблицы Excel (xls, xlsx), таблицы Stata и SPSS (dta, sav), текстовые файлы (txt, csv), json-файлы. Загрузка данных в R. Открытие, изменение и запись файлов в R. Регулярные выражения.
  • Основы работы с базами данных.
    Выбор, добавление и удаление переменных. Преобразование типов переменных. Фильтрация, добавление и удаление наблюдений. Создание базы данных. Преобразование матриц и списков в объект data.frame. Объединение баз данных.
  • Базовые графики в R. Визуализация количественных и качественных данных в R.
    Разведывательный анализ данных в R. Базовые графики в R. Функция plot(). Построение графиков математических функций. Генерирование данных в R. (Псевдо)случайные значения. Визуализация количественных данных в R: гистограммы, графики плотности распределения, ящики с усами. Визуализация качественных данных в R: таблицы сопряженности, столбчатые и круговые диаграммы. Описательные статистики: среднее арифметическое, среднеквадратичное отклонение, медиана, квантили, квартили и процентили. Разведывательный анализ данных: типы и распределения данных. Проверка данных на нормальность в R: нормальная вероятностная бумага, критерий Колмогорова-Смирнова и критерий Шапиро-Уилка.
  • Корреляционный и регрессионный анализ в R. Множественная регрессия в R.
    Работа с пространственно-временными данными в R. Коэффициенты корреляции Пирсона и Спирмена в R. Корреляционные матрицы в R. Визуализация корреляций между переменными в R: heatmaps. Множественная регрессия в R: построение модели, интерпретация выдачи R. Визуализация результатов регрессионного анализа с помощью библиотеки sjPlot. Выгрузка необходимой информации из R в текстовые редакторы. Перекрестные данные (cross section data), временные ряды (time series data) и пространственно-временные данные (time series cross section). Регрессионные модели для пространственно-временных данных: модель с фиксированными эффектами, модель со случайными эффектами.
  • Управляющие конструкции в R. Циклы for и while. Функции в R.
    Операторы в R. Условные операторы if и else. Множественные и разветвленные условия. Циклы в R. Циклы for и while: достоинства и недостатки. Циклы vs векторные операции в R. Устройство функций в R. Основные функции в R. Функция assign(). Написание простейших функций в R.
  • Парсинг веб-страниц средствами R. Библиотека rvest.
    Структура html-файлов. Извлечение информации из html-файлов. Выгрузка текста из html-файлов. Функционал библиотеки rvest.
  • Тема 8. Работа с API средствами R.
    Знакомство с API. Работа с API ВКонтакте и API Twitter. Библиотеки vkR, Rvk и twitteR.
Элементы контроля

Элементы контроля

  • неблокирующий Проект
  • неблокирующий Аудиторная работа:
  • неблокирующий Домашние задания
  • неблокирующий Экзамен:
    Экзамен проводится в письменной форме. Экзамен проводится на платформе Zoom (https://zoom.us/). К экзамену необходимо подключиться за 10 минут до начала. Компьютер студента должен удовлетворять требованиям: наличие работающего микрофона, поддержка Zoom. Для участия в экзамене студент обязан: поставить на аватар свою фотографию, включить микрофон. Во время экзамена студентам запрещено: пользоваться социальными сетями, переговариваться и переписываться с другими студентами, создавать новые вопросы на ресурсах вида StackOverFlow и компьютерных форумах. Во время экзамена студентам разрешено: пользоваться материалами курса и интернет-ресурсами по программированию в R. Кратковременным нарушением связи во время экзамена считается нарушение менее 3 минут. Долговременным нарушением связи во время экзамена считается нарушение 3 минуты и более. При долговременном нарушении связи студент не может продолжить участие в экзамене. Процедура пересдачи подразумевает использование усложненных заданий.
Промежуточная аттестация

Промежуточная аттестация

  • Промежуточная аттестация (4 модуль)
    0.12 * Аудиторная работа: + 0.24 * Домашние задания + 0.24 * Проект + 0.4 * Экзамен:
Список литературы

Список литературы

Рекомендуемая основная литература

  • R for data science : import, tidy, transform, visualize, and model data, Wickham, H., 2017
  • Анализ данных и процессов : учеб. пособие, Барсегян, А. А., Куприянов, М. С., 2009
  • Статистический анализ данных на компьютере, Тюрин, Ю. Н., 1998

Рекомендуемая дополнительная литература

  • Hands-On programming with R, Grolemund, G., 2014