Correlações no R
Você pode usar a função cor( ) para produzir correlações e a função cov( ) para produzir covariâncias.
Um formato simplificado é cor(x, use=, method= ) em que
Opção | Descrição |
x | Matriz ou quadro de dados |
uso | Especifica o tratamento de dados ausentes. As opções são all.obs (assume que não há dados faltantes - dados faltantes produzirão um erro), complete.obs (exclusão em lista) e pairwise.complete.obs (exclusão em pares) |
método | Especifica o tipo de correlação. As opções são pearson, spearman ou kendall. |
# Correlations/covariances among numeric variables in
# data frame mtcars. Use listwise deletion of missing data.
cor(mtcars, use="complete.obs", method="kendall")
cov(mtcars, use="complete.obs")
Infelizmente, nem cor( ) nem cov( ) produzem testes de significância, embora você possa usar a função cor.test( ) para testar um único coeficiente de correlação.
A função rcorr( ) do pacote Hmisc produz correlações/covariâncias e níveis de significância para correlações de Pearson e Spearman. No entanto, a entrada deve ser uma matriz e a exclusão por pares é usada.
# Correlations with significance levels
library(Hmisc)
rcorr(x, type="pearson") # type can be pearson or spearman
#mtcars is a data frame
rcorr(as.matrix(mtcars))
Você pode usar o formato cor(X, Y) ou rcorr(X, Y) para gerar correlações entre as colunas de X e as colunas de Y. Isso é semelhante aos comandos VAR e WITH no SAS PROC CORR.
# Correlation matrix from mtcars
# with mpg, cyl, and disp as rows
# and hp, drat, and wt as columns
x <- mtcars[1:3]
y <- mtcars[4:6]
cor(x, y)
Outros tipos de correlações
# polychoric correlation
# x is a contingency table of counts
library(polycor)
polychor(x)
# heterogeneous correlations in one matrix
# pearson (numeric-numeric),
# polyserial (numeric-ordinal),
# and polychoric (ordinal-ordinal)
# x is a data frame with ordered factors
# and numeric variables
library(polycor)
hetcor(x)
# partial correlations
library(ggm)
data(mydata)
pcor(c("a", "b", "x", "y", "z"), var(mydata))
# partial corr between a and b controlling for x, y, z
Visualização de correlações
Use corrgram( )para traçar correlogramas.
Use pairs()ou splom( )para criar matrizes de gráficos de dispersão.
Para praticar
Experimente este curso interativo sobre Aprendizagem Supervisionada em R: Regressão