МИНОБРНАУКИ РОССИИ
федеральное государственное бюджетное образовательное учреждение высшего образования
«Алтайский государственный университет»

Решение аналитических задач на R и Python

рабочая программа дисциплины
Закреплена за кафедройКафедра цифровых технологий и бизнес-аналитики
Направление подготовки27.03.03. Системный анализ и управление
ПрофильСистемный анализ и управление экономическими системами
Форма обученияОчная
Общая трудоемкость6 ЗЕТ
Учебный план27_03_03_Системный анализ и управление_САиУЭС-2021
Часов по учебному плану 216
в том числе:
аудиторные занятия 84
самостоятельная работа 105
контроль 27
Виды контроля по семестрам
экзамены: 8
зачеты: 7

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

Курс (семестр) 4 (7) 4 (8) Итого
Недель 16 11
Вид занятий УПРПДУПРПДУПРПД
Лекции 16 16 16 16 32 32
Лабораторные 26 26 26 26 52 52
Сам. работа 66 66 39 39 105 105
Часы на контроль 0 0 27 27 27 27
Итого 108 108 108 108 216 216

Программу составил(и):
канд. техн. наук, доцент, Трошкина Г. Н.;канд.экон. наук, доцент, Вдовкина Е.Г.

Рецензент(ы):
канд. физ.-мат. наук, доцент, Журенков О. В.

Рабочая программа дисциплины
Решение аналитических задач на R и Python

разработана в соответствии с ФГОС:
Федеральный государственный образовательный стандарт высшего образования - бакалавриат по направлению подготовки 27.03.03 Системный анализ и управление (приказ Минобрнауки России от 07.08.2020 г. № 902)

составлена на основании учебного плана:
27.03.03 Системный анализ и управление
утвержденного учёным советом вуза от 27.04.2021 протокол № 6.

Рабочая программа одобрена на заседании кафедры
Кафедра цифровых технологий и бизнес-аналитики

Протокол от 22.03.2022 г. № 8
Срок действия программы: 20222023 уч. г.

Заведующий кафедрой
Трошкина Галина Николаевна


Визирование РПД для исполнения в очередном учебном году

Рабочая программа пересмотрена, обсуждена и одобрена для
исполнения в 2023-2024 учебном году на заседании кафедры

Кафедра цифровых технологий и бизнес-аналитики

Протокол от 22.03.2022 г. № 8
Заведующий кафедрой Трошкина Галина Николаевна


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

1.1.Формирование компетенций, связанных с решением задач по сбору, анализу и визуализации количественных данных. Курс направлен на освоение новых технологий при использовании известных методов анализа данных, ознакомление студентов с программными средами R и Python. В результате освоения курса студенты должны уметь реализовать и документировать процесс исследования от сбора данных до (автоматизированной) публикации отчетов.

2. Место дисциплины в структуре ООП

Цикл (раздел) ООП: Б1.В.01

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

ПК-3Способен эксплуатировать системы управления, применять современные инструментальные средства, технологии программирования и анализа данных
ПК-3.1 Знает системы управления, современные инструментальные средства, технологии программирования и анализа данных
ПК-3.2 Умеет эксплуатировать системы управления
ПК-3.3 Применяет современные инструментальные средства, технологии программирования и анализа данных в процессе эксплуатации систем управления
В результате освоения дисциплины обучающийся должен
3.1.Знать:
3.1.1.- Современные методы обработки и анализа данных;
- Основные принципы работы языка R;
- Синтаксис и базовые функции R;
- Функционал пакетов ggplot2;
- Семантику и синтаксис языка программирования Python;
- Назначение, устройство и свойства основных структур данных и конструкций языка Python;
- Модули и пакеты для решения различных прикладных и научных задач;
- Основные технологии анализа данных.

3.2.Уметь:
3.2.1.- обрабатывать и анализировать данные для подготовки аналитических решений, экспертных заключений и рекомендаций;
- Применять статистические и математические методы для представления и анализа исходных данных;
- Разрабатывать и проводить отладку программ с использованием современных инструментальных средств и технологий программирования;
- Разрабатывать математические методы и алгоритмы решения различных задач;
- Использовать для разработки и отладки программ интегрированные среды разработки;
- Строить автоматизированные модели анализа данных.
3.3.Иметь навыки и (или) опыт деятельности (владеть):
3.3.1.- Навыками работы с разнородной информацией: типизация, структуризация данных;
- Навыками выбора статистических методов и инструментальных средств для работы с данными;
- Навыками подготовки данных и проведения статистического анализа наблюдений из разных областей знания;
- Навыки применения статистических методов и умения программирования на языке R при самостоятельном решении исследовательских задач;
- Навыками чтения, написания, отладки и тестирования программ на высокоуровневом языке программирования в интегрированной среде разработки;
- Навыками анализа данных на примере решения задач кластеризации, классификации, прогнозирования.


