library(readr)
## Warning: пакет 'readr' был собран под R версии 4.5.2
library(haven)
## Warning: пакет 'haven' был собран под R версии 4.5.2
clima = read_sav(file.choose())
chisq.test(clima$V21, clima$education)
##
## Pearson's Chi-squared test
##
## data: clima$V21 and clima$education
## X-squared = 9.2574, df = 3, p-value = 0.02606
p-value (0.02606) < 0.05, следовательно, нулевая гипотеза отвергается. Есть статистически значимая связь между уровнем образования и уверенностью в нахождении заработка.
V21: 1 = Полностью уверен, 2 = Скорее уверен, 3 = Не очень уверен, 4 = Совсем не уверен education: 1 = Нет высшего, 2 = Высшее
library(vcd)
## Warning: пакет 'vcd' был собран под R версии 4.5.3
## Загрузка требуемого пакета: grid
options(OutDec = ",")
clima$V21_label <- factor(clima$V21,
levels = c(1, 2, 3, 4),
labels = c("Полностью уверен",
"Скорее уверен",
"Не очень уверен",
"Совсем не уверен"))
clima$education_label <- factor(clima$education,
levels = c(1, 2),
labels = c("Нет высшего", "Высшее"))
#Создаем таблицу сопряженности с новыми метками
M <- table(clima$V21_label, clima$education_label)
# Подписываем измерения таблицы
names(dimnames(M)) <- c("Уверенность в нахождении заработка", "Образование")
# Проверяем таблицу (теперь в ней текст, а не цифры)
print(M)
## Образование
## Уверенность в нахождении заработка Нет высшего Высшее
## Полностью уверен 73 82
## Скорее уверен 73 92
## Не очень уверен 74 48
## Совсем не уверен 67 55
# Расчет процентов для подписей в ячейках
# Проценты считаем по столбцам (margin = 2), чтобы видеть распределение внутри каждой группы образования
labs <- round(prop.table(M, margin = 2) * 100, 1)
# Превращаем в матрицу с символом процента
labs <- matrix(paste(labs, "%", sep = ""), nrow = nrow(labs), dimnames = dimnames(labs))
# Построение мозаичной диаграммы ---
# Устанавливаем параметры для лучшего отображения длинных подписей
par(mar = c(4, 4, 4, 8)) # Увеличиваем правое поле для легенды
mosaic(M,
pop = FALSE, # Убираем таблицу популяции
shade = TRUE, # Подсвечиваем значимые отклонения
direction = "v", # Вертикальное разделение сначала по образованию
main = "Уверенность в трудоустройстве в зависимости от образования",
labeling_args = list(
# Поворачиваем подписи уровней уверенности, чтобы они не налезали друг на друга
rot_labels = c(30, 0, 0, 30),
just_labels = "left",
offset_labels = c(0, 0, 0, 1)
))
#Добавлениепроцентов внутрь ячеек
# Функция для размещения текста в центре каждой ячейки
labeling_cells(text = labs,
margin = 0,
gp_text = gpar(cex = 1.2, fontface = "bold", col = "white"))(M)
par(mar = c(5, 4, 4, 2) + 0.1)
Респонденты с высшим образованием значимо чаще сообщали о полной или частичной уверенности в возможности найти новую работу
assoc(M,
shade = TRUE,
main = "Ассоциативный график: Отклонения от ожидаемой частоты",
labeling = labeling_border(rot_labels = c(30, 0, 0, 0)))
Размер блока отражает частоту ответов в каждой категории. люди с высшим
образованием более уверены в нахождении работы.
wilcox.test(V21~education, data = clima)
##
## Wilcoxon rank sum test with continuity correction
##
## data: V21 by education
## W = 43706, p-value = 0,03438
## alternative hypothesis: true location shift is not equal to 0
U-критерий Манна-Уитни
p-value = 0.034 < 0.05 → нулевая гипотеза об отсутствии различий отклоняется.
Между группами “Нет высшего” и “Высшее” существуют статистически значимые различия в оценке уверенности трудоустройства.