1. Grâce à ce formulaire vous pouvez proposer une astuce ou un script sur R.
  2. Votre script doit pouvoir être lancé en l'état. Veuillez penser à :
    • inclure le chargement des "library" nécessaires
    • construire un petit jeu de données si besoin est.
    • commenter les lignes de codes pour en faciliter la compréhension.
  3. Le titre de votre script ou astuce doit être clair et explicite.
  4. Pensez à mettre votre code entre les balises [R] et [/R]; Pour cela, vous pouvez utiliser le bouton

Vous pouvez utiliser vos comptes Facebook, twitter ou google pour vous identifer (google est compatible yahoo, openID...)
L'ideal étant de vous connecter si vous avez un compte utilisateur, ou faire une demande de compte utilisateur si vous n'en avez pas encore.
Créer un compte va vous permettre de pouvoir éditer vos codes et de mettre en avant votre site internet.
Sinon vous pouvez soumettre anonymement en remplissant les champs ci-après.







Choisissez les catégories correspondantes à votre Code:

  • algorithmique
  • Analyse de survie
  • base indispensable
  • bayésien
  • configuration de R
  • exportation de données
  • fonctions utiles
  • graphique
  • importation de données
  • inférence
  • manipulation de données
  • message d'erreur
  • modélisation
  • Non classé
  • optimisation
  • planification
  • programmer avec R
  • regression linéaire
  • Test
  • tidyverse
  • Transformation de données


Comment faire un test de normalité avec R ? : Le test de Shapiro-Wilk

6
dans base indispensable, Test
Le test de Shapiro-Wilk teste l’hypothèse nulle selon laquelle l’échantillon est issu d’une population normalement distribuée.
Si la p-value est inférieure au niveau alpha fixé (souvent 0.05) alors on rejette l’hypothèse nulle et on en conclut que l’échantillon est issu d’une population qui n’est pas normalement distribuée.

Voici un exemple avec R :

 
 
#on simule des échantillons
 
#d issu d'une loi normale
d<-rnorm(100, mean = 5, sd = 3)
 
#e issu d'une loi uniforme
e<-runif(100, min = 2, max = 4)
 
# on réalise un test de shapiro
 
shapiro.test(d)
qqnorm(d) #p=0.35 on ne rejette pas l'hypothèse et on vérifie avec un QQplot
 
shapiro.test(e)
qqnorm(e) # p=0.00036 on rejette l'hypothèse et on vérifie avec un QQplot
 
 


Ce test n’est qu’un test parmi les autres, n’hésitez pas à en utiliser d’autres avant de tirer des conclusions (par exemple faire des QQplot).

Proposé par Melen.

Ce script vous à rendu service? remerciez l'auteur en votant ici:
- ça ne sert à rien -- c\'est interessant - (score de +20 sur 22 votes)
Loading ... Loading ...

6 Comments

  1. Vincent
    Posté le 14 novembre 2011 a 11 h 30 min | Permalink

    Je ne suis pas vraiment d’accord avec la formulation

    « Si la p-value est inférieure au niveau alpha fixé (souvent 0.05) alors on rejette l’hypothèse nulle et on en conclut que l’échantillon est issu d’une population qui n’est pas normalement distribuée. »

    En fait , on ne peut juste pas affirmer que l’échantillon est issu d’une population normalement distribuée. La nuance est trés importante. (voir la notion de puissance de test)

    Autre point, beaucoup de gens ( et même de trés bons statisticiens par ailleurs) ne jurent que par la normalité des données, et s’envolent dans test non-apramétriques improbables.En pratique les tests classiques (student, fisher et anova) sont extremement robuste à la non normalités des données. Et pour rappel au dela de 15 tirages dans n’importe quelle type de loi ( poisson, bimodale , uniforme) on obtient une distribution qui ressemble quand même beaucoup  à une loi normale…. Il n’est donc que trés rarement judicieux de « s’embeter » avec ce type de test…

  2. Posté le 14 novembre 2011 a 12 h 10 min | Permalink

    Je suis d’accord avec ces commentaires. Il n’y a qu’à tester Shapiro sur des données simulées pour ce rendre compte de la fiabilité de ce test…

  3. BOUDA
    Posté le 26 mai 2012 a 8 h 37 min | Permalink

    Bonjour,
    je début avec R et à chaque fois que des exemples de test sont donnés les vecteurs a tester sont de la même longueur
    mais en réalité on peut avoir, pour pas dire souvent, des vecteurs de longueurs différente

    ma question est donc: comment tester deux vecteur de longueur différente
                                     pont on éliminer des données pour que les deux vecteur soit de la même longueur

    merci a vous

  4. bouda
    Posté le 27 mai 2012 a 9 h 03 min | Permalink

    Bonjour

    Quand les vecteurs testés n’ont pas la même longueur on fait comment…????

  5. Vincent
    Posté le 26 juin 2012 a 17 h 30 min | Permalink

    @bouda meme longueur que quoi? vous voulez comparer quoi?

  6. Marc-André
    Posté le 9 avril 2016 a 0 h 57 min | Permalink

    Bonjour,j’ai une distribution de valeur saisonnière de pluie Pluie=c(100,40,102,104,168,168,166,78,91,78,133,182,235,159,211,258,205,303,188,85,100,162,97,230,207,84,45,114,191,201,126,255,152,19,227) j’ai programmé une dynamique de la population de gnous où ma formule de N à chaque pas de temps fait intevenir une valeur stochastique de Pluie.Je voudrais tirer une valeur aléatoire donc à chaque pas de temps mais la fonction rnorm sous-entend que ma distribution suit une loi normale, pour des valeur de pluie ça m’étonnerait.est-ce que quelqu’un aurait une solution?

Poster un commentaire


Votre email ne seras jamais communiqué champs requis désigné par une *

*
*


neuf − 4 =

Formation logiciel R