Apa indeks yang baik dari tingkat pelanggaran normalitas dan label deskriptif apa yang dapat dilampirkan pada indeks itu?

12

Konteks:

Dalam pertanyaan sebelumnya, @Robbie bertanya dalam sebuah penelitian dengan sekitar 600 kasus mengapa tes normalitas menunjukkan non-normal yang signifikan namun plot menyarankan distribusi normal . Beberapa orang menyatakan bahwa uji signifikansi normal tidak terlalu berguna. Dengan sampel kecil, tes semacam itu tidak memiliki banyak kekuatan untuk mendeteksi pelanggaran normalitas ringan dan dengan sampel besar, tes tersebut akan mendeteksi pelanggaran normalitas yang cukup kecil untuk tidak menjadi perhatian.

Tampak bagi saya bahwa masalah ini mirip dengan perdebatan seputar pengujian signifikansi dan ukuran efek. Jika Anda hanya fokus pada uji signifikansi, ketika Anda memiliki sampel besar, Anda dapat mendeteksi efek kecil yang tidak relevan untuk tujuan praktis, dan dengan sampel kecil Anda tidak memiliki kekuatan yang cukup.

Dalam beberapa contoh, saya bahkan melihat buku teks memberi tahu orang-orang bahwa Anda dapat memiliki sampel "terlalu besar", karena efek kecil akan signifikan secara statistik.

Dalam konteks, pengujian signifikansi dan ukuran efek, satu resolusi sederhana adalah untuk fokus pada memperkirakan ukuran efek yang menarik, daripada terobsesi dengan aturan keputusan biner apakah ada atau tidak efek. Interval kepercayaan pada ukuran efek adalah salah satu pendekatan seperti itu, atau Anda bisa mengadopsi beberapa bentuk pendekatan Bayesian. Selain itu, berbagai domain penelitian membangun gagasan tentang arti ukuran efek tertentu dalam arti praktis, baik atau buruk, menerapkan label heuristik seperti "kecil", "sedang", dan "efek besar". Ini juga mengarah pada rekomendasi cerdas untuk memaksimalkan ukuran sampel untuk memaksimalkan akurasi dalam memperkirakan parameter tertentu.

Ini membuat saya bertanya-tanya mengapa pendekatan serupa berdasarkan interval kepercayaan ukuran efek tidak lebih banyak didukung dalam kaitannya dengan pengujian asumsi, dan pengujian normalitas pada khususnya.

Pertanyaan:

  • Apa indeks tunggal terbaik sejauh mana data melanggar normalitas?
  • Atau apakah lebih baik untuk membicarakan beberapa indeks pelanggaran normalitas (mis. Skewness, kurtosis, prevalensi outlier)?
  • Bagaimana interval kepercayaan dapat dihitung (atau mungkin pendekatan Bayesian) untuk indeks?
  • Apa jenis label verbal yang dapat Anda tetapkan untuk poin pada indeks itu untuk menunjukkan tingkat pelanggaran normalitas (misalnya, ringan, sedang, kuat, ekstrim, dll.)? Tujuan dari label semacam itu adalah untuk membantu analis yang kurang berpengalaman dalam melatih intuisi mereka ketika pelanggaran normalitas menjadi masalah.
Jeromy Anglim
sumber
5
Pertanyaan yang menarik.
rolando2
1
p
1
@NRH Saya setuju; Inilah yang saya lakukan. Namun, saya sering memberikan konsultasi statistik kepada para peneliti dengan pengalaman yang kurang dalam menilai tingkat non-normal dari plot. Saya berpikir bahwa indeks dengan berbagai label kualitatif dapat melengkapi pelatihan intuisi visual.
Jeromy Anglim

Jawaban:

13

A) Apa indeks tunggal terbaik sejauh mana data melanggar normalitas?

B) Atau apakah lebih baik untuk membicarakan beberapa indeks pelanggaran normalitas (mis. Skewness, kurtosis, prevalensi outlier)?