4. Структура и содержание дисциплины

Код занятия Наименование разделов и тем Вид занятия Семестр Часов Компетенции Литература
Раздел 1. Введение в R
1.1. Общая характеристика языка R. Базовые команды, пакеты в R. RStudio и R commander. Лекции 7 2 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.2. Объекты и функции. Виды объектов. Понятие класса объекта. Типы хранения данных: векторы, двухмерные таблицы, матрицы, массивы, списки. Типы переменных: числовые, строчные, факторы. Лабораторные 7 4 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.3. Объекты и функции. Виды объектов. Понятие класса объекта. Типы хранения данных: векторы, двухмерные таблицы, матрицы, массивы, списки. Типы переменных: числовые, строчные, факторы. Сам. работа 7 6 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.4. Преобразование данных. Преобразование из одного типа в другой, объединение объектов (bind, transform и т.п.). Присваивание объектов. Обращение к атрибуту data.frame, выбор строк по условию (условный запрос), выбор отдельных атрибутов (фильтрация). Использование простейших графических возможностей R-Studio. Сам. работа 7 6 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.5. Виды пропущенных данных: NA, NaN. Способы работы с пропущенными данными. Понятие среды, ссылки на функции из разных пакетов, создание собственной среды. Циклы for, while, repeat. Создание собственной функции. Лабораторные 7 2 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.6. Виды пропущенных данных: NA, NaN. Способы работы с пропущенными данными. Понятие среды, ссылки на функции из разных пакетов, создание собственной среды. Циклы for, while, repeat. Создание собственной функции. Сам. работа 7 6 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.7. Конфирматорный факторный анализ Лекции 7 2 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.8. Модели измерения латентных переменных: разведывательный и подтверждающий факторный анализ. Анализ главных компонент. Частные наименьшие квадраты. Формативные и рефлективные измерительные инструменты. Этапы построения и модификации измерительной модели. MTMM модели, модели со структурой средних, факторы высшего порядка. Построение моделей эксплораторного и конфирматорного факторного анализа в пакетах factanal и lavaan. Сравнение моделей в lavaan. Лабораторные 7 2 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.9. Модели измерения латентных переменных: разведывательный и подтверждающий факторный анализ. Анализ главных компонент. Частные наименьшие квадраты. Формативные и рефлективные измерительные инструменты. Этапы построения и модификации измерительной модели. MTMM модели, модели со структурой средних, факторы высшего порядка. Построение моделей эксплораторного и конфирматорного факторного анализа в па-кетах factanal и lavaan. Сравнение моделей в lavaan. Сам. работа 7 8 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.10. Кластерный анализ в kmeans и hclust. Многомерное шкалирование в mds. Лекции 7 2 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.11. Кластерный анализ в kmeans и hclust. Многомерное шкалирование в mds. Лабораторные 7 4 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.12. Кластерный анализ в kmeans и hclust. Многомерное шкалирование в mds. Сам. работа 7 6 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.13. Чтение, преобразование, экспорт данных в R. Лекции 7 2 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.14. Основные функции пакетов foreign, haven, car, dplyr. Основные идеи html, markdown и LaTEX. Пакет stargazer. Имитация данных в R. Лабораторные 7 2 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
1.15. Основные функции пакетов foreign, haven, car, dplyr. Основные идеи html, markdown и LaTEX. Пакет stargazer. Имитация данных в R. Сам. работа 7 6 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
Раздел 2. Анализ данных в R
2.1. Линейные и логистические бинарные регрессии в lm и glm. Анализ главных компонент в prcomp и princom. Лекции 7 4 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
2.2. Линейные и логистические бинарные регрессии в lm и glm. Анализ главных компонент в prcomp и princom. Кластерный анализ в kmeans и hclust. Многомерное шкалирование в mds. Лабораторные 7 4 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
2.3. Линейные и логистические бинарные регрессии в lm и glm. Анализ главных компонент в prcomp и princom. Кластерный анализ в kmeans и hclust. Многомерное шкалирование в mds. Сам. работа 7 6 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
2.4. Команда sapply и mapply. Дебаггинг. Оптимизация кода. Создание автоматических отчетов, работа с rmarkdown. Лабораторные 7 2 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
2.5. Команда sapply и mapply. Дебаггинг. Оптимизация кода. Создание автоматических отчетов, работа с rmarkdown. Сам. работа 7 6 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.6
Раздел 3. Визуализация данных в R base и ggplot2
3.1. Мотивы визуализации. Виды графиков. Связь между моделью анализа и графика-ми. Синтаксис ggplot2: qplot, geom, aes. Использование пространства координат: одно-, двух-, трех- мерные, сферические, географические системы координат. Использование символов и цветов. Лекции 7 2 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.5, Л2.6
3.2. Мотивы визуализации. Виды графиков. Связь между моделью анализа и графика-ми. Синтаксис ggplot2: qplot, geom, aes. Использование пространства координат: одно-, двух-, трех- мерные, сферические, географические системы координат. Использование символов и цветов. Лабораторные 7 4 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.5, Л2.6
3.3. Мотивы визуализации. Виды графиков. Связь между моделью анализа и графика-ми. Синтаксис ggplot2: qplot, geom, aes. Использование пространства координат: одно-, двух-, трех- мерные, сферические, географические системы координат. Использование символов и цветов. Сам. работа 7 6 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.5, Л2.6
3.4. Создание анимированных графиков в пакете animation. Лекции 7 2 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.5, Л2.6
3.5. Создание анимированных графиков в пакете animation. Лабораторные 7 2 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.5, Л2.6
3.6. Создание анимированных графиков в пакете animation. Сам. работа 7 6 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.5, Л2.6
3.7. Подготовка к зачету Сам. работа 7 4 ПК-3.1, ПК-3.2, ПК-3.3 Л1.2, Л2.5, Л2.6
Раздел 4. Введение в язык Python
4.1. Установка и настройка фреймворка Anaconda. Знакомство с синтаксисом, методами и средами разработки. Лекции 8 2 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
4.2. Решение арифметических задач. Обработка ввода пользователя, «Деревья решений». Лабораторные 8 2 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
4.3. Структурное программирование. Лекции 8 2 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
4.4. Реализация «петли событий». Чтение и разбор текстового набора данных из файла. Создание своего модуля и пакета из модулей участников. Лабораторные 8 2 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
4.5. Библиотеки Matplotlib, Numpy. Библиотека Pandas. Подключения к источникам данных. Лекции 8 2 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
4.6. Решение задач на использование библиотек Matplotlib и Numpy. Лабораторные 8 2 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
4.7. Установка и настройка фреймворка Anaconda. Знакомство с синтаксисом, методами и средами разработки. Сам. работа 8 13 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
Раздел 5. Введение в статистическое обучение
5.1. Сравнение средних. Визуальный анализ данных. Лекции 8 2 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
5.2. Однофакторный дисперсионный анализ. Множественные сравнения в ANOVA. Многофакторный ANOVA. Визуализация данных. Лабораторные 8 4 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
5.3. Корреляция и регрессия. Лекции 8 2 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
5.4. Регрессия с одной независимой переменной. Регрессионный анализ с несколькими независимыми переменными. Выбор наилучшей регрессионной модели. Регуляризация коэффициентов регрессии и отбор информативных признаков. Лабораторные 8 4 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
5.5. Сравнение средних. Визуальный анализ данных. Корреляция и регрессия. Сам. работа 8 13 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
Раздел 6. Интеллектуальный анализ данных и машинное обучение
6.1. Алгоритмы классификации. Методы кластеризации данных и ассоциативные правила. Лекции 8 2 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
6.2. Классификация с помощью деревьев решений и метода naïve bayes. Кластеризация с помощью алгоритма k-means. Поиск ассоциативных правил. Лабораторные 8 4 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
6.3. Методы прогнозирования численных признаков. Лекции 8 2 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
6.4. Прогнозирование временных рядов. Лабораторные 8 4 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
6.5. Факторный анализ и сокращение размерности. Лекции 8 2 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
6.6. Факторный анализ. Лабораторные 8 4 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1
6.7. Алгоритмы классификации. Методы кластеризации данных и ассоциативные правила. Методы прогнозирования численных признаков. Факторный анализ и сокращение размерности. Сам. работа 8 13 ПК-3.1, ПК-3.2, ПК-3.3 Л2.1, Л2.4, Л1.4, Л2.3, Л1.5, Л2.7, Л2.8, Л2.2, Л1.3, Л1.1

