Всем привет!
На прошлой неделе я начал исследование, основная цель которого - определить набор организационных, социальных и психологических факторов, связанных с профессиональным выгоранием.
Впрочем, слово "факторы" использовать здесь не совсем корректно - дизайн исследования не предполагает нахождение причин выгорания. Здесь речь идет скорее о значимых взаимосвязях, часть из которых может указывать на причины, а часть - на симптомы. Чтобы действительно разобраться в причинах нужно ставить эксперимент - сложный, дорогой и не совсем этичный. Пока ресурсов для этого нет. Но может быть в перспективе сделаю.
Результатом же этого исследования будет общая линейная модель, предсказывающая уровень выгорания. Имея такую модель можно думать о методах диагностики, профилактики и коррекции. Выглядеть она будет как-то так:
Коэффициенты b - весовые. Чем они больше по модулю, тем сильнее изменение фактора влияет на профессиональное выгорание. Скорее всего, сам набор факторов будет несколько иным, но каким именно можно будет понять только после завершения исследования.
Перед построением общих линейных моделей, практически всегда рекомендуется провести процедуру факторного анализа. Проблема вот в чем:
- Как правило, исследуя что-либо мы замеряем довольно много разных показателей - в среднем около 30. А формулой, содержащей в себе 20-30 переменных неудобно пользоваться.
- Если показатели коррелируют между собой, то мы рискуем попасть в неприятную ситуацию: модель, будет хорошо описывать реальность, однако каждый отдельный показатель будет статистически незначим.
Решением будет факторный анализ - метод, с помощью которого мы можем заменить исходный набор показателей небольшим количеством факторов. Каждый такой фактор заменяет собой свой набор коррелирующих между собой переменных.
Фишкой факторного анализ (о которой, почему-то немногие знают) является возможность составить линейную модель каждого фактора. По итогу вы получите систему уравнений, которая позволяет:
- Красиво описать все взаимосвязи между исходными показателями
- Предсказывать значение выгорания с помощью набора исходных показателями
Исходные показатели, мы получаем путем опроса и психологического тестирования.
Собственно, вот такой вот незамысловатый дизайн, который я рекомендую применять вместо набивших оскомину нахождений коэффициентов корреляций всего со всем.
Здесь я прикладываю код на R. После небольшой доработки его можно будет использовать для ваших кейсов.
#1. Подгружаем библиотеки. Убедитесь, что они установлены
library(readxl) #Библиотека чтения файлов Excel
library(writexl) #Библиотека записи файлов Excel
library(psych) #Библиотека, в которой хорошо реализован факторный анализ
#2. Загружаем данные. Убедитесь, что в первом столбике - целевая переменная (та, которая предсказывается моделью)
setwd('~/R/ИССЛЕДОВАНИЯ/') #Переходим в дирректорию, где хранятся исходные данные. Поменяйте на свою
df=read_xlsx('RESEARCH Новое.xlsx') #Загружаем файл с названием исходных данных. Поменяйте на свой
df_predict=df[,-1] #Делаем датасет для факторного анализа, исключая целевую переменную
#3. Проводим факторный анализ
fa.parallel(df_predict, fa='pc') #Определяем оптимальное количество факторов параллельным анализом
fa=pca(df_predict,nfactors = 6) #Проводим факторный анализ. В nfactors ставим цифру, из результатов параллельного анализа
loadings=data.frame(row.names(fa$loadings),unclass(fa$loadings)) #Формируем факторную матрицу
weights=data.frame(row.names(fa$weights),unclass(fa$weights)) #Формируем матрицу коэффициентов уравнения фактора
#4. Считаем модель
df2=data.frame(df[,1], fa$scores) #Формируем матрицу, состоящую из целевой переменной и значений факторов
fit=lm(df2[,1]~RC1+RC2+RC3+RC4+RC5+RC6,df2,na.action = na.omit) #Считаем модель. Количество членов RC1+RC2+...RCn должно соответствовать количеству факторов
fit=step(fit) #Пошагово исключаем незначимые факторы
fit_coef=data.frame(rownames(summary(fit)$coefficients),summary(fit)$coefficients) #Формируем таблицу с коэффициентами модели
r2=data.frame(fit_sum$r.squared) #Формируем табличку с R2 (коэффициентом, оценивающим качество модели)
#5. Сохраняем результаты
list=list('Факторная матрица'=loadings,'Коэфициенты факторов'=weights, 'Коэффициенты модели'=fit_coef, 'R-квадрат'=r2) #Формируем книгу Excel
write_xlsx(list,'RESEARCH Результаты.xlsx') #Сохраняем книгу Excel
Ну и мне по-прежнему требуются испытуемые. Если есть немного времени - прошу перейти по ссылке ниже. Помимо вклада в отечественную науку, вы сможете получить результаты нескольких психологических тестов. Ну и конечно, результаты я опубликую не только в журналах, но и здесь :)
Ссылка на тест: https://goo.gl/forms/pihtVXsDLqTpj7Fj1
Подписывайтесь на Яндекс.Дзен и вступайте в группу ВК.