A) Jaki jest najlepszy pojedynczy wskaźnik stopnia, w jakim dane naruszają normalność?
B) Czy może lepiej jest mówić o wielu wskaźnikach naruszenia normalności (np. Skośność, kurtoza, występowanie wartości odstających)?
Głosowałbym za B. Różne naruszenia mają różne konsekwencje. Na przykład, unimodalne, symetryczne rozkłady z ciężkimi ogonami sprawiają, że Twoje CI są bardzo szerokie i prawdopodobnie zmniejszają moc wykrywania jakichkolwiek efektów. Średnia jednak wciąż osiąga wartość „typową”. W przypadku bardzo wypaczonych rozkładów średnia na przykład może nie być bardzo rozsądnym wskaźnikiem „wartości typowej”.
C) W jaki sposób można obliczyć przedziały ufności (a może podejście bayesowskie) dla indeksu?
Nie znam statystyk bayesowskich, ale odnośnie klasycznego testu normalności chciałbym zacytować Erceg-Hurn i in. (2008) [2]:
Innym problemem jest to, że testy założeń mają swoje własne założenia. Testy normalności zwykle zakładają, że dane są homoscedastyczne; testy homoscedastyczności zakładają, że dane są zwykle dystrybuowane. W przypadku naruszenia założeń normalności i homoscedastyczności ważność testów założeń może zostać poważnie zagrożona. Wybitni statystycy opisali testy założeń (np. Test Levene'a, test Kołmogorowa – Smirnova) wbudowany w oprogramowanie takie jak SPSS jako fatalnie wadliwy i zalecili, aby nigdy nie używać tych testów (D'Agostino, 1986; Glass & Hopkins, 1996).
D) Jakiego rodzaju słowne etykiety możesz przypisać punktom na tym indeksie, aby wskazać stopień naruszenia normalności (np. Łagodny, umiarkowany, silny, ekstremalny itp.)?
Micceri (1989) [1] przeprowadził analizę 440 dużych zestawów danych w psychologii. Ocenił symetrię i wagę ogona oraz zdefiniował kryteria i etykiety. Etykiety asymetrii wahają się od „względnie symetrycznego” do „umiarkowanego -> ekstremalnego -> wykładniczej asymetrii”. Etykiety dla zakresu masy ogona od „Jednolite -> mniej niż gaussowskie -> O Gaussowskim -> Umiarkowane -> Ekstremalne -> Podwójne wykładnicze zanieczyszczenie”. Każda klasyfikacja opiera się na wielu solidnych kryteriach.
Odkrył, że z tych 440 zestawów danych tylko 28% było względnie symetrycznych, a tylko 15% dotyczyło Gaussa w odniesieniu do masy ogona. Dlatego ładny tytuł pracy:
Jednorożec, normalna krzywa i inne nieprawdopodobne stworzenia
Napisałem R
funkcję, która automatycznie ocenia kryteria Micceri, a także drukuje etykiety:
# This function prints out the Micceri-criteria for tail weight and symmetry of a distribution
micceri <- function(x, plot=FALSE) {
library(fBasics)
QS <- (quantile(x, prob=c(.975, .95, .90)) - median(x)) / (quantile(x, prob=c(.75)) - median(x))
n <- length(x)
x.s <- sort(x)
U05 <- mean(x.s[(.95*n ):n])
L05 <- mean(x.s[1:(.05*n)])
U20 <- mean(x.s[(.80*n):n])
L20 <- mean(x.s[1:(.20*n)])
U50 <- mean(x.s[(.50*n):n])
L50 <- mean(x.s[1:(.50*n)])
M25 <- mean(x.s[(.375*n):(.625*n)])
Q <- (U05 - L05)/(U50 - L50)
Q1 <- (U20 - L20)/(U50 - L50)
Q2 <- (U05 - M25)/(M25 - L05)
# mean/median interval
QR <- quantile(x, prob=c(.25, .75)) # Interquartile range
MM <- abs(mean(x) - median(x)) / (1.4807*(abs(QR[2] - QR[1])/2))
SKEW <- skewness(x)
if (plot==TRUE) plot(density(x))
tail_weight <- round(c(QS, Q=Q, Q1=Q1), 2)
symmetry <- round(c(Skewness=SKEW, MM=MM, Q2=Q2), 2)
cat.tail <- matrix(c(1.9, 2.75, 3.05, 3.9, 4.3,
1.8, 2.3, 2.5, 2.8, 3.3,
1.6, 1.85, 1.93, 2, 2.3,
1.9, 2.5, 2.65, 2.73, 3.3,
1.6, 1.7, 1.8, 1.85, 1.93), ncol=5, nrow=5)
cat.sym <- matrix(c(0.31, 0.71, 2,
0.05, 0.18, 0.37,
1.25, 1.75, 4.70), ncol=3, nrow=3)
ts <- c()
for (i in 1:5) {ts <- c(ts, sum(abs(tail_weight[i]) > cat.tail[,i]) + 1)}
ss <- c()
for (i in 1:3) {ss <- c(ss, sum(abs(symmetry[i]) > cat.sym[,i]) + 1)}
tlabels <- c("Uniform", "Less than Gaussian", "About Gaussian", "Moderate contamination", "Extreme contamination", "Double exponential contamination")
slabels <- c("Relatively symmetric", "Moderate asymmetry", "Extreme asymmetry", "Exponential asymmetry")
cat("Tail weight indexes:\n")
print(tail_weight)
cat(paste("\nMicceri category:", tlabels[max(ts)],"\n"))
cat("\n\nAsymmetry indexes:\n")
print(symmetry)
cat(paste("\nMicceri category:", slabels[max(ss)]))
tail.cat <- factor(max(ts), levels=1:length(tlabels), labels=tlabels, ordered=TRUE)
sym.cat <- factor(max(ss), levels=1:length(slabels), labels=slabels, ordered=TRUE)
invisible(list(tail_weight=tail_weight, symmetry=symmetry, tail.cat=tail.cat, sym.cat=sym.cat))
}
t
> micceri(rnorm(10000))
Tail weight indexes:
97.5% 95% 90% Q Q1
2.86 2.42 1.88 2.59 1.76
Micceri category: About Gaussian
Asymmetry indexes:
Skewness MM.75% Q2
0.01 0.00 1.00
Micceri category: Relatively symmetric
> micceri(rt(10000, 8))
Tail weight indexes:
97.5% 95% 90% Q Q1
3.19 2.57 1.94 2.81 1.79
Micceri category: Extreme contamination
Asymmetry indexes:
Skewness MM.75% Q2
-0.03 0.00 0.98
Micceri category: Relatively symmetric
> micceri(rlnorm(10000))
Tail weight indexes:
97.5% 95% 90% Q Q1
6.24 4.30 2.67 3.72 1.93
Micceri category: Double exponential contamination
Asymmetry indexes:
Skewness MM.75% Q2
5.28 0.59 8.37
Micceri category: Exponential asymmetry
[1] Micceri, T. (1989). Jednorożec, normalna krzywa i inne nieprawdopodobne stworzenia. Biuletyn psychologiczny, 105 , 156-166. doi: 10.1037 / 0033-2909.105.1.156
[2] Erceg-Hurn, DM i Mirosevich, VM (2008). Nowoczesne, solidne metody statystyczne: Łatwy sposób na maksymalizację dokładności i siły twoich badań. American Psychologist, 63 , 591-601.