library(psych)
library(ggplot2)
library(GGally)
library(corrgram)
library(knitr)
A correlação é uma maneira estatística de observar um relacionamento. Quando duas coisas estão correlacionadas, significa que variam juntas. Uma correlação positiva significa que pontuações altas em uma estão associadas a pontuações altas da outra, assim da mesma forma caso seja baixa para uma também terá que ser baixa para outra. Em uma correlação negativa significa que as pontuações altas na primeira coisa estão associadas a pontuação baixas na segunda.
Nessa etapa vamos calcular, testar e ver a diferença entre dois coeficientes de correlação. Para depois calcular uma matriz de correlação e finalmente visualizar as matrizes. Para mostrar esse processo, vamos utilizar um dataset que conta com a pontuação de aptidão, performance e personalidade de 16 consultores FarMisjt
kable(head(FarMisht.frame, 10))
| Aptidão | Performance | Personalidade |
|---|---|---|
| 45 | 56 | 9 |
| 81 | 74 | 15 |
| 65 | 56 | 11 |
| 87 | 81 | 15 |
| 68 | 75 | 14 |
| 91 | 84 | 19 |
| 77 | 68 | 12 |
| 61 | 52 | 10 |
| 55 | 57 | 9 |
| 66 | 82 | 14 |
Para encontrar o coeficiente de correlação do relacionamento entre Apitidão e Performance, usamos a função cor()
with(FarMisht.frame, cor(Aptidão,Performance))
## [1] 0.7827927
cor(FarMisht.frame, method = "pearson")
## Aptidão Performance Personalidade
## Aptidão 1.0000000 0.7827927 0.7499305
## Performance 0.7827927 1.0000000 0.7709271
## Personalidade 0.7499305 0.7709271 1.0000000
Para encontrar um coeficiente de correlação e testá-lo ao mesmo tempo,o R fornece cor.test(). No exemplo abaixo temos um teste unicaudal. Nesse caso podemos especificar “sperarman” ou “Kendall” como método par cor.test.
with(FarMisht.frame, cor.test(Aptidão,Performance,
alternative = "greater"))
##
## Pearson's product-moment correlation
##
## data: Aptidão and Performance
## t = 4.7068, df = 14, p-value = 0.0001684
## alternative hypothesis: true correlation is greater than 0
## 95 percent confidence interval:
## 0.5344414 1.0000000
## sample estimates:
## cor
## 0.7827927
Para isso usaremos o pacote psych. Obtendo as seguintes funções e seus argumentos
O primeiro argumento é o primeiro coeficiente de correlação (FarMisht com 16 consultores). O segundo é o tamanho amostral. O terceiro é o segundo coeficiente de correlação (FarKlempt com 20 consultores). o quarto é o tamanho amostral. Os rótulos 12 para o primeiro coeficiente e 34 para o segundo indicam que os dois coeficientes são independentes.
r.test(n = 16, r12=.783, r34=.695, n2=20)
## Correlation tests
## Call:r.test(n = 16, r12 = 0.783, r34 = 0.695, n2 = 20)
## Test of difference between two independent correlations
## z value 0.53 with probability 0.6
Além de encontrar um único coeficiente de correlação, cor() podemos encontrar todos os coeficientes de correlação e formar um data frame.
cor(FarMisht.frame)
## Aptidão Performance Personalidade
## Aptidão 1.0000000 0.7827927 0.7499305
## Performance 0.7827927 1.0000000 0.7709271
## Personalidade 0.7499305 0.7709271 1.0000000
Dessa forma conseguimos visualizar as matrizes de correlação-
pairs(FarMisht.frame)
Para entender a visualização, a primeira célula a direita de aptidão é o diagrama de dispersão de aptidão, com aptidão (eixo Y) e Performance(eixo x). A célula abaixo de aptidão o cenário se inverte, o diagrama trata da Performance, com Performance(eixo y) e aptidão (eixo x)
Utilizamos o pacote GGally para utilizar a função o ggpair() ele nos da uma melhor visualização dos dados.
ggpairs(FarMisht.frame)
Apenas para critério de conhecimento, vamos utilizar um outro método de visualização, mas eu prefiro utilizar o
pairs.
O diagrama principal fornece a função densidade de cada variável, as células superiores fora da diagonal apresentam os coeficientes de correlação e as células restantes mostram os diagramas de dispersão emparelhados. Uma outra forma de visualização é através do pacote corrgram,a função corrgram() funciona como um data frame e permite que escolhamos as opções que ficam na diagonal principal(diag.panel), nas células na metade superior da matriz(upper.panel) e o que entra nas células na metade inferior da matriz(lower.panel)
corrgram(FarMisht.frame, diag.panel = panel.minmax,
upper.panel = panel.pie,
lower.panel = panel.pts)
Obrigado por acompanhar até aqui e até a proxima
LinkedIn
Medium