Pular para o conteúdo principal
Documentos
Compartir
LinkedIn
Facebook
Twitter
Copy
Gerenciamento de dados em REntrada de dados em RGráficos em RDocumentação RInterface REstatísticas em R

Avaliando as suposições de testes clássicos no R

Nos procedimentos paramétricos clássicos, geralmente assumimos a normalidade e a variância constante do termo de erro do modelo. Os métodos para explorar essas premissas em uma estrutura ANOVA/ANCOVA/MANOVA são discutidos aqui. Os diagnósticos de regressão são abordados na regressão linear múltipla.

Excedentes

Como os valores discrepantes podem afetar gravemente a normalidade e a homogeneidade da variância, os métodos para detectar observações discrepantes são descritos primeiro.

A função aq.plot() do pacote mvoutlier</a > permite que você identifique outliers multivariados plotando as distâncias Mahalanobis robustas quadradas ordenadas das observações em relação à função de distribuição empírica do MD2i. A entrada consiste em uma matriz ou quadro de dados. A função produz 4 gráficos e retorna um vetor booleano que identifica os outliers.

# Detect Outliers in the MTCARS Data
library(mvoutlier)
outliers <-
aq.plot(mtcars[c("mpg","disp","hp","drat","wt","qsec")])
outliers # show list of outliers

discrepantes

Normalidade univariada

Você pode avaliar a normalidade de uma variável usando um gráfico Q-Q.

# Q-Q Plot for variable MPG
attach(mtcars)
qqnorm(mpg)
qqline(mpg)

qqplot

Desvios significativos da linha sugerem violações da normalidade.

Você também pode executar um teste de normalidade Shapiro-Wilk com a função shapiro.test(x), em que x é um vetor numérico. Funções adicionais para testar a normalidade estão disponíveis no pacote nortest</a > .

Normalidade multivariada

A MANOVA pressupõe normalidade multivariada. A função mshapiro.test( ) no pacote mvnormtest</a > produz o teste de Shapiro-Wilk para normalidade multivariada. A entrada deve ser uma matriz numérica.

# Test Multivariate Normality

mshapiro.test(M)

Se tivermos um vetor aleatório normal multivariado p x 1, a distância de Mahalanobis ao quadrado entre x e μ será distribuída como qui-quadrado com p graus de liberdade. Podemos usar esse fato para construir um gráfico Q-Q para avaliar a normalidade multivariada.

# Graphical Assessment of Multivariate Normality
x <- as.matrix(mydata) # n x p numeric matrix
center <- colMeans(x) # centroid
n <- nrow(x); p <- ncol(x); cov <- cov(x);
d <-
mahalanobis(x,center,cov) # distances

qqplot(qchisq(ppoints(n),df=p),d,
  main="QQ Plot Assessing Multivariate Normality",
  ylab="Mahalanobis D2")
abline(a=0,b=1)

gráfico qq mnormal

Homogeneidade de variâncias

A função bartlett.test( ) fornece um teste de amostra K paramétrico da igualdade de variâncias. A função fligner.test( ) fornece um teste não paramétrico do mesmo. Nos exemplos a seguir, y é uma variável numérica e G é a variável de agrupamento.

# Bartlett Test of Homogeneity of Variances
bartlett.test(y~G, data=mydata)

# Figner-Killeen Test of Homogeneity of Variances
fligner.test(y~G, data=mydata)

A função hovPlot( ) do pacote HH fornece um teste gráfico de homogeneidade de variâncias com base em Brown-Forsyth. No exemplo a seguir, y é numérico e G é um fator de agrupamento. Observe que G deve ser do tipo fator.

# Homogeneity of Variance Plot
library(HH)
hov(y~G, data=mydata)
hovPlot(y~G,data=mydata)

hov

Homogeneidade das matrizes de covariância

A MANOVA e a LDF pressupõem a homogeneidade das matrizes de variância-covariância. Normalmente, a suposição é testada com o Box's M. Infelizmente, o teste é muito sensível a violações da normalidade, levando à rejeição na maioria dos casos típicos. O M de Box está disponível por meio da função boxM no pacote biotools</a > .

Para praticar

Faça o curso Introduction to Statistics in R</a > para aprimorar ainda mais suas habilidades estatísticas .