SlideShare ist ein Scribd-Unternehmen logo
1 von 143
Downloaden Sie, um offline zu lesen
Aide-mémoire de statistique
  appliquée à la biologie
    – Construire son Ă©tude et analyser les
      rĂ©sultats Ă  l’aide du logiciel R –




              Maxime HERVÉ
                Version 4(2)
                    2012
              (Version 1 2010)
Avant-propos
    Quand j’ai dĂ©butĂ© mon stage de recherche de Master 2 (il n’y a pas si
longtemps), je n’y connaissais rien en stats et je ne m’en portais pas plus mal.
Comme tout bon Ă©tudiant en biologie, je n’avais pas Ă©tĂ© frappĂ© par la beautĂ©
de la chose. Mais il arrive inĂ©vitablement un moment oĂč l’on se rend compte
que l’on DOIT passer par des analyses statistiques. Ce moment est souvent
douloureux, et ïŹnalement c’est bien dommage car avec un peu de rigueur et
de volontĂ© ce n’est pas si diïŹƒcile de s’en sortir.
    Pour ne pas mourir ignorant, j’ai dĂ©cidĂ© de me former dans mon coin Ă  la
statistique appliquée à la biologie. Je me suis alors confronté à un problÚme
qui m’a fait perdre beaucoup de temps, un temps que la plupart des stagiaires
n’ont pas : il existe de trùs nombreux et trùs bons documents sur le sujet,
mais trĂšs peu qui regroupent les analyses les plus frĂ©quentes. AïŹn de ne pas
oublier tout ce que j’avais appris par-ci, par-lĂ , j’ai donc voulu me rĂ©diger un
petit document de synthĂšse. Finalement, j’ai dĂ©cidĂ© d’en faire un vĂ©ritable
aide-mĂ©moire et de le mettre Ă  la disposition des autres Ă©tudiants. L’objectif
(ambitieux) de cet ouvrage est ainsi d’ĂȘtre pour vous le guide que j’aurais aimĂ©
avoir lors de mon stage. Il doit vous permettre de vous en sortir seul, tout en
assurant une analyse appropriée et rigoureuse.

    Utiliser cet aide-mémoire ne demande que trÚs peu de connaissances en
statistiques. Savoir ce que sont une moyenne, une variance, une médiane ou
un intervalle de conïŹance est suïŹƒsant. Par contre, il exige une chose : se poser
des questions. A quelle question mon étude doit-elle répondre ? Quel dispositif
vais-je mettre en place pour y répondre ? Que vais-je contrÎler, que vais-je
observer dans l’étude ? Comment vais-je utiliser mes rĂ©sultats pour tirer des
conclusions ?. . . Si l’on prend le temps de se poser ces questions, et surtout le
temps d’y apporter une rĂ©ponse, analyser ses donnĂ©es n’est pas compliquĂ©. Vous
verrez mĂȘme qu’il est trĂšs agrĂ©able de comprendre ce que l’on fait, et pourquoi
on le fait. Peut-ĂȘtre mĂȘme que comme moi, vous prendrez goĂ»t aux statistiques !

    Pour rĂ©aliser l’analyse des rĂ©sultats, j’ai choisi d’utiliser R, qui est Ă  la fois
un langage informatique et un logiciel. J’ai fait ce choix car il est gratuit et libre,
ce qui vous permet de l’utiliser absolument partout. De plus, il est extrĂȘmement
puissant et son caractùre libre fait que de nombreux utilisateurs s’investissent
pour l’amĂ©liorer et l’enrichir en permanence. EnïŹn, passĂ© le dĂ©goĂ»t Ă©ventuel
d’avoir Ă  Ă©crire soi-mĂȘme des lignes de commande, vous verrez que R est
simple à utiliser et que mieux, il permet (car il l’oblige) de comprendre ce que
l’on fait.
    Comme pour la thĂ©orie statistique, utiliser cet aide-mĂ©moire n’exige que
trÚs peu de connaissances sur R. Il nécessite seulement de savoir créer les objets
de base du langage (vecteur, tableau, matrice) et de savoir eïŹ€ectuer des mani-
pulations simples sur ces objets. Si ces bases ne sont pas acquises, les premiĂšres
ïŹches sont lĂ  en guise de rappel. N’oubliez pas Ă©galement qu’à chaque fonction
dans R est associĂ©e une page d’aide, que l’on appelle par la syntaxe ?fonction.

    Il est trĂšs important pour moi d’ĂȘtre en contact avec les utilisateurs de
cet aide-mĂ©moire, car c’est grĂące Ă  cela que je peux l’amĂ©liorer. Je remercie
donc toutes les personnes qui m’écrivent pour me poser des questions ou pour
rectiïŹer des erreurs. Ce sont elles qui me donnent envie de clariïŹer, d’enrichir
et de corriger ce document. Je vous invite sincùrement à m’envoyer un e-mail
(mx.herve@gmail.com) si vous trouvez qu’un point n’est pas clair, qu’un autre
mĂ©riterait d’ĂȘtre ajoutĂ© ou approfondi, ou encore qu’il subsiste des erreurs.

    Certaines des fonctions prĂ©sentĂ©es dans cet ouvrage nĂ©cessitent d’installer
des packages qui ne sont pas fournis avec la distribution de base de R. Parmi
ceux-ci se trouve le package RVAideMemoire, qui contient des fonctions que j’ai
écrites spécialement pour accompagner cet aide-mémoire. Son développement
est donc intimement lié à celui de ce document, et là encore je vous encourage
Ă  me faire part de vos remarques, suggestions, critiques et/ou corrections.
Cette version 4(2) de l’aide-mĂ©moire correspond aux versions du package
RVAideMemoire ≄ 0.9-11.

   EnïŹn, si vous souhaitez ĂȘtre au courant de la sortie de nouvelles versions
de l’aide-mĂ©moire ou du package RVAideMemoire, envoyez-moi un message
que je vous inscrive sur la liste de diïŹ€usion.

   J’espùre sincùrement que ce livre comblera vos attentes et qu’il vous per-
mettra de vous sentir moins seul dans le joyeux monde des statistiques.


                                                                Le 2 août 2012

                                                              Maxime HERVÉ
Sommaire
    L’ouvrage est divisĂ© en cinq parties :
    Un rappel sur les objets de base du langage R : ce document n’est
pas Ă  proprement parler une initiation Ă  R, cependant quelques rappels sont
proposĂ©s sur la crĂ©ation et l’utilisation des objets qu’il faut maĂźtriser.
    La prĂ©paration de l’étude : souvent trop peu d’importance y est at-
tachĂ©e. Pourtant, cette phase est au moins aussi cruciale que l’analyse des
rĂ©sultats puisqu’elle dĂ©termine la façon dont ceux-ci vont pouvoir ĂȘtre analysĂ©s.
Une Ă©tude bien prĂ©parĂ©e facilite grandement l’exploitation des rĂ©sultats, tandis
qu’une Ă©tude mal prĂ©parĂ©e entraĂźne gĂ©nĂ©ralement des complications au moment
de l’analyse et de l’interprĂ©tation.
    La prĂ©paration et l’importation des donnĂ©es : cette Ă©tape apparem-
ment simple peut poser problĂšme par manque d’expĂ©rience. Elle est pourtant
cruciale, puisque des données mal structurées ou mal importées dans R peuvent
conduire à une analyse complÚtement faussée (ou le plus souvent à des erreurs).
    L’analyse descriptive des rĂ©sultats : ce type d’analyse est toujours
indispensable, et selon l’objectif de l’étude il peut ĂȘtre suïŹƒsant. L’analyse
descriptive est souvent négligée pour « foncer sur les tests », ce qui conduit à
oublier la réalité des données (et par conséquent à compliquer voire fausser
l’interprĂ©tation des rĂ©sultats).
    L’analyse infĂ©rentielle des rĂ©sultats : ce type d’analyse regroupe la
dĂ©termination des intervalles de conïŹance et la rĂ©alisation des tests statistiques.
L’analyse infĂ©rentielle est la seule phase de l’étude qui est facultative. Dans
tous les cas elle doit passer aprùs l’analyse descriptive.


1. LES OBJETS DE BASE DANS R
1. Les vecteurs
2. Les tableaux
3. Les matrices
4. Installer et charger un package
5. Citer R et ses packages

2.   PREPARATION DE L’ETUDE
6.   Les diïŹ€Ă©rents types de variable
7.   Le plan d’échantillonnage
8.   Le plan d’expĂ©rience
9.   La dĂ©termination de la taille de l’échantillon Ă  constituer

3. PREPARATION ET IMPORTATION DES DONNEES
10. La construction du tableau de données
11. L’importation du tableau de donnĂ©es dans R
4. ANALYSE DESCRIPTIVE DES RESULTATS
   4.1. Statistique univariée
12. Graphiques de dispersion : la fonction stripchart()
13. Histogrammes : la fonction hist()
14. BoĂźtes Ă  moustaches : la fonction boxplot()
15. La réduction des données à une dimension

   4.2. Statistique bivariée
16. Nuages de points : la fonction plot()
17. La réduction des données à deux dimensions

      4.3. Statistique multivariée

                  Choisir son analyse descriptive multivariée


                                         Type de variables
                                            explicatives


                      Toutes          Toutes                      A la fois quantitatives
                    quantitatives   qualitatives                      et qualitatives



                                            Nombre de                     Analyse mixte
                  ACP
                                             variables                    de Hill et Smith


                                                             >2
                                     2




                          AFC                                         ACM




18.   L’Analyse en Composantes Principales (ACP)
19.   L’Analyse Factorielle des Correspondances (AFC)
20.   L’Analyse des Correspondances Multiples (ACM)
21.   L’Analyse mixte de Hill et Smith
22.   Les classiïŹcations automatiques
5. ANALYSE INFERENTIELLE DES RESULTATS
   5.1. Quelques bases théoriques
      5.1.1. Lois de probabilité
          5.1.1.1. Lois de probabilité discontinues
23. Les lois de probabilitĂ© discontinues – gĂ©nĂ©ralitĂ©s
24. La loi binomiale
25. La loi de Poisson
26. La loi binomiale négative
            5.1.1.2. Lois de probabilité continues
27.   Les lois de probabilitĂ© continues – gĂ©nĂ©ralitĂ©s
28.   La loi normale
29.   La loi exponentielle
30.   La loi de χ2
31.   La loi de Fisher - Snedecor
32.   La loi de Student
        5.1.2. Risques et puissance associés aux tests statistiques
33.   Principe des tests statistiques et risques associés à la conclusion
34.   Le risque ou seuil de rejet α
35.   La correction du seuil de rejet α (ou des p-values)
36.   Le risque ÎČ et la puissance du test
37.   Calculer la puissance d’un test a posteriori

   5.2. IdentiïŹcation et suppression des donnĂ©es aberrantes
38. L’identiïŹcation et la suppression des donnĂ©es aberrantes

   5.3. Intervalles de conïŹance et erreur standard
39. L’intervalle de conïŹance et l’erreur standard
40. Tracer un diagramme en barres avec barres d’erreur

   5.4. Tests d’hypothùses
41. Les diïŹ€Ă©rents types de test statistique
      5.4.1. Conditions prĂ©alables Ă  l’utilisation des tests
   Ces conditions ne sont pas toujours Ă  remplir, cela dĂ©pend du test que l’on
souhaite utiliser.
42. Le caractĂšre alĂ©atoire et simple d’une sĂ©rie de donnĂ©es
43. L’ajustement Ă  une distribution thĂ©orique
44. L’homogĂ©nĂ©itĂ© des variances de plusieurs sĂ©ries de donnĂ©es
45. Les transformations de variable
5.4.2. RĂ©alisation des tests
    Souvent, plusieurs tests peuvent ĂȘtre utilisĂ©s pour rĂ©pondre Ă  la mĂȘme
question. Les conditions de leur emploi sont cependant plus ou moins restric-
tives, et leur puissance plus ou moins grande (un test plus restrictif Ă©tant
généralement plus puissant). Lorsque plusieurs tests sont disponibles, un arbre
de dĂ©cision est prĂ©sentĂ© pour aider Ă  choisir le test appropriĂ©. Il s’appuie
Ă  la fois sur la vĂ©riïŹcation des conditions Ă  remplir pour utiliser tel ou tel
test, ainsi que sur la « qualité » de ces tests (notamment en terme de puissance).

          5.4.2.1. Statistique univariée

                       Choisir son analyse inférentielle univariée


                                                           Variable Ă 
                                                           expliquer


                                                                                 qualitative

                                                     quantitative



                            Type de variables                                       Type de variable
                               explicatives                                           Ă  expliquer


                                                                                                           autre
              Toutes                                 A la fois quantitatives
            quantitatives      Toutes                    et qualitatives
                                                                                               binaire
                             qualitatives

                                     Comparaison
                                                          Analyse de la             Type de
                                      d'effectifs,                                                        Non développé
             RĂ©gression                                     covariance             variables
                                     proportions,                                                        dans cet ouvrage
                                                           (sens large)           explicatives
                                      moyennes


                                       Toutes                                    Toutes             A la fois quantitatives
                                     quantitatives                             qualitatives             et qualitatives



                                                       Comparaison de                            Analyse de la
                   RĂ©gression
                                                        probabilités de                            covariance
                    logistique
                                                           réponse                                (sens large)




Tests sur des probabilités de réponse (variables binaires 0/1)
    Le test de conformitĂ© d’une ou de plusieurs probabilitĂ©(s) de rĂ©ponse avec
une ou plusieurs valeur(s) théorique(s) est une démarche identique à celle du
test de conformité de proportion(s).
46. Comparaison de plusieurs probabilitĂ©s de rĂ©ponse – un facteur
47. Comparaison de plusieurs probabilitĂ©s de rĂ©ponse – deux facteurs
Tests sur des eïŹ€ectifs
48. ConformitĂ© de plusieurs eïŹ€ectifs avec des valeurs thĂ©oriques
49. Comparaison de plusieurs eïŹ€ectifs – sans facteur (eïŹ€ectifs bruts)
50. Comparaison de plusieurs eïŹ€ectifs – un facteur
51. Comparaison de plusieurs eïŹ€ectifs – deux facteurs

Tests sur des proportions
52. ConformitĂ© d’une proportion avec une valeur thĂ©orique
53. Conformité de plusieurs proportions avec des valeurs théoriques
54. Comparaison de deux proportions – sans rĂ©pĂ©tition
55. Comparaison de plusieurs proportions – sans rĂ©pĂ©tition
56. Comparaison de plusieurs proportions – avec rĂ©pĂ©titions et un facteur
57. Comparaison de plusieurs proportions – avec rĂ©pĂ©titions et deux facteurs

Tests sur des moyennes
58. ConformitĂ© d’une moyenne avec une valeur thĂ©orique
59. Comparaison de deux moyennes
60. Comparaison de plusieurs moyennes – un facteur
61. Comparaison de plusieurs moyennes – deux facteurs

Tests sur des temps de survie
   Ces tests sont traditionnellement utilisés pour comparer des temps de
survie, mais ils peuvent ĂȘtre appliquĂ©s Ă  n’importe quelle variable reprĂ©sentant
un temps avant la survenue d’un Ă©vĂšnement.
62. Comparaison de plusieurs temps de survie
63. Tracer des courbes de survie
          5.4.2.2. Statistique bivariée
Tests autour de la liaison entre deux variables
64. Indépendance de deux variables qualitatives
65. Corrélation entre deux variables
66. ConformitĂ© d’un coeïŹƒcient de corrĂ©lation linĂ©aire avec une valeur thĂ©orique
67. Comparaison de plusieurs coeïŹƒcients de corrĂ©lation linĂ©aire

Tests autour de la régression
68. La régression linéaire simple au sens des moindres carrés
69. La régression linéaire simple au sens des moindres rectangles
70. Comparaison de plusieurs droites de régression linéaire simple
71. La régression logistique binaire simple
72. La régression non linéaire simple
73. Tracer une droite ou une courbe de régression simple

Analyse de la covariance
74. L’analyse de la covariance – un facteur
5.4.2.3. Statistique multivariée
75. La régression linéaire multiple


           5.4.3. Outils pour l’utilisation des modùles statistiques
76.   La    construction de la formule d’un modùle
77.   La    sélection de modÚle
78.   La    vĂ©riïŹcation de la validitĂ© d’un modĂšle
79.   La    méthode des contrastes

ANNEXES
Index des packages externes
Bibliographie et ouvrages/documents/liens recommandés
1. Les vecteurs
  Création
   Le vecteur est à la fois l’objet le plus simple et le plus fondamental du
langage R. Il se crée grùce à la fonction c(), qui prend comme arguments les
Ă©lĂ©ments du vecteur. Tous ces Ă©lĂ©ments doivent ĂȘtre du mĂȘme type : valeurs
numĂ©riques, chaĂźnes de caractĂšres ou encore niveaux d’un facteur.

    Pour créer un vecteur numérique (les parenthÚses autour de la ligne
    servent Ă  aïŹƒcher le contenu du vecteur sans avoir Ă  l’appeler, elles
    n’interviennent pas dans sa crĂ©ation) :
    (vecteur <- c(7,9,4,12,18))
    [1] 7 9 4 12 18

    Pour créer un vecteur de chaßnes de caractÚres :
    (vecteur <- c("H","C","I","G","F"))
    [1] "H" "C" "I" "G" "F"

    Pour créer un facteur :
    (vecteur <- factor(c("niv1","niv2","niv2","niv3","niv1")))
    [1] niv1 niv2 niv2 niv3 niv1
    Levels: niv1 niv2 niv3
   Il existe des fonctions ou des abrĂ©viations qui permettent de simpliïŹer la
création de certains vecteurs usuels :
    c(1:10)
    [1] 1 2 3 4 5 6 7 8 9 10
    seq(from=1,to=3,by=0.25)
    [1] 1.00 1.25 1.50 1.75 2.00 2.25 2.50 2.75 3.00
    LETTERS[1:5]
    [1] "A" "B" "C" "D" "E"
 Indexation
   Pour accĂ©der au(x) iĂšme(s) Ă©lĂ©ment(s) d’un vecteur, Ă©crire vecteur[i],
oĂč i peut ĂȘtre une valeur unique ou lui-mĂȘme un vecteur :

    (vecteur <- c(1:10))
    [1] 1 2 3 4 5 6 7 8 9 10
    vecteur[5]
    [1] 5
    vecteur[c(2,5,8,9)]
    [1] 2 5 8 9
    vecteur[-c(2,5,8,9)]
    [1] 1 3 4 6 7 10
2. Les tableaux
  Création
    Les tableaux sont simplement un moyen de regrouper (en colonnes) des
vecteurs dans le mĂȘme objet. Chaque colonne est ici indĂ©pendante. L’unique
contrainte est que tous les vecteurs doivent avoir la mĂȘme longueur.
    Pour créer un tableau, utiliser la fonction data.frame(), qui prend en