5. Фонд оценочных средств

5.1. Контрольные вопросы и задания для проведения текущего контроля и промежуточной аттестации по итогам освоения дисциплины
1. На основе какого языка был создан R?

Ответ:
(1) C
+ (2) S
(3) Java
(4) Python

2. Какие из перечисленных языков оказали влияние на R?

Ответ:
(1) Ruby
(2) Matlab
+ (3) Scheme
+ (4) S

3. R является:

Ответ:
+ (1) языком программирования для статистической обработки данных и работы с графикой, созданный на основе языка S
+ (2) свободной программной средой вычислений с открытым исходным кодом
(3) высокоуровневым языком программирования общего назначения, ориентированным на повышение производительности разработчика и читаемости кода
+ (4) языком программирования с динамической типизацией данных

4. Присваивание в языке R можно осуществить с помощью оператора:

Ответ:
+ (1) =
+ (2) <-
+ (3) ->
(4) :=

5. Присваивание в R нельзя осуществить с помощью оператора:

Ответ:
(1) =
(2) <-
(3) ->
+ (4) :=

6. Какие из вариантов присвоения не вызовут ошибки:

Ответ:
(1) x -> 3
+ (2) x <- 3
(3) 3 <- x
+ (4) 3 -> x

7. Как сделать вектор из трех чисел?

