rm(list = ls())
date()
## [1] "Sun Jan 12 01:05:47 2025"
sessionInfo()
## R version 4.4.2 (2024-10-31)
## Platform: x86_64-apple-darwin20
## Running under: macOS Ventura 13.7.2
##
## Matrix products: default
## BLAS: /Library/Frameworks/R.framework/Versions/4.4-x86_64/Resources/lib/libRblas.0.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/4.4-x86_64/Resources/lib/libRlapack.dylib; LAPACK version 3.12.0
##
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
##
## time zone: Europe/Moscow
## tzcode source: internal
##
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base
##
## loaded via a namespace (and not attached):
## [1] digest_0.6.36 R6_2.5.1 fastmap_1.2.0 xfun_0.46
## [5] cachem_1.1.0 knitr_1.48 htmltools_0.5.8.1 rmarkdown_2.27
## [9] lifecycle_1.0.4 cli_3.6.3 sass_0.4.9 jquerylib_0.1.4
## [13] compiler_4.4.2 rstudioapi_0.16.0 tools_4.4.2 evaluate_0.24.0
## [17] bslib_0.7.0 yaml_2.3.9 rlang_1.1.4 jsonlite_1.8.8
library(knitr)
library(ggplot2)
library(dplyr)
library(tidyr)
library(psych)
Общие данные
SchoolType − школа - спец 2, сош - 1
subject_id − номер
School − школа
Class − класс
Gender − пол (1-м,2-д)
Age − возраст
Шкала психологического благополучия Рифф (W)
WellBeing − Психологическое благополучие
W_PositiveRel − Позитивные отношения
W_Autonomy − Автономия
W_EnvMastery − Управление средой
W_PersGrowth − Личностный рост
W_PurposeLife − Цели в жизни
W_SelfAcceptance − Самопринятие
Субъективное благополучие (SW)
SubWellBeing − Субъективное благополучие
SW_Napryazhennost − Напряженность и чувствительность
SW_PsyEmocionalnyj − Признаки, сопровождающие основную
психоэмоциональную симптоматику
SW_Nastroenie − Изменения настроения
SW_SocOkruzh − Значимость социального окружения
SW_Zdorove − Самооценка здоровья
SW_UdovletvDeyateln − Степень удовлетворенности повседневной
деятельностью
Психологическая безопасность (PB)
PB_1 - 1. Как Вы думаете, требует ли обучение в Вашей школе постоянного
совершенствования Ваших возможностей? PB_2 - 2 Оцените свою школу PB_3 -
3 Если бы переехали в другой район города, стали бы ездить на учебу в
свою школу? PB_4a - 4а 4. Считаете ли Вы, что обучение в школе помогает
развитию: a) Интеллектуальных способностей PB_4b - 4б b) Жизненных
умений и навыков PB_5 - 5 5. Если бы пришлось выбирать из всех школ
района, выбрали ли бы Вы свою? PB_6 - 6 Какое настроение чаще всего
бывает у Вас в школе? PB_7a - 07аВзаимоотношения с учителями PB_7b -
07бВзаимоотношения с учениками PB_7c - 07в Возможность высказать свою
точку зрения PB_7d - 07г Уважительное отношение к себе PB_7e - 07д
Сохранение личного достоинства PB_7f - 07.е Возможность обратиться за
помощью PB_7g - 07ж Возможность проявлять инициативу, активность PB_7h -
07з Учет личных проблем и затруднений PB_8 - 8 8. Считает ли Вы свое
обучение в школе интересным? PB_9-1a - 9.1а2. Защищенность от:Публичного
унижения/оскорблений одноклассниками PB_9-1b - 9.1б Публичного
унижения/оскорблений учителями PB_9-2a - 9.2а Угроз одноклассников
PB_9-2b - 9.2б Угроз учителей PB_9-3a - 9.3а Того, что заставят делать
что-либо против Вашего желания одноклассники PB_9-3b - 9.3б 4. Того, что
заставят делать что-либо против Вашего желания учителя PB_9-4a - 9.4а
Игнорирования одноклассниками PB_9-4b - 9.4б Игнорирования учителями
PB_9-5a - 9.5а Недоброжелательного отношения одноклассники PB_9-5b -
9.5б 6. Недоброжелательного отношения учителя PB_10 - 10 Предположим,
что по каким-то причинам Вы долго не могли посещать школу, вернулись бы
Вы на свое прежнее место учебы?
PB_Attitude - Отношение к образовательной среде
PB_Satisfaction - Удовлетворенность значимыми характеристиками
образовательной среды
PB_Security - Защищенность от психологического насилия во
взаимодействии
Опросник самоотношения (SO)
SO_S-GlobSamootnoshenie − Шкала S (глобальное самоотношение)
SO_I-Samouvazhenie − Шкала самоуважения (I)
SO_II-Autosimpatiya − Шкала аутосимпатии (II)
SO_III-OzhidOtnoshenie − Шкала ожидаемого отношения от других
(III)
SO_IV-Samointeres − Шкала самоинтересов (IV)
SO_1-Samouverennost − Шкала самоуверенности
SO_2-OtnoshenieDrugih − Шкала отношения других
SO_3-Samoprinyatie − Шкала самопринятия
SO_4-Samorukovodstvo − Шкала саморуководства
SO_5-Samoobvinenie − Шкала самообвинения
SO_6-Samointeres − Шкала самоинтереса
SO_7-Samoponimanie − Шкала самопонимания
Способы совладающего поведения (SP)
SP_Konfrontaciya − Конфронтация
SP_Distancirovanie − Дистанцирование
SP_Samokontrol − Самоконтроль
SP_PoiskCocPodderzhki − Поиск социальной поддержки
SP_PrinyatieOtvetstv − Принятие ответственности
SP_BegstvoIzbeganie − Бегство-избегание
SP_Planirovanie − Планирование решения проблемы
SP_PolPereocenka − Положительная переоценка
Тест жизнестойкости (ZhS)
ZhS_Vovlechennost − Вовлеченность
ZhS_Kontrol − Контроль
ZhS_PrinyatieRiska − Принятие риска
ZhS_ZHiznestojkost − Жизнестойкость
Стили познания (P)
P_AbstractConcept − Абстрактная концептуализация
P_Active Experim − Активное экспериментирование
P_ConcrExperien − Конкретный опыт
P_ReflectObserv − Рефлексивное наблюдение
Data <- read.delim2("../Data/Sosh+SpecSchool.tsv", na.strings = c("", "-"))
Data$Gender <- factor(Data$Gender, levels = c(1,2), labels = c("М", "Ж"), ordered = FALSE)
Data$SchoolType <- factor(Data$SchoolType, levels = c(1, 2), labels = c("SOSh", "Spec"), ordered = FALSE)
str(Data)
## 'data.frame': 584 obs. of 78 variables:
## $ SchoolType : Factor w/ 2 levels "SOSh","Spec": 2 2 2 2 2 2 2 2 2 2 ...
## $ subject_id : chr "115" "116" "117" "118" ...
## $ School : chr "225" "225" "225" "225" ...
## $ Class : chr "8Б" "8Б" "8Б" "8Б" ...
## $ Gender : Factor w/ 2 levels "М","Ж": 2 1 1 2 1 1 1 2 2 2 ...
## $ Age : int 14 14 15 14 14 15 15 14 14 14 ...
## $ WellBeing : int 342 178 264 369 325 422 291 324 341 317 ...
## $ W_PositiveRel : int 57 34 45 66 62 61 62 51 62 50 ...
## $ W_Autonomy : int 48 26 45 43 61 77 43 50 64 50 ...
## $ W_EnvMastery : int 43 40 40 54 39 73 46 51 42 43 ...
## $ W_PersGrowth : int 70 37 56 79 52 59 57 75 64 71 ...
## $ W_PurposeLife : int 66 27 47 67 57 80 54 57 48 53 ...
## $ W_SelfAcceptance : int 58 14 31 60 54 72 29 40 61 50 ...
## $ SubWellBeing : int 90 40 48 78 55 91 59 58 62 70 ...
## $ SW_Napryazhennost : int 11 11 13 14 8 10 13 9 8 13 ...
## $ SW_PsyEmocionalnyj : int 16 7 9 18 12 20 11 12 10 18 ...
## $ SW_Nastroenie : int 12 5 5 11 8 13 7 9 9 10 ...
## $ SW_SocOkruzh : int 21 10 12 16 11 18 16 9 12 12 ...
## $ SW_Zdorove : int 13 4 4 6 13 10 3 6 8 10 ...
## $ SW_UdovletvDeyateln : int 17 3 5 13 3 20 9 13 15 7 ...
## $ PB_1 : int 2 2 2 2 2 2 2 2 2 2 ...
## $ PB_2 : int 2 2 2 2 0 2 2 0 2 0 ...
## $ PB_3 : int 2 2 2 2 0 0 2 2 0 2 ...
## $ PB_4a : int 2 2 2 2 2 2 2 2 2 2 ...
## $ PB_4b : int 2 2 0 0 1 1 0 2 0 0 ...
## $ PB_5 : chr "0" "2" "2" "2" ...
## $ PB_6 : int 2 1 1 2 1 2 2 2 0 2 ...
## $ PB_7a : int 3 5 3 5 3 5 4 3 5 4 ...
## $ PB_7b : int 5 4 3 5 3 5 5 3 5 5 ...
## $ PB_7c : int 4 2 4 4 3 5 3 NA 4 5 ...
## $ PB_7d : int 4 4 4 4 2 5 3 2 3 5 ...
## $ PB_7e : chr "3" "5" "4" "4" ...
## $ PB_7f : chr "5" "2" "3" "4" ...
## $ PB_7g : chr "5" "5" "4" "4" ...
## $ PB_7h : int 5 3 3 3 3 5 5 4 5 4 ...
## $ PB_8 : int 2 0 2 2 0 2 2 2 2 2 ...
## $ PB_9.1a : int 4 3 4 4 3 4 4 4 5 4 ...
## $ PB_9.1b : int 5 5 4 5 3 5 5 4 5 4 ...
## $ PB_9.2a : int 3 4 4 5 4 4 4 3 5 4 ...
## $ PB_9.2b : int 2 1 3 4 1 4 5 4 4 4 ...
## $ PB_9.3a : int 3 2 4 5 3 2 5 4 5 4 ...
## $ PB_9.3b : int 4 3 4 5 3 4 3 2 5 4 ...
## $ PB_9.4a : int 5 5 4 5 3 5 3 5 5 4 ...
## $ PB_9.4b : int 5 4 4 5 1 4 3 5 4 4 ...
## $ PB_9.5a : int 5 1 3 5 3 4 3 2 4 4 ...
## $ PB_9.5b : int 4 2 4 5 4 2 3 4 5 4 ...
## $ PB_10 : int 1 2 2 2 2 0 1 0 2 0 ...
## $ PB_Attitude : int 6 6 5 8 1 5 7 5 6 7 ...
## $ PB_Satisfaction : num 4.3 3.8 3.5 4.3 2.8 5 4 2.6 4.25 4.5 ...
## $ PB_Security : num 3.7 3 3.8 4.8 2.8 3.8 3.8 3.7 4.7 4 ...
## $ SO_S.GlobSamootnoshenie: int 19 15 10 15 16 20 11 19 17 20 ...
## $ SO_I.Samouvazhenie : int 9 8 5 9 6 13 4 11 7 6 ...
## $ SO_II.Autosimpatiya : int 8 8 2 9 9 7 2 9 10 11 ...
## $ SO_III.OzhidOtnoshenie : int 7 7 3 8 9 8 5 7 8 10 ...
## $ SO_IV.Samointeres : int 7 4 4 4 6 8 5 6 7 8 ...
## $ SO_1.Samouverennost : int 4 6 3 5 6 5 1 3 3 5 ...
## $ SO_2.OtnoshenieDrugih : int 5 3 2 6 4 4 4 4 6 7 ...
## $ SO_3.Samoprinyatie : int 4 2 0 7 6 5 1 5 7 6 ...
## $ SO_4.Samorukovodstvo : int 5 4 2 5 1 5 4 4 5 4 ...
## $ SO_5.Samoobvinenie : int 4 4 6 4 6 5 8 2 6 4 ...
## $ SO_6.Samointeres : int 7 5 2 5 7 7 5 5 6 7 ...
## $ SO_7.Samoponimanie : int 3 1 2 1 1 3 2 6 3 2 ...
## $ SP_Konfrontaciya : num 50 61.1 77.8 33.3 61.1 50 44.4 61.1 44.4 50 ...
## $ SP_Distancirovanie : num 72.2 38.9 66.7 38.9 55.6 27.8 61.1 66.7 66.7 66.7 ...
## $ SP_Samokontrol : num 61.9 57.1 81 61.9 47.6 76.2 90.5 81 66.7 66.7 ...
## $ SP_PoiskCocPodderzhki : num 66.7 27.8 66.7 66.7 38.9 27.8 66.7 44.4 50 44.4 ...
## $ SP_PrinyatieOtvetstv : num 58.3 91.7 91.7 83.3 50 75 100 41.7 83.3 50 ...
## $ SP_BegstvoIzbeganie : num 54.2 75 62.5 25 54.2 29.2 37.5 45.8 62.5 62.5 ...
## $ SP_Planirovanie : num 88.9 50 44.4 55.6 44.4 77.8 77.8 66.7 66.7 44.4 ...
## $ SP_PolPereocenka : num 90.5 23.8 66.7 61.9 42.9 76.2 61.9 57.1 47.6 71.4 ...
## $ ZhS_Vovlechennost : int 37 13 15 33 22 37 26 37 22 25 ...
## $ ZhS_Kontrol : int 34 14 15 24 18 55 26 38 13 22 ...
## $ ZhS_PrinyatieRiska : int 16 4 10 18 13 20 11 19 12 12 ...
## $ ZHiznestojkost : int 87 31 40 75 53 112 63 94 47 59 ...
## $ P_AbstractConcept : int 32 32 32 31 25 34 36 23 26 26 ...
## $ P_Active.Experim : int 29 27 24 27 30 33 26 37 34 30 ...
## $ P_ConcrExperien : int 29 21 23 27 30 28 27 26 34 34 ...
## $ P_ReflectObserv : int 32 38 37 37 31 26 29 33 29 27 ...
save(Data, file = "Data.RData")
Проверка всех переменных
summary(Data)
## SchoolType subject_id School Class Gender
## SOSh:298 Length:584 Length:584 Length:584 М:307
## Spec:286 Class :character Class :character Class :character Ж:277
## Mode :character Mode :character Mode :character
##
##
##
##
## Age WellBeing W_PositiveRel W_Autonomy
## Min. :13.0 Min. :124.0 Min. :19.00 Min. : 19.00
## 1st Qu.:14.0 1st Qu.:317.0 1st Qu.:51.00 1st Qu.: 50.00
## Median :14.0 Median :353.0 Median :59.00 Median : 56.00
## Mean :14.7 Mean :349.6 Mean :59.28 Mean : 56.53
## 3rd Qu.:16.0 3rd Qu.:383.0 3rd Qu.:68.00 3rd Qu.: 63.00
## Max. :17.0 Max. :481.0 Max. :84.00 Max. :101.00
##
## W_EnvMastery W_PersGrowth W_PurposeLife W_SelfAcceptance
## Min. :27.00 Min. :22.0 Min. :19.00 Min. :14.00
## 1st Qu.:49.00 1st Qu.:57.0 1st Qu.:53.00 1st Qu.:47.00
## Median :55.00 Median :63.0 Median :61.00 Median :57.00
## Mean :55.37 Mean :62.8 Mean :59.95 Mean :55.63
## 3rd Qu.:62.00 3rd Qu.:70.0 3rd Qu.:68.00 3rd Qu.:65.00
## Max. :83.00 Max. :83.0 Max. :90.00 Max. :82.00
##
## SubWellBeing SW_Napryazhennost SW_PsyEmocionalnyj SW_Nastroenie
## Min. : 23.00 Min. : 3.00 Min. : 4.00 Min. : 2.00
## 1st Qu.: 63.00 1st Qu.: 9.00 1st Qu.:13.00 1st Qu.: 8.00
## Median : 77.00 Median :12.00 Median :17.00 Median :10.00
## Mean : 76.03 Mean :11.92 Mean :17.08 Mean :10.01
## 3rd Qu.: 89.00 3rd Qu.:15.00 3rd Qu.:21.00 3rd Qu.:12.00
## Max. :119.00 Max. :21.00 Max. :28.00 Max. :14.00
## NA's :7 NA's :7 NA's :7 NA's :7
## SW_SocOkruzh SW_Zdorove SW_UdovletvDeyateln PB_1
## Min. : 3.00 Min. : 2.000 Min. : 3.00 Min. :0.000
## 1st Qu.:13.00 1st Qu.: 6.000 1st Qu.:10.00 1st Qu.:1.000
## Median :16.00 Median : 9.000 Median :13.00 Median :2.000
## Mean :15.75 Mean : 8.912 Mean :12.36 Mean :1.587
## 3rd Qu.:19.00 3rd Qu.:12.000 3rd Qu.:15.00 3rd Qu.:2.000
## Max. :21.00 Max. :14.000 Max. :21.00 Max. :4.000
## NA's :7 NA's :7 NA's :7 NA's :13
## PB_2 PB_3 PB_4a PB_4b
## Min. :0.000 Min. :0.000 Min. :0.000 Min. :0.000
## 1st Qu.:2.000 1st Qu.:0.000 1st Qu.:2.000 1st Qu.:1.000
## Median :5.000 Median :2.000 Median :2.000 Median :2.000
## Mean :4.891 Mean :1.198 Mean :1.776 Mean :1.345
## 3rd Qu.:7.000 3rd Qu.:2.000 3rd Qu.:2.000 3rd Qu.:2.000
## Max. :9.000 Max. :6.000 Max. :2.000 Max. :6.000
## NA's :13 NA's :13 NA's :13 NA's :13
## PB_5 PB_6 PB_7a PB_7b
## Length:584 Min. :0.000 Min. :1.000 Min. :1.000
## Class :character 1st Qu.:1.000 1st Qu.:3.000 1st Qu.:3.000
## Mode :character Median :2.000 Median :4.000 Median :4.000
## Mean :1.322 Mean :3.781 Mean :3.938
## 3rd Qu.:2.000 3rd Qu.:4.000 3rd Qu.:5.000
## Max. :4.000 Max. :5.000 Max. :5.000
## NA's :15 NA's :28 NA's :21
## PB_7c PB_7d PB_7e PB_7f
## Min. :1.000 Min. :1.000 Length:584 Length:584
## 1st Qu.:3.000 1st Qu.:3.000 Class :character Class :character
## Median :4.000 Median :4.000 Mode :character Mode :character
## Mean :3.615 Mean :3.839
## 3rd Qu.:4.000 3rd Qu.:5.000
## Max. :5.000 Max. :5.000
## NA's :38 NA's :32
## PB_7g PB_7h PB_8 PB_9.1a
## Length:584 Min. :1.00 Min. :0.000 Min. :0.000
## Class :character 1st Qu.:2.00 1st Qu.:0.000 1st Qu.:3.000
## Mode :character Median :3.00 Median :2.000 Median :4.000
## Mean :3.15 Mean :1.338 Mean :3.651
## 3rd Qu.:4.00 3rd Qu.:2.000 3rd Qu.:5.000
## Max. :5.00 Max. :5.000 Max. :5.000
## NA's :57 NA's :16 NA's :13
## PB_9.1b PB_9.2a PB_9.2b PB_9.3a
## Min. :1.000 Min. :1.000 Min. :1.000 Min. :1.000
## 1st Qu.:3.000 1st Qu.:3.000 1st Qu.:3.000 1st Qu.:3.000
## Median :4.000 Median :4.000 Median :4.000 Median :4.000
## Mean :3.814 Mean :3.961 Mean :3.913 Mean :3.842
## 3rd Qu.:5.000 3rd Qu.:5.000 3rd Qu.:5.000 3rd Qu.:5.000
## Max. :5.000 Max. :5.000 Max. :5.000 Max. :5.000
## NA's :18 NA's :13 NA's :18 NA's :13
## PB_9.3b PB_9.4a PB_9.4b PB_9.5a
## Min. :1.000 Min. :1.000 Min. :1.000 Min. :1.000
## 1st Qu.:3.000 1st Qu.:3.000 1st Qu.:3.000 1st Qu.:3.000
## Median :4.000 Median :4.000 Median :4.000 Median :4.000
## Mean :3.536 Mean :3.701 Mean :3.574 Mean :3.635
## 3rd Qu.:5.000 3rd Qu.:5.000 3rd Qu.:5.000 3rd Qu.:5.000
## Max. :5.000 Max. :5.000 Max. :5.000 Max. :5.000
## NA's :17 NA's :13 NA's :18 NA's :17
## PB_9.5b PB_10 PB_Attitude PB_Satisfaction
## Min. :1.000 Min. :0.000 Min. :-9.000 Min. :1.125
## 1st Qu.:3.000 1st Qu.:0.000 1st Qu.: 2.000 1st Qu.:3.250
## Median :4.000 Median :2.000 Median : 5.000 Median :3.750
## Mean :3.652 Mean :1.148 Mean : 3.855 Mean :3.697
## 3rd Qu.:5.000 3rd Qu.:2.000 3rd Qu.: 7.000 3rd Qu.:4.250
## Max. :5.000 Max. :5.000 Max. : 9.000 Max. :5.400
## NA's :18 NA's :35 NA's :11 NA's :11
## PB_Security SO_S.GlobSamootnoshenie SO_I.Samouvazhenie SO_II.Autosimpatiya
## Min. :0.900 Min. : 4.00 Min. : 0.000 Min. : 0.000
## 1st Qu.:3.200 1st Qu.:15.00 1st Qu.: 7.000 1st Qu.: 7.000
## Median :3.800 Median :20.00 Median : 9.000 Median : 8.000
## Mean :3.753 Mean :18.91 Mean : 8.951 Mean : 8.358
## 3rd Qu.:4.400 3rd Qu.:22.50 3rd Qu.:11.000 3rd Qu.:11.000
## Max. :5.000 Max. :32.00 Max. :15.000 Max. :14.000
## NA's :11 NA's :53 NA's :53 NA's :53
## SO_III.OzhidOtnoshenie SO_IV.Samointeres SO_1.Samouverennost
## Min. : 1.000 Min. :0.000 Min. : 0.000
## 1st Qu.: 7.000 1st Qu.:5.000 1st Qu.: 3.000
## Median : 9.000 Median :6.000 Median : 5.000
## Mean : 8.292 Mean :5.714 Mean : 4.512
## 3rd Qu.:10.000 3rd Qu.:7.000 3rd Qu.: 6.000
## Max. :17.000 Max. :8.000 Max. :16.000
## NA's :53 NA's :53 NA's :53
## SO_2.OtnoshenieDrugih SO_3.Samoprinyatie SO_4.Samorukovodstvo
## Min. :0.000 Min. :0.000 Min. :0.000
## 1st Qu.:4.000 1st Qu.:3.000 1st Qu.:3.000
## Median :6.000 Median :5.000 Median :4.000
## Mean :5.313 Mean :4.606 Mean :4.166
## 3rd Qu.:7.000 3rd Qu.:6.000 3rd Qu.:5.000
## Max. :8.000 Max. :7.000 Max. :7.000
## NA's :53 NA's :53 NA's :53
## SO_5.Samoobvinenie SO_6.Samointeres SO_7.Samoponimanie SP_Konfrontaciya
## Min. :0.000 Min. :0.000 Min. :0.000 Min. : 5.56
## 1st Qu.:3.000 1st Qu.:4.000 1st Qu.:2.000 1st Qu.: 44.40
## Median :4.000 Median :5.000 Median :3.000 Median : 50.00
## Mean :4.228 Mean :5.222 Mean :3.188 Mean : 53.45
## 3rd Qu.:6.000 3rd Qu.:7.000 3rd Qu.:4.000 3rd Qu.: 66.67
## Max. :8.000 Max. :7.000 Max. :6.000 Max. :122.22
## NA's :53 NA's :53 NA's :53 NA's :172
## SP_Distancirovanie SP_Samokontrol SP_PoiskCocPodderzhki SP_PrinyatieOtvetstv
## Min. : 5.60 Min. : 9.52 Min. : 5.56 Min. : 8.33
## 1st Qu.: 38.90 1st Qu.: 52.40 1st Qu.: 50.00 1st Qu.: 50.00
## Median : 50.00 Median : 61.90 Median : 61.11 Median : 66.67
## Mean : 53.49 Mean : 62.78 Mean : 60.59 Mean : 63.56
## 3rd Qu.: 66.67 3rd Qu.: 71.43 3rd Qu.: 72.22 3rd Qu.: 75.00
## Max. :116.67 Max. :123.81 Max. :122.22 Max. :108.33
## NA's :172 NA's :172 NA's :172 NA's :173
## SP_BegstvoIzbeganie SP_Planirovanie SP_PolPereocenka ZhS_Vovlechennost
## Min. : 4.20 Min. : 5.56 Min. : 14.29 Min. : 6.00
## 1st Qu.: 37.50 1st Qu.: 55.60 1st Qu.: 52.40 1st Qu.:25.00
## Median : 50.00 Median : 66.70 Median : 61.90 Median :31.00
## Mean : 51.26 Mean : 68.68 Mean : 63.23 Mean :31.37
## 3rd Qu.: 62.50 3rd Qu.: 83.30 3rd Qu.: 71.43 3rd Qu.:38.00
## Max. :237.50 Max. :133.33 Max. :133.33 Max. :51.00
## NA's :173 NA's :172 NA's :172 NA's :212
## ZhS_Kontrol ZhS_PrinyatieRiska ZHiznestojkost P_AbstractConcept
## Min. : 4.00 Min. : 0.0 Min. : 18.00 Min. :19.00
## 1st Qu.:23.00 1st Qu.:13.0 1st Qu.: 63.75 1st Qu.:28.00
## Median :28.00 Median :17.0 Median : 76.00 Median :31.00
## Mean :29.47 Mean :16.4 Mean : 77.24 Mean :31.63
## 3rd Qu.:35.00 3rd Qu.:20.0 3rd Qu.: 92.00 3rd Qu.:34.75
## Max. :64.00 Max. :29.0 Max. :134.00 Max. :45.00
## NA's :212 NA's :212 NA's :212 NA's :238
## P_Active.Experim P_ConcrExperien P_ReflectObserv
## Min. :18.00 Min. :16.00 Min. :15.00
## 1st Qu.:27.00 1st Qu.:24.00 1st Qu.:28.00
## Median :29.00 Median :27.00 Median :32.00
## Mean :29.25 Mean :27.52 Mean :31.70
## 3rd Qu.:32.00 3rd Qu.:31.00 3rd Qu.:35.75
## Max. :39.00 Max. :41.00 Max. :44.00
## NA's :238 NA's :238 NA's :238
После проверки удалил почти все значения сумм, где были нули. Это суммы по пропущенным анкетам. Удалял в исходной таблице вручную.
Выбросы. Изучаем выбросы
W_Autonomy
Data$W_Autonomy |>
setNames(seq_along(Data$W_Autonomy)) |>
sort(decreasing = TRUE) |>
head(10)
## 176 94 135 223 261 579 338 393 99 152
## 101 83 81 80 80 80 79 79 78 78
Data$W_Autonomy[176] <- NA
В 176 строке значения 101
W_SelfAcceptance
Data$W_SelfAcceptance |>
setNames(seq_along(Data$W_Autonomy)) |>
sort(decreasing = TRUE) |>
tail(10)
## 513 493 32 342 57 434 556 244 45 2
## 24 22 20 20 19 19 18 17 15 14
SW_SocOkruzh
Data$SW_SocOkruzh |>
setNames(seq_along(Data$W_Autonomy)) |>
sort(decreasing = TRUE) |>
tail(10)
## 355 360 404 515 123 253 390 221 342 556
## 6 6 6 6 5 5 4 3 3 3
SO_1.Samouverennost
Data$SO_1.Samouverennost |>
setNames(seq_along(Data$W_Autonomy)) |>
sort(decreasing = TRUE) |>
head(10)
## 358 26 210 468 17 20 24 79 91 94
## 16 8 8 8 7 7 7 7 7 7
Data$SO_1.Samouverennost[358] <- NA
Удаляю значение 16
SP_BegstvoIzbeganie
Data$SP_BegstvoIzbeganie |>
setNames(seq_along(Data$W_Autonomy)) |>
sort(decreasing = TRUE) |>
head(10)
## 567 578 282 571 561 564 21 381 500 568
## 237.50 191.67 100.00 100.00 95.83 95.83 91.70 91.67 91.67 91.67
Data$SP_BegstvoIzbeganie[578] <- NA
Data$SP_BegstvoIzbeganie[567] <- NA
Удалил два значения 237.50 и 191.67
P_ReflectObserv
Data$P_ReflectObserv |>
setNames(seq_along(Data$W_Autonomy)) |>
sort(decreasing = TRUE) |>
tail(10)
## 169 467 499 551 32 146 537 129 88 544
## 22 22 22 22 21 21 21 19 18 15
Data |>
is.na() |>
colSums() |>
as.data.frame()
## colSums(is.na(Data))
## SchoolType 0
## subject_id 0
## School 0
## Class 0
## Gender 0
## Age 0
## WellBeing 0
## W_PositiveRel 0
## W_Autonomy 1
## W_EnvMastery 0
## W_PersGrowth 0
## W_PurposeLife 0
## W_SelfAcceptance 0
## SubWellBeing 7
## SW_Napryazhennost 7
## SW_PsyEmocionalnyj 7
## SW_Nastroenie 7
## SW_SocOkruzh 7
## SW_Zdorove 7
## SW_UdovletvDeyateln 7
## PB_1 13
## PB_2 13
## PB_3 13
## PB_4a 13
## PB_4b 13
## PB_5 13
## PB_6 15
## PB_7a 28
## PB_7b 21
## PB_7c 38
## PB_7d 32
## PB_7e 44
## PB_7f 47
## PB_7g 55
## PB_7h 57
## PB_8 16
## PB_9.1a 13
## PB_9.1b 18
## PB_9.2a 13
## PB_9.2b 18
## PB_9.3a 13
## PB_9.3b 17
## PB_9.4a 13
## PB_9.4b 18
## PB_9.5a 17
## PB_9.5b 18
## PB_10 35
## PB_Attitude 11
## PB_Satisfaction 11
## PB_Security 11
## SO_S.GlobSamootnoshenie 53
## SO_I.Samouvazhenie 53
## SO_II.Autosimpatiya 53
## SO_III.OzhidOtnoshenie 53
## SO_IV.Samointeres 53
## SO_1.Samouverennost 54
## SO_2.OtnoshenieDrugih 53
## SO_3.Samoprinyatie 53
## SO_4.Samorukovodstvo 53
## SO_5.Samoobvinenie 53
## SO_6.Samointeres 53
## SO_7.Samoponimanie 53
## SP_Konfrontaciya 172
## SP_Distancirovanie 172
## SP_Samokontrol 172
## SP_PoiskCocPodderzhki 172
## SP_PrinyatieOtvetstv 173
## SP_BegstvoIzbeganie 175
## SP_Planirovanie 172
## SP_PolPereocenka 172
## ZhS_Vovlechennost 212
## ZhS_Kontrol 212
## ZhS_PrinyatieRiska 212
## ZHiznestojkost 212
## P_AbstractConcept 238
## P_Active.Experim 238
## P_ConcrExperien 238
## P_ReflectObserv 238
В методике Безопасность есть сумма, несмотря на пропущенные значения. При наличии NA в одной из шкал заменяю на пропущено в суммарных баллах.
# Перечень переменных, которые нужно проверить на наличие NA
variables_to_check <- c("PB_1", "PB_2", "PB_3", "PB_4a", "PB_4b", "PB_5", "PB_6", "PB_7a", "PB_7b", "PB_7c", "PB_7d", "PB_7e", "PB_7f", "PB_7g", "PB_7h", "PB_8", "PB_9.1a", "PB_9.1b", "PB_9.2a", "PB_9.2b", "PB_9.3a", "PB_9.3b", "PB_9.4a", "PB_9.4b", "PB_9.5a", "PB_9.5b", "PB_10")
# Переменные, в которых нужно заменить значения на NA при обнаружении NA в других переменных
variables_to_replace <- c("PB_Attitude", "PB_Satisfaction", "PB_Security")
# Найдем строки, где в проверяемых переменных есть хотя бы одно NA
rows_with_na <- apply(Data[, variables_to_check], 1, function(row) any(is.na(row)))
# Заменим значения на NA в указанных переменных, если в строке есть NA
Data[rows_with_na, variables_to_replace] <- NA
Data[21:50] |>
is.na() |>
colSums() |>
as.data.frame()
## colSums(is.na(Data[21:50]))
## PB_1 13
## PB_2 13
## PB_3 13
## PB_4a 13
## PB_4b 13
## PB_5 13
## PB_6 15
## PB_7a 28
## PB_7b 21
## PB_7c 38
## PB_7d 32
## PB_7e 44
## PB_7f 47
## PB_7g 55
## PB_7h 57
## PB_8 16
## PB_9.1a 13
## PB_9.1b 18
## PB_9.2a 13
## PB_9.2b 18
## PB_9.3a 13
## PB_9.3b 17
## PB_9.4a 13
## PB_9.4b 18
## PB_9.5a 17
## PB_9.5b 18
## PB_10 35
## PB_Attitude 120
## PB_Satisfaction 120
## PB_Security 120
Data %>%
count(School, Class) %>%
arrange(School, Class)
## School Class n
## 1 225 10Б 2
## 2 225 8Б 22
## 3 241 8а 17
## 4 3 10а 7
## 5 3 10б 16
## 6 3 8б 13
## 7 3 8в 10
## 8 367 10а 21
## 9 367 8а 1
## 10 367 8б 21
## 11 531 10а 22
## 12 531 8а 28
## 13 531 8б 24
## 14 540 10а 19
## 15 540 8а 30
## 16 540 8б 28
## 17 540 8в 29
## 18 540 8г 29
## 19 564 10м 10
## 20 564 8 21
## 21 625 10а 59
## 22 625 10б 40
## 23 625 8а 20
## 24 625 8а 1
## 25 625 8б 21
## 26 625 8в 11
## 27 А лицей 10а 16
## 28 А лицей 8А 27
## 29 А лицей 9А 19
В исходнике были ошибки: 10м и 10М (разное написание) И 8а с пробелом - поправил в numbers
# Распределение возраста
ggplot(Data, aes(x = as.factor(Age), fill = SchoolType)) +
geom_bar(position = position_dodge(width = 0.8)) +
labs(title = "Распределение по возрасту и типу школы", x = "Возраст", y = "Количество") +
theme_minimal()
# Распределение по полу
ggplot(Data, aes(x = as.factor(Gender), fill = SchoolType)) +
geom_bar(position = "dodge") +
labs(title = "Распределение по полу", x = "Пол", y = "Количество")
Data |>
select(starts_with("W_"), WellBeing) |>
describe()
## vars n mean sd median trimmed mad min max range skew
## W_PositiveRel 1 584 59.28 11.12 59 59.51 11.86 19 84 65 -0.21
## W_Autonomy 2 583 56.45 10.42 56 56.47 10.38 19 83 64 -0.12
## W_EnvMastery 3 584 55.37 10.51 55 55.35 10.38 27 83 56 0.01
## W_PersGrowth 4 584 62.80 9.30 63 63.17 10.38 22 83 61 -0.45
## W_PurposeLife 5 584 59.95 11.39 61 60.41 10.38 19 90 71 -0.46
## W_SelfAcceptance 6 584 55.63 13.12 57 56.30 13.34 14 82 68 -0.49
## WellBeing 7 584 349.55 51.20 353 350.57 50.41 124 481 357 -0.30
## kurtosis se
## W_PositiveRel -0.27 0.46
## W_Autonomy 0.17 0.43
## W_EnvMastery -0.13 0.43
## W_PersGrowth 0.39 0.38
## W_PurposeLife 0.32 0.47
## W_SelfAcceptance -0.11 0.54
## WellBeing 0.43 2.12
Data |>
ggplot(aes(x = WellBeing, fill = SchoolType)) +
geom_histogram(binwidth = 20, position = "dodge", color = "black") +
facet_wrap(~ Gender) +
labs(title = "Психологическое благополучие (Рифф)",
x = "Баллы", y = "Частота") +
theme_minimal()
Data |>
select(starts_with("W_"), SchoolType) |>
pivot_longer(cols = starts_with("W_"), names_to = "variable", values_to = "value") |>
ggplot(aes(x = value, fill = SchoolType)) +
geom_histogram(binwidth = 5, color = "black", position = "identity", alpha = 0.6) +
facet_wrap(~ variable, scales = "free_x") +
labs(title = "Гистограммы для шкалы психологического благополучия Рифф",
x = "Значения", y = "Частота") +
theme_minimal()
Data |>
select(starts_with("W_"), Gender, SchoolType) |>
pivot_longer(cols = -c(Gender, SchoolType), names_to = "variable", values_to = "value") |>
ggplot(aes(x = variable, y = value, fill = SchoolType)) +
geom_boxplot(color = "black") +
labs(title = "Шкалы психологического благополучия Рифф",
x = "Шкала", y = "Баллы") +
facet_wrap(~ Gender, ncol = 1) +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Data |>
select(starts_with("SW_"), SubWellBeing) |>
describe()
## vars n mean sd median trimmed mad min max range
## SW_Napryazhennost 1 577 11.92 3.54 12 11.93 4.45 3 21 18
## SW_PsyEmocionalnyj 2 577 17.08 5.62 17 17.17 5.93 4 28 24
## SW_Nastroenie 3 577 10.01 2.90 10 10.23 2.97 2 14 12
## SW_SocOkruzh 4 577 15.75 3.92 16 16.05 4.45 3 21 18
## SW_Zdorove 5 577 8.91 3.38 9 9.03 4.45 2 14 12
## SW_UdovletvDeyateln 6 577 12.36 4.10 13 12.39 4.45 3 21 18
## SubWellBeing 7 577 76.03 17.92 77 76.30 19.27 23 119 96
## skew kurtosis se
## SW_Napryazhennost -0.04 -0.39 0.15
## SW_PsyEmocionalnyj -0.12 -0.70 0.23
## SW_Nastroenie -0.65 -0.09 0.12
## SW_SocOkruzh -0.62 -0.15 0.16
## SW_Zdorove -0.25 -0.82 0.14
## SW_UdovletvDeyateln -0.09 -0.46 0.17
## SubWellBeing -0.15 -0.38 0.75
Data |>
ggplot(aes(x = SubWellBeing, fill = SchoolType)) +
geom_histogram(binwidth = 20, position = "dodge", color = "black") +
facet_wrap(~ Gender, ncol = 1) +
labs(title = "Субъективное благополучие",
x = "Баллы", y = "Частота") +
theme_minimal()
Шкалы субъектвного благополучия
Data |>
select(starts_with("SW_"), SchoolType) |>
pivot_longer(-SchoolType, names_to = "variable", values_to = "value") |>
ggplot(aes(x = value, fill = SchoolType)) +
geom_histogram(binwidth = 5, color = "black", position = "dodge") +
facet_wrap(~ variable, scales = "free_x") +
labs(title = "Гистограммы для шкал субъективного благополучия",
x = "Значения", y = "Частота") +
theme_minimal()
Data |>
select(starts_with("SW_"), Gender, SchoolType) |>
pivot_longer(cols = -c(Gender, SchoolType), names_to = "variable", values_to = "value") |>
ggplot(aes(x = variable, y = value, fill = SchoolType)) +
geom_boxplot(color = "black") +
facet_wrap(~ Gender, ncol = 1) +
labs(title = "Шкалы субъективного благополучия",
x = "Шкала", y = "Баллы") +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Data |>
select(starts_with("PB_")) |>
describe()
## vars n mean sd median trimmed mad min max range skew
## PB_1 1 571 1.59 0.76 2.00 1.73 0.00 0.0 4.0 4.0 -1.34
## PB_2 2 571 4.89 2.87 5.00 5.00 2.97 0.0 9.0 9.0 -0.39
## PB_3 3 571 1.20 0.90 2.00 1.24 1.48 0.0 6.0 6.0 -0.11
## PB_4a 4 571 1.78 0.58 2.00 1.95 0.00 0.0 2.0 2.0 -2.42
## PB_4b 5 571 1.35 0.80 2.00 1.42 0.00 0.0 6.0 6.0 -0.29
## PB_5* 6 571 2.16 0.93 3.00 2.19 0.00 1.0 5.0 4.0 -0.26
## PB_6 7 569 1.32 0.86 2.00 1.39 0.00 0.0 4.0 4.0 -0.47
## PB_7a 8 556 3.78 0.93 4.00 3.84 1.48 1.0 5.0 4.0 -0.48
## PB_7b 9 563 3.94 0.96 4.00 4.05 1.48 1.0 5.0 4.0 -0.87
## PB_7c 10 546 3.62 1.10 4.00 3.71 1.48 1.0 5.0 4.0 -0.59
## PB_7d 11 552 3.84 0.98 4.00 3.95 1.48 1.0 5.0 4.0 -0.73
## PB_7e* 12 540 4.96 0.97 5.00 5.07 1.48 1.0 6.0 5.0 -0.86
## PB_7f* 13 537 4.73 1.08 5.00 4.83 1.48 1.0 7.0 6.0 -0.61
## PB_7g* 14 529 4.72 1.08 5.00 4.82 1.48 1.0 7.0 6.0 -0.63
## PB_7h 15 527 3.15 1.17 3.00 3.19 1.48 1.0 5.0 4.0 -0.22
## PB_8 16 568 1.34 0.91 2.00 1.39 0.00 0.0 5.0 5.0 -0.14
## PB_9.1a 17 571 3.65 1.22 4.00 3.80 1.48 0.0 5.0 5.0 -0.85
## PB_9.1b 18 566 3.81 1.20 4.00 3.97 1.48 1.0 5.0 4.0 -0.84
## PB_9.2a 19 571 3.96 1.19 4.00 4.14 1.48 1.0 5.0 4.0 -1.02
## PB_9.2b 20 566 3.91 1.21 4.00 4.09 1.48 1.0 5.0 4.0 -1.00
## PB_9.3a 21 571 3.84 1.18 4.00 3.99 1.48 1.0 5.0 4.0 -0.82
## PB_9.3b 22 567 3.54 1.25 4.00 3.64 1.48 1.0 5.0 4.0 -0.47
## PB_9.4a 23 571 3.70 1.26 4.00 3.86 1.48 1.0 5.0 4.0 -0.71
## PB_9.4b 24 566 3.57 1.23 4.00 3.70 1.48 1.0 5.0 4.0 -0.61
## PB_9.5a 25 567 3.63 1.27 4.00 3.78 1.48 1.0 5.0 4.0 -0.68
## PB_9.5b 26 566 3.65 1.22 4.00 3.78 1.48 1.0 5.0 4.0 -0.66
## PB_10 27 549 1.15 0.97 2.00 1.18 0.00 0.0 5.0 5.0 -0.18
## PB_Attitude 28 464 3.95 3.88 5.00 4.32 4.45 -9.0 9.0 18.0 -0.89
## PB_Satisfaction 29 464 3.71 0.69 3.77 3.75 0.59 1.5 5.4 3.9 -0.53
## PB_Security 30 464 3.74 0.85 3.80 3.80 0.89 0.9 5.0 4.1 -0.69
## kurtosis se
## PB_1 0.34 0.03
## PB_2 -1.08 0.12
## PB_3 -0.33 0.04
## PB_4a 4.33 0.02
## PB_4b 0.73 0.03
## PB_5* -1.62 0.04
## PB_6 -0.93 0.04
## PB_7a -0.09 0.04
## PB_7b 0.53 0.04
## PB_7c -0.27 0.05
## PB_7d 0.19 0.04
## PB_7e* 0.57 0.04
## PB_7f* -0.12 0.05
## PB_7g* -0.01 0.05
## PB_7h -0.72 0.05
## PB_8 0.07 0.04
## PB_9.1a -0.11 0.05
## PB_9.1b -0.26 0.05
## PB_9.2a 0.06 0.05
## PB_9.2b -0.01 0.05
## PB_9.3a -0.28 0.05
## PB_9.3b -0.82 0.05
## PB_9.4a -0.51 0.05
## PB_9.4b -0.56 0.05
## PB_9.5a -0.58 0.05
## PB_9.5b -0.50 0.05
## PB_10 -1.46 0.04
## PB_Attitude 0.59 0.18
## PB_Satisfaction 0.25 0.03
## PB_Security 0.42 0.04
Data |>
select(PB_Attitude, PB_Satisfaction, PB_Security, SchoolType, Gender) |>
pivot_longer(-c(SchoolType, Gender), names_to = "variable", values_to = "value") |>
ggplot(aes(x = value, fill = SchoolType)) +
geom_histogram(bins = 10, color = "black", position = "dodge") +
facet_wrap(Gender ~ variable, scales = "free_x") +
labs(title = "Гистограммы для шкал психологической безопасности",
x = "Значения", y = "Частота") +
theme_minimal()
#Опросник самоотношения (SO)
Data |>
select(starts_with("SO_")) |>
describe()
## vars n mean sd median trimmed mad min max range
## SO_S.GlobSamootnoshenie 1 531 18.91 5.28 20 19.14 5.93 4 32 28
## SO_I.Samouvazhenie 2 531 8.95 3.13 9 9.03 2.97 0 15 15
## SO_II.Autosimpatiya 3 531 8.36 3.11 8 8.54 2.97 0 14 14
## SO_III.OzhidOtnoshenie 4 531 8.29 2.46 9 8.46 2.97 1 17 16
## SO_IV.Samointeres 5 531 5.71 1.81 6 5.88 1.48 0 8 8
## SO_1.Samouverennost 6 530 4.49 1.64 5 4.54 1.48 0 8 8
## SO_2.OtnoshenieDrugih 7 531 5.31 1.74 6 5.41 1.48 0 8 8
## SO_3.Samoprinyatie 8 531 4.61 1.93 5 4.78 1.48 0 7 7
## SO_4.Samorukovodstvo 9 531 4.17 1.25 4 4.22 1.48 0 7 7
## SO_5.Samoobvinenie 10 531 4.23 2.09 4 4.30 2.97 0 8 8
## SO_6.Samointeres 11 531 5.22 1.55 5 5.38 1.48 0 7 7
## SO_7.Samoponimanie 12 531 3.19 1.57 3 3.17 1.48 0 6 6
## skew kurtosis se
## SO_S.GlobSamootnoshenie -0.39 -0.29 0.23
## SO_I.Samouvazhenie -0.23 -0.46 0.14
## SO_II.Autosimpatiya -0.44 -0.33 0.13
## SO_III.OzhidOtnoshenie -0.45 -0.16 0.11
## SO_IV.Samointeres -0.63 -0.34 0.08
## SO_1.Samouverennost -0.23 -0.53 0.07
## SO_2.OtnoshenieDrugih -0.53 -0.46 0.08
## SO_3.Samoprinyatie -0.60 -0.66 0.08
## SO_4.Samorukovodstvo -0.39 -0.21 0.05
## SO_5.Samoobvinenie -0.18 -0.77 0.09
## SO_6.Samointeres -0.72 0.00 0.07
## SO_7.Samoponimanie 0.02 -0.76 0.07
Data |>
select(SO_S.GlobSamootnoshenie
, SO_I.Samouvazhenie
, SO_II.Autosimpatiya
, SO_III.OzhidOtnoshenie
, SO_IV.Samointeres
, SchoolType) |>
pivot_longer(-SchoolType, names_to = "variable", values_to = "value") |>
ggplot(aes(x = value, fill = SchoolType)) +
geom_histogram(bins = 10, color = "black", position = "dodge") +
facet_wrap(~ variable, scales = "free_x") +
labs(title = "Самоотношение",
x = "Значения", y = "Частота") +
theme_minimal()
Data |>
select(SO_1.Samouverennost
, SO_2.OtnoshenieDrugih
, SO_3.Samoprinyatie
, SO_4.Samorukovodstvo
, SO_5.Samoobvinenie
, SO_6.Samointeres
, SO_7.Samoponimanie
, SchoolType) |>
pivot_longer(-SchoolType, names_to = "variable", values_to = "value") |>
ggplot(aes(x = value, fill = SchoolType)) +
geom_histogram(bins = 7, position = "dodge", color = "black") +
facet_wrap(~ variable, scales = "free_x") +
labs(title = "Самоотношение - шкалы",
x = "Значения", y = "Частота") +
theme_minimal()
Data |>
select(SO_S.GlobSamootnoshenie,
Gender,
SchoolType) |>
ggplot(aes(x = Gender , y = SO_S.GlobSamootnoshenie, fill = SchoolType)) +
geom_boxplot(color = "black") +
labs(title = "Шкала S (глобальное самоотношение)",
x = "Пол", y = "Баллы") +
theme_minimal()
Data |>
select(SO_I.Samouvazhenie,
SO_II.Autosimpatiya,
SO_III.OzhidOtnoshenie,
SO_IV.Samointeres,
Gender,
SchoolType) |>
pivot_longer(cols = -c(Gender, SchoolType), names_to = "variable", values_to = "value") |>
ggplot(aes(x = variable, y = value, fill = SchoolType)) +
geom_boxplot(color = "black") +
facet_wrap(~ Gender, ncol = 1) +
labs(title = "Опросник самоотношения",
x = "Шкала", y = "Баллы") +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Data |>
select(SO_1.Samouverennost
, SO_2.OtnoshenieDrugih
, SO_3.Samoprinyatie
, SO_4.Samorukovodstvo
, SO_5.Samoobvinenie
, SO_6.Samointeres
, SO_7.Samoponimanie
, Gender
, SchoolType) |>
pivot_longer(-c(Gender, SchoolType), names_to = "variable", values_to = "value") |>
ggplot(aes(x = variable, y = value, fill = SchoolType)) +
geom_boxplot(color = "black") +
facet_wrap(~ Gender, ncol = 1) +
labs(title = "Опросник самоотношения",
x = "Шкала", y = "Баллы") +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Data |>
select(starts_with("SP_")) |>
describe()
## vars n mean sd median trimmed mad min max
## SP_Konfrontaciya 1 412 53.45 17.80 50.00 52.86 16.46 5.56 122.22
## SP_Distancirovanie 2 412 53.49 18.87 50.00 53.10 16.47 5.60 116.67
## SP_Samokontrol 3 412 62.78 16.59 61.90 62.50 14.11 9.52 123.81
## SP_PoiskCocPodderzhki 4 412 60.59 19.74 61.11 61.01 16.47 5.56 122.22
## SP_PrinyatieOtvetstv 5 411 63.56 19.25 66.67 63.68 24.66 8.33 108.33
## SP_BegstvoIzbeganie 6 409 50.46 18.95 50.00 49.91 18.53 4.20 100.00
## SP_Planirovanie 7 412 68.68 19.49 66.70 68.59 16.52 5.56 133.33
## SP_PolPereocenka 8 412 63.23 19.25 61.90 62.68 14.13 14.29 133.33
## range skew kurtosis se
## SP_Konfrontaciya 116.66 0.39 0.50 0.88
## SP_Distancirovanie 111.07 0.22 -0.11 0.93
## SP_Samokontrol 114.29 0.26 0.89 0.82
## SP_PoiskCocPodderzhki 116.66 -0.15 0.10 0.97
## SP_PrinyatieOtvetstv 100.00 -0.07 -0.39 0.95
## SP_BegstvoIzbeganie 95.80 0.23 -0.37 0.94
## SP_Planirovanie 127.77 0.04 0.37 0.96
## SP_PolPereocenka 119.04 0.44 1.00 0.95
Data |>
select(starts_with("SP_"), SchoolType) |>
pivot_longer(-SchoolType, names_to = "variable", values_to = "value") |>
ggplot(aes(x = value, fill = SchoolType)) +
geom_histogram(binwidth = 5, position = "dodge", color = "black") +
facet_wrap(~ variable, scales = "free_x") +
labs(title = "Гистограммы для способов совладающего поведения",
x = "Значения", y = "Частота") +
theme_minimal()
Data |>
select(starts_with("SP_"), Gender, SchoolType) |>
pivot_longer(cols = -c(Gender, SchoolType), names_to = "variable", values_to = "value") |>
ggplot(aes(x = variable, y = value, fill = SchoolType)) +
geom_boxplot(color = "black") +
facet_wrap(~ Gender, ncol = 1) +
labs(title = "Способы совладающего поведения",
x = "Шкала", y = "Баллы") +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Data |>
select(starts_with("ZhS_")) |>
describe()
## vars n mean sd median trimmed mad min max range skew
## ZhS_Vovlechennost 1 372 31.37 9.30 31 31.40 8.90 6 51 45 -0.05
## ZhS_Kontrol 2 372 29.47 9.88 28 28.97 8.90 4 64 60 0.55
## ZhS_PrinyatieRiska 3 372 16.40 4.97 17 16.53 4.45 0 29 29 -0.29
## kurtosis se
## ZhS_Vovlechennost -0.38 0.48
## ZhS_Kontrol 0.72 0.51
## ZhS_PrinyatieRiska 0.08 0.26
Data |>
select(ZHiznestojkost, SchoolType, Gender) |>
ggplot(aes(x = ZHiznestojkost, fill = SchoolType)) +
geom_histogram(binwidth = 5, position = "dodge", color = "black") +
facet_wrap(~ Gender, ncol = 1) +
labs(title = "Жизнестойкость",
x = "Значения", y = "Частота") +
theme_minimal()
Data |>
select(starts_with("ZhS_"), SchoolType) |>
pivot_longer(-SchoolType, names_to = "variable", values_to = "value") |>
ggplot(aes(x = value, fill = SchoolType)) +
geom_histogram(binwidth = 5, position = "dodge", color = "black") +
facet_wrap(~ variable, scales = "free_x") +
labs(title = "Шкалы по жизнестойкости",
x = "Значения", y = "Частота") +
theme_minimal()
Data |>
select(ZHiznestojkost, Gender, SchoolType) |>
ggplot(aes(x = Gender, y = ZHiznestojkost, fill = SchoolType)) +
geom_boxplot(color = "black") +
labs(title = "Жизнестойкость",
x = "Шкала", y = "Баллы") +
theme_minimal()
Data |>
select(starts_with("ZhS_"), Gender, SchoolType) |>
pivot_longer(cols = -c(Gender, SchoolType), names_to = "variable", values_to = "value") |>
ggplot(aes(x = variable, y = value, fill = SchoolType)) +
geom_boxplot(color = "black") +
facet_wrap(~ Gender, ncol = 1) +
labs(title = "Тест жизнестойкости",
x = "Шкала", y = "Баллы") +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Data |>
select(starts_with("P_")) |>
describe()
## vars n mean sd median trimmed mad min max range skew
## P_AbstractConcept 1 346 31.63 4.67 31 31.51 4.45 19 45 26 0.26
## P_Active.Experim 2 346 29.25 3.74 29 29.28 3.71 18 39 21 -0.07
## P_ConcrExperien 3 346 27.52 5.23 27 27.35 5.93 16 41 25 0.23
## P_ReflectObserv 4 346 31.70 5.01 32 31.84 5.93 15 44 29 -0.28
## kurtosis se
## P_AbstractConcept -0.05 0.25
## P_Active.Experim -0.19 0.20
## P_ConcrExperien -0.37 0.28
## P_ReflectObserv -0.34 0.27
Data |>
select(starts_with("P_"), SchoolType) |>
pivot_longer(-SchoolType, names_to = "variable", values_to = "value") |>
ggplot(aes(x = value, fill = SchoolType)) +
geom_histogram(binwidth = 5, position = "dodge", color = "black") +
facet_wrap(~ variable, scales = "free_x") +
labs(title = "Стили познания",
x = "Значения", y = "Частота") +
theme_minimal()
Data |>
select(starts_with("P_"), Gender, SchoolType) |>
pivot_longer(cols = -c(Gender, SchoolType), names_to = "variable", values_to = "value") |>
ggplot(aes(x = variable, y = value, fill = SchoolType)) +
geom_boxplot(color = "black") +
facet_wrap(~ Gender, ncol = 1) +
labs(title = "Стили познания",
x = "Шкала", y = "Баллы") +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Создаю короткую таблицу
Data_short <- Data |>
select(SchoolType, Gender, Age, WellBeing, W_PositiveRel, W_Autonomy, W_EnvMastery, W_PersGrowth, W_PurposeLife, W_SelfAcceptance
, PB_Attitude, PB_Satisfaction, PB_Security, SO_S.GlobSamootnoshenie
, SO_I.Samouvazhenie, SO_II.Autosimpatiya, SO_III.OzhidOtnoshenie, SO_IV.Samointeres, SO_1.Samouverennost, SO_2.OtnoshenieDrugih, SO_3.Samoprinyatie, SO_4.Samorukovodstvo, SO_5.Samoobvinenie, SO_6.Samointeres, SO_7.Samoponimanie
, SP_Konfrontaciya, SP_Distancirovanie, SP_Samokontrol, SP_PoiskCocPodderzhki, SP_PrinyatieOtvetstv, SP_BegstvoIzbeganie, SP_Planirovanie, SP_PolPereocenka
, ZhS_Vovlechennost, ZhS_Kontrol, ZhS_PrinyatieRiska, ZHiznestojkost, P_AbstractConcept
, P_Active.Experim, P_ConcrExperien, P_ReflectObserv)
# Функция для вычисления t-статистики и p-value
calculate_t_test <- function(data, group_col, feature_col) {
formula <- as.formula(paste(feature_col, "~", group_col))
test_result <- t.test(formula, data = data)
c(statistic = test_result$statistic, p.value = test_result$p.value)
}
# Основной код
Data_short %>%
select(c(-Gender, -Age)) %>%
group_by(SchoolType) %>%
summarise(
across(everything(),
list(
mean = ~ mean(., na.rm = TRUE),
sd = ~ sd(., na.rm = TRUE),
n = ~ sum(!is.na(.))
), .names = "{.col}_{.fn}")
) %>%
pivot_longer(
cols = -SchoolType,
names_to = c("Feature", "Statistic"),
names_pattern = "(.*)_(.*)",
values_to = "Value"
) %>%
pivot_wider(
names_from = c(Statistic, SchoolType),
values_from = Value
) %>%
rowwise() %>% # Для выполнения операций по строкам
mutate(
t_result = list(calculate_t_test(Data, "SchoolType", Feature)),
t.statistic = t_result[[1]],
p.value = t_result[[2]]
) %>%
ungroup() %>% # Убираем rowwise после добавления новых столбцов
select(-t_result) %>% # Удаляем временный столбец
mutate(p.value = scales::pvalue(p.value)) %>%
mutate(stars = case_when(
p.value < 0.001 ~ "***",
p.value < 0.01 ~ "**",
p.value < 0.05 ~ "*",
TRUE ~ "" # если p.value больше или равно 0.05, звездочек не будет
)) %>%
kable(digits = 2)
| Feature | mean_SOSh | sd_SOSh | n_SOSh | mean_Spec | sd_Spec | n_Spec | t.statistic | p.value | stars |
|---|---|---|---|---|---|---|---|---|---|
| WellBeing | 344.61 | 49.51 | 298 | 354.71 | 52.50 | 286 | -2.39 | 0.017 | * |
| W_PositiveRel | 58.79 | 10.46 | 298 | 59.80 | 11.76 | 286 | -1.09 | 0.276 | |
| W_Autonomy | 55.50 | 10.48 | 298 | 57.45 | 10.28 | 285 | -2.26 | 0.024 | * |
| W_EnvMastery | 55.03 | 10.07 | 298 | 55.73 | 10.96 | 286 | -0.80 | 0.422 | |
| W_PersGrowth | 61.11 | 8.76 | 298 | 64.55 | 9.53 | 286 | -4.53 | <0.001 | *** |
| W_PurposeLife | 59.36 | 11.51 | 298 | 60.56 | 11.26 | 286 | -1.27 | 0.204 | |
| W_SelfAcceptance | 54.81 | 13.01 | 298 | 56.48 | 13.20 | 286 | -1.53 | 0.126 | |
| PB_Attitude | 3.53 | 3.54 | 243 | 4.41 | 4.19 | 221 | -2.45 | 0.015 | * |
| PB_Satisfaction | 3.62 | 0.68 | 243 | 3.81 | 0.68 | 221 | -3.10 | 0.002 | ** |
| PB_Security | 3.60 | 0.87 | 243 | 3.89 | 0.79 | 221 | -3.77 | <0.001 | *** |
| SO_S.GlobSamootnoshenie | 18.56 | 5.37 | 245 | 19.21 | 5.20 | 286 | -1.40 | 0.163 | |
| SO_I.Samouvazhenie | 8.61 | 3.09 | 245 | 9.24 | 3.13 | 286 | -2.32 | 0.021 | * |
| SO_II.Autosimpatiya | 8.43 | 3.17 | 245 | 8.29 | 3.06 | 286 | 0.51 | 0.609 | |
| SO_III.OzhidOtnoshenie | 8.20 | 2.63 | 245 | 8.37 | 2.30 | 286 | -0.82 | 0.410 | |
| SO_IV.Samointeres | 5.67 | 1.72 | 245 | 5.75 | 1.88 | 286 | -0.48 | 0.632 | |
| SO_1.Samouverennost | 4.52 | 1.64 | 244 | 4.46 | 1.64 | 286 | 0.44 | 0.660 | |
| SO_2.OtnoshenieDrugih | 5.29 | 1.77 | 245 | 5.33 | 1.71 | 286 | -0.28 | 0.780 | |
| SO_3.Samoprinyatie | 4.66 | 1.84 | 245 | 4.56 | 2.00 | 286 | 0.57 | 0.572 | |
| SO_4.Samorukovodstvo | 4.04 | 1.30 | 245 | 4.28 | 1.19 | 286 | -2.20 | 0.028 | * |
| SO_5.Samoobvinenie | 4.35 | 2.01 | 245 | 4.12 | 2.15 | 286 | 1.27 | 0.206 | |
| SO_6.Samointeres | 5.11 | 1.65 | 245 | 5.31 | 1.44 | 286 | -1.48 | 0.141 | |
| SO_7.Samoponimanie | 3.04 | 1.50 | 245 | 3.31 | 1.62 | 286 | -2.02 | 0.044 | * |
| SP_Konfrontaciya | 57.28 | 19.73 | 174 | 50.65 | 15.71 | 238 | 3.66 | <0.001 | *** |
| SP_Distancirovanie | 58.94 | 19.19 | 174 | 49.51 | 17.63 | 238 | 5.10 | <0.001 | *** |
| SP_Samokontrol | 66.15 | 17.92 | 174 | 60.32 | 15.11 | 238 | 3.48 | <0.001 | *** |
| SP_PoiskCocPodderzhki | 62.42 | 21.39 | 174 | 59.25 | 18.37 | 238 | 1.58 | 0.116 | |
| SP_PrinyatieOtvetstv | 66.66 | 18.72 | 173 | 61.31 | 19.36 | 238 | 2.82 | 0.005 | ** |
| SP_BegstvoIzbeganie | 55.76 | 19.31 | 172 | 46.61 | 17.75 | 237 | 4.90 | <0.001 | *** |
| SP_Planirovanie | 69.99 | 22.18 | 174 | 67.72 | 17.25 | 238 | 1.12 | 0.262 | |
| SP_PolPereocenka | 70.58 | 20.50 | 174 | 57.86 | 16.36 | 238 | 6.76 | <0.001 | *** |
| ZhS_Vovlechennost | 30.59 | 8.55 | 161 | 31.96 | 9.80 | 211 | -1.43 | 0.153 | |
| ZhS_Kontrol | 27.97 | 7.94 | 161 | 30.62 | 11.02 | 211 | -2.69 | 0.007 | ** |
| ZhS_PrinyatieRiska | 16.20 | 4.82 | 161 | 16.55 | 5.08 | 211 | -0.67 | 0.505 | |
| ZHiznestojkost | 74.76 | 20.03 | 161 | 79.12 | 22.71 | 211 | -1.96 | 0.051 | |
| P_AbstractConcept | 30.97 | 3.89 | 140 | 32.08 | 5.10 | 206 | -2.28 | 0.023 | * |
| P_Active.Experim | 29.31 | 3.45 | 140 | 29.21 | 3.93 | 206 | 0.23 | 0.815 | |
| P_ConcrExperien | 27.84 | 4.96 | 140 | 27.31 | 5.41 | 206 | 0.93 | 0.352 | |
| P_ReflectObserv | 31.79 | 5.20 | 140 | 31.63 | 4.88 | 206 | 0.29 | 0.771 |
Сохранение объекта на диск.
saveRDS(Data, file = "DataRDS.RData")