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

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

рабочая программа дисциплины
Закреплена за кафедройКафедра отечественной истории
Направление подготовки09.04.03. Прикладная информатика
ПрофильАнализ данных и разработка цифровых медиа
Форма обученияОчная
Общая трудоемкость3 ЗЕТ
Учебный план09_04_03_Прикладная информатика_АДРЦМ-2023
Часов по учебному плану 108
в том числе:
аудиторные занятия 32
самостоятельная работа 76
Виды контроля по семестрам
зачеты: 1

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

Курс (семестр) 1 (1) Итого
Недель 16
Вид занятий УПРПДУПРПД
Лекции 10 10 10 10
Лабораторные 22 22 22 22
Сам. работа 76 76 76 76
Итого 108 108 108 108

Программу составил(и):
д.и.н., Профессор, Владимиров В.Н.;Сливный Д.И.

Рецензент(ы):
к.и.н., Доцент, Неженцева Н.В.

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

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

составлена на основании учебного плана:
09.04.03 Прикладная информатика
утвержденного учёным советом вуза от 26.06.2023 протокол № 4.

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

Протокол от 30.06.2023 г. № 9
Срок действия программы: 2023-2024 уч. г.

Заведующий кафедрой
Демчик Евгения Валентиновна


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

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

Кафедра отечественной истории

Протокол от 30.06.2023 г. № 9
Заведующий кафедрой Демчик Евгения Валентиновна


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

1.1.формирование у студентов знаний теоретических основ, практических навыков и умений использования языков программирования Python и R, владение базовым набором компетенций в области программирования и анализа дынных.

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

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

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

ОПК-1Способен самостоятельно приобретать, развивать и применять математические, естественнонаучные, социально-экономические и профессиональные знания для решения нестандартных задач, в том числе в новой или незнакомой среде и в междисциплинарном контексте;
ОПК-1.1 Знает математические, естественнонаучные и социально-экономические методы для решения задач в профессиональной деятельности
ОПК-1.2 Умеет решать нестандартные профессиональные задачи с применением математических, естественнонаучных социально-экономических и профессиональных знаний
ОПК-1.3 Способен самостоятельно применять математические, естественнонаучные, социально-экономические и профессиональные знания для решения задач профессиональной деятельности в междисциплинарном контексте
ОПК-2Способен разрабатывать оригинальные алгоритмы и программные средства, в том числе с использованием современных интеллектуальных технологий, для решения профессиональных задач;
ОПК-2.1 Знает современные интеллектуальные технологии
ОПК-2.2 Умеет обосновывать выбор современных интеллектуальных технологий и программной среды при разработке оригинальных программных средств для решения профессиональных задач
ОПК-2.3 Владеет опытом разработки оригинальных алгоритмов и программных средств, в том числе с использованием современных интеллектуальных технологий, для решения профессиональных задач
ПК-1Способен анализировать и визуализировать данные в гуманитарных науках на основе современных методов и инструментальных средств прикладнои? информатики в рамках Data Science
ПК-1.1 Знает способы анализа гуманитарных данных в рамках Data Science
ПК-1.2 Умеет проводить анализ гуманитарных данных в рамках Data Science
ПК-1.3 Владеет навыками визуализации гуманитарных данных в рамках Data Science
В результате освоения дисциплины обучающийся должен
3.1.Знать:
3.1.1.– методы анализа данных с использованием Python и R
3.2.Уметь:
3.2.1.– использовать текст для создания структуры
– создавать код программы на языке Python;
– решать прикладные задачи с применением условных конструкций и циклов;
– писать функции на Python и тестировать их;
– выполнять операции с массивами;
– выполнять обработку табличных данных средствами Python;
– строить графики математических функций и визуализировать данные в Python;
3.3.Иметь навыки и (или) опыт деятельности (владеть):
3.3.1.– навыки программирования;
– навыки анализа данных

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