Ответ:
(1) (7,7,7)
(2) [7,7,7]
(3) {7,7,7}
+ (4) c(7,7,7)

8. Чему равняется length(c(7,7,7))

Ответ:
3

9. В каких из следующих случаях исполнение выдаст ошибку?

Ответ:
+ (1) (7,7,7)
+ (2) [7,7,7]
+ (3) {7,7,7}
(4) c(7,7,7)

10. Для каких аргументов функция is.finite вернет true?

Ответ:
+ (1) 1
(2) NA
(3) NaN
(4) (+Inf)

11. Для каких аргументов функция is.finite вернет false?

Ответ:
(1) 1
+ (2) NA
+ (3) NaN
+ (4) (+Inf)

12. Какой результат будет у функции is.finite(Inf-Inf)?

Ответ:
(1) TRUE
+ (2) FALSE
(3) NAN
(4) ошибка

13. Что вернет следующее выражение sum(1:3>2)?

Ответ:
(1) 0
+ (2) 1
(3) 2
(4) 3. Ошибка

14. Каким образом можно сформировать вектор (FALSE, FALSE, TRUE)?

Ответ:
+ (1) c(FALSE, FALSE, TRUE)
+ (2) 2:4>3
(3) 2:4<3
(4) -c(TRUE, TRUE, FALSE)

15. Что вернет следующее выражение sum(1:3>1)?

Ответ:
2

16. p.x=1.y=2
Что выведет print(p)?

Ответ:
(1) (1,2)
(2) {x=1;y=2}
(3) NaN
+ (4) ошибка

17. Как правильно присвоить p значение типа данных, имеющих две координаты x=1 и y=2?

Ответ:
(1) p.x=1.y=2
+ (2) p = c(x=1, y=2)
+ (3) p = c(y=2, x=1)
(4) p(x,y)<-c(1,2)

18. Является ли ошибкой использование такой записи: x.x=1?

Ответ:
(1) да
+ (2) нет

19. Какая типизация в языке R?

Ответ:
(1) статическая
+ (2) динамическая
(3) статическая с элементами динамической
(4) типизация отсутствует

20. Выберите неверные утверждения:

Ответ:
+ (1) язык R имеет статическую типизацию
(2) язык R имеет динамическую типизацию
+ (3) язык R имеет статическую типизацию с элементами динамической
+ (4) язык R не имеет типизации

21. Какая типизация в языке R?

Ответ:
динамическая

22. Операция с диапазонами x=1:3
y=4:6
Чему будет равно x+y?

Ответ:
+ (1) 5 7 9
(2) 1 2 3 4 5 6
(3) 5:9
(4) 1:6

23. Операция с диапазонами x=1:3
y=4:6
Чему будет равно x+y? (Введите цифры через пробел)

Ответ:
5 7 9

24. Каким образом можно описать вектор (1,2,3,4,5,6)?

Ответ:
(1) 1:2+4:6
(2) 1:8-7:8
+ (3) 1:6
(4) 2:12/2

