Le test de Kolgomorov-Smirnov, le test de Shapiro, etc. rejettent tous l'hypothèse qu'une distribution est normale. Pourtant, lorsque je trace les quantiles normaux et l'histogramme, les données sont clairement normales. Peut-être parce que la puissance des tests est élevée?
La taille de l'échantillon est d'environ 650. Donc, au moins un de ces tests ne devrait-il pas échouer à rejeter l'hypothèse nulle?
Résultats:
Kolmogorov-Smirnov D 0.05031 Pr > D <0.010
Cramer-von Mises W-Sq 0.30003 Pr > W-Sq <0.005
Anderson-Darling A-Sq 1.66965 Pr > A-Sq <0.005
Chi-Square Chi-Sq 3250.43596 18 Pr > Chi-Sq <0.001
normal-distribution
Robbie
la source
la source
Réponses:
Les tests de normalité sont une perte de temps et votre exemple illustre pourquoi. Avec de petits échantillons, le test de normalité a une faible puissance, donc les décisions sur les modèles statistiques à utiliser doivent être basées sur des connaissances a priori . Dans ces cas, le fait de ne pas rejeter le null ne prouve pas que le null soit même approximativement vrai au niveau de la population.
Lorsque vous avez de grands échantillons, les tests de normalité deviennent ridiculement puissants, mais ils ne vous disent rien que vous ne saviez pas déjà. Aucune quantité réelle n'est distribuée exactement normalement. La distribution normale n'est qu'une abstraction mathématique qui est une assez bonne approximation dans de nombreux cas. La preuve la plus simple de cela est qu'il n'y a pas de quantité réelle (du moins aucune à laquelle je puisse penser) qui pourrait prendre n'importe quel nombre réel comme valeur. Par exemple, il n'y a que tant de molécules dans l'univers. Il n'y a que tant de dollars dans la masse monétaire. La vitesse de la lumière est finie. Les ordinateurs ne peuvent stocker que des nombres d'une taille finie, donc même si quelque chose avait un support de tous les nombres réels, vous ne seriez pas en mesure de le mesurer.
Le fait est que vous saviez déjà que vos données n'étaient pas exactement distribuées normalement, mais les tests de normalité ne vous disent rien sur le caractère non normal des données. Ils ne vous donnent absolument aucune indication quant à la distribution approximative de vos données, de sorte que les méthodes d'inférence statistique qui supposent la normalité donneraient des réponses correctes. Ironiquement, les tests courants (par exemple le test T et l'ANOVA) qui supposent la normalité sont plus robustes que la non-normalité à des échantillons de grande taille.
la source
Cela ne me surprend pas --- avec un échantillon suffisamment grand, tout bon test devrait rejeter l'hypothèse nulle, à moins que la distribution de génération de données ne soit vraiment (et exactement) normale.
Avec le test d'hypothèse, on est généralement intéressé à trouver un test "puissant", qui est un test qui peut trouver de très petits écarts par rapport à l'hypothèse nulle, avec le moins de données possible.
Essayez d'exécuter le test avec un sous-échantillon de taille 20, 50, 100, 200 et voyez à quelle taille les tests commencent à être rejetés. Il est facile de voir si un histogramme est symétrique et généralement en forme de cloche, mais les queues de la distribution sont plus difficiles à évaluer à l'œil nu. Peut-être qu'il y a des valeurs aberrantes dans les données qui provoquent le rejet des tests? S'il y en a, voyez ce qui se passe lorsque vous les taillez.
la source
La cause probable est que vos données sont très légèrement non normales et que la taille de votre échantillon est suffisamment grande pour le révéler.
Si la distribution est vraiment normale, elle doit généralement passer ces tests, comme dans l'exemple R suivant où tous les tests sauf un sont réussis.
Vous voudrez peut-être faire un qqplot et si cela est assez proche d'une ligne droite, vous pouvez décider de le traiter comme étant assez proche de la normalité pour vos besoins. Cela dépend plutôt de ces objectifs.
la source
Je ne suis pas d'accord avec la réponse de dsimcha: "Les tests de normalité sont une perte de temps et votre exemple illustre pourquoi.". Les tests de normalité ne sont jamais une perte de temps, vous pouvez toujours apprendre de vos données. De plus, vous devez tester certaines conditions avant d'effectuer une analyse (c.-à-d. ANOVA, régression, etc.). Il est préférable de tester des tailles d'échantillon relativement grandes avec un tracé (QQplot, histogramme). Dans de tels cas, la visualisation donne beaucoup plus d'informations sur le comportement multimodal, etc.
L'ANOVA et la régression sont robustes à la non-normalité lorsqu'il s'agit de grands échantillons, mais le principal type de données qui pose problème est les échantillons de données multimodaux.
Avec un échantillon de petite taille, le test de Kolgomorov-Smirnov est la meilleure option, principalement en raison de sa sensibilité.
la source
Je vais être légèrement en désaccord avec les autres réponses publiées jusqu'à présent: ces tests de normalité ont notoirement peu de pouvoir, même avec des échantillons de taille relativement grande, du moins pour certains types d'écarts.
Voici un petit exemple. J'ai généré un mélange de deux normales dont les moyennes sont séparées par un sd entier.
Considérant qu'il "détecterait" 5% des écarts par rapport à la normalité même si c'était vraiment normal, ce n'est pas très impressionnant.
Voici un autre exemple: j'ajoute un bruit uniforme sur une plage de la taille de deux écarts-types. Celui-ci est visiblement non normal.
Encore une fois, une puissance extrêmement faible pour un écart assez important par rapport à la normalité.
Êtes-vous sûr de lire correctement le qqplot? Pourriez-vous le télécharger afin que nous puissions le voir?
Modifier d'autre part, la régression est assez robuste à la non-normalité, donc je conviens que l'inspection visuelle est probablement suffisante pour la plupart des objectifs.
la source