Код занятия Наименование разделов и тем Вид занятия Семестр Часов Компетенции Литература
Раздел 1. Анализ данных на Python и R
1.1. Введение в программирование. Ввод, обработка, вывод данных. Python и R Лекции 1 2 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2
1.2. Установка языка Python, настройка. Организация работы в среде R. Программирование на Python: Объекты и Структуры Данных в Python; Операторы Сравнения в Python; Операторы Python; Методы и Функции Лабораторные 1 4 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2
1.3. Этапы работ по машинному обучению Библиотеки: NumPy и Pandas Лекции 1 2 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2
1.4. Программирование на Python и R: Обзор раздела NumPy и Pandas Лабораторные 1 4 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2
1.5. Визуализация данных, библиотеки: Matplotlib и Seaborn Лекции 1 2 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2
1.6. Программирование на Python и R: Обзор раздела Matplotlib и Seaborn Лабораторные 1 4 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2
1.7. Машинное обучение: Линейная Регрессия; Полиномиальная регрессия; Регуляризация. Библиотека Scikit-Learn Конструирование признаков (Feature Engineering) и подготовка данных Лекции 1 2 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2
1.8. Программирование на Python и R: Библиотека Scikit-Learn. Линейная, полиномиальная регрессия. Подготовка данных. Лабораторные 1 4 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2
1.9. Кросс-валидация. Логистическая регрессия. Метода k-ближайших соседей Лекции 1 2 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2
1.10. Программирование на Python и R: Кросс-валидация. Логистическая регрессия. Лабораторные 1 4 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2
1.11. Программирование на Python и R: Метода k-ближайших соседей Лабораторные 1 2 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2
1.12. Изучение литературы по курсу. Подготовка к зачету Сам. работа 1 76 ОПК-2.1, ОПК-2.2, ОПК-2.3, ОПК-1.1, ОПК-1.2, ОПК-1.3 Л1.3, Л1.1, Л1.2

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

5.1. Контрольные вопросы и задания для проведения текущего контроля и промежуточной аттестации по итогам освоения дисциплины
ОЦЕНКА СФОРМИРОВАННОСТИ КОМПЕТЕНЦИИ ОПК-1: Способен самостоятельно приобретать, развивать и применять математические, естественнонаучные, социально-экономические и профессиональные знания для решения нестандартных задач, в том числе в новой или незнакомой среде и в междисциплинарном контексте

ПРИМЕРЫ ЗАДАНИЙ ЗАКРЫТОГО ТИПА:
1. Какие языки программирования используются для анализа данных?
a) Python и C++
b) R и Java
c) Python и R
d) Matlab и Perl

Ответ: c) Python и R

2. Какой оператор используется для присваивания значения переменной в Python?
a) =
b) ==
c) ===
d) =>

Ответ: a) =

3. Какая библиотека в Python обеспечивает инструменты для работы с большими наборами данных?
a) Pandas
b) Numpy
c) Scikit-learn
d) Matplotlib

Ответ: a) Pandas

4. Какой тип данных в R используется для хранения таблиц с различными типами данных?
a) Vector
b) Matrix
c) Data Frame
d) List

Ответ: c) Data Frame

5. Какой пакет в R используется для создания графиков и визуализации данных?
a) ggplot2
b) dplyr
c) tidyr
d) lubridate

Ответ: a) ggplot2

6. Каким методом в Python можно удалить дублирующиеся значения из набора данных?
a) drop_duplicates()
b) remove_duplicates()
c) delete_duplicates()
d) clear_duplicates()

Ответ: a) drop_duplicates()

7. Какой метод в Python используется для объединения нескольких DataFrame по общим столбцам?
a) merge()
b) concat()
c) join()
d) combine()

Ответ: a) merge()

8. Какая функция в R используется для чтения данных из CSV файла?
a) read.csv()
b) read.table()
c) read_excel()
d) read.json()

Ответ: a) read.csv()

9. Какой метод в Python используется для построения графиков из DataFrame с использованием библиотеки Matplotlib?
a) plot()
b) scatter()
c) hist()
d) bar()