25. Какой тип данных в Python представляет целые числа?
Варианты ответов: а) complex, б) float, в) int, г) bool.

26. Какие из представленых литералов чисел относятся к типу float?
Варианты ответов: а) 1.7+4.3j, б) 5.0, в) 88, г) -.4?

27. Что будет выведено на экран в результате выполнения кода условия?
Варианты ответов: а) 2.5, б) 2, в) 3, г) ошибка.
Условие pythonCodes
x = 5
y = 2
z = x//y
print(z)

28. Что будет выведено на экран в результате выполнения инструкции print(4 + 3.0)?
Варианты ответов: а) 7.0, б) 4 + 3.0, в) 7, г) ошибка.

29. Какое число будет выведено на экран в результате выполнения кода условия?
Варианты ответов: а) 2.5, б) 1, в) 0.1, г) ошибка.
Условие pythonCodes
x = 5
y = 2
z = x%y
print(z)

30. Что будет выведено на экран в результате выполнения кода условия?
Варианты ответов: а) 5, б) 0, в) 10, г) ошибка.
Условие pythonCodes
x = 5
x += x - x
print(x)

31. Выберите литералы чисел, представленные в шестнадцатеричной системе счисления.
Варианты ответов: а) 0X755, б) 16755, в) 0x1101, г) 0o1675.

32. Что будет выведено на экран в результате выполнения кода условия?
Варианты ответов: а) 9.0, б) 9, в) 6.0 + 3, г) ошибка.
Условие pythonCodes
x = 3
y = 3.0
z = '3'
print(x + y + z)

33. Какой оператор используется для получения остатка от деления в Python?
Варианты ответов: а) /, б) //, в) **, г) %.

34. Что будет выведено на экран в результате выполнения инструкции print(5**(5 - 2))?
Варианты ответов: а) 15, б) 125, в) 45.0, г) ошибка.

35. Что будет выведено на экран в результате выполнения кода условия?
Варианты ответов: а) 9.4, б) 9.35, в) 9.15, г) 9.45.
Условие pythonCodes
x = round(3.153, 2)
y = round(6.25)
print(x + y)

36. Какая из встроенных функций Python может быть использована для нахождения модуля числа?
Варианты ответов: а) round, б) abs, в) divmod, г) pow.

37. Выберите допустимые записи вещественного числа 0.135 в исходном коде.
Варианты ответов: а) 135E-1, б) 1.35e-1, в) .135, г) 1.35-e1.

38. Посчитайте количество литералов строк среди предложенных: '-23.5', '2 + 3', "яблоко", ['груша'], "[5, 7]".
Варианты ответов: а) 2, б) 3, в) 4, г) 5.

39. Что будет выведено на экран в результате выполнения кода условия?
Варианты ответов: а) 7 + 3, б) 10, в) 73, г) ошибка.
Условие pythonCodes
x = '7'
y = '3'
z = x + y
print(z)

40. Какой из операторов используется для повторения строки в Python?
Варианты ответов: а) +, б) *, в) /, г) %.

41. Какая последовательность символов представляет собой экранированную последовательность, соответствующую переводу строки?
Варианты ответов: а) \n, б) /n, в) \\n, г) //n.

42. Что будет выведено на экран в результате выполнения кода условия?
Варианты ответов: а) 55, б) 52, в) 25, г) ошибка.
Условие pythonCodes
x = '5'
y = '2'
z = x*int(y)
print(z)

43. Что будет выведено на экран в результате выполнения инструкции print("123456789"[5])?
Варианты ответов: а) 12345, б) 5, в) 6, г) ошибка.

44. Что будет выведено на экран в результате выполнения кода условия?
Варианты ответов: а) 33, б) 6, в) 32, г) ошибка.
Условие pythonCodes
x = '3'
y = '2'
z = int(x*y)
print(z)

45. Какой из методов используется для преобразования строки в верхний регистр?
Варианты ответов: а) upper(), б) capitalize(), в) lower(), г) title().

46. Что будет выведено на экран в результате выполнения инструкции print("123456789"[:5])?
Варианты ответов: а) 12345, б) 5, в) 6, г) ошибка.

47. Что выведет на экран инструкция print('okpython.net\')?
Варианты ответов: а) okpython.net, б) okpython.net\, в) okpython.net\', г) ошибка.

48. Какой из методов используется для соединения подстрок в одну строку по заданному разделителю?
Варианты ответов: а) split(), б) join(), в) replace(), г) strip().

