Методы информационного анализа текста (syllabus) 2025/Урок 2
Материал из Поле цифровой дидактики
# ============================================================================
# ЗАНЯТИЕ: Анализ временных рядов в R с использованием SmallGroupDiscuss
# Автор: Евгений Патаракин
# Дата: ноябрь 2025
# ============================================================================
# ====================
# 1. НАСТРОЙКА РАБОЧЕЙ СРЕДЫ
# ====================
# Показать текущую рабочую директорию
getwd()
library(tidyverse)
library(ggplot2)
library(forecast)
library(nlstools)
# Посмотреть содержимое текущей директории
list.files()
data <- read_csv2("sm_discussion/discussion01.csv")
head(data)
str(data)
data <- data %>% select(-placeholder)
summary_stats <- data %>%
select(-Time) %>%
summarise_all(list(mean = mean, sd = sd, min = min, max = max))
print(summary_stats)
# Визуализация
# Переводим данные в формат long для ggplot
data_long <- data %>%
pivot_longer(-Time, names_to = "Participant", values_to = "Activity")
# График активности по времени
ggplot(data_long, aes(x = Time, y = Activity, color = Participant)) +
geom_line() +
labs(title = "Временные ряды активности участников",
x = "Время (тик)", y = "Активность") +
theme_minimal()
# Временной ряд одного участника
participant_ts <- ts(data$Эльза)
# Построение графика автокорреляции
acf(participant_ts, main = "Автокорреляция активности Эльзы")
tick <- data$Time
activity <- data$Эльза
model <- lm(activity ~ tick)
summary(model)
# График с регрессией
ggplot(data, aes(x = Time, y = Эльза)) +
geom_point() +
geom_smooth(method = "lm", col = "red") +
labs(title = "Линейный тренд активности Эльзы",
x = "Время", y = "Активность")
### ANOVA
# ANOVA по активности в конце серии (последний тик)
final_tick <- tail(data$Time, 1)
final_activity <- data %>% filter(Time == final_tick) %>% select(-Time) %>%
pivot_longer(everything(), names_to = "Participant", values_to = "Activity")
anova_result <- aov(Activity ~ Participant, data = final_activity)
summary(anova_result)
# ====================================================================