Ответ: a) plot()

10. Какая функция в R используется для преобразования данных в фактор?
a) as.character()
b) as.numeric()
c) as.factor()
d) as.integer()

Ответ: c) as.factor()

11. Каким методом в Python можно применить функцию к каждому элементу столбца DataFrame?
a) apply()
b) map()
c) applymap()
d) transform()

Ответ: a) apply()

12. Какая функция в R используется для решения линейных моделей?
a) lm()
b) glm()
c) lme4()
d) survival()

Ответ: a) lm()

13. Что такое среднеквадратическая ошибка (MSE) в контексте оценки моделей анализа данных?
a) Мера расхождения прогнозируемых значений от фактических значений
b) Стандартное отклонение прогнозируемых значений
c) Среднее значение прогнозируемых и фактических значений
d) Количество ошибок первого и второго рода

Ответ: a) Мера расхождения прогнозируемых значений от фактических значений

14. Каким методом в Python можно применить стандартизацию данных?
a) StandardScaler()
b) MinMaxScaler()
c) Normalizer()
d) RobustScaler()

Ответ: a) StandardScaler()

15. Каким методом в R можно привести данные к стандартному нормальному распределению?
a) scale()
b) normalize()
c) standardize()
d) zscore()

Ответ: a) scale()

ПРИМЕРЫ ЗАДАНИЙ ОТКРЫТОГО ТИПА:
1. Какой метод в Python используется для разделения данных на обучающую и тестовую выборки?
Ответ: train_test_split()

2. Какая метрика в Python используется для оценки качества классификационных моделей?
Ответ: AUC-ROC

3. Какая функция в R используется для кластеризации данных методом k-средних?
Ответ: kmeans()

4. Каким методом в Python можно улучшить обобщающую способность модели машинного обучения?
Ответ: регуляризация

5. Какой метод в Python используется для поиска наилучших параметров модели машинного обучения?
Ответ: GridSearchCV()

6. Какая функция в R используется для сохранения обученной модели в файл?
Ответ: save()

7. Что такое регрессия в контексте анализа данных?
Ответ: Метод для построения прогнозных моделей

8. Какой метод в Python используется для оценки важности факторов в модели машинного обучения?
Ответ: FeatureImportance()

9. Какая метрика в Python используется для оценки качества регрессионных моделей?
Ответ: MSE

10. Какая функция в R используется для выполнения операций над текстовыми данными?
Ответ: strsplit()

11. Каким методом в Python можно удалить пропущенные значения из набора данных?
Ответ: dropna()

12. Какой классификатор в Python основан на принципе максимальной энтропии?
Ответ: Logistic Regression

13. Какой пакет в R используется для работы с текстовыми данными и выполнения операций NLP?
Ответ: tm

14. Какой метод в Python используется для извлечения ключевых слов из текста?
Ответ: TF-IDF

15. Какой алгоритм в Python используется для классификации на основе деревьев решений?
Ответ: Decision Tree

16. Какая функция в R используется для вычисления корреляции между двумя переменными?
Ответ: cor()

17. Что такое обучение с подкреплением в контексте машинного обучения?
Ответ: Метод для обучения алгоритма на основе отклика на действия

18. Какой метод в Python используется для выполнения снижения размерности данных?
Ответ: PCA

19. Какой пакет в R используется для работы с временными рядами и выполнения прогнозирования?
Ответ: tseries

20. Какой алгоритм в Python используется для кластеризации с неизвестным числом кластеров?
Ответ: DBSCAN

ОЦЕНКА СФОРМИРОВАННОСТИ КОМПЕТЕНЦИИ ОПК-2: Способен разрабатывать оригинальные алгоритмы и программные средства, в том числе с использованием современных интеллектуальных технологий, для решения профессиональных задач

ПРИМЕРЫ ЗАДАНИЙ ЗАКРЫТОГО ТИПА:

1. Какая функция в Python используется для чтения данных из CSV файла?
a) read_csv()
b) load_csv()
c) import_csv()
d) open_csv()
Ответ: a) read_csv()