49. Дана строка s = "012345". Перечислите инструкции, которые выведут на экран 3.
Варианты ответов: а) print(s[3]), б) print(s[-3]), в) print(s[3::3]), г) все предыдущие варианты.

50. Что будет выведено на экран в результате выполнения инструкции print('Гостиница 'Орбита', 3 звезды.')?
Варианты ответов: а) Гостиница Орбита, 3 звезды., б) Гостиница 'Орбита', 3 звезды., в) 'Гостиница 'Орбита', 3 звезды.', г) ошибка.
5.2. Темы письменных работ для проведения текущего контроля (эссе, рефераты, курсовые работы и др.)
Не предусмотрены
5.3. Фонд оценочных средств для проведения промежуточной аттестации
1.Назначение среды R, решаемые задачи.
2.Проблемы обработки данных различной природы. Автоматизация обработки и представления данных с помощью стандартного и специализированного программного обеспечения.
3.Возможности и ограничения среды, перспективы развития.
4.Особенности установки среды R на различных операционных системах.
5.Запуск среды R. Рабочее пространство среды. Простейшие команды.
6.Пакеты среды R. Понятие пакета. Загрузка и установка пакета.
7.Пакетная обработка. Действия при работе с большими массивами данных.
8.Последовательность действий по созданию набора данных в среде R.
9.Понятие набора данных. Ключевые характеристики структуры данных.
10.Векторы, матрицы данных.
11.Массивы и таблицы данных.
12.Факторы и списки данных.
13.Технологии получения данных из различных источников.
14.Правила импорта данных из файлов CSV, Excel, XML-файлов.
15.Извлечение данных из web-страниц.
16.Импорт данных из баз данных.
17.Аннотирование наборов данных.
18.Графические возможности среды R.
19.Управление графическимипараметрами среды при визуализации.
20.Настройка параметров символов, линий, цвета, текста, осей, условных обозначений.
21.Объединение диаграмм в среде R.
22.Управление данными в среде R.
23.Создание, переименование и перекодировка переменных.
24.Проблема обнаружения пропущенных значений и исключение пропущенных значений из анализа.
25.Преобразование типов в среде R.
26.Сортировка и объединение наборов данных.
27.Добавление столбцов и строк в наборы данных. Разделение наборов данных на составляющие.
28.Получение случайных выборок в среде R.
29.Команды SQL для преобразования таблиц.
30.Обработка данных в среде R.
31.Математические функции в среде R.
32.Статистические функции в среде R.
33.Функции распределения в среде R.
34.Применение функций к матрицам и таблицам данных.
35.Управление выполнением команд.
36.Задание повторений и управление циклами.
37.Выполнение алгоритма обработки данных с наступлением условия.
38.Правила написания пользовательских функций.
39.Агрегирование и изменение структуры данных.
40.Транспонирование данных.
41.Агрегирование данных средствами пакета reshape.
42.Базовые диаграммы среды R. Столбчатые диаграммы. Простые диаграммы, составные и диаграммы с группировкой. Диаграммы для средних значений.
43.Оптимизация столбчатых диаграмм. Создание и анализ спинограмм. Создание и анализ круговых диаграмм.
44.Гистограммы и диаграммы оценки функции плотности. Диаграммы размахов и точечные диаграммы.
45.Понятие корреляции. Типы корреляций. Визуализация корреляций.
46.Признаки и параметры простой линейной регрессии.
47.Признаки и параметры полиномиальной регрессии.
48.Исследование множественной линейной регрессии. Множественная линейная регрессия со взаимодействиями.
49.Способы диагностики регрессионных моделей.
50.Методы сравнения регрессионных моделей.
51.Выполнение при наступлении условия. Оператор if. Оператор if else. Оператор switch.
52.Повторение и циклы. Оператор for. Оператор while. Операторы repeat, break и next.
53.Стандартная форма задания пользовательской функции. Формальные аргументы, локальные переменные, свободные переменные.
54.Полная форма задания функции. Сильное присваивание. Команды apply(), sapply(), lapply().
55.Примеры написания пользовательских функций с использованием управляющих конструкций.
56.Постановка задач предметной области. Алгоритмизация решения задачи на языке R.
57.Алгоритмы расчета базовых экономических показателей.
58.Использование графических возможностей среды R для анализа экономической эффективности хозяйственной деятельности организации.
59. Основные понятия: большие данные, наука о данных, анализ данных. Основные этапы извлечения знаний из данных. Примеры задач анализа данных.
60. Области применения и перспективы развития языка программирования Python. Инструкции и структура программы. Операторы.
61. Переменные и типы данных: числовые типы, строки, списки, кортежи, множества, словари.
62. Простые и составные инструкции в Python. Условные операторы и циклы. Обработка исключений.
63. Функции: встроенные и пользовательские. Аргументы функций. Область видимости.
64. Модули. Основы программирования модулей. Пакеты модулей.
65. Доступ к базам данных из Python. Выполнение запросов, обработка результатов, управление транзакциями.
66. Структурированные и неструктурированные данные. Категориальные и непрерывные переменные. Методы отбора признаков (переменных). Библиотека pandas.
67. Обработка данных: поиск пропущенных значений, основные методы обработки пропущенных значений, обработка пропущенных значений с помощью pandas, поиск и удаление дублирующихся значений в pandas.
68. Обработка данных: описательные статистики, поиск аномалий (включая гистограммы, ящиковые диаграммы, ядерные оценки плотности), анализ выбросов и шумов. Нормализация и стандартизация данных.
69. Визуализация данных: виды графиков и диаграмм. Основные инструменты визуализации данных в Python.
70. Кластерный анализ: иерархический кластерный анализ, построение дендрограмм, методы k-средних. Кластерный анализ в Python.
71. Машинное обучение: основные понятия, задачи, которые можно решить с помощью машинного обучения. Алгоритмы машинного обучения с учителем и без учителя (перечислить). Инструменты Python, используемые в машинном обучении.
72. Машинное обучение: этапы моделирования. Отбор признаков на основе модели. Оценка качества построенных моделей.
73. Задача классификации: постановка задачи, пример моделей, понятие переобучения, оценка качества классификации, тонкая настройка модели.
74. Задача регрессии: постановка задачи, пример моделей, понятие переобучения, оценка качества классификации, тонкая настройка модели.