arguments les diïŹ€Ă©rentes colonnes (de gauche Ă  droite). On peut prĂ©ciser le
titre des colonnes. Dans le cas d’un vecteur de chaünes de caractùres, celui-ci
est automatiquement transformĂ© en facteur lorsqu’il est intĂ©grĂ© au tableau.

    variable1 <- c(1:5)
    variable2 <- LETTERS[1:5]
    (tableau <- data.frame(variable1,variable2))
         variable1 variable2
     1            1              A
     2            2              B
     3            3              C
     4            4              D
     5            5              E
    Le tableau peut ĂȘtre crĂ©Ă© directement :
    tableau <- data.frame(variable1=c(1:5),variable2=LETTERS[
    1:5]
  Indexation
    Pour accĂ©der Ă  un (ou plusieurs) Ă©lĂ©ment(s) d’un tableau, le principe
est le mĂȘme que pour les vecteurs (voir ïŹche 1) exceptĂ© qu’il n’y a pas
une mais deux dimensions à l’objet (les lignes et les colonnes). Le principe
d’indexation est valable pour tous les objets à deux dimensions et est celui-ci :
tableau[ligne(s),colonne(s)], oĂč ligne(s) et colonne(s) sont soit des
valeurs uniques, soit des vecteurs. Si rien n’est mis avant la virgule toutes
les lignes sont sĂ©lectionnĂ©es, si rien n’est mis aprĂšs toutes les colonnes sont
sélectionnées.
    tableau[c(1,3),]
        variable1 variable2
     1          1         A
     3          3         C
    tableau[c(3,5),2]
    [1] C E
    Levels: A B C D E
   Dans le cas particulier de la sĂ©lection d’une colonne entiĂšre, il y a deux
autres possibilités :
   – tableau$colonne oĂč colonne est le nom de la colonne
   – tableau[,"colonne"] oĂč colonne est le nom de la colonne.
3. Les matrices
    A la diïŹ€Ă©rence des tableaux (voir ïŹche 2), les matrices sont un tout cohĂ©rent,
i.e. les colonnes ne sont pas indépendantes. Cela implique que tous les éléments
d’une matrice sont de mĂȘme type : numĂ©rique, texte, niveaux de facteur(s). . .
    Pour créer une matrice, utiliser la fonction matrix(), qui prend comme
arguments obligatoire les valeurs qui doivent la remplir, et le nombre de lignes
et/ou de colonnes. Par défaut les matrices sont remplies en colonnes, pour les
remplir en lignes ajouter l’argument byrow=TRUE. Pour donner un nom aux
lignes et aux colonnes, utiliser l’argument dimnames=list(lignes,colonnes),
oĂč lignes et colonnes sont des vecteurs :

    (matrice <- matrix(c(1:8),nrow=2))
           [,1] [,2] [,3] [,4]
     [1,]     1    3    5    7
     [2,]     2    4    6    8
    (matrice <- matrix(c(1:8),nrow=2,byrow=TRUE))
           [,1] [,2] [,3] [,4]
     [1,]     1    2    3    4
     [2,]     5    6    7    8
    (matrice <- matrix(c(1:8),nrow=2,dimnames=list(letters[1:
    2],LETTERS[1:4])))
          A B C D
     a 1 3 5 7
     b 2 4 6 8

    Il est également possible de créer des matrices à partir de plusieurs vecteurs
qui doivent en constituer les lignes ou les colonnes. Utiliser pour cela les
fonctions rbind() ou cbind(), qui assemblent les vecteurs respectivement en
lignes et en colonnes :

    vecteur1 <- c(1:3)
    vecteur2 <- c(4:6)
    (matrice <- rbind(vecteur1,vecteur2))
                [,1] [,2] [,3]
     vecteur1      1    2    3
     vecteur2      4    5    6
    (matrice <- cbind(vecteur1,vecteur2))
           vecteur1 vecteur2
     [1,]          1        4
     [2,]          2        5
     [3,]          3        6

    Les matrices Ă©tant des objets Ă  deux dimensions (les lignes et les colonnes),
leur indexation est identique Ă  celle des tableaux (voir ïŹche 2).
4.      Installer et charger un package
 Installer un package
    Il est nĂ©cessaire d’ĂȘtre connectĂ© Ă  internet pour installer un package, car
celui-ci doit ĂȘtre tĂ©lĂ©chargĂ© depuis un serveur. L’installation ne se fait qu’une
seule fois.

   Si R est utilisé depuis la console R, utiliser : install.packages("packag-
e") oĂč package est le nom du package dĂ©sirĂ©, entre guillemets. Il est demandĂ©
ensuite de choisir un serveur, préférer Austria.

   Si R est utilisé depuis la console systÚme, la procédure se fait en deux
Ă©tapes :
     1. télécharger les sources du package à partir de son site de dépÎt, le site
        principal Ă©tant le CRAN (the Comprehensive R Archive Network) :
        http ://cran.r-project.org rubrique Packages
     2. installer le package en tapant R CMD INSTALL package oĂč package est
        le nom du ïŹchier tar.gz contenant les sources.

   La procédure expliquée ici est la plus simple, mais il existe de nom-
breuses variantes. Voir la R FAQ pour plus d’informations : http ://cran.r-
project.org/doc/manuals/R-admin.html#Installing-packages.

 Charger un package
    Le chargement d’un package doit se faire Ă  chaque session oĂč il doit ĂȘtre
utilisĂ©. La commande est simple : library(package) oĂč package est le nom
du package, sans guillemets.

  Mettre à jours les packages installés
    Pour mettre à jour automatiquement tous les packages installés (chargés
ou non), utiliser : update.packages(ask=FALSE). R télécharge alors toutes
les mises Ă  jour et les installe.
    Il est recommandĂ© de mettre rĂ©guliĂšrement Ă  jour ses packages aïŹn de
proïŹter de leur Ă©volution, souvent rapide.
5.    Citer R et ses packages
    Lors de l’écriture d’un document scientiïŹque, il est une Ă©vidence de citer
ses sources bibliographiques. Il doit Ă©galement en ĂȘtre une de citer les logiciels
utilisĂ©s lors de la rĂ©alisation de l’étude. R est certes gratuit, mais il n’en reste
pas moins que des dizaines de personnes s’impliquent dans son dĂ©veloppement,
et qu’il est normal de faire honneur à leur travail en les citant.

   R doit ĂȘtre citĂ© dĂšs lors qu’il est utilisĂ©. Pour savoir comment le citer, il
suïŹƒt de taper citation() et de recopier ce qui ïŹgure aprĂšs To cite R in
publications use:.

   Concernant les packages, la rĂšgle est de citer tous ceux qui ne sont pas
chargés au démarrage de R. Cela comprend les packages installés avec R mais
non chargĂ©s automatiquement, ainsi que ceux installĂ©s par l’utilisateur. Pour
savoir comment les citer, utiliser : citation("package") oĂč package est le
nom du package, entre guillemets. Recopier ce qui ïŹgure aprĂšs To cite the
xxx package in publications use:.
6. Les diïŹ€Ă©rents types de variable
    Une variable est dite alĂ©atoire si l’on ne peut pas prĂ©dire Ă  coup sĂ»r la
valeur que prendra un individu. Il existe deux types de variable aléatoire :
   1. quantitatives : elles ont en gĂ©nĂ©ral une inïŹnitĂ© de valeurs numĂ©riques
      possibles et peuvent ĂȘtre :
      – continues (ex : masse, temps, distance, volume)
      – discrĂštes (ex : dĂ©nombrement)
   2. qualitatives : elles sont en général non numériques (mais pas toujours) et
      sont appelées facteurs. Leur valeur est appelée classe, niveau ou modalité.
      Ces variables peuvent ĂȘtre :
      – ordinales, lorsque les classes peuvent ĂȘtre ordonnĂ©es (ex : classement)
      – nominales, lorsque les classes ne peuvent pas ĂȘtre ordonnĂ©es (ex : sexe).


    Les classes d’un facteur sont dites exclusives si un individu ne peut pas
appartenir Ă  plusieurs classes en mĂȘme temps. La plupart des tests statistiques
(et notamment tous ceux présentés dans cet ouvrage) exigent que les classes
des facteurs soient exclusives. Dans tous les cas, le caractĂšre d’exclusivitĂ© doit
ĂȘtre dĂ©terminĂ© avant toute analyse statistique.

     Il existe deux types de facteur :
     – ïŹxe : un facteur est ïŹxe si ses classes ont Ă©tĂ© dĂ©libĂ©rĂ©ment choisies, et si
        le but de l’étude est de les comparer. Par exemple, si l’on veut comparer
        la taille des individus entre trois espĂšces, le facteur « espĂšce » est ïŹxe (Ă 
        trois classes)
     – alĂ©atoire : un facteur est alĂ©atoire si ses classes ont Ă©tĂ© choisies parmi
        un grand nombre de classes possibles, et si le but de l’étude n’est pas
        de les comparer mais simplement de prendre en compte la variabilité
        qu’il existe entre elles. Par exemple, si les mesures de taille des trois
        espĂšces sont rĂ©alisĂ©es par deux personnes diïŹ€Ă©rentes, on peut considĂ©rer
        un facteur « expĂ©rimentateur », alĂ©atoire. L’objectif ici n’est en eïŹ€et
        pas de comparer les mesures réalisées par les deux personnes, mais de
        prendre en compte le fait que la façon de réaliser les mesures peut varier
        entre les deux.
     Il y a deux choses Ă  bien garder Ă  l’esprit : (i) la dĂ©cision de dĂ©clarer un
facteur comme ïŹxe ou alĂ©atoire est fondamentale pour l’analyse des donnĂ©es,
car ce ne sont pas les mĂȘmes analyses qui sont rĂ©alisĂ©es dans les deux cas ;
(ii) cette dĂ©cision doit ĂȘtre prise selon l’objectif de l’étude, i.e. la question Ă 
laquelle l’étude doit rĂ©pondre, car aucun facteur n’est ïŹxe ou alĂ©atoire dans
l’absolu. Il est donc indispensable de bien se poser la question avant de dĂ©clarer
un facteur comme ïŹxe ou alĂ©atoire.
Que ce soit pour des variables qualitatives ou quantitatives, si certaines
mesures ne sont pas indépendantes entre elles, elles constituent des séries
appariĂ©es. Le cas le plus simple est celui oĂč plusieurs mesures sont rĂ©alisĂ©es sur
un mĂȘme individu (par exemple avant et aprĂšs un traitement). Mais d’autres
cas plus subtils peuvent se présenter : si des mesures sont réalisées sur des
individus apparentés (ces mesures ne sont pas indépendantes car il existe
une corrĂ©lation d’origine gĂ©nĂ©tique entre elles), si des sĂ©ries de mesures sont
rĂ©alisĂ©es Ă  des localisations diïŹ€Ă©rentes (ces mesures ne sont pas indĂ©pendantes
car chaque sĂ©rie est inïŹ‚uencĂ©e par l’environnement local) ou encore si des
sĂ©ries de mesures sont rĂ©alisĂ©es Ă  des temps diïŹ€Ă©rents (ces mesures ne sont pas
indĂ©pendantes car chaque sĂ©rie est inïŹ‚uencĂ©e par ce qu’il a pu se passer avant).
Il est trĂšs important d’identiïŹer les sĂ©ries appariĂ©es lorsqu’elles existent, car
des analyses statistiques adaptĂ©es doivent alors ĂȘtre utilisĂ©es.
    Les sĂ©ries appariĂ©es sont le plus souvent identiïŹĂ©es par l’introduction d’un
facteur aléatoire. Pour les exemples précédents, on a donc respectivement un
facteur « individu », un facteur « famille », un facteur « localisation » et un
facteur « moment ».
7. Le plan d’échantillonnage
   On utilise un plan d’échantillonnage lorsque l’on rĂ©alise une Ă©tude par
enquĂȘte, i.e. lorsque l’on collecte des informations sur un groupe d’individus
dans leur milieu habituel, mais que tous les individus ne sont pas accessibles
(par choix ou par contrainte).

   Les principales mĂ©thodes d’échantillonnage peuvent ĂȘtre regroupĂ©es en
deux ensembles :
   1. l’échantillonnage alĂ©atoire : tous les individus (au sens statistique) ont
      la mĂȘme probabilitĂ© d’ĂȘtre choisis, et le choix de l’un n’inïŹ‚uence pas
      celui des autres. DiïŹ€Ă©rentes mĂ©thodes d’échantillonnage alĂ©atoire existent
      (voir les illustrations page suivante) :
      – l’échantillonnage alĂ©atoire et simple : le choix se fait parmi tous les
         individus de la population (au sens statistique), qui ne forme qu’un
         grand ensemble
      – l’échantillonnage stratiïŹĂ© : si la population est trĂšs hĂ©tĂ©rogĂšne, elle
         peut ĂȘtre divisĂ©e en sous-ensembles exclusifs (ou strates). Au sein
         de ces strates l’échantillonnage est ensuite alĂ©atoire et simple. Les
         strates sont identiïŹĂ©es dans l’analyse statistique comme les niveaux
         d’un facteur ïŹxe
      – l’échantillonnage en grappes : si les strates sont trĂšs nombreuses, on
         en choisit certaines au hasard (les grappes). Au sein de ces grappes
         l’échantillonnage est ensuite alĂ©atoire et simple. Les grappes sont
         identiïŹĂ©es dans l’analyse statistique comme les niveaux d’un facteur
         aléatoire
      – l’échantillonnage par degrĂ©s : il est une gĂ©nĂ©ralisation de l’échantillon-
         nage en grappes (qui est en fait un échantillonnage du premier degré).
         Au sein de la population on choisit des grappes « primaires », puis à
         l’intĂ©rieur de celles-ci des grappes « secondaires » (toujours au hasard),
         et ainsi du suite. . . Au dernier niveau l’échantillonnage est alĂ©atoire et
         simple
   2. l’échantillonnage systĂ©matique : un premier individu est choisi alĂ©atoire-
      ment, puis les autres sont choisis de façon réguliÚre à partir du précédent
      (dans le temps ou l’espace). L’analyse de ce type d’échantillonnage, qui
      fait appel Ă  la statistique spatiale ou Ă  l’analyse des sĂ©ries chronologiques,
      n’est pas abordĂ©e dans cet ouvrage.

    Il est important d’identiïŹer la mĂ©thode mise en Ɠuvre car les analyses
statistiques doivent ĂȘtre adaptĂ©es. Seule l’analyse de plans d’échantillonnage
aléatoires est abordée dans cet ouvrage.
Chaque point représente un individu. Les individus échantillonnés sont
représentés en rouge.
8. Le plan d’expĂ©rience
   On utilise un plan d’expĂ©rience lorsque l’on rĂ©aliste une Ă©tude par ex-
pĂ©rimentation, i.e. lorsque l’on provoque volontairement les faits Ă  Ă©tudier.
Le plan d’expĂ©rience comprend notamment le(s) facteur(s) Ă  faire varier, le
nombre de répétitions à réaliser et le dispositif expérimental à mettre en place.
L’association des classes de plusieurs facteurs constitue un traitement.

   Il existe de nombreux types de dispositif expérimental, dont les principaux
sont (voir les illustrations page suivante) :
   – le plan d’expĂ©rience complĂštement alĂ©atoire : chaque individu (au sens
      statistique) est aïŹ€ectĂ© Ă  un traitement alĂ©atoirement
   – le plan d’expĂ©rience en blocs alĂ©atoires complets : s’il y a (ou s’il peut
      y avoir) une grande hétérogénéité entre les individus, ils sont réunis
      en groupes aussi homogĂšnes que possibles (ou blocs). Au sein de ces
      blocs chaque individu est ensuite aïŹ€ectĂ© alĂ©atoirement Ă  un traitement,
      de maniÚre à ce que tous les traitements soient présents dans chacun
      des blocs. Les blocs sont identiïŹĂ©s dans l’analyse statistique comme les
      niveaux d’un facteur alĂ©atoire
   – le plan d’expĂ©rience en blocs alĂ©atoires incomplets : dans ce cas tous les
      traitements ne sont pas présents dans chacun des blocs
   – le plan d’expĂ©rience en split-plot : le principe du split-plot est le plus
      souvent associé à celui des blocs aléatoires complets. Dans ce cas, dans
      chacun des blocs sont crĂ©Ă©s autant de sous-blocs qu’il y a de classes au
      premier facteur étudié. A chacun de ces sous-blocs est associée une classe.
      Puis chaque sous-bloc est divisĂ© en autant d’unitĂ©s qu’il y a de classes
      au second facteur étudié. A chacun de ces « sous-sous-blocs » est asso-
      ciée une classe. Pour plus de deux facteurs, la situation est plus complexe.

    Quelle que soit la mĂ©thode employĂ©e, elle doit ĂȘtre clairement dĂ©ïŹnie car
elle doit ĂȘtre prise en compte dans les analyses statistiques.
Chaque point représente un individu. Chaque carré représente un traitement.
Les niveaux du 1er facteur sont notés en majuscule, les niveaux du 2nd facteur
sont notés en minscule.
9. La dĂ©termination de la taille de l’échantillon Ă  consti-
tuer
    Il existe un lien entre le seuil de rejet α du test statistique utilisé (voir
ïŹches 33 et 34), la puissance de ce test (voir ïŹche 36), la diïŹ€Ă©rence entre les
échantillons pour la variable mesurée et la taille des échantillons. Déterminer
la taille de l’échantillon Ă  constituer passe donc par ïŹxer les autres paramĂštres.
Ceci implique deux choses importantes :
    – choisir avant de dĂ©marrer l’étude les types de test qui vont ĂȘtre utilisĂ©s (ce
       qui oblige Ă  bien identiïŹer les questions auxquelles l’étude doit rĂ©pondre)
       et leur prĂ©cision. On considĂšre que lorsque l’objectif de l’étude est de
       rejeter H0 (voir ïŹche 33), la puissance du test doit ĂȘtre d’au moins 80 % ;
       lorsque l’objectif est de ne pas rejeter H0 (voir ïŹche 33), la puissance
       doit ĂȘtre d’au moins 95 %
    – avoir une idĂ©e de la variabilitĂ© naturelle de la variable mesurĂ©e et/ou de
       la diïŹ€Ă©rence minimale Ă  dĂ©tecter. Ceci passe soit par une Ă©tude de la
       bibliographie, soit par la consultation de spécialistes, soit par la réalisa-
       tion d’un prĂ©-Ă©chantillonnage ou d’une prĂ©-expĂ©rience.

   Dans R, la fonctions power() permet, pour quelques tests paramétriques
courants, de calculer l’eïŹ€ectif nĂ©cessaire lorsque l’on connaĂźt tous les autres
paramùtres. Lorsque l’on sait à l’avance que l’on ne sera pas dans les conditions
d’utilisation de ces tests, on peut tout de mĂȘme estimer la puissance de leur
Ă©quivalent non paramĂ©trique. Celle-ci est vaut en eïŹ€et environ 95 % de la
puissance du test paramétrique équivalent.

   Toutes les fonctions dĂ©crites sont basĂ©es sur le mĂȘme principe : le paramĂštre
n doit avoir comme valeur NULL tandis que tous les autres doivent ĂȘtre ïŹxĂ©s.
Toutes les fonctions considĂšrent que l’eïŹ€ectif est le mĂȘme dans les diïŹ€Ă©rents
groupes Ă  comparer (on parle d’eïŹ€ectifs Ă©quilibrĂ©s). Il est fortement conseillĂ©
de toujours prĂ©voir ses plans d’échantillonnage ou d’expĂ©rience de cette façon,
ce qui (i) facilite l’analyse et (ii) permet d’utiliser la plupart des tests non
paramĂ©triques, dont l’équilibre des eïŹ€ectifs est une condition.

 Comparaison d’une moyenne avec une valeur thĂ©orique (voir ïŹche
58) ou de deux moyennes (voir ïŹche 59) – test t de Student
    power.t.test(n,delta,sd,sig.level,power,type)
avec :
n : eïŹ€ectif (identique pour les deux Ă©chantillons dans le cas d’une comparaison
de 2 moyennes)
delta : diïŹ€Ă©rence minimale Ă  dĂ©tecter entre la moyenne de l’échantillon et la
moyenne théorique, ou entre les deux moyennes
sd : Ă©cart-type (identique pour les deux Ă©chantillons dans le cas d’une compa-
raison de 2 moyennes), dans l’unitĂ© des moyennes
sig.level : seuil de rejet α (généralement 0,05)
power : puissance minimale du test (80 ou 95 % selon l’objectif du test)
type : type de test ("one.sample" pour la comparaison d’une moyenne avec
une valeur théorique, "two.sample" pour la comparaison de deux moyennes,
"paired" pour la comparaison de deux moyennes en séries appariées).

  Comparaison de plus de deux moyennes – analyse de variance à
un facteur (voir ïŹche 60)
    power.anova.test(groups,n,between.var,within.var,sig.level,
power)
avec :
groups : nombre de modalités à comparer
between.var : somme des carrés des écarts intergroupe minimale à détecter
within.var : somme des carrés des écarts intragroupe (identique pour toutes
les modalités).
    Il est dans la pratique trĂšs diïŹƒcile d’estimer a priori les sommes des carrĂ©s
des Ă©carts inter et intragroupe. On peut dans ce cas se rabattre sur la fonction
power.t.test() qui donne des rĂ©sultats convenables si les conditions d’utili-
sation de l’analyse de variance sont remplies.

 Comparaison de deux proportions – test du χ2 d’homogĂ©nĂ©itĂ© (voir
ïŹche 54)
   power.prop.test(n,p1,p2,sig.level,power)
avec p1, p2 : proportions Ă  dĂ©tecter comme signiïŹcativement diïŹ€Ă©rentes.

 SigniïŹcativitĂ© d’un coeïŹƒcient de corrĂ©lation linĂ©aire de Pearson
(voir ïŹche 65)
   Il est ici nécessaire de faire appel à la fonction pwr.r.test() du package
pwr :
   pwr.r.test(n,r,sig.level,power)
avec r : coeïŹƒcient de corrĂ©lation minimum Ă  dĂ©tecter comme signiïŹcativement
diïŹ€Ă©rent de 0.
10. La construction du tableau de données
    La construction d’un tableau de donnĂ©es correctement structurĂ© est une
Ă©tape importante de l’étude, car si elle est mal rĂ©alisĂ©e elle peut mener Ă  des
résultats faux, ou le plus souvent à des erreurs une fois dans R.
    Cette construction nécessite de se poser une question essentielle : quelles
sont les variables prises en compte dans l’étude ? Y rĂ©pondre implique d’identi-
ïŹer les variables quantitatives et les facteurs, ainsi que les classes des facteurs.
Si les choses sont claires, l’analyse statistique le sera Ă©galement.

   D’une maniĂšre gĂ©nĂ©rale, il est conseillĂ© de toujours construire son tableau
de donnĂ©es dans un tableur. Cela permet d’enregistrer le jeu de donnĂ©es dans
un ïŹchier externe Ă  R, et donc de toujours pouvoir y revenir puisque R ne
modiïŹe pas les ïŹchiers externes (sauf si on le lui demande explicitement).

    Une fois dans le tableur, la rĂšgle est simple : les individus doivent ĂȘtre
placés en lignes et les variables en colonnes.
    Il est conseillé de donner un titre à chaque colonne, qui deviendra le nom de
la variable dans R. Il est indispensable cependant de respecter certaines rĂšgles :
les noms de variable ne doivent contenir ni espace, ni caractÚre accentué, ni
symbole (ceci est une rùgle pour tous les noms d’objet dans R). Si un nom
de variable doit contenir deux mots, ils peuvent ĂȘtre sĂ©parĂ©s par un point (.)
ou un tiret bas (_). Mieux vaut également privilégier les noms courts mais
clairs, car une fois dans R taper sans cesse des noms de variable longs est vite
fastidieux.
    Le tableau de données doit absolument obéir à une autre rÚgle : aucune
case ne doit ĂȘtre vide (sauf celle en haut Ă  gauche si les colonnes ont un titre).
S’il manque une donnĂ©e pour un individu, il faut se demander d’oĂč elle vient :
    – si c’est une donnĂ©e inutilisable (mesure ratĂ©e, mal retranscrite. . .), pas
       de problĂšme. On dit alors qu’on a une « donnĂ©e manquante », que l’on
       doit noter NA (pour Not Available, i.e. donnée manquante). Le tableur
       comme R reconnaissent le NA, qu’ils interprùtent correctement
    – si la situation est autre, c’est que le tableau est mal construit et qu’en
       particulier les variables n’ont pas Ă©tĂ© bien dĂ©ïŹnies. La rĂ©ïŹ‚exion s’impose
       donc pour identiïŹer les variables et reconstruire un tableau de donnĂ©es.

    Si des analyses dans R doivent se faire uniquement sur un sous-ensemble
du tableau de données, ou si pour certaines analyses le tableau de données
serait plus facile Ă  utiliser s’il Ă©tait construit autrement, il est conseillĂ© de
construire plusieurs tableaux de données séparés. Il est toujours possible de
manipuler le tableau initial dans R pour en extraire une partie ou pour le
transformer, mais il est clairement plus facile (et surtout moins source d’erreur)
de le faire en amont, dans le tableur.
11. L’importation du tableau de donnĂ©es dans R
   Il existe de nombreuses méthodes pour importer ses données dans R. Une
seule est présentée ici, qui est à la fois trÚs simple, fonctionne dans la plupart
des situations et peut ĂȘtre utilisĂ©e sur toutes les plateformes.

   La procédure se fait en trois étapes :
   1. dans le tableur, sélectionner toutes les cases constituant le tableau de
      données
   2. copier ce tableau dans le bloc-notes et enregistrer le ïŹchier en .txt
   3. dans R, charger le tableau de données grùce à la fonction read.table()
      et le stocker dans un objet : tableau<-read.table(fichier,dec=",")
      oĂč fichier est le nom du ïŹchier texte (et Ă©ventuellement du chemin qui
      y mĂšne), entre guillemets.

    R Ă©tant un logiciel anglo-saxon, le sĂ©parateur dĂ©cimal qu’il utilise est le
point. Or dans les tableurs français (et donc dans le ïŹchier texte) le sĂ©parateur
dĂ©cimal est la virgule. Il est donc nĂ©cessaire de prĂ©ciser Ă  R qu’il interprĂšte la
virgule comme sĂ©parateur dĂ©cimal, d’oĂč l’argument dec=",".

    Si les colonnes du tableau de donnĂ©es ont un titre, qui doit donc ĂȘtre
interprĂ©tĂ© comme le nom de la variable, ajouter l’argument header=TRUE.

    Une fois le tableau importĂ©, il est indispensable de vĂ©riïŹer qu’il n’y a pas
eu d’erreur pendant son chargement. Pour cela appeler le rĂ©sumĂ© du tableau
via summary(tableau). R renvoie un résumé de chaque variable :
    – pour une variable numĂ©rique, R donne des indications sur sa distribution :
      minimum, 1er quartile, médiane, moyenne, 3Úme quartile et maximum
    – pour un facteur, R donne le nombre d’individus par classe.

    Si un facteur est codé numériquement (par exemple un facteur binaire ou un
facteur ordinal), R l’interprĂšte comme une variable numĂ©rique. Pour transfor-
mer cette variable en facteur, utiliser : tableau$variable<-factor(tableau$
variable) oĂč variable est le nom de la variable.
12. Graphiques de dispersion : la fonction stripchart()
   Le graphique tracĂ© reprĂ©sente toutes les donnĂ©es individuelles d’un vecteur,
d’une matrice ou d’un tableau. Il permet d’avoir un aperçu de la variabilitĂ©
des donnĂ©es et d’identiïŹer les observations aberrantes.

   Pour représenter un vecteur : stripchart(vecteur).

   Pour représenter plusieurs vecteurs : stripchart(list(vecteur1,vect-
eur2,...)).
   Pour donner un nom aux vecteurs sur le graphe, ajouter l’argument
group.names=c("Nom1","Nom2",...).

   Pour reprĂ©senter des donnĂ©es en fonction d’un facteur : stripchart(don-
nees~facteur) oĂč les deux objets sont des vecteurs contenant la valeur de
chaque individu (dans le mĂȘme ordre).

   Pour reprĂ©senter les donnĂ©es verticalement, ajouter l’argument vertical=
TRUE.

   Pour que les valeurs identiques ne se superposent pas, ajouter l’argument
method="jitter" (par défaut method="overplot").
13. Histogrammes : la fonction hist()
    Le graphique tracé divise les données contenues dans un vecteur en classes,
et reprĂ©sente chaque classe en eïŹ€ectif ou densitĂ©. Il permet d’avoir un aperçu
de la distribution des données.

   Pour reprĂ©senter les classes en eïŹ€ectifs : hist(vecteur).
   Pour représenter les classes en densités : hist(vecteur,freq=FALSE)
(freq=TRUE par dĂ©faut, ce qui reprĂ©sente les eïŹ€ectifs).

   Pour ajouter une courbe de densité : lines(density(vecteur)). Une telle
courbe ne peut ĂȘtre ajoutĂ©e que sur un histogramme tracĂ© en densitĂ©s.

   Pour ajouter une courbe de distribution : lines(seq2(vecteur),dloi(se-
q2(vecteur),par)) oĂč loi est la loi de probabilitĂ© choisie et par ses para-
mĂštres sĂ©parĂ©s par une virgule (calculĂ©s Ă  partir des donnĂ©es ; voir ïŹches 23 Ă 
32). La fonction seq2() est contenue dans le package RVAideMemoire.

    Pour modiïŹer le nombre de classes, ajouter l’argument breaks=n oĂč n est
le nombre de coupures souhaitées (il y a donc n + 1 classes).

   Pour tracer l’histogramme d’une variable par niveau d’un facteur, utiliser la
fonction byf.hist() du package RVAideMemoire : byf.hist(variable,fact-
eur) oĂč variable et facteur sont des vecteurs contenant la valeur de chaque
individu pour les deux variables (dans le mĂȘme ordre).
14. BoĂźtes Ă  moustaches : la fonction boxplot()
    Le graphique tracĂ© reprĂ©sente de façon simpliïŹĂ©e la dispersion des donnĂ©es
contenues dans un vecteur. Il permet d’avoir un aperçu de la distribution et
de la variabilitĂ© des donnĂ©es, et d’identiïŹer les observations aberrantes.

    Pour représenter un vecteur : boxplot(vecteur). Le trait épais représente
la médiane, la boßte est formée par les valeurs des 1er et 3Úme quartiles, et les
moustaches mesurent maximum 1,5 fois la longueur de l’interquartile (3ùme -
1er). Les valeurs au-delà des moustaches sont représentées individuellement.

   Pour représenter plusieurs vecteurs : boxplot(list(vecteur1,vecteur2,
...)).
   Pour donner un nom aux boütes, ajouter l’argument names=c("Nom1","No-
m2",...).

   Pour reprĂ©senter une boĂźte par niveau d’un facteur : boxplot(variable~
facteur) oĂč variable et facteur sont des vecteurs contenant la valeur de
chaque individu pour les deux variables (dans le mĂȘme ordre).

   Pour reprĂ©senter les boĂźtes horizontalement, ajouter l’argument horizont-
al=TRUE.
15. La réduction des données à une dimension
   Les paramÚtres suivants permettent de réduire une série de données à
quelques valeurs apportant une information générale.

  ParamĂštres de position
   Ils permettent de donner un ordre de grandeur des données.
Moyenne : mean(serie) oĂč serie est un vecteur contenant la valeur de chaque
individu.
MĂ©diane : median(serie).
Mode : utiliser la fonction mod() du package RVAideMemoire : mod(serie).
   Si les vecteurs contiennent des donnĂ©es manquantes (NA), ajouter l’argu-
ment na.rm=TRUE aux fonctions mean() et median(). La fonction mod() gĂšre
par défaut les données manquantes.

  ParamĂštres de dispersion
    Ils permettent d’estimer la variabilitĂ© des donnĂ©es autour des paramĂštres
de position.
Variance : var(serie).
Ecart-type (standard deviation) : sd(serie).
CoeïŹƒcient de variation : utiliser la fonction cv() du package RVAideMemoire :
cv(serie). Le coeïŹƒcient est par dĂ©faut exprimĂ© en valeur absolue et en
pourcentage.
    Si les vecteurs contiennent des donnĂ©es manquantes (NA), ajouter l’argument
na.rm=TRUE aux fonctions var() et sd(). La fonction cv() gÚre par défaut
les données manquantes.
    Les fonctions var() et sd() calculent la variance et l’écart-type non biaisĂ©s
(sur la base de n − 1 et non n, n Ă©tant l’eïŹ€ectif de l’échantillon). La fonction
cv() est basĂ©e sur l’écart-type non biaisĂ©.

   Pour calculer la valeur d’un paramùtre (de position ou de dispersion) par
niveau d’un facteur, utiliser tapply(serie,facteur,function(x) fonction)
oĂč serie et facteur sont des vecteurs contenant la valeur de chaque indi-
vidu pour les deux variables (dans le mĂȘme ordre), et fonction la fonction
Ă  utiliser. Dans cette fonction, serie doit ĂȘtre remplacĂ© par x : mean(x),
var(x,na.rm=TRUE), cv(x). . .

                                   Exemple

    variable <- c(1:60)
    facteur <- factor(rep(LETTERS[1:3],each=20))
    tapply(variable,facteur,function(x) mean(x))
       A    B    C
    10.5 30.5 50.5
16. Nuages de points : la fonction plot()
    La fonction plot() permet de représenter les valeurs de deux variables
numériques pour chaque individu, dans un graphe du type y = f (x). Elle
permet d’avoir un aperçu de la liaison qu’il peut exister entre ces variables.
Elle peut ĂȘtre utilisĂ©e avec deux vecteurs, une matrice Ă  deux colonnes ou un
tableau Ă  deux colonnes.

    Pour représenter deux vecteurs x et y contenant la valeur de chaque in-
dividu pour les deux variables (dans le mĂȘme ordre) : plot(y~x) (~ signiïŹe
« expliqué par »).

     Pour ajouter une droite du type y = ax + b : abline(b,a).

    Pour ajouter une droite de régression linéaire au sens des moindres carrés
(voir ïŹche 68) : abline(lm(y~x)).

   Pour ajouter une droite de régression linéaire au sens des moindres rec-
tangles (voir ïŹche 69), utiliser la fonction least.rect() du package RVAideMe-
moire : abline(least.rect(y~x)).

     Pour ajouter une courbe de tendance du nuage de points : panel.smooth(x,
y)

     Pour ajouter une droite horizontale : abline(h=ordonnee).

     Pour ajouter une droite verticale : abline(v=abscisse).
17. La réduction des données à deux dimensions
   Les paramÚtres suivants permettent de réduire deux séries de données à
quelques valeurs apportant une information générale sur la liaison qui peut les
unir.

   Pour deux vecteurs x et y contenant la valeur de chaque individu pour
chaque sĂ©rie (dans le mĂȘme ordre) :
Covariance : cov(x,y).
CoeïŹƒcient de corrĂ©lation linĂ©aire de Pearson (voir ïŹche 65) : cor(x,y).

   Les vecteurs doivent avoir la mĂȘme taille (i.e. contenir autant de va-
leurs). S’ils contiennent des donnĂ©es manquantes (NA), ajouter l’argument
use="complete.obs" aux fonctions cov() et cor(). Seuls les couples de don-
nées complets sont alors considérés.

   La rĂ©gression linĂ©aire au sens des moindres carrĂ©s (voir ïŹche 68) s’utilise
dans le cas oĂč la variable y (dite dĂ©pendante ou Ă  expliquer) varie en fonction
de la variable x (dite indépendante ou explicative). Pour récupérer les para-
mĂštres de la droite : lm(y~x)$coefficients. La premiĂšre valeur (Intercept)
correspond Ă  l’ordonnĂ©e Ă  l’origine, la seconde au coeïŹƒcient directeur de la
droite. La fonction lm() construit un modÚle linéaire reliant x et y au sens
des moindres carrés.

    La rĂ©gression linĂ©aire au sens des moindres rectangles (voir ïŹche 69)
s’utilise dans le cas oĂč les deux variables sont considĂ©rĂ©es sur un pied d’éga-
lité (elles sont dites interdépendantes). Pour récupérer les paramÚtres de
la droite, utiliser la fonction least.rect() du package RVAideMemoire :
least.rect(y~x)$coefficients. La premiĂšre valeur (Intercept) corres-
pond Ă  l’ordonnĂ©e Ă  l’origine, la seconde au coeïŹƒcient directeur de la droite.
La fonction least.rect() construit un modÚle linéaire reliant x et y au sens
des moindres rectangles.

   Les vecteurs x et y doivent avoir la mĂȘme taille pour les deux fonctions
lm() et least.rect(). Ils peuvent contenir des données manquantes (NA).
18. L’Analyse en Composantes Principales (ACP)
    Les donnĂ©es doivent ĂȘtre contenues dans un tableau avec en colonnes les
variables (avec un titre) et en ligne les individus. La 1Ăšre case du tableau (en
haut Ă  gauche) doit ĂȘtre vide si la 1Ăšre colonne contient le nom des individus.
Le tableau ne doit pas contenir de données manquantes (NA). Pour supprimer
les lignes qui en possĂšdent : tableau2<-na.omit(tableau), oĂč tableau est
le tableau de départ.

    L’ACP se prĂȘte mieux Ă  l’analyse de relations linĂ©aires et de variables
ayant une distribution symétrique. Pour observer ces caractÚres, utiliser
pairs(tableau2,panel=panel.smooth) d’une part et hist() (voir ïŹche 13)
avec chacune des variables d’autre part. Si besoin transformer les variables
(voir ïŹche 45).

   Pour visualiser la matrice des corrélations linéaires entre les variables :
cor(tableau2) (utilisĂ©e dans le cas de l’ACP rĂ©duite).
Pour visualiser la matrice des variances-covariances : cov(tableau2) (utilisée
dans le cas de l’ACP non rĂ©duite).

   L’ACP est rĂ©alisĂ©e grĂące Ă  la fonction dudi.pca() du package ade4. Par
défaut elle est centrée-réduite, pour changer ces paramÚtres ajouter les argu-
ments center=FALSE (pour ne pas centrer) et/ou scale=FALSE (pour ne pas
rĂ©duire). En gĂ©nĂ©ral, l’ACP est rĂ©duite quand les variables n’ont pas le mĂȘme
ordre de grandeur (ou unité de mesure), non réduite dans le cas contraire (elles
sont donc directement comparables).

    Lorsque la commande acp<-dudi.pca(tableau2) est passée, R renvoie
le graphe des valeurs propres (ou pouvoirs de synthÚse) associées à chaque
variable de synthĂšse (ou axe ou composante principale), et demande le nombre
d’axes Ă  sĂ©lectionner. Le choix peut se faire sur la base du critĂšre de Kaiser
(i.e. ne choisir que les axes dont la valeur propre est supérieure à 1) ou sur
un critĂšre ïŹxĂ© avant l’analyse, Ă  savoir le nombre de composantes principales
expliquant un minimum de x % de l’information (ou inertie totale) contenue
dans le tableau initial. Ce pourcentage d’inertie est calculĂ© en divisant la valeur
propre d’un axe par le nombre d’axes possibles (Ă©gal au nombre de variables
du tableau de départ).
    Pour visualiser la corrélation entre chaque variable et une composante
principale : score(acp,xax=num) oĂč num est le numĂ©ro de l’axe choisi.
Le diagnostic de l’ACP se fait grñce à la fonction inertia.dudi(acp), qui
renvoie le tableau $TOT. Celui-ci contient la contribution à l’inertie de chaque
composante principale (proportions cumulées dans la colonne ratio, multiplier
par 100 pour le pourcentage). En ajoutant l’argument col.inertia=TRUE à
la fonction on obtient trois tableaux supplémentaires :
    – $col.abs : donne la contribution à l’inertie de chaque variable du tableau
      de départ, i.e. leur importance respective dans la construction des axes
      (ce qui aide Ă  l’interprĂ©tation de ces axes). Diviser par 100 pour obtenir
      les pourcentages. La somme de chaque colonne est Ă©gale Ă  100 %
    – $col.rel : donne la part d’information apportĂ©e par chaque axe pour
      chaque variable (diviser la valeur absolue par 100 pour obtenir les pour-
      centages). Ne pas tenir compte de la 3Ăšme colonne
    – $col.cum : valeurs absolues de $col.rel cumulĂ©es (diviser par 100
      pour obtenir les pourcentages). Donne donc la part totale d’information
      apportée par tous les axes retenus pour chaque variable, autrement dit
      la qualité de la représentation de chaque variable.
    Ajouter l’argument row.inertia=TRUE à la fonction inertia.dudi() pour
obtenir le diagnostic pour chaque individu ($row.abs, $row.rel et $row.cum).

   Pour visualiser graphiquement les relations entre :
   – les individus : s.label(acp$li), le tableau $li de l’ACP donnant les
     coordonnĂ©es des individus dans les diïŹ€Ă©rents plans factoriels. Pour sĂ©lec-
     tionner un plan factoriel, ajouter les arguments xax=num1 et yax=num2
     oĂč num1 est le numĂ©ro du 1er axe choisi et num2 celui du 2nd (il faut avoir
     sĂ©lectionnĂ© au moins deux axes au dĂ©part de l’ACP). Par convention on
     choisit pour l’axe horizontal celui des deux ayant la meilleure contribu-
     tion Ă  l’inertie totale. Des individus Ă©loignĂ©s sur le graphe le sont dans le
     tableau initial (mais faire attention aux contributions relatives $row.rel
     du diagnostic)
   – les variables :
     – ACP rĂ©duite : s.corcircle(acp$co) trace le cercle des corrĂ©lations
       (le tableau $co de l’ACP donne les coordonnĂ©es des variables dans
        les diïŹ€Ă©rents plans factoriels), oĂč la longueur des ïŹ‚Ăšches indique la
        part de leur information représentée par les deux axes (contributions
        relatives cumulĂ©es $col.cum du diagnostic). L’angle entre deux ïŹ‚Ăšches
        représente la corrélation qui les lie : angle aigu = positive ; angle
        droit = nulle ; angle obtus = négative
     – ACP non rĂ©duite : s.arrow(acp$co) oĂč la longueur des ïŹ‚Ăšches re-
        prĂ©sente la contribution Ă  l’inertie de chaque variable (contributions
        absolues $col.abs du diagnostic). Les relations entre variables s’in-
        terprĂštent de la mĂȘme façon que pour l’ACP rĂ©duite, mais cette fois
        en terme de covariances et non de corrélations.
Pour représenter à la fois les individus et les variables dans un plan factoriel,
utiliser scatter(acp,posieig="none"). Pour ne pas aïŹƒcher le numĂ©ro (ou
le nom) des individus, ajouter l’argument clab.row=0.

    Pour ajouter comme information supplémentaire une variable qualitative
dĂ©ïŹnissant des groupes d’individus (sur le graphe des individus) :
    – sous forme d’ellipses : s.class(dfxy=acp$li,fac=facteur)
    – sous forme de polygones de contour : s.chull(dfxy=acp$li,fac=facte-
      ur,optchull=1)
oĂč facteur est un vecteur contenant la modalitĂ© de chaque individu. Pour
donner une couleur Ă  chaque groupe ajouter l’argument col=couleur oĂč
couleur est un vecteur contenant la couleur de chaque modalité du facteur,
dans l’ordre alphabĂ©tique des modalitĂ©s. PrĂ©ciser le plan factoriel grĂące aux
arguments xax et yax.
    Pour ajouter sur le graphe des individus des groupes d’individus dĂ©ïŹ-
nis par une mĂ©thode de classiïŹcation automatique (voir ïŹche 22), utiliser
factor(classes) Ă  la place de facteur dans les fonctions s.class() et
s.chull().

   L’échelle des ïŹ‚Ăšches sur la double reprĂ©sentation individus - variables est
arbitraire, elle peut ĂȘtre changĂ©e sans que cela ne change l’interprĂ©tation.

   Pour l’interprĂ©tation, n’utiliser que les individus les plus Ă©loignĂ©s du centre
du nuage de points et les ïŹ‚Ăšches les plus longues pour les variables, car ce sont
eux qui sont le mieux représentés par les axes.

    Un 1er axe trÚs corrélé de façon positive avec toutes les variables est souvent
le signe d’un « eïŹ€et taille ». Il convient dans ce cas de se placer dans des plans
factoriels ne comprenant pas le 1er axe pour l’interprĂ©tation.
19. L’Analyse Factorielle des Correspondances (AFC)
   Les donnĂ©es doivent ĂȘtre en eïŹ€ectifs et organisĂ©es dans un tableau de
contingence, du type :

                                              Variable B
                                         Classe 1 ... Classe c
                             Classe 1
              Variable A        ...
                             Classe k

    Ce tableau est obtenu de la maniĂšre suivante : tableau<-table(variabl-
eA,variableB) oĂč variableA et variableB sont des vecteurs contenant la
valeur de chaque individu pour chaque variable (dans le mĂȘme ordre). Il peut
Ă©galement ĂȘtre directement importĂ© dans R sous cette forme (en laissant la
case en haut Ă  gauche vide).
    L’AFC est sensible aux eïŹ€ectifs faibles, aussi regrouper les classes quand
cela est nécessaire.

    Commencer par calculer la valeur du χ2 du test d’indĂ©pendance des deux va-
riables (voir ïŹche 64), rĂ©alisĂ© Ă  partir du tableau initial : chisq.test(tablea-
u)$statistic.
    L’AFC est rĂ©alisĂ©e grĂące Ă  la fonction dudi.coa() du package ade4.
Lorsque la commande afc<-dudi.coa(tableau) est passée, R renvoie le
graphe des valeurs propres (ou pouvoirs de synthÚse) associées à chaque va-
riable de synthĂšse (ou axe) et demande le nombre d’axes Ă  sĂ©lectionner. La part
de l’inertie (ou information totale contenue dans le tableau initial) expliquĂ©e
par chaque axe se calcule par :

                         valeur propre × eïŹ€ectif total
                                      χ2

On peut choisir le nombre d’axes expliquant ensemble x % de l’inertie, x Ă©tant
choisi Ă  l’avance, ou un nombre d’axes dĂ©terminĂ© Ă  l’avance.

    Le diagnostic de l’AFC se fait grñce à la fonction inertia.dudi(afc), qui
renvoie le tableau $TOT. Celui-ci contient la contribution à l’inertie de chaque
axe (proportions cumulées dans la colonne ratio, multiplier par 100 pour
le pourcentage). En ajoutant l’argument col.inertia=TRUE à la fonction on
obtient trois tableaux supplémentaires :
    – $col.abs : donne la contribution à l’inertie de chaque colonne du tableau
      de départ, i.e. leur importance respective dans la construction des axes
      (ce qui aide Ă  l’interprĂ©tation de ces axes). Diviser par 100 pour obtenir
      les pourcentages. La somme de chaque colonne est Ă©gale Ă  100 %
– $col.rel : donne la part d’information apportĂ©e par chaque axe pour
     chaque colonne (diviser la valeur absolue par 100 pour obtenir les pour-
     centages). Ne pas tenir compte de la 3Ăšme colonne
   – $col.cum : valeurs absolues de $col.rel cumulĂ©es (diviser par 100
     pour obtenir les pourcentages). Donne donc la part totale d’information
     apportée par tous les axes retenus pour chaque colonne, autrement dit
     la qualité de la représentation de chaque colonne.
   Ajouter l’argument row.inertia=TRUE à la fonction inertia.dudi() pour
obtenir le diagnostic pour chaque ligne ($row.abs, $row.rel et $row.cum).

    Pour visualiser graphiquement le rĂ©sultat de l’AFC (donc la structure du
tableau), utiliser scatter(afc,posieig="none"). Pour sélectionner un plan
factoriel, ajouter les arguments xax=num1 et yax=num2 oĂč num1 est le numĂ©ro
du 1er axe choisi et num2 celui du 2nd (il faut avoir sélectionné au moins deux
axes au dĂ©part de l’AFC). Par convention on choisit pour l’axe horizontal celui
des deux ayant la meilleure contribution Ă  l’inertie totale. La proximitĂ© des
modalités représente leur liaison plus ou moins forte dans le tableau initial
(mais faire attention aux contributions relatives $col.rel et $row.rel du
diagnostic).
    Pour ajouter sur la reprĂ©sentation graphique des groupes d’individus dĂ©ïŹnis
par une mĂ©thode de classiïŹcation automatique (voir ïŹche 22) :
    – sous forme d’ellipses : s.class(dfxy=individus,fac=factor(classe-
      s),add.plot=TRUE)
    – sous forme de polygones de contour : s.chull(dfxy=individus,fac=fa-
      ctor(classes),optchull=1,add.plot=TRUE)
oĂč individus est afc$li si les lignes du tableau initial sont considĂ©rĂ©es comme
les individus Ă  regrouper, afc$co si ce sont les colonnes. Pour donner une
couleur Ă  chaque groupe ajouter l’argument col=couleur oĂč couleur est un
vecteur contenant la couleur de chaque classe. Préciser le plan factoriel grùce
aux arguments xax et yax.

    La contribution des lignes et des colonnes Ă  la construction des axes ne peut
pas se lire sur le graphique (leur Ă©loignement de l’origine n’est pas reprĂ©sentatif
de leur contribution à l’inertie des axes). Il est donc indispensable de lire en
détail le diagnostic.

   Pour interprĂ©ter les axes il peut ĂȘtre utile d’utiliser score(afc,xax=num,
dotchart=TRUE) oĂč num est le numĂ©ro de l’axe Ă  reprĂ©senter. Le graphique
montre la rĂ©partition des modalitĂ©s des deux facteurs sur l’axe choisi. Utiliser
abline(v=0) pour ajouter une ligne marquant l’origine de l’axe.
20. L’Analyse en Composantes Multiples (ACM)
    Les donnĂ©es doivent ĂȘtre contenues dans un tableau avec en colonnes les
variables (avec un titre) et en ligne les individus. La 1Ăšre case du tableau (en
haut Ă  gauche) doit ĂȘtre vide si la 1Ăšre colonne contient le nom des individus.
Pour intégrer des variables quantitatives, regrouper les valeurs en classes (les
variables deviennent donc qualitatives).
    Le tableau ne doit pas contenir de données manquantes (NA). Pour suppri-
mer les lignes qui en possĂšdent : tableau2<-na.omit(tableau), oĂč tableau
est le tableau de départ.

   Il est indispensable de réaliser une analyse préliminaire de chaque variable,
aïŹn de voir si toutes les classes sont aussi bien reprĂ©sentĂ©es ou s’il existe un
dĂ©sĂ©quilibre. Pour cela utiliser plot(variable) oĂč variable est la variable
choisie. L’ACM est sensible aux eïŹ€ectifs faibles, aussi regrouper les classes
quand cela est nécessaire.
   De mĂȘme, si les variables ne sont pas trop nombreuses, rĂ©aliser un test du
χ2 d’indĂ©pendance deux-Ă -deux est une premiĂšre approche : chisq.test(ta-
ble(variable1,variable2)) (voir ïŹche 64).

    L’ACM est rĂ©alisĂ©e grĂące Ă  la fonction dudi.acm() du package ade4.
Lorsque la commande acm<-dudi.acm(tableau) est passée, R renvoie le
graphe des valeurs propres (ou pouvoirs de synthÚse) associées à chaque va-
riable de synthĂšse (ou axe) et demande le nombre d’axes Ă  sĂ©lectionner. Il est
diïŹƒcile d’établir un critĂšre de choix pour l’ACM, ne pas multiplier les axes est
en tout cas bĂ©nĂ©ïŹque pour l’interprĂ©tation.

    Le diagnostic de l’ACM se fait grñce à la fonction inertia.dudi(acm),
qui renvoie le tableau $TOT. Celui-ci contient la contribution à l’inertie (ou
information totale) de chaque axe (proportions cumulées dans la colonne ratio,
multiplier par 100 pour le pourcentage).

    Pour reprĂ©senter les rĂ©sultats de l’ACM, utiliser scatter(acm). Les rĂ©sul-
tats sont sĂ©parĂ©s pour chaque variable, toutes reprĂ©sentĂ©es sur le mĂȘme plan
factoriel. Pour sélectionner un plan factoriel, ajouter les arguments xax=num1
et yax=num2 oĂč num1 est le numĂ©ro du 1er axe choisi et num2 celui du 2nd (il
faut avoir sĂ©lectionnĂ© au moins deux axes au dĂ©part de l’ACM). Par convention
on choisit pour l’axe horizontal celui des deux ayant la meilleure contribution
Ă  l’inertie totale. Les modalitĂ©s de chaque variable sont reprĂ©sentĂ©es par des
ellipses portant leur nom. Pour rendre le graphique plus clair et donner une
couleur Ă  chaque modalitĂ©, ajouter l’argument col=couleur oĂč couleur est
un vecteur contenant autant de noms (ou numĂ©ros) de couleurs qu’il y a de
modalités possibles.
Pour ne reprĂ©senter qu’une seule variable, le mĂȘme rĂ©sultat est obtenu via
s.class(dfxy=acm$li,fac=variable,col=couleur,sub="nom") oĂč varia-
ble est la variable choisie et nom son nom (entre guillemets). Choisir le plan
factoriel à l’aide des arguments xax et yax.

    Le tableau acm$cr contient les rapports de corrélation (variant de 0 à 1)
entre les variables et les axes choisis au dĂ©part de l’ACM. Pour reprĂ©senter gra-
phiquement ces rapports, utiliser barplot(acm$cr[,num],names.arg=row.n-
ames(acm$cr),las=2) oĂč num est le numĂ©ro de l’axe Ă  reprĂ©senter. Pour
l’interprĂ©tation des axes, se concentrer sur les variables les plus structurantes,
i.e. dont le rapport de corrélation est le plus proche de 1.
    Une aide Ă  l’interprĂ©tation est fournie par la fonction score(acm,xax=num)
oĂč num est le numĂ©ro de l’axe Ă  reprĂ©senter. Le graphique montre la rĂ©partition
des modalitĂ©s de chaque variable sur l’axe choisi. Pour sĂ©lectionner les variables
Ă  reprĂ©senter, ajouter l’argument which.var=variables oĂč variables est un
vecteur contenant le numéro des variables choisies, i.e. le numéro des colonnes
correspondantes dans le tableau initial.

   L’ACM est clairement une analyse plus diïŹƒcile Ă  interprĂ©ter que l’ACP
ou l’AFC. Aussi, il est bon de limiter la diïŹƒcultĂ© en ne considĂ©rant pas des
dizaines de variables mais en se limitant aux questions essentielles.
   De plus, l’ACM est sensible aux modalitĂ©s contenant un faible eïŹ€ectif et
aux variables contenant un grand nombre de modalités. Mieux vaut donc
regrouper ces modalitĂ©s en classes plus larges lorsque l’un de ces deux cas se
présente.
21. L’Analyse mixte de Hill et Smith
    Les donnĂ©es doivent ĂȘtre contenues dans un tableau avec en colonnes les
variables (avec un titre) et en ligne les individus. La 1Ăšre case du tableau (en
haut Ă  gauche) doit ĂȘtre vide si la 1Ăšre colonne contient le nom des individus.
    Le tableau ne doit pas contenir de données manquantes (NA). Pour suppri-
mer les lignes qui en possĂšdent : tableau2<-na.omit(tableau), oĂč tableau
est le tableau de départ.

    Il est indispensable de réaliser une analyse préliminaire de chaque variable
aïŹn d’observer la distribution des valeurs (variables quantitatives) ou leur
rĂ©partition entre les diïŹ€Ă©rentes classes (variables qualitatives). Utiliser pour
cela les fonctions hist(), plot() et/ou boxplot(), selon les variables (voir
ïŹches 13, 14 et 16).

    L’analyse mixte est rĂ©alisĂ©e grĂące Ă  la fonction dudi.mix() du package
ade4. Lorsque la commande amix<-dudi.mix(tableau2) est passée, R ren-
voie le graphe des valeurs propres (ou pouvoirs de synthÚse) associées à chaque
variable de synthĂšse (ou axe) et demande le nombre d’axes Ă  sĂ©lectionner. Il est
diïŹƒcile d’établir un critĂšre de choix pour l’analyse mixte, ne pas multiplier les
axes est en tout cas bĂ©nĂ©ïŹque pour l’interprĂ©tation. Le pourcentage d’inertie
(ou de l’information totale) expliquĂ© par chaque axe est calculĂ© en divisant la
valeur propre d’un axe par le nombre d’axes possibles.

   Le diagnostic de l’analyse mixte se fait grñce à la fonction inertia.dudi(a-
mix), qui renvoie le tableau $TOT. Celui-ci contient la contribution à l’inertie
de chaque axe (proportions cumulées dans la colonne ratio, multiplier par
100 pour le pourcentage).

    Pour reprĂ©senter les rĂ©sultats de l’analyse mixte, la fonction scatter(ami-
x) peut ĂȘtre utilisĂ©e. Elle reprĂ©sente dans le plan factoriel les individus, les
variables quantitatives comme dans une ACP (voir ïŹche 18) et les variables
qualitatives comme dans une ACM (voir ïŹche 20). Pour sĂ©lectionner un plan
factoriel, ajouter les arguments xax=num1 et yax=num2 oĂč num1 est le numĂ©ro
du 1er axe choisi et num2 celui du 2nd (il faut avoir sélectionné au moins deux
axes au dĂ©part de l’analyse). Par convention on choisit pour l’axe horizontal
celui des deux ayant la meilleure contribution à l’inertie totale.
    Cette reprĂ©sentation peut cependant ĂȘtre illisible. Il vaut mieux utili-
ser les fonctions scat.mix.numeric() et scat.mix.categorical() du pa-
ckage RVAideMemoire. La fonction scat.mix.numeric(amix) représente les
variables quantitatives sur un cercle des corrélation (comme en ACP, voir
ïŹche 18), tandis que la fonction scat.mix.categorical(amix) reprĂ©sente les
variables qualitatives Ă  la maniĂšre d’une ACM (voir ïŹche 20).
Le tableau amix$cr contient les valeurs des « corrélations » (de 0 à 1)
qui lient les variables de synthÚse aux variables initiales. Pour les représenter
graphiquement, utiliser barplot(amix$cr[,num],names.arg=row.names(am-
ix$cr),las=2) oĂč num est le numĂ©ro de l’axe Ă  reprĂ©senter. Pour l’interprĂ©ta-
tion des axes, se concentrer sur les variables les plus structurantes, i.e. dont le
rapport de corrélation est le plus proche de 1.
    Une aide Ă  l’interprĂ©tation est fournie par la fonction score(amix,xax=n-
um) oĂč num est le numĂ©ro de l’axe Ă  reprĂ©senter. LĂ  encore la reprĂ©sentation est
de type ACP ou ACM selon la nature des variables. Pour sélectionner les va-
riables Ă  reprĂ©senter, ajouter l’argument which.var=variables oĂč variables
est un vecteur contenant le numéro des variables choisies, i.e. le numéro des
colonnes correspondantes dans le tableau initial.
22. Les classiïŹcations automatiques
   Les classiïŹcations automatiques sont utilisĂ©es pour regrouper des individus
en classes, le plus souvent aprĂšs une ACP (voir ïŹche 18) ou une AFC (voir
ïŹche 19). Il existe deux types de classiïŹcation automatique :
   – non hiĂ©rarchiques : le nombre de classes est dĂ©terminĂ© a priori
   – hiĂ©rarchiques : les individus sont agrĂ©gĂ©s successivement pour aboutir Ă 
      un arbre de classiïŹcation (appelĂ© dendrogramme). C’est Ă  partir de cet
      arbre que l’on dĂ©termine le nombre de classes Ă  gĂ©nĂ©rer.
   Il existe plusieurs mĂ©thodes de classiïŹcation automatique. Seules deux sont
dĂ©crites ici : la mĂ©thode des k-means (non hiĂ©rarchique) et la classiïŹcation
ascendante hiérarchique (hiérarchique).

  Le méthode des k-means
    L’obtention de la classe de chaque individu se fait en une seule Ă©tape
via classes<-kmeans(tableau,centers=nombre)$cluster, oĂč nombre est
le nombre de classes Ă  gĂ©nĂ©rer et tableau le tableau de donnĂ©es Ă  l’origine de
l’analyse multivariĂ©e. Attention, les individus Ă  classer sont les lignes du tableau
de donnĂ©es. Pour considĂ©rer les colonnes comme individus dans le cas d’une
classiïŹcation post-AFC (voir ïŹche 19), remplacer tableau par t(tableau).

 La ClassiïŹcation Ascendante HiĂ©rarchique (CAH)
  L’obtention de la classe de chaque individu se fait en plusieurs Ă©tapes :
   1. calculer la distance entre chaque individu. En pratique on utilise le plus
      souvent la distance euclidienne (mais il en existe d’autres) :
      distances<-dist(tableau,method="euclidian"). Si nécessaire, rem-
      placer tableau par t(tableau)
   2. regrouper les individus sur la base d’un critĂšre d’agglomĂ©ration. Il existe
      plusieurs critùres, en pratique on utilise souvent celui de Ward (ce n’est
      pas le seul, et aucun n’est le meilleur dans l’absolu). Utiliser la fonction
      hclust() contenue dans le package ade4 : dendrogramme<-hclust(dis-
      tances,method="ward")
   3. représenter le dendrogramme : plot(dendrogramme,hang=-1). La dis-
      tance verticale qui sépare deux groupes est représentative de leur proxi-
      mité dans le tableau de données. A partir de cet arbre, sélectionner le
      nombre de classes le plus pertinent
   4. aïŹ€ecter chaque individu Ă  une classe via la fonction cutree() du package
      ade4 : classes<-cutree(dendrogramme,k=nombre), oĂč nombre est le
      nombre de classes souhaité.

   Une fois que le vecteur classes a Ă©tĂ© obtenu, les classes peuvent ĂȘtre
reprĂ©sentĂ©es graphiquement (voir ïŹche 18 pour l’ACP, ïŹche 19 pour l’AFC).
23. Les lois de probabilitĂ© discontinues – gĂ©nĂ©ralitĂ©s
  Ces lois s’appliquent à des variables quantitatives discrùtes.

  ParamĂštres :
  – k : chaque valeur possible rencontrĂ©e dans la population par la variable
    discrÚte X. Egalement appelée quantile
  – f (k) : frĂ©quence, ou probabilitĂ©, associĂ©e Ă  chaque valeur de la variable
    discrÚte X. Egalement appelée distribution de probabilité de X ou
    fonction de masse de X. Comprise entre 0 et 1
  – F (k) : somme des probabilitĂ©s f (k) situĂ©es Ă  droite ou Ă  gauche de k,
    suivant la situation. Egalement appelée fonction de répartition de X. On
    note F (k)droite = P (X > k) et F (k)gauche = P (X ≀ k). Comprise entre
    0 et 1.

  Dans R :
  – dY() : donne la probabilitĂ© f (k) pour une distribution de type Y
  – pY() : donne la fonction de rĂ©partition F (k) pour une distribution
    de type Y. R considÚre par défaut la répartition à gauche, préciser
    lower.tail=FALSE pour la répartition à droite
  – qY() : donne la valeur k de la variable X correspondant à une valeur
    de F (k) pour une distribution de type Y. R considÚre par défaut la
    répartition à gauche de k, préciser lower.tail=FALSE pour la répartition
    Ă  droite
  – rY() : donne une sĂ©rie de valeurs alĂ©atoires de la variable X pour une
    distribution de type Y.
24. La loi binomiale
    La loi binomiale est la loi suivie par les résultats de tirages aléatoires lors-
qu’il n’y a que deux possibilitĂ©s mutuellement exclusives de rĂ©sultat et que la
probabilitĂ© d’obtenir chaque possibilitĂ© est constante au cours de l’expĂ©rience
(i.e. population inïŹnie ou tirages avec remise). La loi donne la probabilitĂ©
d’obtenir k fois le rĂ©sultat A quand n tirages sont rĂ©alisĂ©s.

    Ecriture : B(n, p)
avec :
n : nombre de tirages
p : probabilité associée au résultat A

   Dans R :
dbinom(k,n,p)
pbinom(k,n,p)
qbinom(F(k),n,p)
rbinom(x,n,p) avec x : nombre de valeurs à générer
25. La loi de Poisson
    La loi de Poisson est une limite de la loi binomiale (voir ïŹche 24) quand p
tend vers 0 et n vers l’inïŹni (« loi des Ă©vĂšnements rares »). L’approximation
de la loi binomiale par la loi de Poisson est possible quand quand p < 0, 1 et
n > 30.
    Sa moyenne est égale à sa variance et vaut np (ou λ).

    Ecriture : P (np) ou P (λ)
avec :
n : nombre de tirages
p : probabilité associée au résultat rare

   Dans R :
dpois(k,n*p) ou dpois(k,lambda)
ppois(k,n*p) ou ppois(k,lambda)
qpois(F(k),n*p) ou qpois(F(k),lambda)
rpois(x,n*p) ou rpois(x,lambda) avec x : nombre de valeurs à générer
26. La loi binomiale négative
   La loi binomiale nĂ©gative correspond Ă  la mĂȘme situation que la loi bino-
miale (voir ïŹche 24), mais elle donne la probabilitĂ© d’obtenir r rĂ©sultats B
avant d’obtenir k rĂ©sultats A (approche par l’échec).

    Ecriture : BN (k, p)
avec :
k : nombre de résultats A désirés
p : probabilité associée au résultat A

   Dans R :
dnbinom(r,k,p)
pnbinom(r,k,p)
qnbinom(F(r),k,p)
rnbinom(x,k,p) avec x : nombre de valeurs à générer
27. Les lois de probabilitĂ© continues – gĂ©nĂ©ralitĂ©s
  Ces lois s’appliquent à des variables quantitatives continues.

  ParamĂštres :
  – xi : chaque valeur possible de la variable continue x. Egalement appelĂ©e
    quantile
  – f (xi ) : distribution de probabilitĂ© de la valeur xi . Egalement appelĂ©e
    densité de probabilité de xi . Comprise entre 0 et 1
  – F (xi ) : aire sous la courbe situĂ©e Ă  droite ou Ă  gauche de xi , suivant
    la situation. Egalement appelée fonction de répartition de xi . On note
    F (xi )droite = P (x > xi ) et F (xi )gauche = P (x ≀ xi ). Comprise entre 0
    et 1.

  Dans R :
  – dY() : donne la densitĂ© de probabilitĂ© f (xi ) pour une distribution de
    type Y
  – pY() : donne la fonction de rĂ©partition F (xi ) pour une distribution
    de type Y. R considÚre par défaut la répartition à gauche, préciser
    lower.tail=FALSE pour la répartition à droite
  – qY() : donne la valeur xi de la variable x correspondant à une valeur
    de F (xi ) pour une distribution de type Y. R considÚre par défaut la
    répartition à gauche de k, préciser lower.tail=FALSE pour la répartition
    Ă  droite
  – rY() : donne une sĂ©rie de valeurs alĂ©atoires de la variable x pour une
    distribution de type Y.
28. La loi normale
    Ecriture : N (”, σ)
avec :
” : moyenne de la variable x
σ : Ă©cart-type de la variable x

   Cas particulier, la loi normale centrée-réduite : N (0, 1)

   Dans R :
dnorm(xi,mu,sigma)
pnorm(xi,mu,sigma)
qnorm(F(xi),mu,sigma)
rnorm(z,mu,sigma) avec z : nombre de valeurs à générer
29. La loi exponentielle
    La loi exponentielle correspond souvent Ă  des Ă©vĂšnements dont la proba-
bilité de survenue diminue avec le temps. Elle est également utilisée pour
modéliser des durées de vie.

   Ecriture : exp(λ)
avec λ : paramĂštre de la loi (0 < λ < +∞)

   Dans R :
dexp(xi,lambda)
pexp(xi,lambda)
qexp(F(xi),lambda)
rexp(z,lambda) avec z : nombre de valeurs à générer
30. La loi de χ2
   Ecriture : χ2 (Îœ)
avec Îœ : nombre de degrĂ©s de libertĂ© (ddl), i.e. de paramĂštres indĂ©pendants
impliquĂ©s dans la loi (0 < Îœ < +∞)

   Dans R :
dchisq(xi,ddl)
pchisq(xi,ddl)
qchisq(F(xi),ddl)
rchisq(z,ddl) avec z : nombre de valeurs à générer
31. La loi de Fisher - Snedecor
    Ecriture : F (Μ1 , Μ2 )
avec :
Îœ1 : 1er nombre de degrĂ©s de libertĂ© (ddl) (0 < Îœ1 < +∞)
Îœ2 : 2Ăšme nombre de ddl (0 < Îœ2 < +∞)

   Dans R :
df(xi,ddl1,ddl2)
pf(xi,ddl1,ddl2)
qf(F(xi),ddl1,ddl2)
rf(z,ddl1,ddl2) avec z : nombre de valeurs à générer
32. La loi de Student
   Ecriture : t(Μ)
avec Îœ : nombre de degrĂ©s de libertĂ© (ddl) (0 < Îœ < +∞)

   Dans R :
dt(xi,ddl)
pt(xi,ddl)
qt(F(xi),ddl)
rt(z,ddl) avec z : nombre de valeurs à générer
33. Principe des tests statistiques et risques associés à la
conclusion
   Principe de réalisation des tests statistiques :
   1. poser une hypothÚse nulle H0 , de type « rien à signaler » (ex : les
      moyennes ”A et ”B sont égales) ou « valeur ponctuelle » (ex : ” = 10,
      ” = 50 %)
   2. poser une hypothĂšse H1 , de telle maniĂšre que H0 et H1 soient exclusives
      (ex : les moyennes ”A et ”B sont diïŹ€Ă©rentes)
   3. calculer la valeur de la Variable de Test (VT), d’aprùs une formule qui
      dépend du test utilisé
   4. utiliser la valeur de la VT calculée pour déterminer une p-value, i.e. une
      probabilitĂ© d’obtenir la valeur mesurĂ©e (moyenne, pourcentage. . .) si H0
      est vraie
   5. conclure sur les deux hypothÚses posées grùce à cette p-value :
      – si la p-value est supĂ©rieure au seuil α ïŹxĂ© avant le test (5 % en gĂ©nĂ©ral,
        voir ïŹche 34), ne pas rejeter H0
      – si la p-value est infĂ©rieure au seuil α, rejeter H0 .

   Conclure sur les deux hypothÚses présente deux risques :
   – le risque de 1Ăšre espĂšce ou risque α, qui correspond au risque de rejeter
     de H0 si celle-ci est rĂ©ellement vraie (voir ïŹche 34)
   – le risque de 2Ăšme espĂšce ou risque ÎČ, qui correspond au risque de ne pas
     rejeter de H0 si celle-ci est rĂ©ellement fausse (voir ïŹche 36).


                              Réalité (inconnue le plus souvent)
             DĂ©cision           H0 vraie           H0 fausse
           H0 non rejetĂ©e     Bonne dĂ©cision       Erreur ÎČ
            H0 rejetée          Erreur α        Bonne décision

    La probabilitĂ© associĂ©e au fait de rejeter H0 si celle-ci est fausse (soit 1 − ÎČ)
est appelée puissance du test. Cette notion est trÚs importante car elle relativise
le rĂ©sultat des tests, et donc la conclusion que l’on en tire (voir ïŹche 36).
34. Le risque ou seuil de rejet α
    Le risque α, ou seuil de rejet ou encore seuil de signiïŹcation de l’hypothĂšse
H0 , est une valeur ïŹxĂ©e arbitrairement avant la rĂ©alisation de tout test statis-
tique. Elle correspond à un risque assumé de se tromper, celui de rejeter H0 si
celle-ci est réellement vraie (ce que bien sûr on ne sait jamais).
    Lorsque l’on calcule une p-value suite Ă  un test (voir ïŹche 33), on la
compare au seuil α choisi :
    – si la p-value est infĂ©rieure au seuil α, on rejette H0 . Il faut ĂȘtre conscient
       que l’on prend un risque α de se tromper
    – si la p-value est supĂ©rieure au seuil α, on ne rejette pas H0 . Il faut alors
       calculer la puissance du test que l’on vient d’utiliser (voir ïŹches 36 et
      37). Obtenir une p-value supĂ©rieure au seuil α peut en eïŹ€et avoir deux
       origines :
        1. une réelle véracité de H0
        2. un manque de puissance du test, i.e. un risque (ÎČ, voir ïŹche 33)
           important de « passer Ă  cĂŽtĂ© » d’une rĂ©elle faussetĂ© de H0 (voir
           ïŹche 36).




   Xseuil : valeur de la Variable de Test (VT) X qui donne une fonction de
répartition à droite égale au seuil α (test unilatéral droit).
   Xcalc : valeur de la VT X calculĂ©e Ă  partir de l’échantillon testĂ©.

   A gauche l’hypothĂšse H0 est rejetĂ©e, Ă  droite elle ne l’est pas.

    D’un point de vue pratique, on utilise souvent un seuil α de 5 %. Cela veut
dire qu’on assume un risque de 5 % de rejeter H0 si celle-ci est rĂ©ellement
vraie.
35. La correction du seuil de rejet α (ou des p-values)
    Si une série de tests statistiques est réalisée avec à chaque fois α pour seuil
de rejet de H0 (voir ïŹche 34), le risque global de rejeter H0 si celle-ci est vraie
augmente. En eïŹ€et, plus on eïŹ€ectue de tests, plus on a de chance de tomber
sur un échantillon peu représentatif de la population dont il provient (donnant
une p-value inférieure au seuil α).
    Il est donc nécessaire de corriger le seuil de rejet α de chaque test lorsque
plusieurs sont rĂ©alisĂ©s (ou leur p-value, ce qui revient au mĂȘme), aïŹn que le
risque global soit égal au α souhaité.
    Cette situation se présente :
    – lorsque les tests vont permettre de prendre une dĂ©cision unique, dĂšs que
       l’un d’eux au moins permet le rejet de H0
    – lorsqu’est rĂ©alisĂ©e une sĂ©rie de tests deux-Ă -deux, soit directement soit
       aprĂšs une analyse globale (ANOVA, test du χ2 d’homogĂ©nĂ©itĂ©. . .).

   Plusieurs méthodes de correction existent, dont les trois suivantes :

 La technique de Bonferroni
   Si k tests sont eïŹ€ectuĂ©s, la technique consiste simplement Ă  diviser le seuil
de rejet global α par k, donc considérer pour chaque test le seuil de rejet α .
                                                                             k
   Cela revient à multiplier chaque p-value par k, sans changer le seuil α.

 La technique séquentielle de Holm
   La procédure se réalise en plusieurs étapes :
  1. classer les p-values de tous les tests réalisés par ordre croissant (p1 <. . .<
     pk ), k Ă©tant le nombre de tests eïŹ€ectuĂ©s
  2. rejeter H0 pour les tests dont la p-value satisfait la condition :
                                             αseuil
                                    pi ≀
                                          k+1−i
      oĂč i est le rang de la p-value aprĂšs classement.

 La technique du False Discovery Rate (FDR) de Benjamini et
Hochberg
   La procédure se réalise en plusieurs étapes :
  1. classer les p-values de tous les tests réalisés par ordre croissant (p1 <. . .<
     pk ), k Ă©tant le nombre de tests eïŹ€ectuĂ©s
  2. rejeter H0 pour les tests dont la p-value satisfait la condition :
                                                 i
                                     pi ≀ αseuil ×
                                                 k
      oĂč i est le rang de la p-value aprĂšs classement.
La technique la plus stricte est celle de Bonferroni, la moins stricte celle
du FDR. Cette derniĂšre peut ĂȘtre appliquĂ©e par dĂ©faut. Dans tous les cas
la mĂ©thode de correction du seuil de rejet de H0 doit ĂȘtre dĂ©cidĂ©e avant de
réaliser les tests.

    Dans R, si p est le vecteur contenant les p-values non corrigées, utiliser
la fonction p.adjust() pour récupérer un vecteur avec les p-values corrigées
(dans le mĂȘme ordre) :
p.adjust(p,method="bonferroni") pour la correction de Bonferroni
p.adjust(p,method="holm") pour la correction de Holm
p.adjust(p,method="BH") ou p.adjust(p,method="fdr") pour la correc-
tion de Benjamini et Hochberg (FDR).
36. Le risque ÎČ et la puissance du test
     Le risque ÎČ est le risque de ne pas rejeter l’hypothĂšse H0 si celle-ci est
rĂ©ellement fausse. Contrairement au risque α, le risque ÎČ ne peut pas ĂȘtre ïŹxĂ©.
En eïŹ€et, si α dĂ©pend de la distribution de la Variable de Test (VT) sous H0
(voir ïŹche 34), ÎČ dĂ©pend de sa distribution sous H1 . Or cette distribution est
inconnue, puisque l’hypothĂšse H1 regroupe une inïŹnitĂ© de distributions (ex :
si l’hypothĂšse H1 est ”A = ”B , les deux moyennes ”A et ”B peuvent diïŹ€Ă©rer
d’une inïŹnitĂ© de façons).
     La puissance d’un test reprĂ©sente la probabilitĂ© de rejeter H0 si celle-ci
est rĂ©ellement fausse (i.e. de faire le bon choix). Elle Ă©quivaut Ă  1 − ÎČ, et
est donc également une variable dépendant de la distribution de la VT sous H1 .

   Le risque ÎČ et la puissance du test dĂ©pendent du seuil α ïŹxĂ© :




   Xseuil : valeur de la VT X qui donne une fonction de répartition à droite
égale au seuil α pour la distribution sous H0 (test unilatéral droit).

   La puissance d’un test augmente :
   – quand augmente le seuil α
   – quand augmente l’eïŹ€ectif de l’échantillon testĂ© (ce qui diminue l’étalement
     de la distribution de la VT ou Ă©loigne les distributions de la VT sous H0
     et H1 , selon le test)
   – quand augmente l’écart rĂ©el entre les valeurs testĂ©es (moyennes. . .).

    Il est possible de calculer la puissance d’un test aprĂšs avoir rĂ©alisĂ© celui-ci
(voir ïŹche 37). Cela est indispensable car, lorsque la p-value d’un test est
supĂ©rieure au seuil α ïŹxĂ©, cela peut aussi bien provenir d’une rĂ©elle vĂ©racitĂ© de
H0 que d’un manque de puissance du test alors que H0 est rĂ©ellement fausse.
Avant de conclure sur H0 , il faut donc avoir une idée de la puissance du test
employé (en particulier lorsque la p-value est peu supérieure au seuil α).
37. Calculer la puissance d’un test a posteriori
    Il existe un lien entre le seuil de rejet α du test statistique utilisé (voir
ïŹches 33 et 34), la puissance de ce test (voir ïŹche 36), la diïŹ€Ă©rence entre les
échantillons pour la variable mesurée et la taille des échantillons. On peut
donc dĂ©terminer – au moins approximativement – la puissance d’un test aprĂšs
l’avoir rĂ©alisĂ©, car on connaĂźt tous les autres paramĂštres.
    Selon l’objectif de l’étude, la puissance Ă  atteindre n’est pas la mĂȘme. On
considĂšre en eïŹ€et que lorsque l’objectif est de rejeter H0 (voir ïŹche 33), la
puissance du test doit ĂȘtre d’au moins 80 % ; lorsque l’objectif est de ne pas
rejeter H0 (voir ïŹche 33), la puissance doit ĂȘtre d’au moins 95 %.

    Dans R, la fonctions power() permet, pour quelques tests paramétriques
courants, de calculer leur puissance lorsque l’on connaüt tous les autres para-
mĂštres. Lorsque l’on a choisi ou Ă©tĂ© contraint d’utiliser un test non paramĂ©-
trique, on peut tout de mĂȘme estimer sa puissance. Celle-ci est vaut en eïŹ€et
environ 95 % de la puissance du test paramétrique équivalent.

    Toutes les fonctions dĂ©crites sont basĂ©es sur le mĂȘme principe : le para-
mĂštre power doit avoir comme valeur NULL tandis que tous les autres doivent
ĂȘtre ïŹxĂ©s. Toutes les fonctions considĂšrent que l’eïŹ€ectif est le mĂȘme dans les
diïŹ€Ă©rents groupes Ă  comparer (on parle d’eïŹ€ectifs Ă©quilibrĂ©s). Il est fortement
conseillĂ© de toujours prĂ©voir ses plans d’échantillonnage ou d’expĂ©rience de
cette façon, ce qui (i) facilite l’analyse et (ii) permet d’utiliser la plupart des
tests non paramĂ©triques, dont l’équilibre des eïŹ€ectifs est une condition. Cela
dit, si les eïŹ€ectifs ne sont pas Ă©quilibrĂ©s, on peut tout de mĂȘme se faire une
idĂ©e de la puissance du test employĂ© en utilisant comme eïŹ€ectif celui du plus
petit des groupes comparĂ©s. Mieux vaut en eïŹ€et lĂ©gĂšrement sous-estimer la
puissance d’un test pour conclure, que la sur-estimer.

 Comparaison d’une moyenne avec une valeur thĂ©orique (voir ïŹche
58) ou de deux moyennes (voir ïŹche 59) – test t de Student
    power.t.test(n,delta,sd,sig.level,power,type)
avec :
n : eïŹ€ectif de chaque groupe
delta : diïŹ€Ă©rence entre la moyenne de l’échantillon et la moyenne thĂ©orique,
ou entre les deux moyennes
sd : Ă©cart-type (identique pour les deux Ă©chantillons dans le cas d’une compa-
raison de 2 moyennes), dans l’unitĂ© des moyennes
sig.level : seuil de rejet α utilisé pour le test
power : puissance du test (NULL)
type : type de test ("one.sample" pour la comparaison d’une moyenne avec
une valeur théorique, "two.sample" pour la comparaison de deux moyennes,
"paired" pour la comparaison de deux moyennes en séries appariées).
Comparaison de plus de deux moyennes – analyse de variance à
un facteur (voir ïŹche 60)
    power.anova.test(groups,n,between.var,within.var,sig.level,
power)
avec :
groups : nombre de modalités à comparer
between.var : somme des carrés des écarts intergroupe
within.var : somme des carrés des écarts intragroupe (identique pour toutes
les modalités).

 Comparaison de deux proportions – test du χ2 d’homogĂ©nĂ©itĂ© (voir
ïŹche 54)
   power.prop.test(n,p1,p2,sig.level,power)
avec p1, p2 : proportions observées.

 SigniïŹcativitĂ© d’un coeïŹƒcient de corrĂ©lation linĂ©aire de Pearson
(voir ïŹche 65)
   Il est ici nécessaire de faire appel à la fonction pwr.r.test() du package
pwr :
   pwr.r.test(n,r,sig.level,power)
avec r : coeïŹƒcient de corrĂ©lation observĂ©.
38. L’identiïŹcation et la suppression des donnĂ©es aber-
rantes
    L’identiïŹcation des donnĂ©es aberrantes est une Ă©tape obligatoire de toute
analyse statistique. Elle doit se faire avant tout visuellement, grĂące Ă  des
graphes du type histogramme (voir ïŹche 13) ou boĂźtes Ă  moustaches (voir
ïŹche 14).
    On peut Ă©galement s’aider du test de Grubbs pour repĂ©rer des donnĂ©es sinon
aberrantes, du moins trĂšs diïŹ€Ă©rentes des autres. Utiliser pour cela la fonction
grubbs.test() du package outliers : grubbs.test(serie) oĂč serie est
un vecteur contenant la sĂ©rie de donnĂ©es. La fonction teste la valeur extrĂȘme
de la sĂ©rie la plus Ă©loignĂ©e de la moyenne. Pour tester l’autre valeur extrĂȘme,
ajouter l’argument opposite=TRUE.

    La suppression d’éventuelles donnĂ©es aberrantes est un point hautement
plus dĂ©licat que leur simple identiïŹcation. Supprimer une ou plusieurs donnĂ©es
aura nĂ©cessairement un eïŹ€et sur les analyses qui vont suivre, et cet eïŹ€et
sera d’autant plus important que l’eïŹ€ectif de l’échantillon est faible. Il est
donc tentant de supprimer les individus qui orientent les résultats vers des
conclusions inverses Ă  celles qui sont attendues.
    Il n’y a globalement que deux raisons qui doivent pousser Ă  Ă©liminer une
donnée :
    – s’il y a manifestement eu une erreur technique dans la mesure ou la
       retranscription de la donnĂ©e (par exemple si l’appareil de mesure est
       défectueux)
    – si la valeur de la mesure obtenue est biologiquement improbable pour la
       variable mesurée.
En dehors de ces deux cas, il y a de grandes chances pour que la valeur
« aberrante » soit simplement une singularitĂ© biologique de l’individu mesurĂ©.
Cette singularitĂ© est l’expression de la variabilitĂ© naturelle de tout caractĂšre
biologique, rien ne justiïŹe donc que l’individu soit supprimĂ© de l’étude.
    On notera donc en particulier qu’un rĂ©sultat signiïŹcatif du test de Grubbs
(ou de tout autre test Ă©quivalent) ne doit pas nĂ©cessairement conduire Ă  l’élimi-
nation de l’individu repĂ©rĂ© comme « aberrant », mais simplement Ă  s’intĂ©resser
de plus prĂšs Ă  lui.

   Dans tous les cas, l’identiïŹcation et la suppression Ă©ventuelle de donnĂ©es
aberrantes doit se faire avant tout autre analyse.
39. L’intervalle de conïŹance et l’erreur standard
 Intervalle de conïŹance d’une moyenne
    Petit eïŹ€ectif (< 30 individus) : utiliser le module « intervalle de conïŹance »
du test de Mann - Whitney - Wilcoxon (test non paramétrique qui calcule
en fait l’intervalle de conïŹance de la mĂ©diane) : wilcox.test(serie,con-
f.int=TRUE)$conf.int oĂč serie est un vecteur contenant la sĂ©rie de donnĂ©es.
Si les conditions du test de Mann - Whitney - Wilcoxon sont réunies (voir
ïŹche 59), mĂ©diane et moyenne sont proches.
    Grand eïŹ€ectif (> 30 individus) : utiliser le module « intervalle de conïŹance »
du test t de Student (test paramétrique) : t.test(serie)$conf.int.

 Erreur standard d’une moyenne
  Utiliser la fonction se() du package RVAideMemoire : se(serie).

 Intervalle de conïŹance d’une proportion
    Quel que soit l’eïŹ€ectif, utiliser le module « intervalle de conïŹance » du
test binomial exact : binom.test(a,b)$conf.int oĂč a est le nombre d’indivi-
dus de la catĂ©gorie d’intĂ©rĂȘt et b l’eïŹ€ectif total (ex : 9 femelles sur 25 individus).

 Intervalle de conïŹance de n’importe quoi
    Utiliser la fonction bootstrap() du package RVAideMemoire, qui est basée
sur la technique du bootstrap : bootstrap(serie,function(x,i) mean(x[i]
)). Dans cet exemple une moyenne est calculée, mais la fonction gÚre des
expressions bien plus complexes.
    La syntaxe particuliÚre de cette fonction doit obéir à deux rÚgles :
    – l’argument utilisĂ© dans l’expression Ă  calculer (ici cette expression est
       mean(x[i])) doit ĂȘtre le mĂȘme que le 1er dĂ©clarĂ© Ă  function(). Ici cet
       argument est x
    – l’argument utilisĂ© dans l’expression Ă  calculer doit toujours ĂȘtre suivi
       du second déclaré à function() placé entre crochets. Celui-ci est par
       dĂ©faut i, voir l’aide de la fonction boot() pour plus d’informations.

    Pour toutes ces fonctions, la prĂ©cision de l’intervalle de conïŹance peut ĂȘtre
modiïŹĂ©e grĂące Ă  l’argument conf.level (par dĂ©faut conf.level=0.95, ce qui
calcule l’intervalle de conïŹance Ă  95 %).
40.    Tracer un diagramme en barres avec barres d’erreur
   L’exemple prĂ©sentĂ© ici traite de moyennes et de barres d’erreur reprĂ©sentant
des erreurs standards. Il peut bien sĂ»r ĂȘtre adaptĂ© Ă  n’importe quelles valeurs.

 Un facteur
   L’étape prĂ©liminaire est de rassembler les moyennes (une par modalitĂ©
du facteur) dans un vecteur moyennes (contenant les valeurs dans l’ordre du
graphe, de gauche Ă  droite) et les erreurs standards (voir ïŹche 39) dans un
vecteur erreurs (avec les valeurs dans le mĂȘme ordre que les moyennes).
La procédure est ensuite la suivante :
> abscisses<-barplot(moyennes)
> segments(abscisses,moyennes-erreurs,abscisses,moyennes+erreu
rs)
> segments(abscisses-0.1,moyennes-erreurs,abscisses+0.1,moyenn
es-erreurs)
> segments(abscisses-0.1,moyennes+erreurs,abscisses+0.1,moyenn
es+erreurs)

 Deux facteurs
    Moyennes et erreurs standards doivent ĂȘtre contenues dans des matrices.
Ces matrices doivent avoir en lignes les modalités du 2nd facteur et en colonnes
celles du 1er facteur. La procédure est ensuite identique, il faut seulement
ajouter l’argument beside=TRUE à la fonction barplot().

   L’argument names.arg=noms de la fonction barplot() ajoute ou modiïŹe le
nom des barres (noms Ă©tant un vecteur contenant les noms de gauche Ă  droite),
tandis que legend=TRUE ajoute une légende dans le cas de deux facteurs.
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r
Herve aide-memoire-statistique r

Weitere Àhnliche Inhalte

Was ist angesagt?

Regression simple
Regression simpleRegression simple
Regression simpleLearningMahout
 
Les compétences professionnelles de l'enseignant
Les compétences professionnelles de l'enseignantLes compétences professionnelles de l'enseignant
Les compétences professionnelles de l'enseignantFaycel BADRI
 
21252637 optimisation-du-systeme-d’approvisionnement-de-la-fromagerie-bel-maroc
21252637 optimisation-du-systeme-d’approvisionnement-de-la-fromagerie-bel-maroc21252637 optimisation-du-systeme-d’approvisionnement-de-la-fromagerie-bel-maroc
21252637 optimisation-du-systeme-d’approvisionnement-de-la-fromagerie-bel-marocantilaman
 
chapitre 1 régression simple.pdf
chapitre 1 régression simple.pdfchapitre 1 régression simple.pdf
chapitre 1 régression simple.pdfAnassFarkadi
 
Cours master methodologie de recherche 2018
Cours master methodologie de recherche 2018Cours master methodologie de recherche 2018
Cours master methodologie de recherche 2018fikri khalid
 
Analyse de données avec spss,
Analyse de données avec spss,Analyse de données avec spss,
Analyse de données avec spss,Mohamed Amine Sansar
 
Demande manuscrite
Demande manuscriteDemande manuscrite
Demande manuscriteLaila Saady
 
La Regression lineaire
La Regression lineaireLa Regression lineaire
La Regression lineaireFIKRIMAIL
 
Livre des cours+tp microbiologie
Livre des cours+tp microbiologieLivre des cours+tp microbiologie
Livre des cours+tp microbiologiearezki sadoudi
 
Analyse critique de la littérature scientifique, congrÚs AFREK du 22/09/2011
Analyse critique de la littérature scientifique, congrÚs AFREK du 22/09/2011Analyse critique de la littérature scientifique, congrÚs AFREK du 22/09/2011
Analyse critique de la littérature scientifique, congrÚs AFREK du 22/09/2011Collectif GERAR
 
Lean Ă  l'hĂŽpital
Lean Ă  l'hĂŽpitalLean Ă  l'hĂŽpital
Lean Ă  l'hĂŽpitalStephane Nguyen
 
Cours echantillonnage et estimations
Cours echantillonnage et estimationsCours echantillonnage et estimations
Cours echantillonnage et estimationsMehdi Rajawi
 
Le MĂ©moire professionnel
Le MĂ©moire professionnelLe MĂ©moire professionnel
Le MĂ©moire professionnelS/Abdessemed
 
Rapport de stage; analyse microbiologique de l'eau
Rapport de stage; analyse microbiologique de l'eauRapport de stage; analyse microbiologique de l'eau
Rapport de stage; analyse microbiologique de l'eauElyakine Benmebkhout
 
Formation au logiciel NVivo d'analyse de données qualitatives
Formation au logiciel NVivo d'analyse de données qualitativesFormation au logiciel NVivo d'analyse de données qualitatives
Formation au logiciel NVivo d'analyse de données qualitativesvaléry ridde
 
Organiser son Doctorat
Organiser son DoctoratOrganiser son Doctorat
Organiser son Doctoratlorraine2
 
6sigma -chapitre 5 : INNOVER
6sigma  -chapitre 5 : INNOVER6sigma  -chapitre 5 : INNOVER
6sigma -chapitre 5 : INNOVERibtissam el hassani
 
Spss les premieres notions 1
Spss les premieres notions 1Spss les premieres notions 1
Spss les premieres notions 1Adad Med Chérif
 

Was ist angesagt? (20)

Regression simple
Regression simpleRegression simple
Regression simple
 
Les compétences professionnelles de l'enseignant
Les compétences professionnelles de l'enseignantLes compétences professionnelles de l'enseignant
Les compétences professionnelles de l'enseignant
 
21252637 optimisation-du-systeme-d’approvisionnement-de-la-fromagerie-bel-maroc
21252637 optimisation-du-systeme-d’approvisionnement-de-la-fromagerie-bel-maroc21252637 optimisation-du-systeme-d’approvisionnement-de-la-fromagerie-bel-maroc
21252637 optimisation-du-systeme-d’approvisionnement-de-la-fromagerie-bel-maroc
 
chapitre 1 régression simple.pdf
chapitre 1 régression simple.pdfchapitre 1 régression simple.pdf
chapitre 1 régression simple.pdf
 
Cours master methodologie de recherche 2018
Cours master methodologie de recherche 2018Cours master methodologie de recherche 2018
Cours master methodologie de recherche 2018
 
Analyse de données avec spss,
Analyse de données avec spss,Analyse de données avec spss,
Analyse de données avec spss,
 
Demande manuscrite
Demande manuscriteDemande manuscrite
Demande manuscrite
 
La Regression lineaire
La Regression lineaireLa Regression lineaire
La Regression lineaire
 
Livre des cours+tp microbiologie
Livre des cours+tp microbiologieLivre des cours+tp microbiologie
Livre des cours+tp microbiologie
 
Stat8 Anova
Stat8  AnovaStat8  Anova
Stat8 Anova
 
Methodologie des enquete
Methodologie des enqueteMethodologie des enquete
Methodologie des enquete
 
Analyse critique de la littérature scientifique, congrÚs AFREK du 22/09/2011
Analyse critique de la littérature scientifique, congrÚs AFREK du 22/09/2011Analyse critique de la littérature scientifique, congrÚs AFREK du 22/09/2011
Analyse critique de la littérature scientifique, congrÚs AFREK du 22/09/2011
 
Lean Ă  l'hĂŽpital
Lean Ă  l'hĂŽpitalLean Ă  l'hĂŽpital
Lean Ă  l'hĂŽpital
 
Cours echantillonnage et estimations
Cours echantillonnage et estimationsCours echantillonnage et estimations
Cours echantillonnage et estimations
 
Le MĂ©moire professionnel
Le MĂ©moire professionnelLe MĂ©moire professionnel
Le MĂ©moire professionnel
 
Rapport de stage; analyse microbiologique de l'eau
Rapport de stage; analyse microbiologique de l'eauRapport de stage; analyse microbiologique de l'eau
Rapport de stage; analyse microbiologique de l'eau
 
Formation au logiciel NVivo d'analyse de données qualitatives
Formation au logiciel NVivo d'analyse de données qualitativesFormation au logiciel NVivo d'analyse de données qualitatives
Formation au logiciel NVivo d'analyse de données qualitatives
 
Organiser son Doctorat
Organiser son DoctoratOrganiser son Doctorat
Organiser son Doctorat
 
6sigma -chapitre 5 : INNOVER
6sigma  -chapitre 5 : INNOVER6sigma  -chapitre 5 : INNOVER
6sigma -chapitre 5 : INNOVER
 
Spss les premieres notions 1
Spss les premieres notions 1Spss les premieres notions 1
Spss les premieres notions 1
 

Andere mochten auch

Analyse de données avec R : Une petite introduction
Analyse de données avec R : Une petite introductionAnalyse de données avec R : Une petite introduction
Analyse de données avec R : Une petite introductionAhmadou DICKO
 
Test t de student pour des échantillons indépendants
Test  t  de student  pour  des échantillons indépendants Test  t  de student  pour  des échantillons indépendants
Test t de student pour des échantillons indépendants Adad Med Chérif
 
L’apport des techniques statistiques dans les projets Lean 6 Sigma
L’apport des techniques statistiques dans les projets Lean 6 SigmaL’apport des techniques statistiques dans les projets Lean 6 Sigma
L’apport des techniques statistiques dans les projets Lean 6 SigmaXL Formation
 
Data mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes PrincipalesData mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes PrincipalesMohamed Heny SELMI
 
Analyse de données marketing : ACP et AFC
Analyse de données marketing : ACP et AFCAnalyse de données marketing : ACP et AFC
Analyse de données marketing : ACP et AFCYannig Roth
 
Synthesis paper copy
Synthesis paper copySynthesis paper copy
Synthesis paper copyvatanam
 
F. TĂ©cnica Renolit EP
F. TĂ©cnica Renolit EPF. TĂ©cnica Renolit EP
F. TĂ©cnica Renolit EPIsabel Gil Alonso
 
TechShanghai2016 - é«˜ćŻé æ€§PCB – ä»ŽèźŸèźĄćˆ°ćˆ¶é€ 
TechShanghai2016 - é«˜ćŻé æ€§PCB – ä»ŽèźŸèźĄćˆ°ćˆ¶é€ TechShanghai2016 - é«˜ćŻé æ€§PCB – ä»ŽèźŸèźĄćˆ°ćˆ¶é€ 
TechShanghai2016 - é«˜ćŻé æ€§PCB – ä»ŽèźŸèźĄćˆ°ćˆ¶é€ Hardway Hou
 
UPSTART Live Spring Summit - Keynote: Operation Cloud Cover
UPSTART Live Spring Summit - Keynote: Operation Cloud CoverUPSTART Live Spring Summit - Keynote: Operation Cloud Cover
UPSTART Live Spring Summit - Keynote: Operation Cloud CoverWorkforceNEXT
 
Atari
AtariAtari
Atarizepol9
 
Newsbook 2016 / 2017 - Spanish
Newsbook 2016 / 2017 - SpanishNewsbook 2016 / 2017 - Spanish
Newsbook 2016 / 2017 - Spanishifm electronic gmbh
 
02 e mobile_global_connectivity
02 e mobile_global_connectivity02 e mobile_global_connectivity
02 e mobile_global_connectivityDanny Cagen
 
Web Writing
Web WritingWeb Writing
Web WritingDML Srl
 
igusÂź : CĂąbles ChainflexÂź
igusÂź : CĂąbles ChainflexÂź  igusÂź : CĂąbles ChainflexÂź
igusÂź : CĂąbles ChainflexÂź igus France
 

Andere mochten auch (20)

Analyse de données avec R : Une petite introduction
Analyse de données avec R : Une petite introductionAnalyse de données avec R : Une petite introduction
Analyse de données avec R : Une petite introduction
 
Initiation r
Initiation rInitiation r
Initiation r
 
Test khi deux
Test khi deuxTest khi deux
Test khi deux
 
Test t de student pour des échantillons indépendants
Test  t  de student  pour  des échantillons indépendants Test  t  de student  pour  des échantillons indépendants
Test t de student pour des échantillons indépendants
 
L’apport des techniques statistiques dans les projets Lean 6 Sigma
L’apport des techniques statistiques dans les projets Lean 6 SigmaL’apport des techniques statistiques dans les projets Lean 6 Sigma
L’apport des techniques statistiques dans les projets Lean 6 Sigma
 
Cours add-r1-part0
Cours add-r1-part0Cours add-r1-part0
Cours add-r1-part0
 
Cours add-r1-part1
Cours add-r1-part1Cours add-r1-part1
Cours add-r1-part1
 
Data mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes PrincipalesData mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes Principales
 
Analyse de données marketing : ACP et AFC
Analyse de données marketing : ACP et AFCAnalyse de données marketing : ACP et AFC
Analyse de données marketing : ACP et AFC
 
About CAIE - 2012
About CAIE - 2012About CAIE - 2012
About CAIE - 2012
 
Synthesis paper copy
Synthesis paper copySynthesis paper copy
Synthesis paper copy
 
Itelligence - Presentacion corporativa
Itelligence - Presentacion corporativaItelligence - Presentacion corporativa
Itelligence - Presentacion corporativa
 
F. TĂ©cnica Renolit EP
F. TĂ©cnica Renolit EPF. TĂ©cnica Renolit EP
F. TĂ©cnica Renolit EP
 
TechShanghai2016 - é«˜ćŻé æ€§PCB – ä»ŽèźŸèźĄćˆ°ćˆ¶é€ 
TechShanghai2016 - é«˜ćŻé æ€§PCB – ä»ŽèźŸèźĄćˆ°ćˆ¶é€ TechShanghai2016 - é«˜ćŻé æ€§PCB – ä»ŽèźŸèźĄćˆ°ćˆ¶é€ 
TechShanghai2016 - é«˜ćŻé æ€§PCB – ä»ŽèźŸèźĄćˆ°ćˆ¶é€ 
 
UPSTART Live Spring Summit - Keynote: Operation Cloud Cover
UPSTART Live Spring Summit - Keynote: Operation Cloud CoverUPSTART Live Spring Summit - Keynote: Operation Cloud Cover
UPSTART Live Spring Summit - Keynote: Operation Cloud Cover
 
Atari
AtariAtari
Atari
 
Newsbook 2016 / 2017 - Spanish
Newsbook 2016 / 2017 - SpanishNewsbook 2016 / 2017 - Spanish
Newsbook 2016 / 2017 - Spanish
 
02 e mobile_global_connectivity
02 e mobile_global_connectivity02 e mobile_global_connectivity
02 e mobile_global_connectivity
 
Web Writing
Web WritingWeb Writing
Web Writing
 
igusÂź : CĂąbles ChainflexÂź
igusÂź : CĂąbles ChainflexÂź  igusÂź : CĂąbles ChainflexÂź
igusÂź : CĂąbles ChainflexÂź
 

Ähnlich wie Herve aide-memoire-statistique r

sphinxddfdsfsqdfdsfsdfdfdsfdsf_ofppt.ppt
sphinxddfdsfsqdfdsfsdfdfdsfdsf_ofppt.pptsphinxddfdsfsqdfdsfsdfdfdsfdsf_ofppt.ppt
sphinxddfdsfsqdfdsfsdfdfdsfdsf_ofppt.pptMohamed EL KIHEL
 
Statistiques ofppt
Statistiques ofpptStatistiques ofppt
Statistiques ofpptkhawla atir
 
Modulestatistiques 120308132649-phpapp01
Modulestatistiques 120308132649-phpapp01Modulestatistiques 120308132649-phpapp01
Modulestatistiques 120308132649-phpapp01ilhamto katosa
 
Introduction Ă  la Data Science l data business
Introduction Ă  la Data Science l data businessIntroduction Ă  la Data Science l data business
Introduction Ă  la Data Science l data businessVincent de Stoecklin
 
Les Basiques du Lean
Les Basiques du LeanLes Basiques du Lean
Les Basiques du LeanPeter Klym
 
Lesbasiquesdulean 13091310dsfg2107-phpapp02
Lesbasiquesdulean 13091310dsfg2107-phpapp02Lesbasiquesdulean 13091310dsfg2107-phpapp02
Lesbasiquesdulean 13091310dsfg2107-phpapp02mahmoudelamri
 
Guide_dintroduction_au_logiciel_SPSS.pdf
Guide_dintroduction_au_logiciel_SPSS.pdfGuide_dintroduction_au_logiciel_SPSS.pdf
Guide_dintroduction_au_logiciel_SPSS.pdfAliAITMOHAND1
 
L1 TD Numérique et Société
L1 TD Numérique et SociétéL1 TD Numérique et Société
L1 TD Numérique et SociétéAmar LAKEL, PhD
 
Les outils de Management de qualité
Les outils de Management de qualitéLes outils de Management de qualité
Les outils de Management de qualitéYassine BAKMOU
 
Article: Qu'est-ce que le R&R?
Article: Qu'est-ce que le R&R?Article: Qu'est-ce que le R&R?
Article: Qu'est-ce que le R&R?Infodream
 
Analyse de données sous SPSS 17_ACP, multivarie.pdf
Analyse de données sous SPSS 17_ACP, multivarie.pdfAnalyse de données sous SPSS 17_ACP, multivarie.pdf
Analyse de données sous SPSS 17_ACP, multivarie.pdfPrénom Nom de famille
 
Boubaddara Youssef: Le choix des outils de la qualité par besoin
Boubaddara Youssef: Le choix des outils de la qualité par besoinBoubaddara Youssef: Le choix des outils de la qualité par besoin
Boubaddara Youssef: Le choix des outils de la qualité par besoinYoussef Boubaddara
 
Cours Qualité partie 4.pdfyyyy6yyyyyy6yyyyyy6
Cours Qualité partie 4.pdfyyyy6yyyyyy6yyyyyy6Cours Qualité partie 4.pdfyyyy6yyyyyy6yyyyyy6
Cours Qualité partie 4.pdfyyyy6yyyyyy6yyyyyy6montasserjawadi2
 
Inscrivez-vous Ă  la formation EMFPS du 25 au 27 septembre 2018 "MaĂźtriser la...
Inscrivez-vous Ă  la formation EMFPS  du 25 au 27 septembre 2018 "MaĂźtriser la...Inscrivez-vous Ă  la formation EMFPS  du 25 au 27 septembre 2018 "MaĂźtriser la...
Inscrivez-vous à la formation EMFPS du 25 au 27 septembre 2018 "Maßtriser la...Jean-Luc Balança
 
TS-TC-Statistiques-manuel-stagiaire.pdf
TS-TC-Statistiques-manuel-stagiaire.pdfTS-TC-Statistiques-manuel-stagiaire.pdf
TS-TC-Statistiques-manuel-stagiaire.pdfFootballLovers9
 
Web-formation | La MĂ©thode de RĂ©solution de ProblĂšmes
Web-formation | La MĂ©thode de RĂ©solution de ProblĂšmesWeb-formation | La MĂ©thode de RĂ©solution de ProblĂšmes
Web-formation | La MĂ©thode de RĂ©solution de ProblĂšmesXL Groupe
 
8 Outils Qualité pour toutes les fonctions de l'entreprise
8 Outils Qualité pour toutes les fonctions de l'entreprise8 Outils Qualité pour toutes les fonctions de l'entreprise
8 Outils Qualité pour toutes les fonctions de l'entrepriseTOOL_Z
 
Carnet de l'innovation 2012_ Raphaël_ThÚme3_BOB Pro
Carnet de l'innovation 2012_ Raphaël_ThÚme3_BOB ProCarnet de l'innovation 2012_ Raphaël_ThÚme3_BOB Pro
Carnet de l'innovation 2012_ Raphaël_ThÚme3_BOB Proraphkonan
 

Ähnlich wie Herve aide-memoire-statistique r (20)

sphinxddfdsfsqdfdsfsdfdfdsfdsf_ofppt.ppt
sphinxddfdsfsqdfdsfsdfdfdsfdsf_ofppt.pptsphinxddfdsfsqdfdsfsdfdfdsfdsf_ofppt.ppt
sphinxddfdsfsqdfdsfsdfdfdsfdsf_ofppt.ppt
 
Statistiques ofppt
Statistiques ofpptStatistiques ofppt
Statistiques ofppt
 
Modulestatistiques 120308132649-phpapp01
Modulestatistiques 120308132649-phpapp01Modulestatistiques 120308132649-phpapp01
Modulestatistiques 120308132649-phpapp01
 
Introduction Ă  la Data Science l data business
Introduction Ă  la Data Science l data businessIntroduction Ă  la Data Science l data business
Introduction Ă  la Data Science l data business
 
Les Basiques du Lean
Les Basiques du LeanLes Basiques du Lean
Les Basiques du Lean
 
Lesbasiquesdulean 13091310dsfg2107-phpapp02
Lesbasiquesdulean 13091310dsfg2107-phpapp02Lesbasiquesdulean 13091310dsfg2107-phpapp02
Lesbasiquesdulean 13091310dsfg2107-phpapp02
 
Guide_dintroduction_au_logiciel_SPSS.pdf
Guide_dintroduction_au_logiciel_SPSS.pdfGuide_dintroduction_au_logiciel_SPSS.pdf
Guide_dintroduction_au_logiciel_SPSS.pdf
 
L1 TD Numérique et Société
L1 TD Numérique et SociétéL1 TD Numérique et Société
L1 TD Numérique et Société
 
Demarche qualite
Demarche qualiteDemarche qualite
Demarche qualite
 
Les outils de Management de qualité
Les outils de Management de qualitéLes outils de Management de qualité
Les outils de Management de qualité
 
Algorithme
AlgorithmeAlgorithme
Algorithme
 
Article: Qu'est-ce que le R&R?
Article: Qu'est-ce que le R&R?Article: Qu'est-ce que le R&R?
Article: Qu'est-ce que le R&R?
 
Analyse de données sous SPSS 17_ACP, multivarie.pdf
Analyse de données sous SPSS 17_ACP, multivarie.pdfAnalyse de données sous SPSS 17_ACP, multivarie.pdf
Analyse de données sous SPSS 17_ACP, multivarie.pdf
 
Boubaddara Youssef: Le choix des outils de la qualité par besoin
Boubaddara Youssef: Le choix des outils de la qualité par besoinBoubaddara Youssef: Le choix des outils de la qualité par besoin
Boubaddara Youssef: Le choix des outils de la qualité par besoin
 
Cours Qualité partie 4.pdfyyyy6yyyyyy6yyyyyy6
Cours Qualité partie 4.pdfyyyy6yyyyyy6yyyyyy6Cours Qualité partie 4.pdfyyyy6yyyyyy6yyyyyy6
Cours Qualité partie 4.pdfyyyy6yyyyyy6yyyyyy6
 
Inscrivez-vous Ă  la formation EMFPS du 25 au 27 septembre 2018 "MaĂźtriser la...
Inscrivez-vous Ă  la formation EMFPS  du 25 au 27 septembre 2018 "MaĂźtriser la...Inscrivez-vous Ă  la formation EMFPS  du 25 au 27 septembre 2018 "MaĂźtriser la...
Inscrivez-vous Ă  la formation EMFPS du 25 au 27 septembre 2018 "MaĂźtriser la...
 
TS-TC-Statistiques-manuel-stagiaire.pdf
TS-TC-Statistiques-manuel-stagiaire.pdfTS-TC-Statistiques-manuel-stagiaire.pdf
TS-TC-Statistiques-manuel-stagiaire.pdf
 
Web-formation | La MĂ©thode de RĂ©solution de ProblĂšmes
Web-formation | La MĂ©thode de RĂ©solution de ProblĂšmesWeb-formation | La MĂ©thode de RĂ©solution de ProblĂšmes
Web-formation | La MĂ©thode de RĂ©solution de ProblĂšmes
 
8 Outils Qualité pour toutes les fonctions de l'entreprise
8 Outils Qualité pour toutes les fonctions de l'entreprise8 Outils Qualité pour toutes les fonctions de l'entreprise
8 Outils Qualité pour toutes les fonctions de l'entreprise
 
Carnet de l'innovation 2012_ Raphaël_ThÚme3_BOB Pro
Carnet de l'innovation 2012_ Raphaël_ThÚme3_BOB ProCarnet de l'innovation 2012_ Raphaël_ThÚme3_BOB Pro
Carnet de l'innovation 2012_ Raphaël_ThÚme3_BOB Pro
 

Herve aide-memoire-statistique r

  • 1. Aide-mĂ©moire de statistique appliquĂ©e Ă  la biologie – Construire son Ă©tude et analyser les rĂ©sultats Ă  l’aide du logiciel R – Maxime HERVÉ Version 4(2) 2012 (Version 1 2010)
  • 2. Avant-propos Quand j’ai dĂ©butĂ© mon stage de recherche de Master 2 (il n’y a pas si longtemps), je n’y connaissais rien en stats et je ne m’en portais pas plus mal. Comme tout bon Ă©tudiant en biologie, je n’avais pas Ă©tĂ© frappĂ© par la beautĂ© de la chose. Mais il arrive inĂ©vitablement un moment oĂč l’on se rend compte que l’on DOIT passer par des analyses statistiques. Ce moment est souvent douloureux, et ïŹnalement c’est bien dommage car avec un peu de rigueur et de volontĂ© ce n’est pas si diïŹƒcile de s’en sortir. Pour ne pas mourir ignorant, j’ai dĂ©cidĂ© de me former dans mon coin Ă  la statistique appliquĂ©e Ă  la biologie. Je me suis alors confrontĂ© Ă  un problĂšme qui m’a fait perdre beaucoup de temps, un temps que la plupart des stagiaires n’ont pas : il existe de trĂšs nombreux et trĂšs bons documents sur le sujet, mais trĂšs peu qui regroupent les analyses les plus frĂ©quentes. AïŹn de ne pas oublier tout ce que j’avais appris par-ci, par-lĂ , j’ai donc voulu me rĂ©diger un petit document de synthĂšse. Finalement, j’ai dĂ©cidĂ© d’en faire un vĂ©ritable aide-mĂ©moire et de le mettre Ă  la disposition des autres Ă©tudiants. L’objectif (ambitieux) de cet ouvrage est ainsi d’ĂȘtre pour vous le guide que j’aurais aimĂ© avoir lors de mon stage. Il doit vous permettre de vous en sortir seul, tout en assurant une analyse appropriĂ©e et rigoureuse. Utiliser cet aide-mĂ©moire ne demande que trĂšs peu de connaissances en statistiques. Savoir ce que sont une moyenne, une variance, une mĂ©diane ou un intervalle de conïŹance est suïŹƒsant. Par contre, il exige une chose : se poser des questions. A quelle question mon Ă©tude doit-elle rĂ©pondre ? Quel dispositif vais-je mettre en place pour y rĂ©pondre ? Que vais-je contrĂŽler, que vais-je observer dans l’étude ? Comment vais-je utiliser mes rĂ©sultats pour tirer des conclusions ?. . . Si l’on prend le temps de se poser ces questions, et surtout le temps d’y apporter une rĂ©ponse, analyser ses donnĂ©es n’est pas compliquĂ©. Vous verrez mĂȘme qu’il est trĂšs agrĂ©able de comprendre ce que l’on fait, et pourquoi on le fait. Peut-ĂȘtre mĂȘme que comme moi, vous prendrez goĂ»t aux statistiques ! Pour rĂ©aliser l’analyse des rĂ©sultats, j’ai choisi d’utiliser R, qui est Ă  la fois un langage informatique et un logiciel. J’ai fait ce choix car il est gratuit et libre, ce qui vous permet de l’utiliser absolument partout. De plus, il est extrĂȘmement puissant et son caractĂšre libre fait que de nombreux utilisateurs s’investissent pour l’amĂ©liorer et l’enrichir en permanence. EnïŹn, passĂ© le dĂ©goĂ»t Ă©ventuel d’avoir Ă  Ă©crire soi-mĂȘme des lignes de commande, vous verrez que R est simple Ă  utiliser et que mieux, il permet (car il l’oblige) de comprendre ce que l’on fait. Comme pour la thĂ©orie statistique, utiliser cet aide-mĂ©moire n’exige que trĂšs peu de connaissances sur R. Il nĂ©cessite seulement de savoir crĂ©er les objets de base du langage (vecteur, tableau, matrice) et de savoir eïŹ€ectuer des mani- pulations simples sur ces objets. Si ces bases ne sont pas acquises, les premiĂšres
  • 3. ïŹches sont lĂ  en guise de rappel. N’oubliez pas Ă©galement qu’à chaque fonction dans R est associĂ©e une page d’aide, que l’on appelle par la syntaxe ?fonction. Il est trĂšs important pour moi d’ĂȘtre en contact avec les utilisateurs de cet aide-mĂ©moire, car c’est grĂące Ă  cela que je peux l’amĂ©liorer. Je remercie donc toutes les personnes qui m’écrivent pour me poser des questions ou pour rectiïŹer des erreurs. Ce sont elles qui me donnent envie de clariïŹer, d’enrichir et de corriger ce document. Je vous invite sincĂšrement Ă  m’envoyer un e-mail (mx.herve@gmail.com) si vous trouvez qu’un point n’est pas clair, qu’un autre mĂ©riterait d’ĂȘtre ajoutĂ© ou approfondi, ou encore qu’il subsiste des erreurs. Certaines des fonctions prĂ©sentĂ©es dans cet ouvrage nĂ©cessitent d’installer des packages qui ne sont pas fournis avec la distribution de base de R. Parmi ceux-ci se trouve le package RVAideMemoire, qui contient des fonctions que j’ai Ă©crites spĂ©cialement pour accompagner cet aide-mĂ©moire. Son dĂ©veloppement est donc intimement liĂ© Ă  celui de ce document, et lĂ  encore je vous encourage Ă  me faire part de vos remarques, suggestions, critiques et/ou corrections. Cette version 4(2) de l’aide-mĂ©moire correspond aux versions du package RVAideMemoire ≄ 0.9-11. EnïŹn, si vous souhaitez ĂȘtre au courant de la sortie de nouvelles versions de l’aide-mĂ©moire ou du package RVAideMemoire, envoyez-moi un message que je vous inscrive sur la liste de diïŹ€usion. J’espĂšre sincĂšrement que ce livre comblera vos attentes et qu’il vous per- mettra de vous sentir moins seul dans le joyeux monde des statistiques. Le 2 aoĂ»t 2012 Maxime HERVÉ
  • 4. Sommaire L’ouvrage est divisĂ© en cinq parties : Un rappel sur les objets de base du langage R : ce document n’est pas Ă  proprement parler une initiation Ă  R, cependant quelques rappels sont proposĂ©s sur la crĂ©ation et l’utilisation des objets qu’il faut maĂźtriser. La prĂ©paration de l’étude : souvent trop peu d’importance y est at- tachĂ©e. Pourtant, cette phase est au moins aussi cruciale que l’analyse des rĂ©sultats puisqu’elle dĂ©termine la façon dont ceux-ci vont pouvoir ĂȘtre analysĂ©s. Une Ă©tude bien prĂ©parĂ©e facilite grandement l’exploitation des rĂ©sultats, tandis qu’une Ă©tude mal prĂ©parĂ©e entraĂźne gĂ©nĂ©ralement des complications au moment de l’analyse et de l’interprĂ©tation. La prĂ©paration et l’importation des donnĂ©es : cette Ă©tape apparem- ment simple peut poser problĂšme par manque d’expĂ©rience. Elle est pourtant cruciale, puisque des donnĂ©es mal structurĂ©es ou mal importĂ©es dans R peuvent conduire Ă  une analyse complĂštement faussĂ©e (ou le plus souvent Ă  des erreurs). L’analyse descriptive des rĂ©sultats : ce type d’analyse est toujours indispensable, et selon l’objectif de l’étude il peut ĂȘtre suïŹƒsant. L’analyse descriptive est souvent nĂ©gligĂ©e pour « foncer sur les tests », ce qui conduit Ă  oublier la rĂ©alitĂ© des donnĂ©es (et par consĂ©quent Ă  compliquer voire fausser l’interprĂ©tation des rĂ©sultats). L’analyse infĂ©rentielle des rĂ©sultats : ce type d’analyse regroupe la dĂ©termination des intervalles de conïŹance et la rĂ©alisation des tests statistiques. L’analyse infĂ©rentielle est la seule phase de l’étude qui est facultative. Dans tous les cas elle doit passer aprĂšs l’analyse descriptive. 1. LES OBJETS DE BASE DANS R 1. Les vecteurs 2. Les tableaux 3. Les matrices 4. Installer et charger un package 5. Citer R et ses packages 2. PREPARATION DE L’ETUDE 6. Les diïŹ€Ă©rents types de variable 7. Le plan d’échantillonnage 8. Le plan d’expĂ©rience 9. La dĂ©termination de la taille de l’échantillon Ă  constituer 3. PREPARATION ET IMPORTATION DES DONNEES 10. La construction du tableau de donnĂ©es 11. L’importation du tableau de donnĂ©es dans R
  • 5. 4. ANALYSE DESCRIPTIVE DES RESULTATS 4.1. Statistique univariĂ©e 12. Graphiques de dispersion : la fonction stripchart() 13. Histogrammes : la fonction hist() 14. BoĂźtes Ă  moustaches : la fonction boxplot() 15. La rĂ©duction des donnĂ©es Ă  une dimension 4.2. Statistique bivariĂ©e 16. Nuages de points : la fonction plot() 17. La rĂ©duction des donnĂ©es Ă  deux dimensions 4.3. Statistique multivariĂ©e Choisir son analyse descriptive multivariĂ©e Type de variables explicatives Toutes Toutes A la fois quantitatives quantitatives qualitatives et qualitatives Nombre de Analyse mixte ACP variables de Hill et Smith >2 2 AFC ACM 18. L’Analyse en Composantes Principales (ACP) 19. L’Analyse Factorielle des Correspondances (AFC) 20. L’Analyse des Correspondances Multiples (ACM) 21. L’Analyse mixte de Hill et Smith 22. Les classiïŹcations automatiques
  • 6. 5. ANALYSE INFERENTIELLE DES RESULTATS 5.1. Quelques bases thĂ©oriques 5.1.1. Lois de probabilitĂ© 5.1.1.1. Lois de probabilitĂ© discontinues 23. Les lois de probabilitĂ© discontinues – gĂ©nĂ©ralitĂ©s 24. La loi binomiale 25. La loi de Poisson 26. La loi binomiale nĂ©gative 5.1.1.2. Lois de probabilitĂ© continues 27. Les lois de probabilitĂ© continues – gĂ©nĂ©ralitĂ©s 28. La loi normale 29. La loi exponentielle 30. La loi de χ2 31. La loi de Fisher - Snedecor 32. La loi de Student 5.1.2. Risques et puissance associĂ©s aux tests statistiques 33. Principe des tests statistiques et risques associĂ©s Ă  la conclusion 34. Le risque ou seuil de rejet α 35. La correction du seuil de rejet α (ou des p-values) 36. Le risque ÎČ et la puissance du test 37. Calculer la puissance d’un test a posteriori 5.2. IdentiïŹcation et suppression des donnĂ©es aberrantes 38. L’identiïŹcation et la suppression des donnĂ©es aberrantes 5.3. Intervalles de conïŹance et erreur standard 39. L’intervalle de conïŹance et l’erreur standard 40. Tracer un diagramme en barres avec barres d’erreur 5.4. Tests d’hypothĂšses 41. Les diïŹ€Ă©rents types de test statistique 5.4.1. Conditions prĂ©alables Ă  l’utilisation des tests Ces conditions ne sont pas toujours Ă  remplir, cela dĂ©pend du test que l’on souhaite utiliser. 42. Le caractĂšre alĂ©atoire et simple d’une sĂ©rie de donnĂ©es 43. L’ajustement Ă  une distribution thĂ©orique 44. L’homogĂ©nĂ©itĂ© des variances de plusieurs sĂ©ries de donnĂ©es 45. Les transformations de variable
  • 7. 5.4.2. RĂ©alisation des tests Souvent, plusieurs tests peuvent ĂȘtre utilisĂ©s pour rĂ©pondre Ă  la mĂȘme question. Les conditions de leur emploi sont cependant plus ou moins restric- tives, et leur puissance plus ou moins grande (un test plus restrictif Ă©tant gĂ©nĂ©ralement plus puissant). Lorsque plusieurs tests sont disponibles, un arbre de dĂ©cision est prĂ©sentĂ© pour aider Ă  choisir le test appropriĂ©. Il s’appuie Ă  la fois sur la vĂ©riïŹcation des conditions Ă  remplir pour utiliser tel ou tel test, ainsi que sur la « qualitĂ© » de ces tests (notamment en terme de puissance). 5.4.2.1. Statistique univariĂ©e Choisir son analyse infĂ©rentielle univariĂ©e Variable Ă  expliquer qualitative quantitative Type de variables Type de variable explicatives Ă  expliquer autre Toutes A la fois quantitatives quantitatives Toutes et qualitatives binaire qualitatives Comparaison Analyse de la Type de d'effectifs, Non dĂ©veloppĂ© RĂ©gression covariance variables proportions, dans cet ouvrage (sens large) explicatives moyennes Toutes Toutes A la fois quantitatives quantitatives qualitatives et qualitatives Comparaison de Analyse de la RĂ©gression probabilitĂ©s de covariance logistique rĂ©ponse (sens large) Tests sur des probabilitĂ©s de rĂ©ponse (variables binaires 0/1) Le test de conformitĂ© d’une ou de plusieurs probabilitĂ©(s) de rĂ©ponse avec une ou plusieurs valeur(s) thĂ©orique(s) est une dĂ©marche identique Ă  celle du test de conformitĂ© de proportion(s). 46. Comparaison de plusieurs probabilitĂ©s de rĂ©ponse – un facteur 47. Comparaison de plusieurs probabilitĂ©s de rĂ©ponse – deux facteurs
  • 8. Tests sur des eïŹ€ectifs 48. ConformitĂ© de plusieurs eïŹ€ectifs avec des valeurs thĂ©oriques 49. Comparaison de plusieurs eïŹ€ectifs – sans facteur (eïŹ€ectifs bruts) 50. Comparaison de plusieurs eïŹ€ectifs – un facteur 51. Comparaison de plusieurs eïŹ€ectifs – deux facteurs Tests sur des proportions 52. ConformitĂ© d’une proportion avec une valeur thĂ©orique 53. ConformitĂ© de plusieurs proportions avec des valeurs thĂ©oriques 54. Comparaison de deux proportions – sans rĂ©pĂ©tition 55. Comparaison de plusieurs proportions – sans rĂ©pĂ©tition 56. Comparaison de plusieurs proportions – avec rĂ©pĂ©titions et un facteur 57. Comparaison de plusieurs proportions – avec rĂ©pĂ©titions et deux facteurs Tests sur des moyennes 58. ConformitĂ© d’une moyenne avec une valeur thĂ©orique 59. Comparaison de deux moyennes 60. Comparaison de plusieurs moyennes – un facteur 61. Comparaison de plusieurs moyennes – deux facteurs Tests sur des temps de survie Ces tests sont traditionnellement utilisĂ©s pour comparer des temps de survie, mais ils peuvent ĂȘtre appliquĂ©s Ă  n’importe quelle variable reprĂ©sentant un temps avant la survenue d’un Ă©vĂšnement. 62. Comparaison de plusieurs temps de survie 63. Tracer des courbes de survie 5.4.2.2. Statistique bivariĂ©e Tests autour de la liaison entre deux variables 64. IndĂ©pendance de deux variables qualitatives 65. CorrĂ©lation entre deux variables 66. ConformitĂ© d’un coeïŹƒcient de corrĂ©lation linĂ©aire avec une valeur thĂ©orique 67. Comparaison de plusieurs coeïŹƒcients de corrĂ©lation linĂ©aire Tests autour de la rĂ©gression 68. La rĂ©gression linĂ©aire simple au sens des moindres carrĂ©s 69. La rĂ©gression linĂ©aire simple au sens des moindres rectangles 70. Comparaison de plusieurs droites de rĂ©gression linĂ©aire simple 71. La rĂ©gression logistique binaire simple 72. La rĂ©gression non linĂ©aire simple 73. Tracer une droite ou une courbe de rĂ©gression simple Analyse de la covariance 74. L’analyse de la covariance – un facteur
  • 9. 5.4.2.3. Statistique multivariĂ©e 75. La rĂ©gression linĂ©aire multiple 5.4.3. Outils pour l’utilisation des modĂšles statistiques 76. La construction de la formule d’un modĂšle 77. La sĂ©lection de modĂšle 78. La vĂ©riïŹcation de la validitĂ© d’un modĂšle 79. La mĂ©thode des contrastes ANNEXES Index des packages externes Bibliographie et ouvrages/documents/liens recommandĂ©s
  • 10. 1. Les vecteurs CrĂ©ation Le vecteur est Ă  la fois l’objet le plus simple et le plus fondamental du langage R. Il se crĂ©e grĂące Ă  la fonction c(), qui prend comme arguments les Ă©lĂ©ments du vecteur. Tous ces Ă©lĂ©ments doivent ĂȘtre du mĂȘme type : valeurs numĂ©riques, chaĂźnes de caractĂšres ou encore niveaux d’un facteur. Pour crĂ©er un vecteur numĂ©rique (les parenthĂšses autour de la ligne servent Ă  aïŹƒcher le contenu du vecteur sans avoir Ă  l’appeler, elles n’interviennent pas dans sa crĂ©ation) : (vecteur <- c(7,9,4,12,18)) [1] 7 9 4 12 18 Pour crĂ©er un vecteur de chaĂźnes de caractĂšres : (vecteur <- c("H","C","I","G","F")) [1] "H" "C" "I" "G" "F" Pour crĂ©er un facteur : (vecteur <- factor(c("niv1","niv2","niv2","niv3","niv1"))) [1] niv1 niv2 niv2 niv3 niv1 Levels: niv1 niv2 niv3 Il existe des fonctions ou des abrĂ©viations qui permettent de simpliïŹer la crĂ©ation de certains vecteurs usuels : c(1:10) [1] 1 2 3 4 5 6 7 8 9 10 seq(from=1,to=3,by=0.25) [1] 1.00 1.25 1.50 1.75 2.00 2.25 2.50 2.75 3.00 LETTERS[1:5] [1] "A" "B" "C" "D" "E" Indexation Pour accĂ©der au(x) iĂšme(s) Ă©lĂ©ment(s) d’un vecteur, Ă©crire vecteur[i], oĂč i peut ĂȘtre une valeur unique ou lui-mĂȘme un vecteur : (vecteur <- c(1:10)) [1] 1 2 3 4 5 6 7 8 9 10 vecteur[5] [1] 5 vecteur[c(2,5,8,9)] [1] 2 5 8 9 vecteur[-c(2,5,8,9)] [1] 1 3 4 6 7 10
  • 11. 2. Les tableaux CrĂ©ation Les tableaux sont simplement un moyen de regrouper (en colonnes) des vecteurs dans le mĂȘme objet. Chaque colonne est ici indĂ©pendante. L’unique contrainte est que tous les vecteurs doivent avoir la mĂȘme longueur. Pour crĂ©er un tableau, utiliser la fonction data.frame(), qui prend en arguments les diïŹ€Ă©rentes colonnes (de gauche Ă  droite). On peut prĂ©ciser le titre des colonnes. Dans le cas d’un vecteur de chaĂźnes de caractĂšres, celui-ci est automatiquement transformĂ© en facteur lorsqu’il est intĂ©grĂ© au tableau. variable1 <- c(1:5) variable2 <- LETTERS[1:5] (tableau <- data.frame(variable1,variable2)) variable1 variable2 1 1 A 2 2 B 3 3 C 4 4 D 5 5 E Le tableau peut ĂȘtre crĂ©Ă© directement : tableau <- data.frame(variable1=c(1:5),variable2=LETTERS[ 1:5] Indexation Pour accĂ©der Ă  un (ou plusieurs) Ă©lĂ©ment(s) d’un tableau, le principe est le mĂȘme que pour les vecteurs (voir ïŹche 1) exceptĂ© qu’il n’y a pas une mais deux dimensions Ă  l’objet (les lignes et les colonnes). Le principe d’indexation est valable pour tous les objets Ă  deux dimensions et est celui-ci : tableau[ligne(s),colonne(s)], oĂč ligne(s) et colonne(s) sont soit des valeurs uniques, soit des vecteurs. Si rien n’est mis avant la virgule toutes les lignes sont sĂ©lectionnĂ©es, si rien n’est mis aprĂšs toutes les colonnes sont sĂ©lectionnĂ©es. tableau[c(1,3),] variable1 variable2 1 1 A 3 3 C tableau[c(3,5),2] [1] C E Levels: A B C D E Dans le cas particulier de la sĂ©lection d’une colonne entiĂšre, il y a deux autres possibilitĂ©s : – tableau$colonne oĂč colonne est le nom de la colonne – tableau[,"colonne"] oĂč colonne est le nom de la colonne.
  • 12. 3. Les matrices A la diïŹ€Ă©rence des tableaux (voir ïŹche 2), les matrices sont un tout cohĂ©rent, i.e. les colonnes ne sont pas indĂ©pendantes. Cela implique que tous les Ă©lĂ©ments d’une matrice sont de mĂȘme type : numĂ©rique, texte, niveaux de facteur(s). . . Pour crĂ©er une matrice, utiliser la fonction matrix(), qui prend comme arguments obligatoire les valeurs qui doivent la remplir, et le nombre de lignes et/ou de colonnes. Par dĂ©faut les matrices sont remplies en colonnes, pour les remplir en lignes ajouter l’argument byrow=TRUE. Pour donner un nom aux lignes et aux colonnes, utiliser l’argument dimnames=list(lignes,colonnes), oĂč lignes et colonnes sont des vecteurs : (matrice <- matrix(c(1:8),nrow=2)) [,1] [,2] [,3] [,4] [1,] 1 3 5 7 [2,] 2 4 6 8 (matrice <- matrix(c(1:8),nrow=2,byrow=TRUE)) [,1] [,2] [,3] [,4] [1,] 1 2 3 4 [2,] 5 6 7 8 (matrice <- matrix(c(1:8),nrow=2,dimnames=list(letters[1: 2],LETTERS[1:4]))) A B C D a 1 3 5 7 b 2 4 6 8 Il est Ă©galement possible de crĂ©er des matrices Ă  partir de plusieurs vecteurs qui doivent en constituer les lignes ou les colonnes. Utiliser pour cela les fonctions rbind() ou cbind(), qui assemblent les vecteurs respectivement en lignes et en colonnes : vecteur1 <- c(1:3) vecteur2 <- c(4:6) (matrice <- rbind(vecteur1,vecteur2)) [,1] [,2] [,3] vecteur1 1 2 3 vecteur2 4 5 6 (matrice <- cbind(vecteur1,vecteur2)) vecteur1 vecteur2 [1,] 1 4 [2,] 2 5 [3,] 3 6 Les matrices Ă©tant des objets Ă  deux dimensions (les lignes et les colonnes), leur indexation est identique Ă  celle des tableaux (voir ïŹche 2).
  • 13. 4. Installer et charger un package Installer un package Il est nĂ©cessaire d’ĂȘtre connectĂ© Ă  internet pour installer un package, car celui-ci doit ĂȘtre tĂ©lĂ©chargĂ© depuis un serveur. L’installation ne se fait qu’une seule fois. Si R est utilisĂ© depuis la console R, utiliser : install.packages("packag- e") oĂč package est le nom du package dĂ©sirĂ©, entre guillemets. Il est demandĂ© ensuite de choisir un serveur, prĂ©fĂ©rer Austria. Si R est utilisĂ© depuis la console systĂšme, la procĂ©dure se fait en deux Ă©tapes : 1. tĂ©lĂ©charger les sources du package Ă  partir de son site de dĂ©pĂŽt, le site principal Ă©tant le CRAN (the Comprehensive R Archive Network) : http ://cran.r-project.org rubrique Packages 2. installer le package en tapant R CMD INSTALL package oĂč package est le nom du ïŹchier tar.gz contenant les sources. La procĂ©dure expliquĂ©e ici est la plus simple, mais il existe de nom- breuses variantes. Voir la R FAQ pour plus d’informations : http ://cran.r- project.org/doc/manuals/R-admin.html#Installing-packages. Charger un package Le chargement d’un package doit se faire Ă  chaque session oĂč il doit ĂȘtre utilisĂ©. La commande est simple : library(package) oĂč package est le nom du package, sans guillemets. Mettre Ă  jours les packages installĂ©s Pour mettre Ă  jour automatiquement tous les packages installĂ©s (chargĂ©s ou non), utiliser : update.packages(ask=FALSE). R tĂ©lĂ©charge alors toutes les mises Ă  jour et les installe. Il est recommandĂ© de mettre rĂ©guliĂšrement Ă  jour ses packages aïŹn de proïŹter de leur Ă©volution, souvent rapide.
  • 14. 5. Citer R et ses packages Lors de l’écriture d’un document scientiïŹque, il est une Ă©vidence de citer ses sources bibliographiques. Il doit Ă©galement en ĂȘtre une de citer les logiciels utilisĂ©s lors de la rĂ©alisation de l’étude. R est certes gratuit, mais il n’en reste pas moins que des dizaines de personnes s’impliquent dans son dĂ©veloppement, et qu’il est normal de faire honneur Ă  leur travail en les citant. R doit ĂȘtre citĂ© dĂšs lors qu’il est utilisĂ©. Pour savoir comment le citer, il suïŹƒt de taper citation() et de recopier ce qui ïŹgure aprĂšs To cite R in publications use:. Concernant les packages, la rĂšgle est de citer tous ceux qui ne sont pas chargĂ©s au dĂ©marrage de R. Cela comprend les packages installĂ©s avec R mais non chargĂ©s automatiquement, ainsi que ceux installĂ©s par l’utilisateur. Pour savoir comment les citer, utiliser : citation("package") oĂč package est le nom du package, entre guillemets. Recopier ce qui ïŹgure aprĂšs To cite the xxx package in publications use:.
  • 15. 6. Les diïŹ€Ă©rents types de variable Une variable est dite alĂ©atoire si l’on ne peut pas prĂ©dire Ă  coup sĂ»r la valeur que prendra un individu. Il existe deux types de variable alĂ©atoire : 1. quantitatives : elles ont en gĂ©nĂ©ral une inïŹnitĂ© de valeurs numĂ©riques possibles et peuvent ĂȘtre : – continues (ex : masse, temps, distance, volume) – discrĂštes (ex : dĂ©nombrement) 2. qualitatives : elles sont en gĂ©nĂ©ral non numĂ©riques (mais pas toujours) et sont appelĂ©es facteurs. Leur valeur est appelĂ©e classe, niveau ou modalitĂ©. Ces variables peuvent ĂȘtre : – ordinales, lorsque les classes peuvent ĂȘtre ordonnĂ©es (ex : classement) – nominales, lorsque les classes ne peuvent pas ĂȘtre ordonnĂ©es (ex : sexe). Les classes d’un facteur sont dites exclusives si un individu ne peut pas appartenir Ă  plusieurs classes en mĂȘme temps. La plupart des tests statistiques (et notamment tous ceux prĂ©sentĂ©s dans cet ouvrage) exigent que les classes des facteurs soient exclusives. Dans tous les cas, le caractĂšre d’exclusivitĂ© doit ĂȘtre dĂ©terminĂ© avant toute analyse statistique. Il existe deux types de facteur : – ïŹxe : un facteur est ïŹxe si ses classes ont Ă©tĂ© dĂ©libĂ©rĂ©ment choisies, et si le but de l’étude est de les comparer. Par exemple, si l’on veut comparer la taille des individus entre trois espĂšces, le facteur « espĂšce » est ïŹxe (Ă  trois classes) – alĂ©atoire : un facteur est alĂ©atoire si ses classes ont Ă©tĂ© choisies parmi un grand nombre de classes possibles, et si le but de l’étude n’est pas de les comparer mais simplement de prendre en compte la variabilitĂ© qu’il existe entre elles. Par exemple, si les mesures de taille des trois espĂšces sont rĂ©alisĂ©es par deux personnes diïŹ€Ă©rentes, on peut considĂ©rer un facteur « expĂ©rimentateur », alĂ©atoire. L’objectif ici n’est en eïŹ€et pas de comparer les mesures rĂ©alisĂ©es par les deux personnes, mais de prendre en compte le fait que la façon de rĂ©aliser les mesures peut varier entre les deux. Il y a deux choses Ă  bien garder Ă  l’esprit : (i) la dĂ©cision de dĂ©clarer un facteur comme ïŹxe ou alĂ©atoire est fondamentale pour l’analyse des donnĂ©es, car ce ne sont pas les mĂȘmes analyses qui sont rĂ©alisĂ©es dans les deux cas ; (ii) cette dĂ©cision doit ĂȘtre prise selon l’objectif de l’étude, i.e. la question Ă  laquelle l’étude doit rĂ©pondre, car aucun facteur n’est ïŹxe ou alĂ©atoire dans l’absolu. Il est donc indispensable de bien se poser la question avant de dĂ©clarer un facteur comme ïŹxe ou alĂ©atoire.
  • 16. Que ce soit pour des variables qualitatives ou quantitatives, si certaines mesures ne sont pas indĂ©pendantes entre elles, elles constituent des sĂ©ries appariĂ©es. Le cas le plus simple est celui oĂč plusieurs mesures sont rĂ©alisĂ©es sur un mĂȘme individu (par exemple avant et aprĂšs un traitement). Mais d’autres cas plus subtils peuvent se prĂ©senter : si des mesures sont rĂ©alisĂ©es sur des individus apparentĂ©s (ces mesures ne sont pas indĂ©pendantes car il existe une corrĂ©lation d’origine gĂ©nĂ©tique entre elles), si des sĂ©ries de mesures sont rĂ©alisĂ©es Ă  des localisations diïŹ€Ă©rentes (ces mesures ne sont pas indĂ©pendantes car chaque sĂ©rie est inïŹ‚uencĂ©e par l’environnement local) ou encore si des sĂ©ries de mesures sont rĂ©alisĂ©es Ă  des temps diïŹ€Ă©rents (ces mesures ne sont pas indĂ©pendantes car chaque sĂ©rie est inïŹ‚uencĂ©e par ce qu’il a pu se passer avant). Il est trĂšs important d’identiïŹer les sĂ©ries appariĂ©es lorsqu’elles existent, car des analyses statistiques adaptĂ©es doivent alors ĂȘtre utilisĂ©es. Les sĂ©ries appariĂ©es sont le plus souvent identiïŹĂ©es par l’introduction d’un facteur alĂ©atoire. Pour les exemples prĂ©cĂ©dents, on a donc respectivement un facteur « individu », un facteur « famille », un facteur « localisation » et un facteur « moment ».
  • 17. 7. Le plan d’échantillonnage On utilise un plan d’échantillonnage lorsque l’on rĂ©alise une Ă©tude par enquĂȘte, i.e. lorsque l’on collecte des informations sur un groupe d’individus dans leur milieu habituel, mais que tous les individus ne sont pas accessibles (par choix ou par contrainte). Les principales mĂ©thodes d’échantillonnage peuvent ĂȘtre regroupĂ©es en deux ensembles : 1. l’échantillonnage alĂ©atoire : tous les individus (au sens statistique) ont la mĂȘme probabilitĂ© d’ĂȘtre choisis, et le choix de l’un n’inïŹ‚uence pas celui des autres. DiïŹ€Ă©rentes mĂ©thodes d’échantillonnage alĂ©atoire existent (voir les illustrations page suivante) : – l’échantillonnage alĂ©atoire et simple : le choix se fait parmi tous les individus de la population (au sens statistique), qui ne forme qu’un grand ensemble – l’échantillonnage stratiïŹĂ© : si la population est trĂšs hĂ©tĂ©rogĂšne, elle peut ĂȘtre divisĂ©e en sous-ensembles exclusifs (ou strates). Au sein de ces strates l’échantillonnage est ensuite alĂ©atoire et simple. Les strates sont identiïŹĂ©es dans l’analyse statistique comme les niveaux d’un facteur ïŹxe – l’échantillonnage en grappes : si les strates sont trĂšs nombreuses, on en choisit certaines au hasard (les grappes). Au sein de ces grappes l’échantillonnage est ensuite alĂ©atoire et simple. Les grappes sont identiïŹĂ©es dans l’analyse statistique comme les niveaux d’un facteur alĂ©atoire – l’échantillonnage par degrĂ©s : il est une gĂ©nĂ©ralisation de l’échantillon- nage en grappes (qui est en fait un Ă©chantillonnage du premier degrĂ©). Au sein de la population on choisit des grappes « primaires », puis Ă  l’intĂ©rieur de celles-ci des grappes « secondaires » (toujours au hasard), et ainsi du suite. . . Au dernier niveau l’échantillonnage est alĂ©atoire et simple 2. l’échantillonnage systĂ©matique : un premier individu est choisi alĂ©atoire- ment, puis les autres sont choisis de façon rĂ©guliĂšre Ă  partir du prĂ©cĂ©dent (dans le temps ou l’espace). L’analyse de ce type d’échantillonnage, qui fait appel Ă  la statistique spatiale ou Ă  l’analyse des sĂ©ries chronologiques, n’est pas abordĂ©e dans cet ouvrage. Il est important d’identiïŹer la mĂ©thode mise en Ɠuvre car les analyses statistiques doivent ĂȘtre adaptĂ©es. Seule l’analyse de plans d’échantillonnage alĂ©atoires est abordĂ©e dans cet ouvrage.
  • 18. Chaque point reprĂ©sente un individu. Les individus Ă©chantillonnĂ©s sont reprĂ©sentĂ©s en rouge.
  • 19. 8. Le plan d’expĂ©rience On utilise un plan d’expĂ©rience lorsque l’on rĂ©aliste une Ă©tude par ex- pĂ©rimentation, i.e. lorsque l’on provoque volontairement les faits Ă  Ă©tudier. Le plan d’expĂ©rience comprend notamment le(s) facteur(s) Ă  faire varier, le nombre de rĂ©pĂ©titions Ă  rĂ©aliser et le dispositif expĂ©rimental Ă  mettre en place. L’association des classes de plusieurs facteurs constitue un traitement. Il existe de nombreux types de dispositif expĂ©rimental, dont les principaux sont (voir les illustrations page suivante) : – le plan d’expĂ©rience complĂštement alĂ©atoire : chaque individu (au sens statistique) est aïŹ€ectĂ© Ă  un traitement alĂ©atoirement – le plan d’expĂ©rience en blocs alĂ©atoires complets : s’il y a (ou s’il peut y avoir) une grande hĂ©tĂ©rogĂ©nĂ©itĂ© entre les individus, ils sont rĂ©unis en groupes aussi homogĂšnes que possibles (ou blocs). Au sein de ces blocs chaque individu est ensuite aïŹ€ectĂ© alĂ©atoirement Ă  un traitement, de maniĂšre Ă  ce que tous les traitements soient prĂ©sents dans chacun des blocs. Les blocs sont identiïŹĂ©s dans l’analyse statistique comme les niveaux d’un facteur alĂ©atoire – le plan d’expĂ©rience en blocs alĂ©atoires incomplets : dans ce cas tous les traitements ne sont pas prĂ©sents dans chacun des blocs – le plan d’expĂ©rience en split-plot : le principe du split-plot est le plus souvent associĂ© Ă  celui des blocs alĂ©atoires complets. Dans ce cas, dans chacun des blocs sont crĂ©Ă©s autant de sous-blocs qu’il y a de classes au premier facteur Ă©tudiĂ©. A chacun de ces sous-blocs est associĂ©e une classe. Puis chaque sous-bloc est divisĂ© en autant d’unitĂ©s qu’il y a de classes au second facteur Ă©tudiĂ©. A chacun de ces « sous-sous-blocs » est asso- ciĂ©e une classe. Pour plus de deux facteurs, la situation est plus complexe. Quelle que soit la mĂ©thode employĂ©e, elle doit ĂȘtre clairement dĂ©ïŹnie car elle doit ĂȘtre prise en compte dans les analyses statistiques.
  • 20. Chaque point reprĂ©sente un individu. Chaque carrĂ© reprĂ©sente un traitement. Les niveaux du 1er facteur sont notĂ©s en majuscule, les niveaux du 2nd facteur sont notĂ©s en minscule.
  • 21. 9. La dĂ©termination de la taille de l’échantillon Ă  consti- tuer Il existe un lien entre le seuil de rejet α du test statistique utilisĂ© (voir ïŹches 33 et 34), la puissance de ce test (voir ïŹche 36), la diïŹ€Ă©rence entre les Ă©chantillons pour la variable mesurĂ©e et la taille des Ă©chantillons. DĂ©terminer la taille de l’échantillon Ă  constituer passe donc par ïŹxer les autres paramĂštres. Ceci implique deux choses importantes : – choisir avant de dĂ©marrer l’étude les types de test qui vont ĂȘtre utilisĂ©s (ce qui oblige Ă  bien identiïŹer les questions auxquelles l’étude doit rĂ©pondre) et leur prĂ©cision. On considĂšre que lorsque l’objectif de l’étude est de rejeter H0 (voir ïŹche 33), la puissance du test doit ĂȘtre d’au moins 80 % ; lorsque l’objectif est de ne pas rejeter H0 (voir ïŹche 33), la puissance doit ĂȘtre d’au moins 95 % – avoir une idĂ©e de la variabilitĂ© naturelle de la variable mesurĂ©e et/ou de la diïŹ€Ă©rence minimale Ă  dĂ©tecter. Ceci passe soit par une Ă©tude de la bibliographie, soit par la consultation de spĂ©cialistes, soit par la rĂ©alisa- tion d’un prĂ©-Ă©chantillonnage ou d’une prĂ©-expĂ©rience. Dans R, la fonctions power() permet, pour quelques tests paramĂ©triques courants, de calculer l’eïŹ€ectif nĂ©cessaire lorsque l’on connaĂźt tous les autres paramĂštres. Lorsque l’on sait Ă  l’avance que l’on ne sera pas dans les conditions d’utilisation de ces tests, on peut tout de mĂȘme estimer la puissance de leur Ă©quivalent non paramĂ©trique. Celle-ci est vaut en eïŹ€et environ 95 % de la puissance du test paramĂ©trique Ă©quivalent. Toutes les fonctions dĂ©crites sont basĂ©es sur le mĂȘme principe : le paramĂštre n doit avoir comme valeur NULL tandis que tous les autres doivent ĂȘtre ïŹxĂ©s. Toutes les fonctions considĂšrent que l’eïŹ€ectif est le mĂȘme dans les diïŹ€Ă©rents groupes Ă  comparer (on parle d’eïŹ€ectifs Ă©quilibrĂ©s). Il est fortement conseillĂ© de toujours prĂ©voir ses plans d’échantillonnage ou d’expĂ©rience de cette façon, ce qui (i) facilite l’analyse et (ii) permet d’utiliser la plupart des tests non paramĂ©triques, dont l’équilibre des eïŹ€ectifs est une condition. Comparaison d’une moyenne avec une valeur thĂ©orique (voir ïŹche 58) ou de deux moyennes (voir ïŹche 59) – test t de Student power.t.test(n,delta,sd,sig.level,power,type) avec : n : eïŹ€ectif (identique pour les deux Ă©chantillons dans le cas d’une comparaison de 2 moyennes) delta : diïŹ€Ă©rence minimale Ă  dĂ©tecter entre la moyenne de l’échantillon et la moyenne thĂ©orique, ou entre les deux moyennes sd : Ă©cart-type (identique pour les deux Ă©chantillons dans le cas d’une compa- raison de 2 moyennes), dans l’unitĂ© des moyennes
  • 22. sig.level : seuil de rejet α (gĂ©nĂ©ralement 0,05) power : puissance minimale du test (80 ou 95 % selon l’objectif du test) type : type de test ("one.sample" pour la comparaison d’une moyenne avec une valeur thĂ©orique, "two.sample" pour la comparaison de deux moyennes, "paired" pour la comparaison de deux moyennes en sĂ©ries appariĂ©es). Comparaison de plus de deux moyennes – analyse de variance Ă  un facteur (voir ïŹche 60) power.anova.test(groups,n,between.var,within.var,sig.level, power) avec : groups : nombre de modalitĂ©s Ă  comparer between.var : somme des carrĂ©s des Ă©carts intergroupe minimale Ă  dĂ©tecter within.var : somme des carrĂ©s des Ă©carts intragroupe (identique pour toutes les modalitĂ©s). Il est dans la pratique trĂšs diïŹƒcile d’estimer a priori les sommes des carrĂ©s des Ă©carts inter et intragroupe. On peut dans ce cas se rabattre sur la fonction power.t.test() qui donne des rĂ©sultats convenables si les conditions d’utili- sation de l’analyse de variance sont remplies. Comparaison de deux proportions – test du χ2 d’homogĂ©nĂ©itĂ© (voir ïŹche 54) power.prop.test(n,p1,p2,sig.level,power) avec p1, p2 : proportions Ă  dĂ©tecter comme signiïŹcativement diïŹ€Ă©rentes. SigniïŹcativitĂ© d’un coeïŹƒcient de corrĂ©lation linĂ©aire de Pearson (voir ïŹche 65) Il est ici nĂ©cessaire de faire appel Ă  la fonction pwr.r.test() du package pwr : pwr.r.test(n,r,sig.level,power) avec r : coeïŹƒcient de corrĂ©lation minimum Ă  dĂ©tecter comme signiïŹcativement diïŹ€Ă©rent de 0.
  • 23. 10. La construction du tableau de donnĂ©es La construction d’un tableau de donnĂ©es correctement structurĂ© est une Ă©tape importante de l’étude, car si elle est mal rĂ©alisĂ©e elle peut mener Ă  des rĂ©sultats faux, ou le plus souvent Ă  des erreurs une fois dans R. Cette construction nĂ©cessite de se poser une question essentielle : quelles sont les variables prises en compte dans l’étude ? Y rĂ©pondre implique d’identi- ïŹer les variables quantitatives et les facteurs, ainsi que les classes des facteurs. Si les choses sont claires, l’analyse statistique le sera Ă©galement. D’une maniĂšre gĂ©nĂ©rale, il est conseillĂ© de toujours construire son tableau de donnĂ©es dans un tableur. Cela permet d’enregistrer le jeu de donnĂ©es dans un ïŹchier externe Ă  R, et donc de toujours pouvoir y revenir puisque R ne modiïŹe pas les ïŹchiers externes (sauf si on le lui demande explicitement). Une fois dans le tableur, la rĂšgle est simple : les individus doivent ĂȘtre placĂ©s en lignes et les variables en colonnes. Il est conseillĂ© de donner un titre Ă  chaque colonne, qui deviendra le nom de la variable dans R. Il est indispensable cependant de respecter certaines rĂšgles : les noms de variable ne doivent contenir ni espace, ni caractĂšre accentuĂ©, ni symbole (ceci est une rĂšgle pour tous les noms d’objet dans R). Si un nom de variable doit contenir deux mots, ils peuvent ĂȘtre sĂ©parĂ©s par un point (.) ou un tiret bas (_). Mieux vaut Ă©galement privilĂ©gier les noms courts mais clairs, car une fois dans R taper sans cesse des noms de variable longs est vite fastidieux. Le tableau de donnĂ©es doit absolument obĂ©ir Ă  une autre rĂšgle : aucune case ne doit ĂȘtre vide (sauf celle en haut Ă  gauche si les colonnes ont un titre). S’il manque une donnĂ©e pour un individu, il faut se demander d’oĂč elle vient : – si c’est une donnĂ©e inutilisable (mesure ratĂ©e, mal retranscrite. . .), pas de problĂšme. On dit alors qu’on a une « donnĂ©e manquante », que l’on doit noter NA (pour Not Available, i.e. donnĂ©e manquante). Le tableur comme R reconnaissent le NA, qu’ils interprĂštent correctement – si la situation est autre, c’est que le tableau est mal construit et qu’en particulier les variables n’ont pas Ă©tĂ© bien dĂ©ïŹnies. La rĂ©ïŹ‚exion s’impose donc pour identiïŹer les variables et reconstruire un tableau de donnĂ©es. Si des analyses dans R doivent se faire uniquement sur un sous-ensemble du tableau de donnĂ©es, ou si pour certaines analyses le tableau de donnĂ©es serait plus facile Ă  utiliser s’il Ă©tait construit autrement, il est conseillĂ© de construire plusieurs tableaux de donnĂ©es sĂ©parĂ©s. Il est toujours possible de manipuler le tableau initial dans R pour en extraire une partie ou pour le transformer, mais il est clairement plus facile (et surtout moins source d’erreur) de le faire en amont, dans le tableur.
  • 24. 11. L’importation du tableau de donnĂ©es dans R Il existe de nombreuses mĂ©thodes pour importer ses donnĂ©es dans R. Une seule est prĂ©sentĂ©e ici, qui est Ă  la fois trĂšs simple, fonctionne dans la plupart des situations et peut ĂȘtre utilisĂ©e sur toutes les plateformes. La procĂ©dure se fait en trois Ă©tapes : 1. dans le tableur, sĂ©lectionner toutes les cases constituant le tableau de donnĂ©es 2. copier ce tableau dans le bloc-notes et enregistrer le ïŹchier en .txt 3. dans R, charger le tableau de donnĂ©es grĂące Ă  la fonction read.table() et le stocker dans un objet : tableau<-read.table(fichier,dec=",") oĂč fichier est le nom du ïŹchier texte (et Ă©ventuellement du chemin qui y mĂšne), entre guillemets. R Ă©tant un logiciel anglo-saxon, le sĂ©parateur dĂ©cimal qu’il utilise est le point. Or dans les tableurs français (et donc dans le ïŹchier texte) le sĂ©parateur dĂ©cimal est la virgule. Il est donc nĂ©cessaire de prĂ©ciser Ă  R qu’il interprĂšte la virgule comme sĂ©parateur dĂ©cimal, d’oĂč l’argument dec=",". Si les colonnes du tableau de donnĂ©es ont un titre, qui doit donc ĂȘtre interprĂ©tĂ© comme le nom de la variable, ajouter l’argument header=TRUE. Une fois le tableau importĂ©, il est indispensable de vĂ©riïŹer qu’il n’y a pas eu d’erreur pendant son chargement. Pour cela appeler le rĂ©sumĂ© du tableau via summary(tableau). R renvoie un rĂ©sumĂ© de chaque variable : – pour une variable numĂ©rique, R donne des indications sur sa distribution : minimum, 1er quartile, mĂ©diane, moyenne, 3Ăšme quartile et maximum – pour un facteur, R donne le nombre d’individus par classe. Si un facteur est codĂ© numĂ©riquement (par exemple un facteur binaire ou un facteur ordinal), R l’interprĂšte comme une variable numĂ©rique. Pour transfor- mer cette variable en facteur, utiliser : tableau$variable<-factor(tableau$ variable) oĂč variable est le nom de la variable.
  • 25. 12. Graphiques de dispersion : la fonction stripchart() Le graphique tracĂ© reprĂ©sente toutes les donnĂ©es individuelles d’un vecteur, d’une matrice ou d’un tableau. Il permet d’avoir un aperçu de la variabilitĂ© des donnĂ©es et d’identiïŹer les observations aberrantes. Pour reprĂ©senter un vecteur : stripchart(vecteur). Pour reprĂ©senter plusieurs vecteurs : stripchart(list(vecteur1,vect- eur2,...)). Pour donner un nom aux vecteurs sur le graphe, ajouter l’argument group.names=c("Nom1","Nom2",...). Pour reprĂ©senter des donnĂ©es en fonction d’un facteur : stripchart(don- nees~facteur) oĂč les deux objets sont des vecteurs contenant la valeur de chaque individu (dans le mĂȘme ordre). Pour reprĂ©senter les donnĂ©es verticalement, ajouter l’argument vertical= TRUE. Pour que les valeurs identiques ne se superposent pas, ajouter l’argument method="jitter" (par dĂ©faut method="overplot").
  • 26. 13. Histogrammes : la fonction hist() Le graphique tracĂ© divise les donnĂ©es contenues dans un vecteur en classes, et reprĂ©sente chaque classe en eïŹ€ectif ou densitĂ©. Il permet d’avoir un aperçu de la distribution des donnĂ©es. Pour reprĂ©senter les classes en eïŹ€ectifs : hist(vecteur). Pour reprĂ©senter les classes en densitĂ©s : hist(vecteur,freq=FALSE) (freq=TRUE par dĂ©faut, ce qui reprĂ©sente les eïŹ€ectifs). Pour ajouter une courbe de densitĂ© : lines(density(vecteur)). Une telle courbe ne peut ĂȘtre ajoutĂ©e que sur un histogramme tracĂ© en densitĂ©s. Pour ajouter une courbe de distribution : lines(seq2(vecteur),dloi(se- q2(vecteur),par)) oĂč loi est la loi de probabilitĂ© choisie et par ses para- mĂštres sĂ©parĂ©s par une virgule (calculĂ©s Ă  partir des donnĂ©es ; voir ïŹches 23 Ă  32). La fonction seq2() est contenue dans le package RVAideMemoire. Pour modiïŹer le nombre de classes, ajouter l’argument breaks=n oĂč n est le nombre de coupures souhaitĂ©es (il y a donc n + 1 classes). Pour tracer l’histogramme d’une variable par niveau d’un facteur, utiliser la fonction byf.hist() du package RVAideMemoire : byf.hist(variable,fact- eur) oĂč variable et facteur sont des vecteurs contenant la valeur de chaque individu pour les deux variables (dans le mĂȘme ordre).
  • 27. 14. BoĂźtes Ă  moustaches : la fonction boxplot() Le graphique tracĂ© reprĂ©sente de façon simpliïŹĂ©e la dispersion des donnĂ©es contenues dans un vecteur. Il permet d’avoir un aperçu de la distribution et de la variabilitĂ© des donnĂ©es, et d’identiïŹer les observations aberrantes. Pour reprĂ©senter un vecteur : boxplot(vecteur). Le trait Ă©pais reprĂ©sente la mĂ©diane, la boĂźte est formĂ©e par les valeurs des 1er et 3Ăšme quartiles, et les moustaches mesurent maximum 1,5 fois la longueur de l’interquartile (3Ăšme - 1er). Les valeurs au-delĂ  des moustaches sont reprĂ©sentĂ©es individuellement. Pour reprĂ©senter plusieurs vecteurs : boxplot(list(vecteur1,vecteur2, ...)). Pour donner un nom aux boĂźtes, ajouter l’argument names=c("Nom1","No- m2",...). Pour reprĂ©senter une boĂźte par niveau d’un facteur : boxplot(variable~ facteur) oĂč variable et facteur sont des vecteurs contenant la valeur de chaque individu pour les deux variables (dans le mĂȘme ordre). Pour reprĂ©senter les boĂźtes horizontalement, ajouter l’argument horizont- al=TRUE.
  • 28. 15. La rĂ©duction des donnĂ©es Ă  une dimension Les paramĂštres suivants permettent de rĂ©duire une sĂ©rie de donnĂ©es Ă  quelques valeurs apportant une information gĂ©nĂ©rale. ParamĂštres de position Ils permettent de donner un ordre de grandeur des donnĂ©es. Moyenne : mean(serie) oĂč serie est un vecteur contenant la valeur de chaque individu. MĂ©diane : median(serie). Mode : utiliser la fonction mod() du package RVAideMemoire : mod(serie). Si les vecteurs contiennent des donnĂ©es manquantes (NA), ajouter l’argu- ment na.rm=TRUE aux fonctions mean() et median(). La fonction mod() gĂšre par dĂ©faut les donnĂ©es manquantes. ParamĂštres de dispersion Ils permettent d’estimer la variabilitĂ© des donnĂ©es autour des paramĂštres de position. Variance : var(serie). Ecart-type (standard deviation) : sd(serie). CoeïŹƒcient de variation : utiliser la fonction cv() du package RVAideMemoire : cv(serie). Le coeïŹƒcient est par dĂ©faut exprimĂ© en valeur absolue et en pourcentage. Si les vecteurs contiennent des donnĂ©es manquantes (NA), ajouter l’argument na.rm=TRUE aux fonctions var() et sd(). La fonction cv() gĂšre par dĂ©faut les donnĂ©es manquantes. Les fonctions var() et sd() calculent la variance et l’écart-type non biaisĂ©s (sur la base de n − 1 et non n, n Ă©tant l’eïŹ€ectif de l’échantillon). La fonction cv() est basĂ©e sur l’écart-type non biaisĂ©. Pour calculer la valeur d’un paramĂštre (de position ou de dispersion) par niveau d’un facteur, utiliser tapply(serie,facteur,function(x) fonction) oĂč serie et facteur sont des vecteurs contenant la valeur de chaque indi- vidu pour les deux variables (dans le mĂȘme ordre), et fonction la fonction Ă  utiliser. Dans cette fonction, serie doit ĂȘtre remplacĂ© par x : mean(x), var(x,na.rm=TRUE), cv(x). . . Exemple variable <- c(1:60) facteur <- factor(rep(LETTERS[1:3],each=20)) tapply(variable,facteur,function(x) mean(x)) A B C 10.5 30.5 50.5
  • 29. 16. Nuages de points : la fonction plot() La fonction plot() permet de reprĂ©senter les valeurs de deux variables numĂ©riques pour chaque individu, dans un graphe du type y = f (x). Elle permet d’avoir un aperçu de la liaison qu’il peut exister entre ces variables. Elle peut ĂȘtre utilisĂ©e avec deux vecteurs, une matrice Ă  deux colonnes ou un tableau Ă  deux colonnes. Pour reprĂ©senter deux vecteurs x et y contenant la valeur de chaque in- dividu pour les deux variables (dans le mĂȘme ordre) : plot(y~x) (~ signiïŹe « expliquĂ© par »). Pour ajouter une droite du type y = ax + b : abline(b,a). Pour ajouter une droite de rĂ©gression linĂ©aire au sens des moindres carrĂ©s (voir ïŹche 68) : abline(lm(y~x)). Pour ajouter une droite de rĂ©gression linĂ©aire au sens des moindres rec- tangles (voir ïŹche 69), utiliser la fonction least.rect() du package RVAideMe- moire : abline(least.rect(y~x)). Pour ajouter une courbe de tendance du nuage de points : panel.smooth(x, y) Pour ajouter une droite horizontale : abline(h=ordonnee). Pour ajouter une droite verticale : abline(v=abscisse).
  • 30. 17. La rĂ©duction des donnĂ©es Ă  deux dimensions Les paramĂštres suivants permettent de rĂ©duire deux sĂ©ries de donnĂ©es Ă  quelques valeurs apportant une information gĂ©nĂ©rale sur la liaison qui peut les unir. Pour deux vecteurs x et y contenant la valeur de chaque individu pour chaque sĂ©rie (dans le mĂȘme ordre) : Covariance : cov(x,y). CoeïŹƒcient de corrĂ©lation linĂ©aire de Pearson (voir ïŹche 65) : cor(x,y). Les vecteurs doivent avoir la mĂȘme taille (i.e. contenir autant de va- leurs). S’ils contiennent des donnĂ©es manquantes (NA), ajouter l’argument use="complete.obs" aux fonctions cov() et cor(). Seuls les couples de don- nĂ©es complets sont alors considĂ©rĂ©s. La rĂ©gression linĂ©aire au sens des moindres carrĂ©s (voir ïŹche 68) s’utilise dans le cas oĂč la variable y (dite dĂ©pendante ou Ă  expliquer) varie en fonction de la variable x (dite indĂ©pendante ou explicative). Pour rĂ©cupĂ©rer les para- mĂštres de la droite : lm(y~x)$coefficients. La premiĂšre valeur (Intercept) correspond Ă  l’ordonnĂ©e Ă  l’origine, la seconde au coeïŹƒcient directeur de la droite. La fonction lm() construit un modĂšle linĂ©aire reliant x et y au sens des moindres carrĂ©s. La rĂ©gression linĂ©aire au sens des moindres rectangles (voir ïŹche 69) s’utilise dans le cas oĂč les deux variables sont considĂ©rĂ©es sur un pied d’éga- litĂ© (elles sont dites interdĂ©pendantes). Pour rĂ©cupĂ©rer les paramĂštres de la droite, utiliser la fonction least.rect() du package RVAideMemoire : least.rect(y~x)$coefficients. La premiĂšre valeur (Intercept) corres- pond Ă  l’ordonnĂ©e Ă  l’origine, la seconde au coeïŹƒcient directeur de la droite. La fonction least.rect() construit un modĂšle linĂ©aire reliant x et y au sens des moindres rectangles. Les vecteurs x et y doivent avoir la mĂȘme taille pour les deux fonctions lm() et least.rect(). Ils peuvent contenir des donnĂ©es manquantes (NA).
  • 31. 18. L’Analyse en Composantes Principales (ACP) Les donnĂ©es doivent ĂȘtre contenues dans un tableau avec en colonnes les variables (avec un titre) et en ligne les individus. La 1Ăšre case du tableau (en haut Ă  gauche) doit ĂȘtre vide si la 1Ăšre colonne contient le nom des individus. Le tableau ne doit pas contenir de donnĂ©es manquantes (NA). Pour supprimer les lignes qui en possĂšdent : tableau2<-na.omit(tableau), oĂč tableau est le tableau de dĂ©part. L’ACP se prĂȘte mieux Ă  l’analyse de relations linĂ©aires et de variables ayant une distribution symĂ©trique. Pour observer ces caractĂšres, utiliser pairs(tableau2,panel=panel.smooth) d’une part et hist() (voir ïŹche 13) avec chacune des variables d’autre part. Si besoin transformer les variables (voir ïŹche 45). Pour visualiser la matrice des corrĂ©lations linĂ©aires entre les variables : cor(tableau2) (utilisĂ©e dans le cas de l’ACP rĂ©duite). Pour visualiser la matrice des variances-covariances : cov(tableau2) (utilisĂ©e dans le cas de l’ACP non rĂ©duite). L’ACP est rĂ©alisĂ©e grĂące Ă  la fonction dudi.pca() du package ade4. Par dĂ©faut elle est centrĂ©e-rĂ©duite, pour changer ces paramĂštres ajouter les argu- ments center=FALSE (pour ne pas centrer) et/ou scale=FALSE (pour ne pas rĂ©duire). En gĂ©nĂ©ral, l’ACP est rĂ©duite quand les variables n’ont pas le mĂȘme ordre de grandeur (ou unitĂ© de mesure), non rĂ©duite dans le cas contraire (elles sont donc directement comparables). Lorsque la commande acp<-dudi.pca(tableau2) est passĂ©e, R renvoie le graphe des valeurs propres (ou pouvoirs de synthĂšse) associĂ©es Ă  chaque variable de synthĂšse (ou axe ou composante principale), et demande le nombre d’axes Ă  sĂ©lectionner. Le choix peut se faire sur la base du critĂšre de Kaiser (i.e. ne choisir que les axes dont la valeur propre est supĂ©rieure Ă  1) ou sur un critĂšre ïŹxĂ© avant l’analyse, Ă  savoir le nombre de composantes principales expliquant un minimum de x % de l’information (ou inertie totale) contenue dans le tableau initial. Ce pourcentage d’inertie est calculĂ© en divisant la valeur propre d’un axe par le nombre d’axes possibles (Ă©gal au nombre de variables du tableau de dĂ©part). Pour visualiser la corrĂ©lation entre chaque variable et une composante principale : score(acp,xax=num) oĂč num est le numĂ©ro de l’axe choisi.
  • 32. Le diagnostic de l’ACP se fait grĂące Ă  la fonction inertia.dudi(acp), qui renvoie le tableau $TOT. Celui-ci contient la contribution Ă  l’inertie de chaque composante principale (proportions cumulĂ©es dans la colonne ratio, multiplier par 100 pour le pourcentage). En ajoutant l’argument col.inertia=TRUE Ă  la fonction on obtient trois tableaux supplĂ©mentaires : – $col.abs : donne la contribution Ă  l’inertie de chaque variable du tableau de dĂ©part, i.e. leur importance respective dans la construction des axes (ce qui aide Ă  l’interprĂ©tation de ces axes). Diviser par 100 pour obtenir les pourcentages. La somme de chaque colonne est Ă©gale Ă  100 % – $col.rel : donne la part d’information apportĂ©e par chaque axe pour chaque variable (diviser la valeur absolue par 100 pour obtenir les pour- centages). Ne pas tenir compte de la 3Ăšme colonne – $col.cum : valeurs absolues de $col.rel cumulĂ©es (diviser par 100 pour obtenir les pourcentages). Donne donc la part totale d’information apportĂ©e par tous les axes retenus pour chaque variable, autrement dit la qualitĂ© de la reprĂ©sentation de chaque variable. Ajouter l’argument row.inertia=TRUE Ă  la fonction inertia.dudi() pour obtenir le diagnostic pour chaque individu ($row.abs, $row.rel et $row.cum). Pour visualiser graphiquement les relations entre : – les individus : s.label(acp$li), le tableau $li de l’ACP donnant les coordonnĂ©es des individus dans les diïŹ€Ă©rents plans factoriels. Pour sĂ©lec- tionner un plan factoriel, ajouter les arguments xax=num1 et yax=num2 oĂč num1 est le numĂ©ro du 1er axe choisi et num2 celui du 2nd (il faut avoir sĂ©lectionnĂ© au moins deux axes au dĂ©part de l’ACP). Par convention on choisit pour l’axe horizontal celui des deux ayant la meilleure contribu- tion Ă  l’inertie totale. Des individus Ă©loignĂ©s sur le graphe le sont dans le tableau initial (mais faire attention aux contributions relatives $row.rel du diagnostic) – les variables : – ACP rĂ©duite : s.corcircle(acp$co) trace le cercle des corrĂ©lations (le tableau $co de l’ACP donne les coordonnĂ©es des variables dans les diïŹ€Ă©rents plans factoriels), oĂč la longueur des ïŹ‚Ăšches indique la part de leur information reprĂ©sentĂ©e par les deux axes (contributions relatives cumulĂ©es $col.cum du diagnostic). L’angle entre deux ïŹ‚Ăšches reprĂ©sente la corrĂ©lation qui les lie : angle aigu = positive ; angle droit = nulle ; angle obtus = nĂ©gative – ACP non rĂ©duite : s.arrow(acp$co) oĂč la longueur des ïŹ‚Ăšches re- prĂ©sente la contribution Ă  l’inertie de chaque variable (contributions absolues $col.abs du diagnostic). Les relations entre variables s’in- terprĂštent de la mĂȘme façon que pour l’ACP rĂ©duite, mais cette fois en terme de covariances et non de corrĂ©lations.
  • 33. Pour reprĂ©senter Ă  la fois les individus et les variables dans un plan factoriel, utiliser scatter(acp,posieig="none"). Pour ne pas aïŹƒcher le numĂ©ro (ou le nom) des individus, ajouter l’argument clab.row=0. Pour ajouter comme information supplĂ©mentaire une variable qualitative dĂ©ïŹnissant des groupes d’individus (sur le graphe des individus) : – sous forme d’ellipses : s.class(dfxy=acp$li,fac=facteur) – sous forme de polygones de contour : s.chull(dfxy=acp$li,fac=facte- ur,optchull=1) oĂč facteur est un vecteur contenant la modalitĂ© de chaque individu. Pour donner une couleur Ă  chaque groupe ajouter l’argument col=couleur oĂč couleur est un vecteur contenant la couleur de chaque modalitĂ© du facteur, dans l’ordre alphabĂ©tique des modalitĂ©s. PrĂ©ciser le plan factoriel grĂące aux arguments xax et yax. Pour ajouter sur le graphe des individus des groupes d’individus dĂ©ïŹ- nis par une mĂ©thode de classiïŹcation automatique (voir ïŹche 22), utiliser factor(classes) Ă  la place de facteur dans les fonctions s.class() et s.chull(). L’échelle des ïŹ‚Ăšches sur la double reprĂ©sentation individus - variables est arbitraire, elle peut ĂȘtre changĂ©e sans que cela ne change l’interprĂ©tation. Pour l’interprĂ©tation, n’utiliser que les individus les plus Ă©loignĂ©s du centre du nuage de points et les ïŹ‚Ăšches les plus longues pour les variables, car ce sont eux qui sont le mieux reprĂ©sentĂ©s par les axes. Un 1er axe trĂšs corrĂ©lĂ© de façon positive avec toutes les variables est souvent le signe d’un « eïŹ€et taille ». Il convient dans ce cas de se placer dans des plans factoriels ne comprenant pas le 1er axe pour l’interprĂ©tation.
  • 34.
  • 35. 19. L’Analyse Factorielle des Correspondances (AFC) Les donnĂ©es doivent ĂȘtre en eïŹ€ectifs et organisĂ©es dans un tableau de contingence, du type : Variable B Classe 1 ... Classe c Classe 1 Variable A ... Classe k Ce tableau est obtenu de la maniĂšre suivante : tableau<-table(variabl- eA,variableB) oĂč variableA et variableB sont des vecteurs contenant la valeur de chaque individu pour chaque variable (dans le mĂȘme ordre). Il peut Ă©galement ĂȘtre directement importĂ© dans R sous cette forme (en laissant la case en haut Ă  gauche vide). L’AFC est sensible aux eïŹ€ectifs faibles, aussi regrouper les classes quand cela est nĂ©cessaire. Commencer par calculer la valeur du χ2 du test d’indĂ©pendance des deux va- riables (voir ïŹche 64), rĂ©alisĂ© Ă  partir du tableau initial : chisq.test(tablea- u)$statistic. L’AFC est rĂ©alisĂ©e grĂące Ă  la fonction dudi.coa() du package ade4. Lorsque la commande afc<-dudi.coa(tableau) est passĂ©e, R renvoie le graphe des valeurs propres (ou pouvoirs de synthĂšse) associĂ©es Ă  chaque va- riable de synthĂšse (ou axe) et demande le nombre d’axes Ă  sĂ©lectionner. La part de l’inertie (ou information totale contenue dans le tableau initial) expliquĂ©e par chaque axe se calcule par : valeur propre × eïŹ€ectif total χ2 On peut choisir le nombre d’axes expliquant ensemble x % de l’inertie, x Ă©tant choisi Ă  l’avance, ou un nombre d’axes dĂ©terminĂ© Ă  l’avance. Le diagnostic de l’AFC se fait grĂące Ă  la fonction inertia.dudi(afc), qui renvoie le tableau $TOT. Celui-ci contient la contribution Ă  l’inertie de chaque axe (proportions cumulĂ©es dans la colonne ratio, multiplier par 100 pour le pourcentage). En ajoutant l’argument col.inertia=TRUE Ă  la fonction on obtient trois tableaux supplĂ©mentaires : – $col.abs : donne la contribution Ă  l’inertie de chaque colonne du tableau de dĂ©part, i.e. leur importance respective dans la construction des axes (ce qui aide Ă  l’interprĂ©tation de ces axes). Diviser par 100 pour obtenir les pourcentages. La somme de chaque colonne est Ă©gale Ă  100 %
  • 36. – $col.rel : donne la part d’information apportĂ©e par chaque axe pour chaque colonne (diviser la valeur absolue par 100 pour obtenir les pour- centages). Ne pas tenir compte de la 3Ăšme colonne – $col.cum : valeurs absolues de $col.rel cumulĂ©es (diviser par 100 pour obtenir les pourcentages). Donne donc la part totale d’information apportĂ©e par tous les axes retenus pour chaque colonne, autrement dit la qualitĂ© de la reprĂ©sentation de chaque colonne. Ajouter l’argument row.inertia=TRUE Ă  la fonction inertia.dudi() pour obtenir le diagnostic pour chaque ligne ($row.abs, $row.rel et $row.cum). Pour visualiser graphiquement le rĂ©sultat de l’AFC (donc la structure du tableau), utiliser scatter(afc,posieig="none"). Pour sĂ©lectionner un plan factoriel, ajouter les arguments xax=num1 et yax=num2 oĂč num1 est le numĂ©ro du 1er axe choisi et num2 celui du 2nd (il faut avoir sĂ©lectionnĂ© au moins deux axes au dĂ©part de l’AFC). Par convention on choisit pour l’axe horizontal celui des deux ayant la meilleure contribution Ă  l’inertie totale. La proximitĂ© des modalitĂ©s reprĂ©sente leur liaison plus ou moins forte dans le tableau initial (mais faire attention aux contributions relatives $col.rel et $row.rel du diagnostic). Pour ajouter sur la reprĂ©sentation graphique des groupes d’individus dĂ©ïŹnis par une mĂ©thode de classiïŹcation automatique (voir ïŹche 22) : – sous forme d’ellipses : s.class(dfxy=individus,fac=factor(classe- s),add.plot=TRUE) – sous forme de polygones de contour : s.chull(dfxy=individus,fac=fa- ctor(classes),optchull=1,add.plot=TRUE) oĂč individus est afc$li si les lignes du tableau initial sont considĂ©rĂ©es comme les individus Ă  regrouper, afc$co si ce sont les colonnes. Pour donner une couleur Ă  chaque groupe ajouter l’argument col=couleur oĂč couleur est un vecteur contenant la couleur de chaque classe. PrĂ©ciser le plan factoriel grĂące aux arguments xax et yax. La contribution des lignes et des colonnes Ă  la construction des axes ne peut pas se lire sur le graphique (leur Ă©loignement de l’origine n’est pas reprĂ©sentatif de leur contribution Ă  l’inertie des axes). Il est donc indispensable de lire en dĂ©tail le diagnostic. Pour interprĂ©ter les axes il peut ĂȘtre utile d’utiliser score(afc,xax=num, dotchart=TRUE) oĂč num est le numĂ©ro de l’axe Ă  reprĂ©senter. Le graphique montre la rĂ©partition des modalitĂ©s des deux facteurs sur l’axe choisi. Utiliser abline(v=0) pour ajouter une ligne marquant l’origine de l’axe.
  • 37.
  • 38. 20. L’Analyse en Composantes Multiples (ACM) Les donnĂ©es doivent ĂȘtre contenues dans un tableau avec en colonnes les variables (avec un titre) et en ligne les individus. La 1Ăšre case du tableau (en haut Ă  gauche) doit ĂȘtre vide si la 1Ăšre colonne contient le nom des individus. Pour intĂ©grer des variables quantitatives, regrouper les valeurs en classes (les variables deviennent donc qualitatives). Le tableau ne doit pas contenir de donnĂ©es manquantes (NA). Pour suppri- mer les lignes qui en possĂšdent : tableau2<-na.omit(tableau), oĂč tableau est le tableau de dĂ©part. Il est indispensable de rĂ©aliser une analyse prĂ©liminaire de chaque variable, aïŹn de voir si toutes les classes sont aussi bien reprĂ©sentĂ©es ou s’il existe un dĂ©sĂ©quilibre. Pour cela utiliser plot(variable) oĂč variable est la variable choisie. L’ACM est sensible aux eïŹ€ectifs faibles, aussi regrouper les classes quand cela est nĂ©cessaire. De mĂȘme, si les variables ne sont pas trop nombreuses, rĂ©aliser un test du χ2 d’indĂ©pendance deux-Ă -deux est une premiĂšre approche : chisq.test(ta- ble(variable1,variable2)) (voir ïŹche 64). L’ACM est rĂ©alisĂ©e grĂące Ă  la fonction dudi.acm() du package ade4. Lorsque la commande acm<-dudi.acm(tableau) est passĂ©e, R renvoie le graphe des valeurs propres (ou pouvoirs de synthĂšse) associĂ©es Ă  chaque va- riable de synthĂšse (ou axe) et demande le nombre d’axes Ă  sĂ©lectionner. Il est diïŹƒcile d’établir un critĂšre de choix pour l’ACM, ne pas multiplier les axes est en tout cas bĂ©nĂ©ïŹque pour l’interprĂ©tation. Le diagnostic de l’ACM se fait grĂące Ă  la fonction inertia.dudi(acm), qui renvoie le tableau $TOT. Celui-ci contient la contribution Ă  l’inertie (ou information totale) de chaque axe (proportions cumulĂ©es dans la colonne ratio, multiplier par 100 pour le pourcentage). Pour reprĂ©senter les rĂ©sultats de l’ACM, utiliser scatter(acm). Les rĂ©sul- tats sont sĂ©parĂ©s pour chaque variable, toutes reprĂ©sentĂ©es sur le mĂȘme plan factoriel. Pour sĂ©lectionner un plan factoriel, ajouter les arguments xax=num1 et yax=num2 oĂč num1 est le numĂ©ro du 1er axe choisi et num2 celui du 2nd (il faut avoir sĂ©lectionnĂ© au moins deux axes au dĂ©part de l’ACM). Par convention on choisit pour l’axe horizontal celui des deux ayant la meilleure contribution Ă  l’inertie totale. Les modalitĂ©s de chaque variable sont reprĂ©sentĂ©es par des ellipses portant leur nom. Pour rendre le graphique plus clair et donner une couleur Ă  chaque modalitĂ©, ajouter l’argument col=couleur oĂč couleur est un vecteur contenant autant de noms (ou numĂ©ros) de couleurs qu’il y a de modalitĂ©s possibles.
  • 39. Pour ne reprĂ©senter qu’une seule variable, le mĂȘme rĂ©sultat est obtenu via s.class(dfxy=acm$li,fac=variable,col=couleur,sub="nom") oĂč varia- ble est la variable choisie et nom son nom (entre guillemets). Choisir le plan factoriel Ă  l’aide des arguments xax et yax. Le tableau acm$cr contient les rapports de corrĂ©lation (variant de 0 Ă  1) entre les variables et les axes choisis au dĂ©part de l’ACM. Pour reprĂ©senter gra- phiquement ces rapports, utiliser barplot(acm$cr[,num],names.arg=row.n- ames(acm$cr),las=2) oĂč num est le numĂ©ro de l’axe Ă  reprĂ©senter. Pour l’interprĂ©tation des axes, se concentrer sur les variables les plus structurantes, i.e. dont le rapport de corrĂ©lation est le plus proche de 1. Une aide Ă  l’interprĂ©tation est fournie par la fonction score(acm,xax=num) oĂč num est le numĂ©ro de l’axe Ă  reprĂ©senter. Le graphique montre la rĂ©partition des modalitĂ©s de chaque variable sur l’axe choisi. Pour sĂ©lectionner les variables Ă  reprĂ©senter, ajouter l’argument which.var=variables oĂč variables est un vecteur contenant le numĂ©ro des variables choisies, i.e. le numĂ©ro des colonnes correspondantes dans le tableau initial. L’ACM est clairement une analyse plus diïŹƒcile Ă  interprĂ©ter que l’ACP ou l’AFC. Aussi, il est bon de limiter la diïŹƒcultĂ© en ne considĂ©rant pas des dizaines de variables mais en se limitant aux questions essentielles. De plus, l’ACM est sensible aux modalitĂ©s contenant un faible eïŹ€ectif et aux variables contenant un grand nombre de modalitĂ©s. Mieux vaut donc regrouper ces modalitĂ©s en classes plus larges lorsque l’un de ces deux cas se prĂ©sente.
  • 40.
  • 41. 21. L’Analyse mixte de Hill et Smith Les donnĂ©es doivent ĂȘtre contenues dans un tableau avec en colonnes les variables (avec un titre) et en ligne les individus. La 1Ăšre case du tableau (en haut Ă  gauche) doit ĂȘtre vide si la 1Ăšre colonne contient le nom des individus. Le tableau ne doit pas contenir de donnĂ©es manquantes (NA). Pour suppri- mer les lignes qui en possĂšdent : tableau2<-na.omit(tableau), oĂč tableau est le tableau de dĂ©part. Il est indispensable de rĂ©aliser une analyse prĂ©liminaire de chaque variable aïŹn d’observer la distribution des valeurs (variables quantitatives) ou leur rĂ©partition entre les diïŹ€Ă©rentes classes (variables qualitatives). Utiliser pour cela les fonctions hist(), plot() et/ou boxplot(), selon les variables (voir ïŹches 13, 14 et 16). L’analyse mixte est rĂ©alisĂ©e grĂące Ă  la fonction dudi.mix() du package ade4. Lorsque la commande amix<-dudi.mix(tableau2) est passĂ©e, R ren- voie le graphe des valeurs propres (ou pouvoirs de synthĂšse) associĂ©es Ă  chaque variable de synthĂšse (ou axe) et demande le nombre d’axes Ă  sĂ©lectionner. Il est diïŹƒcile d’établir un critĂšre de choix pour l’analyse mixte, ne pas multiplier les axes est en tout cas bĂ©nĂ©ïŹque pour l’interprĂ©tation. Le pourcentage d’inertie (ou de l’information totale) expliquĂ© par chaque axe est calculĂ© en divisant la valeur propre d’un axe par le nombre d’axes possibles. Le diagnostic de l’analyse mixte se fait grĂące Ă  la fonction inertia.dudi(a- mix), qui renvoie le tableau $TOT. Celui-ci contient la contribution Ă  l’inertie de chaque axe (proportions cumulĂ©es dans la colonne ratio, multiplier par 100 pour le pourcentage). Pour reprĂ©senter les rĂ©sultats de l’analyse mixte, la fonction scatter(ami- x) peut ĂȘtre utilisĂ©e. Elle reprĂ©sente dans le plan factoriel les individus, les variables quantitatives comme dans une ACP (voir ïŹche 18) et les variables qualitatives comme dans une ACM (voir ïŹche 20). Pour sĂ©lectionner un plan factoriel, ajouter les arguments xax=num1 et yax=num2 oĂč num1 est le numĂ©ro du 1er axe choisi et num2 celui du 2nd (il faut avoir sĂ©lectionnĂ© au moins deux axes au dĂ©part de l’analyse). Par convention on choisit pour l’axe horizontal celui des deux ayant la meilleure contribution Ă  l’inertie totale. Cette reprĂ©sentation peut cependant ĂȘtre illisible. Il vaut mieux utili- ser les fonctions scat.mix.numeric() et scat.mix.categorical() du pa- ckage RVAideMemoire. La fonction scat.mix.numeric(amix) reprĂ©sente les variables quantitatives sur un cercle des corrĂ©lation (comme en ACP, voir ïŹche 18), tandis que la fonction scat.mix.categorical(amix) reprĂ©sente les variables qualitatives Ă  la maniĂšre d’une ACM (voir ïŹche 20).
  • 42. Le tableau amix$cr contient les valeurs des « corrĂ©lations » (de 0 Ă  1) qui lient les variables de synthĂšse aux variables initiales. Pour les reprĂ©senter graphiquement, utiliser barplot(amix$cr[,num],names.arg=row.names(am- ix$cr),las=2) oĂč num est le numĂ©ro de l’axe Ă  reprĂ©senter. Pour l’interprĂ©ta- tion des axes, se concentrer sur les variables les plus structurantes, i.e. dont le rapport de corrĂ©lation est le plus proche de 1. Une aide Ă  l’interprĂ©tation est fournie par la fonction score(amix,xax=n- um) oĂč num est le numĂ©ro de l’axe Ă  reprĂ©senter. LĂ  encore la reprĂ©sentation est de type ACP ou ACM selon la nature des variables. Pour sĂ©lectionner les va- riables Ă  reprĂ©senter, ajouter l’argument which.var=variables oĂč variables est un vecteur contenant le numĂ©ro des variables choisies, i.e. le numĂ©ro des colonnes correspondantes dans le tableau initial.
  • 43. 22. Les classiïŹcations automatiques Les classiïŹcations automatiques sont utilisĂ©es pour regrouper des individus en classes, le plus souvent aprĂšs une ACP (voir ïŹche 18) ou une AFC (voir ïŹche 19). Il existe deux types de classiïŹcation automatique : – non hiĂ©rarchiques : le nombre de classes est dĂ©terminĂ© a priori – hiĂ©rarchiques : les individus sont agrĂ©gĂ©s successivement pour aboutir Ă  un arbre de classiïŹcation (appelĂ© dendrogramme). C’est Ă  partir de cet arbre que l’on dĂ©termine le nombre de classes Ă  gĂ©nĂ©rer. Il existe plusieurs mĂ©thodes de classiïŹcation automatique. Seules deux sont dĂ©crites ici : la mĂ©thode des k-means (non hiĂ©rarchique) et la classiïŹcation ascendante hiĂ©rarchique (hiĂ©rarchique). Le mĂ©thode des k-means L’obtention de la classe de chaque individu se fait en une seule Ă©tape via classes<-kmeans(tableau,centers=nombre)$cluster, oĂč nombre est le nombre de classes Ă  gĂ©nĂ©rer et tableau le tableau de donnĂ©es Ă  l’origine de l’analyse multivariĂ©e. Attention, les individus Ă  classer sont les lignes du tableau de donnĂ©es. Pour considĂ©rer les colonnes comme individus dans le cas d’une classiïŹcation post-AFC (voir ïŹche 19), remplacer tableau par t(tableau). La ClassiïŹcation Ascendante HiĂ©rarchique (CAH) L’obtention de la classe de chaque individu se fait en plusieurs Ă©tapes : 1. calculer la distance entre chaque individu. En pratique on utilise le plus souvent la distance euclidienne (mais il en existe d’autres) : distances<-dist(tableau,method="euclidian"). Si nĂ©cessaire, rem- placer tableau par t(tableau) 2. regrouper les individus sur la base d’un critĂšre d’agglomĂ©ration. Il existe plusieurs critĂšres, en pratique on utilise souvent celui de Ward (ce n’est pas le seul, et aucun n’est le meilleur dans l’absolu). Utiliser la fonction hclust() contenue dans le package ade4 : dendrogramme<-hclust(dis- tances,method="ward") 3. reprĂ©senter le dendrogramme : plot(dendrogramme,hang=-1). La dis- tance verticale qui sĂ©pare deux groupes est reprĂ©sentative de leur proxi- mitĂ© dans le tableau de donnĂ©es. A partir de cet arbre, sĂ©lectionner le nombre de classes le plus pertinent 4. aïŹ€ecter chaque individu Ă  une classe via la fonction cutree() du package ade4 : classes<-cutree(dendrogramme,k=nombre), oĂč nombre est le nombre de classes souhaitĂ©. Une fois que le vecteur classes a Ă©tĂ© obtenu, les classes peuvent ĂȘtre reprĂ©sentĂ©es graphiquement (voir ïŹche 18 pour l’ACP, ïŹche 19 pour l’AFC).
  • 44. 23. Les lois de probabilitĂ© discontinues – gĂ©nĂ©ralitĂ©s Ces lois s’appliquent Ă  des variables quantitatives discrĂštes. ParamĂštres : – k : chaque valeur possible rencontrĂ©e dans la population par la variable discrĂšte X. Egalement appelĂ©e quantile – f (k) : frĂ©quence, ou probabilitĂ©, associĂ©e Ă  chaque valeur de la variable discrĂšte X. Egalement appelĂ©e distribution de probabilitĂ© de X ou fonction de masse de X. Comprise entre 0 et 1 – F (k) : somme des probabilitĂ©s f (k) situĂ©es Ă  droite ou Ă  gauche de k, suivant la situation. Egalement appelĂ©e fonction de rĂ©partition de X. On note F (k)droite = P (X > k) et F (k)gauche = P (X ≀ k). Comprise entre 0 et 1. Dans R : – dY() : donne la probabilitĂ© f (k) pour une distribution de type Y – pY() : donne la fonction de rĂ©partition F (k) pour une distribution de type Y. R considĂšre par dĂ©faut la rĂ©partition Ă  gauche, prĂ©ciser lower.tail=FALSE pour la rĂ©partition Ă  droite – qY() : donne la valeur k de la variable X correspondant Ă  une valeur de F (k) pour une distribution de type Y. R considĂšre par dĂ©faut la rĂ©partition Ă  gauche de k, prĂ©ciser lower.tail=FALSE pour la rĂ©partition Ă  droite – rY() : donne une sĂ©rie de valeurs alĂ©atoires de la variable X pour une distribution de type Y.
  • 45. 24. La loi binomiale La loi binomiale est la loi suivie par les rĂ©sultats de tirages alĂ©atoires lors- qu’il n’y a que deux possibilitĂ©s mutuellement exclusives de rĂ©sultat et que la probabilitĂ© d’obtenir chaque possibilitĂ© est constante au cours de l’expĂ©rience (i.e. population inïŹnie ou tirages avec remise). La loi donne la probabilitĂ© d’obtenir k fois le rĂ©sultat A quand n tirages sont rĂ©alisĂ©s. Ecriture : B(n, p) avec : n : nombre de tirages p : probabilitĂ© associĂ©e au rĂ©sultat A Dans R : dbinom(k,n,p) pbinom(k,n,p) qbinom(F(k),n,p) rbinom(x,n,p) avec x : nombre de valeurs Ă  gĂ©nĂ©rer
  • 46. 25. La loi de Poisson La loi de Poisson est une limite de la loi binomiale (voir ïŹche 24) quand p tend vers 0 et n vers l’inïŹni (« loi des Ă©vĂšnements rares »). L’approximation de la loi binomiale par la loi de Poisson est possible quand quand p < 0, 1 et n > 30. Sa moyenne est Ă©gale Ă  sa variance et vaut np (ou λ). Ecriture : P (np) ou P (λ) avec : n : nombre de tirages p : probabilitĂ© associĂ©e au rĂ©sultat rare Dans R : dpois(k,n*p) ou dpois(k,lambda) ppois(k,n*p) ou ppois(k,lambda) qpois(F(k),n*p) ou qpois(F(k),lambda) rpois(x,n*p) ou rpois(x,lambda) avec x : nombre de valeurs Ă  gĂ©nĂ©rer
  • 47. 26. La loi binomiale nĂ©gative La loi binomiale nĂ©gative correspond Ă  la mĂȘme situation que la loi bino- miale (voir ïŹche 24), mais elle donne la probabilitĂ© d’obtenir r rĂ©sultats B avant d’obtenir k rĂ©sultats A (approche par l’échec). Ecriture : BN (k, p) avec : k : nombre de rĂ©sultats A dĂ©sirĂ©s p : probabilitĂ© associĂ©e au rĂ©sultat A Dans R : dnbinom(r,k,p) pnbinom(r,k,p) qnbinom(F(r),k,p) rnbinom(x,k,p) avec x : nombre de valeurs Ă  gĂ©nĂ©rer
  • 48. 27. Les lois de probabilitĂ© continues – gĂ©nĂ©ralitĂ©s Ces lois s’appliquent Ă  des variables quantitatives continues. ParamĂštres : – xi : chaque valeur possible de la variable continue x. Egalement appelĂ©e quantile – f (xi ) : distribution de probabilitĂ© de la valeur xi . Egalement appelĂ©e densitĂ© de probabilitĂ© de xi . Comprise entre 0 et 1 – F (xi ) : aire sous la courbe situĂ©e Ă  droite ou Ă  gauche de xi , suivant la situation. Egalement appelĂ©e fonction de rĂ©partition de xi . On note F (xi )droite = P (x > xi ) et F (xi )gauche = P (x ≀ xi ). Comprise entre 0 et 1. Dans R : – dY() : donne la densitĂ© de probabilitĂ© f (xi ) pour une distribution de type Y – pY() : donne la fonction de rĂ©partition F (xi ) pour une distribution de type Y. R considĂšre par dĂ©faut la rĂ©partition Ă  gauche, prĂ©ciser lower.tail=FALSE pour la rĂ©partition Ă  droite – qY() : donne la valeur xi de la variable x correspondant Ă  une valeur de F (xi ) pour une distribution de type Y. R considĂšre par dĂ©faut la rĂ©partition Ă  gauche de k, prĂ©ciser lower.tail=FALSE pour la rĂ©partition Ă  droite – rY() : donne une sĂ©rie de valeurs alĂ©atoires de la variable x pour une distribution de type Y.
  • 49. 28. La loi normale Ecriture : N (”, σ) avec : ” : moyenne de la variable x σ : Ă©cart-type de la variable x Cas particulier, la loi normale centrĂ©e-rĂ©duite : N (0, 1) Dans R : dnorm(xi,mu,sigma) pnorm(xi,mu,sigma) qnorm(F(xi),mu,sigma) rnorm(z,mu,sigma) avec z : nombre de valeurs Ă  gĂ©nĂ©rer
  • 50. 29. La loi exponentielle La loi exponentielle correspond souvent Ă  des Ă©vĂšnements dont la proba- bilitĂ© de survenue diminue avec le temps. Elle est Ă©galement utilisĂ©e pour modĂ©liser des durĂ©es de vie. Ecriture : exp(λ) avec λ : paramĂštre de la loi (0 < λ < +∞) Dans R : dexp(xi,lambda) pexp(xi,lambda) qexp(F(xi),lambda) rexp(z,lambda) avec z : nombre de valeurs Ă  gĂ©nĂ©rer
  • 51. 30. La loi de χ2 Ecriture : χ2 (Îœ) avec Îœ : nombre de degrĂ©s de libertĂ© (ddl), i.e. de paramĂštres indĂ©pendants impliquĂ©s dans la loi (0 < Îœ < +∞) Dans R : dchisq(xi,ddl) pchisq(xi,ddl) qchisq(F(xi),ddl) rchisq(z,ddl) avec z : nombre de valeurs Ă  gĂ©nĂ©rer
  • 52. 31. La loi de Fisher - Snedecor Ecriture : F (Îœ1 , Îœ2 ) avec : Îœ1 : 1er nombre de degrĂ©s de libertĂ© (ddl) (0 < Îœ1 < +∞) Îœ2 : 2Ăšme nombre de ddl (0 < Îœ2 < +∞) Dans R : df(xi,ddl1,ddl2) pf(xi,ddl1,ddl2) qf(F(xi),ddl1,ddl2) rf(z,ddl1,ddl2) avec z : nombre de valeurs Ă  gĂ©nĂ©rer
  • 53. 32. La loi de Student Ecriture : t(Îœ) avec Îœ : nombre de degrĂ©s de libertĂ© (ddl) (0 < Îœ < +∞) Dans R : dt(xi,ddl) pt(xi,ddl) qt(F(xi),ddl) rt(z,ddl) avec z : nombre de valeurs Ă  gĂ©nĂ©rer
  • 54. 33. Principe des tests statistiques et risques associĂ©s Ă  la conclusion Principe de rĂ©alisation des tests statistiques : 1. poser une hypothĂšse nulle H0 , de type « rien Ă  signaler » (ex : les moyennes ”A et ”B sont Ă©gales) ou « valeur ponctuelle » (ex : ” = 10, ” = 50 %) 2. poser une hypothĂšse H1 , de telle maniĂšre que H0 et H1 soient exclusives (ex : les moyennes ”A et ”B sont diïŹ€Ă©rentes) 3. calculer la valeur de la Variable de Test (VT), d’aprĂšs une formule qui dĂ©pend du test utilisĂ© 4. utiliser la valeur de la VT calculĂ©e pour dĂ©terminer une p-value, i.e. une probabilitĂ© d’obtenir la valeur mesurĂ©e (moyenne, pourcentage. . .) si H0 est vraie 5. conclure sur les deux hypothĂšses posĂ©es grĂące Ă  cette p-value : – si la p-value est supĂ©rieure au seuil α ïŹxĂ© avant le test (5 % en gĂ©nĂ©ral, voir ïŹche 34), ne pas rejeter H0 – si la p-value est infĂ©rieure au seuil α, rejeter H0 . Conclure sur les deux hypothĂšses prĂ©sente deux risques : – le risque de 1Ăšre espĂšce ou risque α, qui correspond au risque de rejeter de H0 si celle-ci est rĂ©ellement vraie (voir ïŹche 34) – le risque de 2Ăšme espĂšce ou risque ÎČ, qui correspond au risque de ne pas rejeter de H0 si celle-ci est rĂ©ellement fausse (voir ïŹche 36). RĂ©alitĂ© (inconnue le plus souvent) DĂ©cision H0 vraie H0 fausse H0 non rejetĂ©e Bonne dĂ©cision Erreur ÎČ H0 rejetĂ©e Erreur α Bonne dĂ©cision La probabilitĂ© associĂ©e au fait de rejeter H0 si celle-ci est fausse (soit 1 − ÎČ) est appelĂ©e puissance du test. Cette notion est trĂšs importante car elle relativise le rĂ©sultat des tests, et donc la conclusion que l’on en tire (voir ïŹche 36).
  • 55. 34. Le risque ou seuil de rejet α Le risque α, ou seuil de rejet ou encore seuil de signiïŹcation de l’hypothĂšse H0 , est une valeur ïŹxĂ©e arbitrairement avant la rĂ©alisation de tout test statis- tique. Elle correspond Ă  un risque assumĂ© de se tromper, celui de rejeter H0 si celle-ci est rĂ©ellement vraie (ce que bien sĂ»r on ne sait jamais). Lorsque l’on calcule une p-value suite Ă  un test (voir ïŹche 33), on la compare au seuil α choisi : – si la p-value est infĂ©rieure au seuil α, on rejette H0 . Il faut ĂȘtre conscient que l’on prend un risque α de se tromper – si la p-value est supĂ©rieure au seuil α, on ne rejette pas H0 . Il faut alors calculer la puissance du test que l’on vient d’utiliser (voir ïŹches 36 et 37). Obtenir une p-value supĂ©rieure au seuil α peut en eïŹ€et avoir deux origines : 1. une rĂ©elle vĂ©racitĂ© de H0 2. un manque de puissance du test, i.e. un risque (ÎČ, voir ïŹche 33) important de « passer Ă  cĂŽtĂ© » d’une rĂ©elle faussetĂ© de H0 (voir ïŹche 36). Xseuil : valeur de la Variable de Test (VT) X qui donne une fonction de rĂ©partition Ă  droite Ă©gale au seuil α (test unilatĂ©ral droit). Xcalc : valeur de la VT X calculĂ©e Ă  partir de l’échantillon testĂ©. A gauche l’hypothĂšse H0 est rejetĂ©e, Ă  droite elle ne l’est pas. D’un point de vue pratique, on utilise souvent un seuil α de 5 %. Cela veut dire qu’on assume un risque de 5 % de rejeter H0 si celle-ci est rĂ©ellement vraie.
  • 56. 35. La correction du seuil de rejet α (ou des p-values) Si une sĂ©rie de tests statistiques est rĂ©alisĂ©e avec Ă  chaque fois α pour seuil de rejet de H0 (voir ïŹche 34), le risque global de rejeter H0 si celle-ci est vraie augmente. En eïŹ€et, plus on eïŹ€ectue de tests, plus on a de chance de tomber sur un Ă©chantillon peu reprĂ©sentatif de la population dont il provient (donnant une p-value infĂ©rieure au seuil α). Il est donc nĂ©cessaire de corriger le seuil de rejet α de chaque test lorsque plusieurs sont rĂ©alisĂ©s (ou leur p-value, ce qui revient au mĂȘme), aïŹn que le risque global soit Ă©gal au α souhaitĂ©. Cette situation se prĂ©sente : – lorsque les tests vont permettre de prendre une dĂ©cision unique, dĂšs que l’un d’eux au moins permet le rejet de H0 – lorsqu’est rĂ©alisĂ©e une sĂ©rie de tests deux-Ă -deux, soit directement soit aprĂšs une analyse globale (ANOVA, test du χ2 d’homogĂ©nĂ©itĂ©. . .). Plusieurs mĂ©thodes de correction existent, dont les trois suivantes : La technique de Bonferroni Si k tests sont eïŹ€ectuĂ©s, la technique consiste simplement Ă  diviser le seuil de rejet global α par k, donc considĂ©rer pour chaque test le seuil de rejet α . k Cela revient Ă  multiplier chaque p-value par k, sans changer le seuil α. La technique sĂ©quentielle de Holm La procĂ©dure se rĂ©alise en plusieurs Ă©tapes : 1. classer les p-values de tous les tests rĂ©alisĂ©s par ordre croissant (p1 <. . .< pk ), k Ă©tant le nombre de tests eïŹ€ectuĂ©s 2. rejeter H0 pour les tests dont la p-value satisfait la condition : αseuil pi ≀ k+1−i oĂč i est le rang de la p-value aprĂšs classement. La technique du False Discovery Rate (FDR) de Benjamini et Hochberg La procĂ©dure se rĂ©alise en plusieurs Ă©tapes : 1. classer les p-values de tous les tests rĂ©alisĂ©s par ordre croissant (p1 <. . .< pk ), k Ă©tant le nombre de tests eïŹ€ectuĂ©s 2. rejeter H0 pour les tests dont la p-value satisfait la condition : i pi ≀ αseuil × k oĂč i est le rang de la p-value aprĂšs classement.
  • 57. La technique la plus stricte est celle de Bonferroni, la moins stricte celle du FDR. Cette derniĂšre peut ĂȘtre appliquĂ©e par dĂ©faut. Dans tous les cas la mĂ©thode de correction du seuil de rejet de H0 doit ĂȘtre dĂ©cidĂ©e avant de rĂ©aliser les tests. Dans R, si p est le vecteur contenant les p-values non corrigĂ©es, utiliser la fonction p.adjust() pour rĂ©cupĂ©rer un vecteur avec les p-values corrigĂ©es (dans le mĂȘme ordre) : p.adjust(p,method="bonferroni") pour la correction de Bonferroni p.adjust(p,method="holm") pour la correction de Holm p.adjust(p,method="BH") ou p.adjust(p,method="fdr") pour la correc- tion de Benjamini et Hochberg (FDR).
  • 58. 36. Le risque ÎČ et la puissance du test Le risque ÎČ est le risque de ne pas rejeter l’hypothĂšse H0 si celle-ci est rĂ©ellement fausse. Contrairement au risque α, le risque ÎČ ne peut pas ĂȘtre ïŹxĂ©. En eïŹ€et, si α dĂ©pend de la distribution de la Variable de Test (VT) sous H0 (voir ïŹche 34), ÎČ dĂ©pend de sa distribution sous H1 . Or cette distribution est inconnue, puisque l’hypothĂšse H1 regroupe une inïŹnitĂ© de distributions (ex : si l’hypothĂšse H1 est ”A = ”B , les deux moyennes ”A et ”B peuvent diïŹ€Ă©rer d’une inïŹnitĂ© de façons). La puissance d’un test reprĂ©sente la probabilitĂ© de rejeter H0 si celle-ci est rĂ©ellement fausse (i.e. de faire le bon choix). Elle Ă©quivaut Ă  1 − ÎČ, et est donc Ă©galement une variable dĂ©pendant de la distribution de la VT sous H1 . Le risque ÎČ et la puissance du test dĂ©pendent du seuil α ïŹxĂ© : Xseuil : valeur de la VT X qui donne une fonction de rĂ©partition Ă  droite Ă©gale au seuil α pour la distribution sous H0 (test unilatĂ©ral droit). La puissance d’un test augmente : – quand augmente le seuil α – quand augmente l’eïŹ€ectif de l’échantillon testĂ© (ce qui diminue l’étalement de la distribution de la VT ou Ă©loigne les distributions de la VT sous H0 et H1 , selon le test) – quand augmente l’écart rĂ©el entre les valeurs testĂ©es (moyennes. . .). Il est possible de calculer la puissance d’un test aprĂšs avoir rĂ©alisĂ© celui-ci (voir ïŹche 37). Cela est indispensable car, lorsque la p-value d’un test est supĂ©rieure au seuil α ïŹxĂ©, cela peut aussi bien provenir d’une rĂ©elle vĂ©racitĂ© de H0 que d’un manque de puissance du test alors que H0 est rĂ©ellement fausse. Avant de conclure sur H0 , il faut donc avoir une idĂ©e de la puissance du test employĂ© (en particulier lorsque la p-value est peu supĂ©rieure au seuil α).
  • 59. 37. Calculer la puissance d’un test a posteriori Il existe un lien entre le seuil de rejet α du test statistique utilisĂ© (voir ïŹches 33 et 34), la puissance de ce test (voir ïŹche 36), la diïŹ€Ă©rence entre les Ă©chantillons pour la variable mesurĂ©e et la taille des Ă©chantillons. On peut donc dĂ©terminer – au moins approximativement – la puissance d’un test aprĂšs l’avoir rĂ©alisĂ©, car on connaĂźt tous les autres paramĂštres. Selon l’objectif de l’étude, la puissance Ă  atteindre n’est pas la mĂȘme. On considĂšre en eïŹ€et que lorsque l’objectif est de rejeter H0 (voir ïŹche 33), la puissance du test doit ĂȘtre d’au moins 80 % ; lorsque l’objectif est de ne pas rejeter H0 (voir ïŹche 33), la puissance doit ĂȘtre d’au moins 95 %. Dans R, la fonctions power() permet, pour quelques tests paramĂ©triques courants, de calculer leur puissance lorsque l’on connaĂźt tous les autres para- mĂštres. Lorsque l’on a choisi ou Ă©tĂ© contraint d’utiliser un test non paramĂ©- trique, on peut tout de mĂȘme estimer sa puissance. Celle-ci est vaut en eïŹ€et environ 95 % de la puissance du test paramĂ©trique Ă©quivalent. Toutes les fonctions dĂ©crites sont basĂ©es sur le mĂȘme principe : le para- mĂštre power doit avoir comme valeur NULL tandis que tous les autres doivent ĂȘtre ïŹxĂ©s. Toutes les fonctions considĂšrent que l’eïŹ€ectif est le mĂȘme dans les diïŹ€Ă©rents groupes Ă  comparer (on parle d’eïŹ€ectifs Ă©quilibrĂ©s). Il est fortement conseillĂ© de toujours prĂ©voir ses plans d’échantillonnage ou d’expĂ©rience de cette façon, ce qui (i) facilite l’analyse et (ii) permet d’utiliser la plupart des tests non paramĂ©triques, dont l’équilibre des eïŹ€ectifs est une condition. Cela dit, si les eïŹ€ectifs ne sont pas Ă©quilibrĂ©s, on peut tout de mĂȘme se faire une idĂ©e de la puissance du test employĂ© en utilisant comme eïŹ€ectif celui du plus petit des groupes comparĂ©s. Mieux vaut en eïŹ€et lĂ©gĂšrement sous-estimer la puissance d’un test pour conclure, que la sur-estimer. Comparaison d’une moyenne avec une valeur thĂ©orique (voir ïŹche 58) ou de deux moyennes (voir ïŹche 59) – test t de Student power.t.test(n,delta,sd,sig.level,power,type) avec : n : eïŹ€ectif de chaque groupe delta : diïŹ€Ă©rence entre la moyenne de l’échantillon et la moyenne thĂ©orique, ou entre les deux moyennes sd : Ă©cart-type (identique pour les deux Ă©chantillons dans le cas d’une compa- raison de 2 moyennes), dans l’unitĂ© des moyennes sig.level : seuil de rejet α utilisĂ© pour le test power : puissance du test (NULL) type : type de test ("one.sample" pour la comparaison d’une moyenne avec une valeur thĂ©orique, "two.sample" pour la comparaison de deux moyennes, "paired" pour la comparaison de deux moyennes en sĂ©ries appariĂ©es).
  • 60. Comparaison de plus de deux moyennes – analyse de variance Ă  un facteur (voir ïŹche 60) power.anova.test(groups,n,between.var,within.var,sig.level, power) avec : groups : nombre de modalitĂ©s Ă  comparer between.var : somme des carrĂ©s des Ă©carts intergroupe within.var : somme des carrĂ©s des Ă©carts intragroupe (identique pour toutes les modalitĂ©s). Comparaison de deux proportions – test du χ2 d’homogĂ©nĂ©itĂ© (voir ïŹche 54) power.prop.test(n,p1,p2,sig.level,power) avec p1, p2 : proportions observĂ©es. SigniïŹcativitĂ© d’un coeïŹƒcient de corrĂ©lation linĂ©aire de Pearson (voir ïŹche 65) Il est ici nĂ©cessaire de faire appel Ă  la fonction pwr.r.test() du package pwr : pwr.r.test(n,r,sig.level,power) avec r : coeïŹƒcient de corrĂ©lation observĂ©.
  • 61. 38. L’identiïŹcation et la suppression des donnĂ©es aber- rantes L’identiïŹcation des donnĂ©es aberrantes est une Ă©tape obligatoire de toute analyse statistique. Elle doit se faire avant tout visuellement, grĂące Ă  des graphes du type histogramme (voir ïŹche 13) ou boĂźtes Ă  moustaches (voir ïŹche 14). On peut Ă©galement s’aider du test de Grubbs pour repĂ©rer des donnĂ©es sinon aberrantes, du moins trĂšs diïŹ€Ă©rentes des autres. Utiliser pour cela la fonction grubbs.test() du package outliers : grubbs.test(serie) oĂč serie est un vecteur contenant la sĂ©rie de donnĂ©es. La fonction teste la valeur extrĂȘme de la sĂ©rie la plus Ă©loignĂ©e de la moyenne. Pour tester l’autre valeur extrĂȘme, ajouter l’argument opposite=TRUE. La suppression d’éventuelles donnĂ©es aberrantes est un point hautement plus dĂ©licat que leur simple identiïŹcation. Supprimer une ou plusieurs donnĂ©es aura nĂ©cessairement un eïŹ€et sur les analyses qui vont suivre, et cet eïŹ€et sera d’autant plus important que l’eïŹ€ectif de l’échantillon est faible. Il est donc tentant de supprimer les individus qui orientent les rĂ©sultats vers des conclusions inverses Ă  celles qui sont attendues. Il n’y a globalement que deux raisons qui doivent pousser Ă  Ă©liminer une donnĂ©e : – s’il y a manifestement eu une erreur technique dans la mesure ou la retranscription de la donnĂ©e (par exemple si l’appareil de mesure est dĂ©fectueux) – si la valeur de la mesure obtenue est biologiquement improbable pour la variable mesurĂ©e. En dehors de ces deux cas, il y a de grandes chances pour que la valeur « aberrante » soit simplement une singularitĂ© biologique de l’individu mesurĂ©. Cette singularitĂ© est l’expression de la variabilitĂ© naturelle de tout caractĂšre biologique, rien ne justiïŹe donc que l’individu soit supprimĂ© de l’étude. On notera donc en particulier qu’un rĂ©sultat signiïŹcatif du test de Grubbs (ou de tout autre test Ă©quivalent) ne doit pas nĂ©cessairement conduire Ă  l’élimi- nation de l’individu repĂ©rĂ© comme « aberrant », mais simplement Ă  s’intĂ©resser de plus prĂšs Ă  lui. Dans tous les cas, l’identiïŹcation et la suppression Ă©ventuelle de donnĂ©es aberrantes doit se faire avant tout autre analyse.
  • 62. 39. L’intervalle de conïŹance et l’erreur standard Intervalle de conïŹance d’une moyenne Petit eïŹ€ectif (< 30 individus) : utiliser le module « intervalle de conïŹance » du test de Mann - Whitney - Wilcoxon (test non paramĂ©trique qui calcule en fait l’intervalle de conïŹance de la mĂ©diane) : wilcox.test(serie,con- f.int=TRUE)$conf.int oĂč serie est un vecteur contenant la sĂ©rie de donnĂ©es. Si les conditions du test de Mann - Whitney - Wilcoxon sont rĂ©unies (voir ïŹche 59), mĂ©diane et moyenne sont proches. Grand eïŹ€ectif (> 30 individus) : utiliser le module « intervalle de conïŹance » du test t de Student (test paramĂ©trique) : t.test(serie)$conf.int. Erreur standard d’une moyenne Utiliser la fonction se() du package RVAideMemoire : se(serie). Intervalle de conïŹance d’une proportion Quel que soit l’eïŹ€ectif, utiliser le module « intervalle de conïŹance » du test binomial exact : binom.test(a,b)$conf.int oĂč a est le nombre d’indivi- dus de la catĂ©gorie d’intĂ©rĂȘt et b l’eïŹ€ectif total (ex : 9 femelles sur 25 individus). Intervalle de conïŹance de n’importe quoi Utiliser la fonction bootstrap() du package RVAideMemoire, qui est basĂ©e sur la technique du bootstrap : bootstrap(serie,function(x,i) mean(x[i] )). Dans cet exemple une moyenne est calculĂ©e, mais la fonction gĂšre des expressions bien plus complexes. La syntaxe particuliĂšre de cette fonction doit obĂ©ir Ă  deux rĂšgles : – l’argument utilisĂ© dans l’expression Ă  calculer (ici cette expression est mean(x[i])) doit ĂȘtre le mĂȘme que le 1er dĂ©clarĂ© Ă  function(). Ici cet argument est x – l’argument utilisĂ© dans l’expression Ă  calculer doit toujours ĂȘtre suivi du second dĂ©clarĂ© Ă  function() placĂ© entre crochets. Celui-ci est par dĂ©faut i, voir l’aide de la fonction boot() pour plus d’informations. Pour toutes ces fonctions, la prĂ©cision de l’intervalle de conïŹance peut ĂȘtre modiïŹĂ©e grĂące Ă  l’argument conf.level (par dĂ©faut conf.level=0.95, ce qui calcule l’intervalle de conïŹance Ă  95 %).
  • 63. 40. Tracer un diagramme en barres avec barres d’erreur L’exemple prĂ©sentĂ© ici traite de moyennes et de barres d’erreur reprĂ©sentant des erreurs standards. Il peut bien sĂ»r ĂȘtre adaptĂ© Ă  n’importe quelles valeurs. Un facteur L’étape prĂ©liminaire est de rassembler les moyennes (une par modalitĂ© du facteur) dans un vecteur moyennes (contenant les valeurs dans l’ordre du graphe, de gauche Ă  droite) et les erreurs standards (voir ïŹche 39) dans un vecteur erreurs (avec les valeurs dans le mĂȘme ordre que les moyennes). La procĂ©dure est ensuite la suivante : > abscisses<-barplot(moyennes) > segments(abscisses,moyennes-erreurs,abscisses,moyennes+erreu rs) > segments(abscisses-0.1,moyennes-erreurs,abscisses+0.1,moyenn es-erreurs) > segments(abscisses-0.1,moyennes+erreurs,abscisses+0.1,moyenn es+erreurs) Deux facteurs Moyennes et erreurs standards doivent ĂȘtre contenues dans des matrices. Ces matrices doivent avoir en lignes les modalitĂ©s du 2nd facteur et en colonnes celles du 1er facteur. La procĂ©dure est ensuite identique, il faut seulement ajouter l’argument beside=TRUE Ă  la fonction barplot(). L’argument names.arg=noms de la fonction barplot() ajoute ou modiïŹe le nom des barres (noms Ă©tant un vecteur contenant les noms de gauche Ă  droite), tandis que legend=TRUE ajoute une lĂ©gende dans le cas de deux facteurs.