Как протестировать распределение небольших совокупности на соответствие нормальному? Очень просто! Вот простые примеры того, как это можно сделать.
#Создаём эмпирическую выборку для тестирования на соответствие гауссовскому распределению
x<-c(1.71,1.62,1.42,1.63,1.54,1.68,1.52,1.53,1.45,1.76,1.44,1.45,1.53,1.52)
#Создаём синтетическую выборку, содержащую нормально распределённые варианты с параметрами эмпирической
y<-rnorm(length(x), mean = mean(x), sd = sd(x))
# Тестируем исходные данные на соответствие нормальному распределению
library(nortest)
shapiro.test(x)
##
## Shapiro-Wilk normality test
##
## data: x
## W = 0.92428, p-value = 0.2533
ad.test(x)
##
## Anderson-Darling normality test
##
## data: x
## A = 0.45097, p-value = 0.2332
cvm.test(x)
##
## Cramer-von Mises normality test
##
## data: x
## W = 0.079829, p-value = 0.1913
sf.test(x)
##
## Shapiro-Francia normality test
##
## data: x
## W = 0.93641, p-value = 0.3157
pearson.test(x)
##
## Pearson chi-square normality test
##
## data: x
## P = 9.1429, p-value = 0.02745
ks.test(x,y)
## Warning in ks.test(x, y): cannot compute exact p-value with ties
##
## Two-sample Kolmogorov-Smirnov test
##
## data: x and y
## D = 0.21429, p-value = 0.9048
## alternative hypothesis: two-sided
lillie.test(x)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: x
## D = 0.20649, p-value = 0.1085
#Построение диаграммы квантиль-квантиль (Q-Q plot) по исходным данным
qqnorm(x)
qqline(x,col=2)
#Построение диаграммы квантиль-квантиль (Q-Q plot) по синтетическим данным для сравнения
qqnorm(y)
qqline(y,col=2)
#Построение гистограммы распределения по эмпирическим данным (по гистограмме нельзя судить о распределении ввиду малого объёма совокупности)
hist(x)
#Построение гистограммы распределения по синтетическим данным (по гистограмме нельзя судить о распределении ввиду малого объёма совокупности)
hist(y)
No comments:
Post a Comment