> Statistiques > Tests statistiques > Test t de Student
Test t de Student
Test t de Student (à appliquer pour tester si un échantillon gaussien a une moyenne différente d'une valeur ou pour tester si 2 échantillons gaussiens ont des moyennes différentes. Si la p-value est suffisamment faible, on peut rejeter l'hypothèse H0) :
- vec <- c(2.4, 2.5, 3.1, 1.9, 3.5); t.test(vec, mu = 2) : teste l'hypothèse H0 que l'échantillon a un moyenne égale à 2 (en supposant l'échantillon gaussien).
- vec1 <- c(2.4, 2.5, 3.1, 1.9, 3.5); vec2 <- c(7.3, 8.5, 7.6, 8.2); t.test(vec1, vec2) : teste l'hypothèse H0 que les 2 échantillons ont même moyenne (en supposant les 2 échantillons gaussiens, mais sans hypothèse sur la variance : test de Welch).
- vec1 <- c(2.4, 2.5, 3.1, 1.9, 3.5); vec2 <- c(7.3, 8.5, 7.6, 8.2); t.test(vec1, vec2, var.equal = TRUE) : teste l'hypothèse H0 que les 2 échantillons ont même moyenne (en supposant les 2 échantillons gaussiens et de même variance : vrai t-test).
- vec1 <- c(2.4, 2.1, 3.1, 1.9); vec2 <- c(3.3, 3.5, 4.6, 2.2); t.test(vec1, vec2, paired = TRUE) : fait un test apparié (paired t-test), par exemple pour des mesures répétées des mêmes individus (plus sensible).
- fr <- data.frame(v = c(2.4, 2.1, 3.1, 3.3, 3.5, 4.6), l = factor(c("a", "a", "a", "b", "b", "b"))); t.test(v ~ l, data = fr) : test à partir d'un data frame en utilisant une formule : teste ici si les valeurs pour "a" et les valeurs pour "b" ont une moyenne identique.
- Si vec <- c(2.4, 2.5, 3.1); tes <- t.test(vec, mu = 2), la valeur renvoyée est de classe htest et on peut accéder à ses valeurs, notamment :
- tes$p.value : la p-value.
- tes$parameter : le nombre de degrés de liberté.
- tes$conf.int : l'intervalle de confiance (à 95%, sinon, le modifier dans t.test avec le paramètre conf.level).
- tes$statistic : la statistique t.
Pairwise t-test :
- comparaison des valeurs d'une variable en fonction de groupes en faisant des comparaisons 2 à 2 et en corrigeant pour les tests multiples.
-
fr <- data.frame(var = c(10, 4, 5, 3, 3, 7, 2, 6, 2, 8, 5, 9, 5),
categ = factor(c("c", "a", "b", "a", "b", "b", "a", "b", "a", "c", "c", "c", "b")))
tes <- pairwise.t.test(fr$var, fr$categ)
le premier argument est la variable et le deuxième est la valeur du groupe.
- le résultat est un tableau de p-values pour les paires de groupes (de la clase pairwise.htest) :
Pairwise comparisons using t tests with pooled SD
data: fr$var and fr$categ
a b
b 0.0520 -
c 0.0027 0.0520
- accès à la matrice des p values : tes$p.value
- par défaut, la correction pour les tests multiples est de type holm. On peut avoir une correction plus conservative en faisant une simple correction de Bonferroni : pairwise.t.test(fr$var, fr$categ, p.adjust.method = "bonf")
Copyright Aymeric Duclert
programmer en R, tutoriel R, graphes en R