APPLICATION DES STATISTIQUES AUX DONNÉES GÉNOMIQUES
TD : APPLICATION DES STATISTIQUES AUX DONNÉES GÉNOMIQUES. Recherche parmi 300 000+ dissertationsPar m.sabrina26 • 3 Janvier 2016 • TD • 1 738 Mots (7 Pages) • 848 Vues
Sabrina MECHETTA[pic 1]
STID 2ème année
Module STAT211b
Devoir Maison
APPLICATION DES STATISTIQUES AUX DONNÉES GÉNOMIQUES
ET TESTS MULTIPLES
Pour M.MARTIN Pour le 16 décembre 2015
Exercice 1 : Loi des p-valeurs calculées sous H0 :
X=integer(length=900)
for (i in 1:length(X)) {
x=matrix(rnorm(300,0,1),nrow=300)
y=matrix(rnorm(300,0,1),nrow=300)
a=t.test(x,y,alternative="greater")
names(a)
X[i]=a$p.value
}
Représentation graphique :
par(mfrow=c(1,2))
hist(X, main="histogramme des p valeurs",prob=T)
hist(runif(900,0,1), main="histogramme d'une loi uniforme",prob=T)
En s’intéressant au représentations graphiques , ici les histogrammes, on voit qu'ils sont semblables. En effet, on peut voir que la densité augmente et diminue de la même manière que ce soit sur l'histogramme des p-valeurs issues de la simulation aléatoire sous l'hypothèse H0 et sur l'histogramme de la loi uniforme de la répartition des p-valeurs .
On peut donc dire que la loi des p-valeurs calculées sous une hypothèse H0 suit une loi uniforme.
[pic 2]
Exercice 2 : Correction des p-valeurs pour des tests multiples
1)
Conclusion :
Le programme simDM() permet donc de calculer le taux de faux positifs, c'est à dire le fait de rejeter à tord H0.
2)
Réalisation de 500 simulations avec la fonction simDM() et m0=400 :
X=integer(length=500)
for (i in 1:length(X)){
X[i]=simDM(m0 = 400)
}
mean(X)
On obtient un résultat de 0.02020845.
0,02020845 correspond à la p-valeur moyenne sous l'hypothèse H0 .
Pour α=0.05, celle p-valeur est inférieure à α donc on rejette H0 au niveau 5%.
3)
→ Pour m0=600 :
X=integer(length=500)
for (i in 1:length(X)){
X[i]=simDM(m0 = 600)
}
mean(X)
On obtient un résultat de 0.03093565.
Pour α=0.05, on a la p-valeur inférieur à α donc on rejette H0 au niveau 5%.
→ Avec m0=800 :
X=integer(length=500)
for (i in 1:length(X)){
X[i]=simDM(m0 = 800)
}
mean(X)
On obtient un résultat de 0.04060208.
Pour α=0.05, on a la p-valeur inférieur à α donc on rejette H0 au niveau 5%.
→ Avec m0=950 :
X=integer(length=500)
for (i in 1:length(X)){
X[i]=simDM(m0 = 950)
}
mean(X)
On obtient un résultat de 0.04690943.
Pour α=0.05, on a la p-valeur inférieur à α donc on rejette H0 au niveau 5%.
À la suite de ces simulations, on remarque que plus m0 augmente, plus la moyenne augmente. Cela s'explique par le fait que plus m0 est grand, moins m1 l'est. Or H0 est définit par m0 nombres issus de simulations aléatoires de loi normale . Donc, plus m0 est grand, plus les hypothèses H0 sont robustes et à l'inverse, l'hypothèse H1 l'est moins puisque cette hypothèse est définie sur la bases de m1 et que m1= 1000-m0. Plus m0 est grand, plus cela « affaiblis » H1 tout en renforcant l'hypothèse H0. Nous remarquerons également que lorsque m0=500, la moyenne s'approche de la moitié du niveau fixé ( 0.05 ) et que m0=m1. Dès que m0 dépasse 500, et donc que m0>m1, la moyenne est supérieur à 0.025.
Exercice 3 : Comparaison de la correction Bonferroni et Sidak
m : nombre de tests réalisés
p*S : la p-valeur ajustée pour la correction de Sidak et p*S=1-(1-p)m
p*B : la p-valeur ajustée pour la correction de Bonferroni et p*B=min(1,mp)
1) On suppose min(1,mp) = 1 .
On cherche à montrer qu'en supposant min(1,mp) = 1 , on a : p*S ≤ p*B ce qui revient à montrer :
1-(1-p)m ≤ min(1,mp) ↔ 1-(1-p)m ≤ 1
↔ -(1-p)m ≤ 0
↔ 0 ≤ (1-p)m
On sait que m est le nombre de test réalisé, donc il est forcément positif et supérieur ou égal à 1.
...