Приложения
Приложение 1.   ФОС_Python_САиУЭС.docx
Приложение 2.   ФОС_R_САиУЭС.docx

6. Учебно-методическое и информационное обеспечение дисциплины

6.1. Рекомендуемая литература
6.1.1. Основная литература
Авторы Заглавие Издательство, год Эл. адрес
Л1.1 В. М. Волкова, М. А. Семёнова, Е. С. Четвертакова, С. С. Вожов Программные системы статистического анализа Обнаружение закономерностей в данных с использованием системы R и языка Python: учебное пособие Новосибирск: Изд - во НГТУ, 2017 biblioclub.ru
Л1.2 Агалаков, С.А. Анализ данных в среде R : практикум Омск : Омский государственный университет им. Ф.М. Достоевского, 2020 biblioclub.ru
Л1.3 Северенс Ч. Введение в программирование на Python: Учебная литература для ВУЗов Национальный Открытый Университет «ИНТУИТ», 2016 biblioclub.ru
Л1.4 Федоров Д.Ю. ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ PYTHON. Учебное пособие для прикладного бакалавриата: Гриф УМО ВО М.:Издательство Юрайт, 2018 biblio-online.ru
Л1.5 Златопольский Д.М. Основы программирования на языке Python: Учебники Издательство "ДМК Пресс", 2017 e.lanbook.com
6.1.2. Дополнительная литература
Авторы Заглавие Издательство, год Эл. адрес
Л2.1 Хахаев И. А. Практикум по алгоритмизации и программированию на Python: курс М.: Национальный Открытый Университет «ИНТУИТ», 2016//ЭБС «Университетская библиотека online» biblioclub.ru
Л2.2 Бонцанини М. Анализ социальных медиа на Python. Извлекайте и анализируйте данные из всех уголков социальной паутины на Python: Другое Издательство "ДМК Пресс", 2018 e.lanbook.com
Л2.3 Коэльо Л.П., Ричарт В. Построение систем машинного обучения на языке Python: Издательство "ДМК Пресс", 2016 e.lanbook.com
Л2.4 Л. Рамальо Python. К вершинам мастерства: ДМК Пресс, 2016//ЭБС издательства «Лань» e.lanbook.com
Л2.5 Мастицкий, С. Э. Визуализация данных с помощью ggplot2 : Москва : ДМК Пресс, 2017 https://e.lanbook.com/book/107895
Л2.6 Митина, О. А. Языки программирования для статистической обработки данных (R) : учебное пособие Москва : РТУ МИРЭА, 2020 e.lanbook.com
Л2.7 Митчелл Р. Скрапинг веб-сайтов с помощю Python: Самоучители и руководства Издательство "ДМК Пресс", 2016 e.lanbook.com
Л2.8 Рашка С. Python и машинное обучение: крайне необходимое пособие по новейшей предсказательной аналитике, обязательное для более глубокого понимания методологии машинного обучения: Самоучители и руководства Издательство "ДМК Пресс", 2017 e.lanbook.com
6.2. Перечень ресурсов информационно-телекоммуникационной сети "Интернет"
Название Эл. адрес
Э1 Наглядная статистика Используем R! ashipunov.info
Э2 Онлайн учебник по анализу данных в R soc-research.info
Э3 Курс в Moodle "Решение аналитических задач на языке R" portal.edu.asu.ru
Э4 Курс на Едином образовательном портале АлтГУ portal.edu.asu.ru
6.3. Перечень программного обеспечения
Open Office, http://www.openoffice.org/license.html , (бессрочно);
Microsoft Office 2010 (Office 2010 Professional, № 4065231 от 08.12.2010), (бессрочно);
Microsoft Windows 7 (Windows 7 Professional (№ 61834699 от 22.04.2013), (бессрочно);
7-Zip http://www.7-zip.org/license.txt , (бессрочно);
AcrobatReader, http://wwwimages.adobe.com/content/dam/Adobe/en/legal/servicetou/Acrobat_com_Additional_TOU-en_US-20140618_1200.pdf , (бессрочно);
R STUDIO (open source), http://www.rstudio.com/ , (бессрочно);
Пакет статистического анализа R с Cairo, ggplot2, ggvis, pcaPP, pls, robustbase, rrcovHD, tidyr, UsingR, http://www.r-project.org/, (бессрочно).
Microsoft Office 2010 (Office 2010 Professional, № 4065231 от 08.12.2010), (бессрочно);
Microsoft Windows 7 (Windows 7 Professional, № 61834699 от 22.04.2013), (бессрочно);
Chrome (http://www.chromium.org/chromium-os/licenses), (бессрочно); 7-Zip (http://www.7-zip.org/license.txt), (бессрочно);
AcrobatReader (http://wwwimages.adobe.com/content/dam/Adobe/en/legal/servicetou/Acrobat_com_Additional_TOU-en_US-20140618_1200.pdf), (бессрочно);
ASTRA LINUX SPECIAL EDITION (https://astralinux.ru/products/astra-linux-special-edition/), (бессрочно);
LibreOffice (https://ru.libreoffice.org/), (бессрочно);
Веб-браузер Chromium (https://www.chromium.org/Home/), (бессрочно);
Антивирус Касперский (https://www.kaspersky.ru/), (до 23 июня 2024);
Архиватор Ark (https://apps.kde.org/ark/), (бессрочно);
Okular (https://okular.kde.org/ru/download/), (бессрочно);
Редактор изображений Gimp (https://www.gimp.org/), (бессрочно)
6.4. Перечень информационных справочных систем
Информационная справочная система:
СПС Консультант Плюс (инсталлированный ресурс АлтГУ или http://www.consultant.ru/).
Профессиональные базы данных:
1. Профессиональная база данных: электронная библиотечная система Алтайского государственного университета (http://elibrary.asu.ru/);
2. Профессиональная база данных: научная электронная библиотека elibrary (http://elibrary.ru)
3. Электронная база данных справочной правовой системы ГАРАНТ.

7. Материально-техническое обеспечение дисциплины

Аудитория Назначение Оборудование
208С лаборатория информационных технологий - компьютерный класс – учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); проведения групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации Учебная мебель на 15 посадочных мест; рабочее место преподавателя; доска магнитно-маркерная; компьютеры: марка HP модель ProOne 400 G2 20-in Non-Touch AiO - 15 единиц
Помещение для самостоятельной работы помещение для самостоятельной работы обучающихся Компьютеры, ноутбуки с подключением к информационно-телекоммуникационной сети «Интернет», доступом в электронную информационно-образовательную среду АлтГУ
Учебная аудитория для проведения занятий всех видов (дисциплинарной, междисциплинарной и модульной подготовки), групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации, курсового проекта (работы), проведения практики Стандартное оборудование (учебная мебель для обучающихся, рабочее место преподавателя, доска, мультимедийное оборудование стационарное или переносное)

8. Методические указания для обучающихся по освоению дисциплины

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