Page 1 sur 1

Statistiques à deux variables

MessagePublié: 12 Fév 2011 16:23
par Joffrey
Bonjour à tous,

je me permets de relancer le sujet des statistiques pour poster une petite macro Reg2Var
Code: Tout sélectionner
{Reg2Var = Reg2Var(L1,L2,choix de la droite d'ajustement)}
$L1:=%1, $L2:=%2,
// calcul des moyennes de X et de Y
$Xbar:=moy(L1), $Ybar:=moy(L2),
// nombre d element dans X et dans Y
$N:=Nops(L1),
// Nuage de points
for k from 1 to N do Point(L1[k]+L2[k]*i) od,
if %3=1 then // Droite de regression  de y en x
        $G:=Xbar+Ybar*i, // Point moyen
        LabelDot(G,"$G$","S",1),
        $L3:=for k from 1 to N do L1[k]-Xbar od,
        $L4:=for k from 1 to N do L2[k]-Ybar od,
        $L5:=for k from 1 to N do L3[k]^2 od,
        $L6:=for k from 1 to N do L3[k]*L4[k] od,
        $a:=sum(L6)/sum(L5),
        Droite(a,-1,a*Xbar-Ybar),
elif %3=2 then // Droite de Mayer
     G1:=moy(Copy(L1,1,N/2))+moy(Copy(L2,1,N/2))*i,
     G2:=moy(Copy(L1,N/2+1,N/2))+moy(Copy(L2,N/2+1,N/2))*i,
     LabelDot(G1,"$G_1$","S",1),
     LabelDot(G2,"$G_2$","S",1),
     Droite(G1,G2),
else // Droite des points extremes
     Droite(L1[1]+L2[1]*i, L1[N]+L2[N]*i)
fi


qui me permet de représenter :

- la droite de régression de y en x :
Code: Tout sélectionner
[
Fenetre(-0.5+8*i, 7.5-0.5*i, 1+i),
Marges(0,0,0,0),
DotStyle:=dot, DotScale:=1.5,
Arrows:=1, Axes(0,1+i,0), Arrows:=0,
LabelDot(0,"$0$","SO"),
Reg2Var([1,2,3,4,5,6,7],
        [1.7,2.4,2,3.8,4.7,5.2,7.2],1),
]


Reg2Var_type1.png
Reg2Var_type1.png (8 Kio) Consulté 7949 fois


- la droite de Mayer
Code: Tout sélectionner
[
Fenetre(-0.5+8*i, 7.5-0.5*i, 1+i),
Marges(0,0,0,0),
DotStyle:=dot, DotScale:=1.5,
Arrows:=1, Axes(0,1+i,0), Arrows:=0,
LabelDot(0,"$0$","SO"),
Reg2Var([1,2,3,4,5,6,7],
        [1.7,2.4,2,3.8,4.7,5.2,7.2],2),
]


Reg2Var_type2.png
Reg2Var_type2.png (8.4 Kio) Consulté 7949 fois


- le droite des points extrêmes
Code: Tout sélectionner
[
Fenetre(-0.5+8*i, 7.5-0.5*i, 1+i),
Marges(0,0,0,0),
DotStyle:=dot, DotScale:=1.5,
Arrows:=1, Axes(0,1+i,0), Arrows:=0,
LabelDot(0,"$0$","SO"),
Reg2Var([1,2,3,4,5,6,7],
        [1.7,2.4,2,3.8,4.7,5.2,7.2],3),
]


Reg2Var_type3.png
Reg2Var_type3.png (7.78 Kio) Consulté 7949 fois



Je suis conscient des améliorations à apporter, mais c'est un début, dès que j'ai le temps, je m'y recolle.

Re: Statistiques à deux variables

MessagePublié: 12 Fév 2011 17:32
par P.Fradin
Merci Joffrey!

Re: Statistiques à deux variables

MessagePublié: 12 Fév 2011 19:21
par Jean-François
Bonjour à tous,
Joffrey a écrit:Je suis conscient des améliorations à apporter, mais c'est un début, dès que j'ai le temps, je m'y recolle.

C'est déjà bien.
Si toutefois tu as du temps pour faire une macro qui corrige les copies, je suis preneur ;) ;) ;) ;) ;)