Bonjour et désolé de vous déranger.
J'ai une Texas TI-89 et j'ai trouvé un programme pour effectuer le test Mann Whitney Wilcoxon (Rank Sum Test) (voilà une explication: http://www.jybaudot.fr/Inferentielle/wilcoxon.html . On doit être autre ordonner les valeurs de deux listes par ordre croissants (a et b), donner un rang a chaque valeur et faire la somme des rangs de la liste A (la plus courtes). Et ça je sais pas faire.
Cependant celui-là ne fonctionne pas (ou je n'arrive pas à le faire fonctionner).
Je tiens a préciser que j'ai des connaissances ultra basique en programmation (j'en fait juste pour faire des calcules simples mais long et où les erreurs se glissent facilement).
C'est pour l'épreuve de Biostatistique en première année de médecine qui n'est pas bouclable sans pleins de programmes pour faciliter les calculs.
J'ai fait des recherches sur plusieurs sites et j'ai trouvé celui là (en anglais): http://people.wku.edu/david.neal/s [...] nksum.html
Voilà le programme:
()
Prgm
ClrIO
Disp "1 alt. x<y","2 alt. x>y","3 alt. xy"
Input c
dist[1]»list1
dist[2]»list2
SortA list1 Ici la calculette me met Data Error
SortA list2
augment(list1,list2)»list3
SortA list3
dim(list1)»m
dim(list2)»n
For i,1,m+n
0»list4[i]
EndFor
list3»list6
augment(list3,{list3[1]-1})»list3
1»b
1»i
Lbl lbl1
While i<(m+n)
If list3[i]<list3[i+1]
Then
b»list4[i]
1+i»i
1+b»b
Goto lbl1
Else
1»j
b»s
Lbl lbl2
While list3[i]=list3[i+j]
s+b+j»s
1+j»j
Goto lbl2
EndWhile
s/j»t
For k,0,j-1
t»list4[i+k]
EndFor
i+j»i
b+j»b
Goto lbl1
EndIf
EndWhile
If i=m+n
Then
m+n»list4[i]
EndIf
1»i
0»s
0»j
Lbl lbl3
While iœm
Lbl lbl4
If list1[i]=list3[i+j]
Then
s+list4[i+j]»s
Else
1+j»j
Goto lbl4
EndIf
i+1»i
Goto lbl3
EndWhile
NewData dist,list1,list2,list6,list4
DelVar list6
(m+n)*(m+n+1)/2»t
m*(m+n+1)/2»u
§(m*n*(m+n+1)/12)»d
If int(s)=s
Then
s+.5»z
.50-s\nrmcdff(z,u,u,d)»l
s-.5»z
.50-s\nrmcdff(u,z,u,d)»r
Else
.50-s\nrmcdff(s,u,u,d)»l
.50-s\nrmcdff(u,s,u,d)»r
EndIf
ClrIO
Disp "expected 1st sum"
Disp .5*m*(m+n+1)
Disp "sum of ranks"
Disp {s,t-s}
Disp "p value"
If c=1
Then
Disp l
Else
If c=2
Then
Disp r
Else
Disp 2*min(l,r)
EndIf
EndIf
EndPrgm
Je comprends quasiment rien, j'ai mis les données dans dans matrice et list stat mais ça bloque toujours.
Merci d'avance pour ceux qui veulent bien m'aider.