Корреляционный анализ

Олеся Волченко

11 ноября 2020

Что мы уже умеем

Бинарная Номинальная/ординальная Интервальная/отношений
Бинарная Тест хи-квадрат с поправкой Йетса Тест хи-квадрат t-test; тест Манна-Уитни-Вилкоксона
Номинальная/ординальная Тест хи-квадрат Тест хи-квадрат anova, тест Краскела-Уоллиса
Интервальная/отношений t-test; тест Манна-Уитни-Вилкоксона anova, тест Краскела-Уоллиса ?

Типы корреляций

Корреляция Пирсона (Pearson’s correlation)

\[ r = \frac{N \sum xy - \left(\sum x\right) \left(\sum y\right)}{\sqrt{[N \sum x^2 - (\sum x)^2][N \sum y^2 - (\sum y)^2]}} \]

Корреляция Спирмена (Spearman’s correlation)

\[r_s = 1 - \frac{6 \sum d^2}{n(n^2-1)}\]

Корреляция Кендалла (Kendall’s correlation)

\[\tau _B = \frac{n_c - n_d}{\frac{1}{2}n(n-1)}\]

Интерпретация силы связи

https://www.researchgate.net/publication/272863721_Establishing_Correlation_between_Size_Estimation_Metrics_and_Effort_-_A_Statistical_Approach/figures

Интерпретация силы связи

Correlation Coefficient Dancey & Reidy (Psychology) Quinnipiac University (Politics) Chan YH (Medicine)
+1 −1 Perfect Perfect Perfect
+0.9 −0.9 Strong Very Strong Very Strong
+0.8 −0.8 Strong Very Strong Very Strong
+0.7 −0.7 Strong Very Strong Moderate
+0.6 −0.6 Moderate Strong Moderate
+0.5 −0.5 Moderate Strong Fair
+0.4 −0.4 Moderate Strong Fair
+0.3 −0.3 Weak Moderate Fair
+0.2 −0.2 Weak Weak Poor
+0.1 −0.1 Weak Negligible Poor
0 Zero None None

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6107969/

Эмпирический пример: про алкоголь

Давайте узнаем, связано ли количество алкоголя, потребляемого по выходным, с количеством алкоголя, потребляемого по будням для жителей Великобритании.

Данные - 7 волна ESS

par(mfrow = c(1, 2))
hist(d2$alcwkdy1)
hist(d2$alcwknd1)

Проверим на нормальность

shapiro.test(d2$alcwkdy1)
## 
##  Shapiro-Wilk normality test
## 
## data:  d2$alcwkdy1
## W = 0.58301, p-value < 2.2e-16
shapiro.test(d2$alcwknd1)
## 
##  Shapiro-Wilk normality test
## 
## data:  d2$alcwknd1
## W = 0.67011, p-value < 2.2e-16

Проведем тесты

cor.test(d2$alcwkdy1, d2$alcwknd1, method = "pearson")
## 
##  Pearson's product-moment correlation
## 
## data:  d2$alcwkdy1 and d2$alcwknd1
## t = 23.875, df = 1179, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.5311421 0.6081278
## sample estimates:
##       cor 
## 0.5708885
cor.test(d2$alcwkdy1, d2$alcwknd1, method = "spearman")
## 
##  Spearman's rank correlation rho
## 
## data:  d2$alcwkdy1 and d2$alcwknd1
## S = 107694888, p-value < 2.2e-16
## alternative hypothesis: true rho is not equal to 0
## sample estimates:
##       rho 
## 0.6077193
cor.test(d2$alcwkdy1, d2$alcwknd1, method = "kendall")
## 
##  Kendall's rank correlation tau
## 
## data:  d2$alcwkdy1 and d2$alcwknd1
## z = 23.105, p-value < 2.2e-16
## alternative hypothesis: true tau is not equal to 0
## sample estimates:
##       tau 
## 0.4652268

Графики

plot(d2$alcwkdy1, d2$alcwknd1)

plot(d2$alcwkdy1, d2$alcwknd1, pch = 20)

Логарифмировать шкалы?

d2$alcwkdylog <- log(d2$alcwkdy1)
d2$alcwkndlog <- log(d2$alcwknd1)

Распределение новых переменных

par(mfrow = c(1, 2))
hist(d2$alcwkdylog)
hist(d2$alcwkndlog)

Проверим на нормальность

shapiro.test(d2$alcwkdylog)
## 
##  Shapiro-Wilk normality test
## 
## data:  d2$alcwkdylog
## W = 0.96539, p-value = 3.681e-16
shapiro.test(d2$alcwkndlog)
## 
##  Shapiro-Wilk normality test
## 
## data:  d2$alcwkndlog
## W = 0.98681, p-value = 7.608e-09

Проведем тесты