2. Какой оператор в R используется для объединения двух или более векторов в один?
a) merge()
b) join()
c) concat()
d) c()
Ответ: d) c()

3. Какой метрикой в Python измеряется расстояние между двумя точками в 3D пространстве?
a) manhattan_distance()
b) euclidean_distance()
c) chebyshev_distance()
d) minkowski_distance()
Ответ: b) euclidean_distance()

4. Какая функция в R используется для создания случайной выборки из вектора?
a) sample()
b) random_sample()
c) random_select()
d) random_vector()
Ответ: a) sample()

5. Какая библиотека в Python используется для выполнения временных рядов и статистического анализа данных?
a) numpy
b) pandas
c) matplotlib
d) statsmodels
Ответ: d) statsmodels

6. Какая функция в R используется для преобразования числовых значений в категориальные переменные?
a) factor()
b) categorical()
c) to_categorical()
d) convert_category()
Ответ: a) factor()

7. Какой алгоритм в Python используется для выполнения кластеризации методом k-средних?
a) KMeans
b) DBSCAN
c) AgglomerativeClustering
d) SpectralClustering
Ответ: a) KMeans

8. Какой пакет в R используется для выполнения наборных операций и манипуляций с данными?
a) dplyr
b) reshape2
c) tidyr
d) plyr
Ответ: a) dplyr

9. Какая функция в Python используется для выполнения форматированного вывода текста?
a) print_formatted()
b) format()
c) display()
d) pprint()
Ответ: b) format()

10. Какая функция в R используется для чтения данных из Excel файла?
a) read_csv()
b) read_excel()
c) load_excel()
d) import_excel()
Ответ: b) read_excel()

11. Какой пакет в Python используется для выполнения регулярных выражений?
a) regex
b) re
c) regexpy
d) regexplib
Ответ: b) re

12. Какая функция в R используется для определения количества уникальных значений в векторе?
a) count_unique()
b) unique_count()
c) unique()
d) length(unique())
Ответ: d) length(unique())

13. Какой метод в Python используется для преобразования текстовых данных в числовые значения?
a) text_to_numeric()
b) str_to_num()
c) to_numeric()
d) convert_numeric()
Ответ: c) to_numeric()

14. Какой пакет в R используется для выполнения графической визуализации данных?
a) matplotlib
b) ggplot2
c) seaborn
d) plotly
Ответ: b) ggplot2

ПРИМЕРЫ ЗАДАНИЙ ОТКРЫТОГО ТИПА:
1. Какая функция в R используется для выполнения сортировки данных по определенному столбцу?
Ответ: arrange()

2. Какой пакет в Python используется для выполнения статистического анализа данных?
Ответ: scipy

3. Какая функция в R используется для выполнения удаления дубликатов из данных?
Ответ: drop_duplicates()

4. Какой алгоритм в Python используется для выполнения рекомендаций на основе коллаборативной фильтрации?
Ответ: KNN

5. Какая библиотека в R используется для выполнения машинного обучения?
Ответ: caret

6. Какая функция в Python используется для выполнения операций над датами и временем?
Ответ: datetime()

7. Какой пакет в R используется для выполнения временного ряда и прогнозирования?
Ответ: prophet

8. Какой алгоритм в Python используется для выполнения построения деревьев принятия решений?
Ответ: DecisionTreeClassifier

9. Какая функция в R используется для выполнения подбора оптимальных параметров модели?
Ответ: tune()

10. Какой пакет в Python используется для выполнения извлечения признаков из текстовых данных?
Ответ: nltk

11. Какая функция в R используется для выполнения проверки статистической значимости различий между группами?
Ответ: t.test()

12. Какой алгоритм в Python используется для выполнения кластеризации методом DBSCAN?
Ответ: DBSCAN

13. Какая функция в R используется для выполнения изменения размерности данных?
Ответ: reshape()

