library(psych)
<- c("score1", "score2", "score")
vars
<- corr.test(
cm x = pss[vars], method = "pearson",
adjust = "hochberg"
)
print(
digits = 3, short = FALSE
cm, )
Кореляційний аналіз
Неперервні змінні
У вітчизняній психології кореляційні дослідження зустрічаються значно частіше за експериментальні, тому у більшості публікацій наводяться результати парного кореляційного аналізу. Оскільки коефіцієнт кореляції вже є показником величини ефекту, для врахування сучасних методологічних вимог нам потрібно частіше: 1) Планувати об’єм вибірки у відповідності до очікуваної сили зв’язку; 2) Наводити в публікаціях довірчі інтервали для коефіцієнтів кореляції; 3) Використовувати корекцію на множинні порівняння при проведенні пошукових досліджень. Ось приклад того, як кореляційний аналіз можна провести в R за допомогою функції corr.test() з пакету psych:
Фрагмент коду 10. Кореляційний аналіз
Першим аргументом функції є таблиця даних. В квадратних дужках після імені таблиці можна вказати вектор номерів або імен змінних, які беруть участь в кореляційному аналізі – в даному прикладі це змінні у стовпчиках з другого по п’ятий. Аргумент method вказує функції, який саме з трьох коефіцієнтів кореляції має бути обчислений: Пірсона, Спірмена чи Кендала. Аргументу adjust передають назву метода корекції статистичної значущості з врахуванням кількості змінних (в даному прикладі це сучасний метод Хохберга). Для виведення довірчих інтервалів результати кореляційного аналізу, записані в об’єкті cm, мають друкуватися з опцією short = FALSE). Поглянемо на те, як між собою пов’язані перші чотири питання з шкали PSS:
Таблиця 8. Кореляційна матриця
Correlation matrix
score1 score2 score
score1 1.000 0.615 0.941
score2 0.615 1.000 0.846
score 0.941 0.846 1.000
Sample Size
[1] 462
Probability values (Entries above the diagonal are adjusted for multiple tests.)
score1 score2 score
score1 0 0 0
score2 0 0 0
score 0 0 0
Confidence intervals based upon normal theory.
To get bootstrapped values, try cor.ci
raw.lower raw.r raw.upper raw.p lower.adj upper.adj
scor1-scor2 0.555 0.615 0.668 0 0.540 0.680
scor1-score 0.929 0.941 0.950 0 0.927 0.952
scor2-score 0.817 0.846 0.870 0 0.811 0.875
Як можна бачити, сила лінійного зв’язку між індикаторами шкали PSS коливається від середньої (b1 і b4) до сильної (b2 і b3). При змістовній інтерпретації кореляцій слід враховувати те, що сильний зв’язок може бути наслідком схожості питань.
В наступній таблиці міститься матриця р-значень, на основі яких дослідник приймає рішення про те, яку з двох гіпотез слід обрати: нульову – в популяції коефіцієнт кореляції в точності дорівнює нулю, чи альтернативну – в популяції кореляція відрізняється від нульової. При цьому значення вище діагоналі скориговані на кількість здійснених перевірок. Оскільки всі елементи в цій частині матриці наближаються до нуля, кореляційні коефіцієнти залишилися статистично значущими, навіть не зважаючи на корекцію:
Таблиця 9. Статистична значущість коефіцієнтів кореляції
Нарешті, в останній таблиці містяться 95-відсоткові довірчі інтервали для коефіцієнтів кореляції змінних у популяції. Так, оцінка сили зв’язку питань b1 і b2 в популяції перебуває у діапазоні від 0.357 (посередній ефект) до 0.505 (сильний ефект). Отже, довірчий інтервал є достатньо широким, незважаючи на велику вибірку. Таке подання дозволяє іншим дослідникам розуміти, з якою точністю вдалося оцінити величину ефекту у конкретному дослідженні.
Таблиця 10. Довірчі інтервали для коефіцієнтів кореляції Пірсона
Зв’язок категоріальних змінних
Застосування коефіцієнтів кореляції Пірсона до змінних, виміряних у п’ятибальній шкалі, суперечить припущенням, які лежать в основі цієї статистики: метрична шкала вимірювання змінних, лінійність зв’язку і двовимірний нормальний розподіл. Більш коректним і інформативним підходом в цьому випадку є побудова таблиці сполучення (contingency table) і вивчення нелінійного зв’язку в ній. Побудувати таку таблицю в R можна, наприклад, за допомогою функції contTables() з пакету jmv:
Фрагмент коду 11. Побудова таблиці сполучення
library(jmv)
contTables(
rows = b3, cols = sex, data = pss,
phiCra = TRUE, taub = TRUE, pcCol = TRUE
)
Аргументи функції вказують, які змінні відповідають рядкам (rows) і стовпчикам таблиці (cols), чи слід обчислювати показник сили зв’язку φ та V Крамера (phiCra) і виводити відсотки, обчислені по стовпчиках таблиці (pcCol).
Як показав такий аналіз, найтісніший зв’язок між статтю досліджуваного і індикаторами шкали суб’єктивного стресу існує для третього питання: «Як часто протягом останнього місяця ви відчували себе знервованим чи в стані стресу?» . Наприклад, відповідь з кодом 4 – «Дуже часто» – дають 32.6% чоловіків (біля третини) і 46.8% жінок (біля половини). Статистика χ² (хі-квадрат) має значення 24.7 при чотирьох ступенях свободи, що є статистично значущим показником на рівні α = 0.001 і дозволяє відкинути нульову гіпотезу про те, категоріальні змінні не пов’язані в популяції студентів НаУКМА в 2019 році.
Таблиця 11. Таблиця сполучення і критерій χ²
CONTINGENCY TABLES
Contingency Tables
──────────────────────────────────────────────────────────
b3 Чоловіки Жінки Total
──────────────────────────────────────────────────────────
0 Observed 7 2 9
% within column 5.2 0.6 1.9
1 Observed 22 21 43
% within column 16.3 6.4 9.3
2 Observed 30 55 85
% within column 22.2 16.8 18.4
3 Observed 32 96 128
% within column 23.7 29.4 27.7
4 Observed 44 153 197
% within column 32.6 46.8 42.6
Total Observed 135 327 462
% within column 100.0 100.0 100.0
──────────────────────────────────────────────────────────
χ² Tests
───────────────────────────────
Value df p
───────────────────────────────
χ² 27.4 4 < .001
N 462
───────────────────────────────
Nominal
────────────────────────────
Value
────────────────────────────
Phi-coefficient NaN
Cramer's V 0.244
────────────────────────────
Kendall's Tau-b
─────────────────────────────────────
Kendall's Tau-B t p
─────────────────────────────────────
0.182 4.23 < .001
─────────────────────────────────────
Висновку про наявність статистично значущого зв’язку замало для сучасного дослідження, тому за допомогою функції v.chi.sq() з пакету MOTE ми можемо побудувати довірчий інтервал для V Крамера – міри сили зв’язку номінальних категоріальних змінних. Для її аргументів візьмемо інформацію з вищенаведених таблиць:
Фрагмент коду 12. Побудова довірчих інтервалів для V Крамера і w Коена
library(MOTE)
<- v.chi.sq(
v x2 = 27.404, n = 462,
r = 5, c = 2
)
unlist(v[1:3])
# w Коена
unlist(v[1:3]) * sqrt(2 - 1)
v vlow vhigh
0.244 0.164 0.336
v vlow vhigh
0.244 0.164 0.336
В результаті отримаємо такі статистики: V = .24, 95% CI [.14, .26] та χ^2(8) = 27.40, p < .001 (подання у стилі АПА). Завдяки простому перетворенню з V також можна отримати значення показника w Коена: w = 0.24, 95% CI [.16, .34]. Отже, мова тут йде про зв’язок середньої сили, який в популяції може виявитися і слабким.