Saya akan memilih B. Pelanggaran yang berbeda memiliki konsekuensi yang berbeda. Sebagai contoh, distribusi unimodal, simetris dengan ekor yang berat membuat CI Anda sangat lebar dan mungkin mengurangi kekuatan untuk mendeteksi efek. Namun, rata-rata masih menyentuh nilai "khas". Untuk distribusi yang sangat miring, mean misalnya, mungkin bukan indeks yang sangat masuk akal dari "nilai tipikal".

C) Bagaimana interval kepercayaan dapat dihitung (atau mungkin pendekatan Bayesian) untuk indeks?

Saya tidak tahu tentang statistik Bayesian, tetapi mengenai uji klasik normalitas, saya ingin mengutip Erceg-Hurn et al. (2008) [2]:

Masalah lain adalah bahwa tes asumsi memiliki asumsi sendiri. Tes normalitas biasanya mengasumsikan bahwa data adalah homoscedastik; tes homoseksualitas mengasumsikan bahwa data terdistribusi secara normal. Jika asumsi normalitas dan homoseksualitas dilanggar, validitas tes asumsi dapat dikompromikan secara serius. Ahli statistik terkemuka telah menggambarkan tes asumsi (misalnya, tes Levene, tes Kolmogorov-Smirnov) yang dibangun ke dalam perangkat lunak seperti SPSS sebagai cacat fatal dan merekomendasikan agar tes ini tidak pernah digunakan (D'Agostino, 1986; Glass & Hopkins, 1996).

D) Apa jenis label verbal yang dapat Anda tetapkan untuk poin pada indeks itu untuk menunjukkan tingkat pelanggaran normalitas (misalnya, ringan, sedang, kuat, ekstrim, dll.)?

Micceri (1989) [1] melakukan analisis terhadap 440 set data skala besar dalam psikologi. Dia menilai simetri dan bobot ekor serta kriteria dan label yang ditentukan. Label untuk rentang asimetri dari 'relatif simetris' ke 'moderat -> ekstrim -> asimetri eksponensial'. Label untuk kisaran berat ekor dari 'Seragam -> kurang dari Gaussian -> Tentang Gaussian -> Sedang -> Ekstrem -> Kontaminasi eksponensial ganda'. Setiap klasifikasi didasarkan pada beberapa kriteria yang kuat.

Dia menemukan, bahwa dari 440 kumpulan data ini hanya 28% yang relatif simetris, dan hanya 15% tentang Gaussian mengenai bobot ekor. Oleh karena itu judul makalah yang bagus:

Unicorn, kurva normal, dan makhluk mustahil lainnya

Saya menulis sebuah Rfungsi, yang secara otomatis menilai kriteria Micceri dan juga mencetak label:

# 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). Unicorn, kurva normal, dan makhluk mustahil lainnya. Buletin Psikologis, 105 , 156-166. doi: 10.1037 / 0033-2909.105.1.156

[2] Erceg-Hurn, DM, & Mirosevich, VM (2008). Metode statistik kuat modern: Cara mudah untuk memaksimalkan akurasi dan kekuatan penelitian Anda. Psikolog Amerika, 63 , 591-601.

Felix S
sumber
3
+1, ini benar-benar jawaban yang bagus. Namun, saya ingin berdalih w / 1 poin. Anda menyatakan, "distribusi unimodal, simetris dengan ekor yang berat membuat CI Anda sangat lebar dan mungkin mengurangi kekuatan untuk mendeteksi efek". Kecuali jika mereka bootstrap, CI cenderung didasarkan pada asimptotik (asumsi normal), sehingga fakta bahwa dist Anda memiliki ekor gemuk tidak berpengaruh pada lebar CI, atau kekuatan. Sebaliknya, itu berarti bahwa probabilitas cakupan empiris tidak akan cocok dengan probabilitas cakupan yang diasumsikan.
gung - Reinstate Monica