14. Какой пакет в Python используется для выполнения графической визуализации данных?
Ответ: matplotlib

15. Какая функция в R используется для выполнения выполнения преобразования текста в нижний регистр?
Ответ: tolower()

16. Какой алгоритм в Python используется для выполнения логистической регрессии?
Ответ: LogisticRegression

17. Какая библиотека в R используется для выполнения визуализации графов?
Ответ: igraph

18. Какая функция в Python используется для выполнения агрегации данных?
Ответ: aggregate()

19. Какой пакет в R используется для выполнения выполнения нейронных сетей?
Ответ: keras

20. Какая функция в Python используется для выполнения визуализации данных?
Ответ: plot()

ОЦЕНКА СФОРМИРОВАННОСТИ КОМПЕТЕНЦИИ ПК-1: Способен анализировать и визуализировать данные в гуманитарных науках на основе современных методов и инструментальных средств прикладнои информатики в рамках Data Science

ПРИМЕРЫ ЗАДАНИЙ ЗАКРЫТОГО ТИПА:
1. Какой модуль нужно импортировать в Python, чтобы работать с анализом данных?
a) numpy
b) pandas
c) matplotlib
d) seaborn
Ответ: b) pandas

2. Как называется пакет в R для работы с анализом данных?
a) dplyr
b) tidyr
c) ggplot2
d) readr
Ответ: a) dplyr

3. Какая функция в Python используется для чтения данных из файла в таблицу?
a) read_csv()
b) load_data()
c) open_file()
d) import_data()
Ответ: a) read_csv()

4. Какая функция в R используется для чтения данных из файла в таблицу?
a) read_csv()
b) import_data()
c) load_data()
d) read.table()
Ответ: d) read.table()

5. Какой метод в Python используется для вывода первых нескольких строк таблицы?
a) show()
b) view()
c) head()
d) display()
Ответ: c) head()

6. Какая функция в R используется для вывода первых нескольких строк таблицы?
a) show()
b) view()
c) head()
d) display()
Ответ: c) head()

7. Как функция в Python используется для подсчета базовых статистических характеристик (среднее, медиана, стандартное отклонение и т.д.) в таблице?
a) summary()
b) stats()
c) describe()
d) mean()
Ответ: c) describe()

8. Какая функция в R используется для подсчета базовых статистических характеристик (среднее, медиана, стандартное отклонение и т.д.) в таблице?
a) summary()
b) stats()
c) describe()
d) mean()
Ответ: a) summary()

9. Какой метод в Python используется для поиска уникальных значений в столбце таблицы?
a) unique()
b) distinct()
c) unique_values()
d) find_unique()
Ответ: a) unique()

10. Какая функция в R используется для поиска уникальных значений в столбце таблицы?
a) unique()
b) distinct()
c) unique_values()
d) find_unique()
Ответ: a) unique()

11. Какой метод в Python используется для сортировки таблицы по столбцу?
a) sort_by()
b) order_by()
c) sort_values()
d) arrange()
Ответ: c) sort_values()

12. Какая функция в R используется для сортировки таблицы по столбцу?
a) sort_by()
b) order_by()
c) sort_values()
d) arrange()
Ответ: d) arrange()

13. Какой метод в Python используется для фильтрации таблицы по определенному условию?
a) filter()
b) subset()
c) where()
d) select()
Ответ: a) filter()

14. Какая функция в R используется для фильтрации таблицы по определенному условию?
a) filter()
b) subset()
c) where()
d) select()
Ответ: a) filter()

15. Какой метод в Python используется для группировки данных в таблице?
a) groupby()
b) group_values()
c) group_data()
d) aggregate()
Ответ: a) groupby()

ПРИМЕРЫ ЗАДАНИЙ ОТКРЫТОГО ТИПА:
1. Какая функция в R используется для группировки данных в таблице?
Ответ: aggregate()

2. Какой метод в Python используется для преобразования столбца с датой и временем в специальный тип данных?
Ответ: pd.to_datetime()