cor.test(d2$alcwkdylog, d2$alcwkndlog, method = "pearson")
## 
##  Pearson's product-moment correlation
## 
## data:  d2$alcwkdylog and d2$alcwkndlog
## t = 27.034, df = 1179, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.5821045 0.6526207
## sample estimates:
##       cor 
## 0.6186068
cor.test(d2$alcwkdylog, d2$alcwkndlog, method = "spearman")
## Warning in cor.test.default(d2$alcwkdylog, d2$alcwkndlog, method = "spearman"):
## Cannot compute exact p-value with ties
## 
##  Spearman's rank correlation rho
## 
## data:  d2$alcwkdylog and d2$alcwkndlog
## S = 107694888, p-value < 2.2e-16
## alternative hypothesis: true rho is not equal to 0
## sample estimates:
##       rho 
## 0.6077193
cor.test(d2$alcwkdylog, d2$alcwkndlog, method = "kendall")
## 
##  Kendall's rank correlation tau
## 
## data:  d2$alcwkdylog and d2$alcwkndlog
## z = 23.105, p-value < 2.2e-16
## alternative hypothesis: true tau is not equal to 0
## sample estimates:
##       tau 
## 0.4652268

Ценности из ESS

d$Conformity <- (as.numeric(d$ipfrule) + as.numeric(d$ipbhprp))/2
d$Tradition <- (as.numeric(d$ipmodst) + as.numeric(d$imptrad))/2
d$Benevolence <- (as.numeric(d$iphlppl) + as.numeric(d$iplylfr))/2
d$Universalism <- (as.numeric(d$ipeqopt) + as.numeric(d$ipudrst) 
                      + as.numeric(d$impenv))/3
d$SelfDirection <- (as.numeric(d$ipcrtiv) + as.numeric(d$impfree))/2
d$Stimulation <- (as.numeric(d$impdiff) + as.numeric(d$ipadvnt))/2
d$Hedonism <- (as.numeric(d$ipgdtim) + as.numeric(d$impfun))/2
d$Achievement <- (as.numeric(d$ipshabt) + as.numeric(d$ipsuces))/2
d$Power <- (as.numeric(d$imprich) + as.numeric(d$iprspot))/2
d$Security <- (as.numeric(d$impsafe) + as.numeric(d$ipstrgv))/2
values <- data.frame(d$Conformity, d$Tradition, d$Benevolence,
                     d$Universalism, d$SelfDirection, d$Stimulation, 
                     d$Hedonism, d$Achievement, d$Power, d$Security)

Матрица корреляций

library(sjPlot)
tab_corr(values, corr.method = "kendall")
  d.Conformity d.Tradition d.Benevolence d.Universalism d.SelfDirection d.Stimulation d.Hedonism d.Achievement d.Power d.Security
d.Conformity   0.341*** 0.208*** 0.181*** 0.051*** 0.011** 0.037*** 0.153*** 0.204*** 0.326***
d.Tradition 0.341***   0.261*** 0.231*** 0.043*** -0.026*** 0.047*** 0.069*** 0.080*** 0.316***
d.Benevolence 0.208*** 0.261***   0.422*** 0.271*** 0.151*** 0.208*** 0.154*** 0.048*** 0.251***
d.Universalism 0.181*** 0.231*** 0.422***   0.275*** 0.147*** 0.144*** 0.115*** -0.003 0.232***
d.SelfDirection 0.051*** 0.043*** 0.271*** 0.275***   0.309*** 0.262*** 0.253*** 0.147*** 0.126***
d.Stimulation 0.011** -0.026*** 0.151*** 0.147*** 0.309***   0.401*** 0.324*** 0.229*** 0.004
d.Hedonism 0.037*** 0.047*** 0.208*** 0.144*** 0.262*** 0.401***   0.290*** 0.215*** 0.099***
d.Achievement 0.153*** 0.069*** 0.154*** 0.115*** 0.253*** 0.324*** 0.290***   0.432*** 0.211***
d.Power 0.204*** 0.080*** 0.048*** -0.003 0.147*** 0.229*** 0.215*** 0.432***   0.186***
d.Security 0.326*** 0.316*** 0.251*** 0.232*** 0.126*** 0.004 0.099*** 0.211*** 0.186***  
Computed correlation used kendall-method with listwise-deletion.

Корреляция и причинность

image source: https://xkcd.com/552/

Немного веселья

https://seeing-theory.brown.edu/regression-analysis/index.html#section2

http://guessthecorrelation.com/

https://www.tylervigen.com/spurious-correlations

Итог

Бинарная Номинальная/ординальная Интервальная/отношений
Бинарная Тест хи-квадрат с поправкой Йетса Тест хи-квадрат t-test; тест Манна-Уитни-Вилкоксона
Номинальная/ординальная Тест хи-квадрат Тест хи-квадрат anova, тест Краскела-Уоллиса
Интервальная/отношений t-test; тест Манна-Уитни-Вилкоксона anova, тест Краскела-Уоллиса Корреляция