3. Какая функция в R используется для преобразования столбца с датой и временем в специальный тип данных?
Ответ: as.POSIXct()

4. Какой метод в Python используется для вычисления нового столбца на основе существующих столбцов?
Ответ: apply()

5. Какая функция в R используется для вычисления нового столбца на основе существующих столбцов?
Ответ: mutate()

6. Какой метод в Python используется для замены значений в таблице?
Ответ: replace()

7. Какая функция в R используется для замены значений в таблице?
Ответ: replace()

8. Какой метод в Python используется для объединения двух таблиц по ключу?
Ответ: merge()

9. Какая функция в R используется для объединения двух таблиц по ключу?
Ответ: merge()

10. Какой метод в Python используется для решения пропущенных значений в таблице?
Ответ: fillna()

11. Какая функция в R используется для решения пропущенных значений в таблице?
Ответ: na.omit()

12. Какой метод в Python используется для создания графиков визуализации данных?
Ответ: plot()

13. Какая функция в R используется для создания графиков визуализации данных?
Ответ: plot()

14. Какой метод в Python используется для создания столбчатой диаграммы?
Ответ: plot.bar()

15. Какая функция в R используется для создания столбчатой диаграммы?
Ответ: barplot()

16. Какая функция в R используется для создания круговой диаграммы?
Ответ: pie()

17. Какой метод pandas используется для создания гистограммы?
Ответ: plot.hist()

18. Какая функция в R используется для создания гистограммы?
Ответ: hist()

19. Какой метод pandas используется для создания линейного графика?
Ответ: plot.line()

20. Какая функция в R используется для создания линейного графика?
Ответ: plot()
5.2. Темы письменных работ для проведения текущего контроля (эссе, рефераты, курсовые работы и др.)
Не предусмотрено
5.3. Фонд оценочных средств для проведения промежуточной аттестации
Промежуточная аттестация заключается в проведении в конце 1,2,5,6 и 7 семестров зачета по всему изученному курсу в данный момент времени.
Тест размещен в разделе «Промежуточная аттестация по дисциплине» онлайн-курса на образовательном портале «Цифровой университет АлтГУ».
Количество заданий в контрольно-измерительном материале (тесте) для промежуточной аттестации, составляет 30 вопросов.
КРИТЕРИИ ОЦЕНИВАНИЯ: Каждое задание оценивается 1 баллом. Оценивание КИМ в целом:
«зачтено» – верно выполнено более 50 % заданий;
«незачтено» – верно выполнено 50 % и менее 50 % заданий.

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

6.1. Рекомендуемая литература
6.1.1. Основная литература
Авторы Заглавие Издательство, год Эл. адрес
Л1.1 Волкова В.М. Программные системы статистического анализа. Обнаружение закономерностей в данных с использованием системы R и языка Python: учебное пособие Издательство НГТУ, 2017 www.studentlibrary.ru
Л1.2 Шарден Б., Массарон Л., Боскетти А. Крупномасштабное машинное обучение вместе с Python: Учебные пособия Издательство "ДМК Пресс", 2018 //ЭБС издательства «Лань» e.lanbook.com
Л1.3 Федоров Д.Ю. ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ PYTHON. Учебное пособие для прикладного бакалавриата: Гриф УМО ВО М.:Издательство Юрайт, 2018 biblio-online.ru
6.2. Перечень ресурсов информационно-телекоммуникационной сети "Интернет"
Название Эл. адрес
Э1 Электронная библиотечная система Алтайского государственного университета elibrary.asu.ru
Э2 Научная электронная библиотека elibrary elibrary.ru
Э3 Курс в Moodle "Анализ данных на Python и R" portal.edu.asu.ru
6.3. Перечень программного обеспечения
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/), (бессрочно)
Python 3.6
Язык R (https://cloud.r-project.org)
RStudio (https://www.rstudio.com/download)
6.4. Перечень информационных справочных систем
Электронная база данных «Scopus» (http://www.scopus.com)
Электронная библиотечная система Алтайского государственного университета (http://elibrary.asu.ru/).
Научная электронная библиотека elibrary (http://elibrary.ru).

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

Аудитория Назначение Оборудование
107Л лаборатория информационных технологий - компьютерный класс - учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); проведения групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации Учебная мебель на 18 посадочных мест; компьютеры: марка HP, модель ProOne 400 - 18 единиц; проектор: марка SMART, модель UF70 - 1 единица; интерактивная доска: марка SMART Board модель SMB680 - 1 единица
Помещение для самостоятельной работы помещение для самостоятельной работы обучающихся Компьютеры, ноутбуки с подключением к информационно-телекоммуникационной сети «Интернет», доступом в электронную информационно-образовательную среду АлтГУ
311аЛ учебный кабинет для индивидуального консультирования и психотерапии - учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); проведения групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации Учебная мебель на 7 посадочных мест; рабочее место преподавателя

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

Целью настоящего курса является не только обучить студентов работе в Python, но и основам программирования вообще, поскольку наиболее базовые принципы являются схожими почти во всех языках программирования. При решении ряда задач исследователи часто сталкиваются с необходимостью работать с большими массивами данных. Для того чтобы эффективно работать с разными типами данных, необходимо знать основы программирования, так как именно навыки программирования позволяют автоматически собирать необходимую информацию за достаточно быстрое время. В качестве языка программирования в данном курсе используется Python. Язык Python на данный момент является очень популярным, в том числе в исследованиях в рамках социальных наук.
В рамках учебной дисциплины студенты знакомятся с циклом разработки программ, переменными, типами данных и простыми программами, которые пишутся как последовательности структур. Обучаемый учится писать программы, способные считывать данные с клавиатуры, выполнять математические операции и выводить результаты на экран. Кроме того, он знакомится с такими инструментами разработки программ, как псевдокод и блок-схемы.
Обучаемый знакомится с операторами сравнения и булевыми выражениями и учится управлять потоком выполнения программы при помощи управляющих структур. Рассматриваются счетчики, накопители, нарастающие итоги и сигнальные метки, а также приемы написания циклов проверки допустимости вводимых данных. Рассматриваются преимущества использования функций в плане модуляризации программ, и обсуждается нисходящий подход к их разработке. Затем обучаемый учится передавать аргументы в функции. Приобретаются навыки написания и вызова собственных функций и применения модулей для упорядочения функций.
В рамках учебной дисциплины большое внимание уделяется классам и объектно-ориентированному программированию. Раскрываются фундаментальные понятия классов и объектов. Обсуждается тема атрибутов, методов, инкапсуляции и сокрытия данных, а также рассматриваются функции инициализации, методы-получатели и методы-мутаторы. Изучаются понятия наследования и полиморфизма.
Рассматриваются рекурсия и ее применение в решении задач. Представлена визуальная трассировка рекурсивных вызовов и рассмотрены рекурсивные приложения. Показаны рекурсивные алгоритмы для ряда задач, таких как нахождение факториалов, нахождение наибольшего общего знаменателя, суммирование диапазона значений.
Рассматриваются основные аспекты разработки приложения с графическим интерфейсом пользователя на языке Python. Изучаются фундаментальные элементы визуального интерфейса - виджеты, метки, кнопки, поля ввода данных, переключатели, флаговые кнопки и диалоговые окна, события и методы программирования функции обратного вызова.
Даются основы байесовской статистики и происходит знакомство с некоторыми инструментами из байесовского арсенала. Рассматриваются следующие темы: статистическое моделирование, вероятность и неопределенность, теорема Байеса и статистический вывод, статистический вывод с одним параметром и классическая задача о подбрасывании монеты, выбор априорного распределения вероятностей, взаимодействие с байесовским анализом.
Студенты получают представлении об использовании языка R для импорта, упорядочивания, преобразования, визуализации, моделирования и обмана данных. Узнают о генерации знаний на основе подготовленных данных при помощи визуализации и моделирования.