Mesures de dispersion

GW-Basic, utilisé par PC-Basic

Programme avec Texte Seulement

PC-BASIC

Si vous êtes familier avec la discipline mathématique des statistiques, alors vous savez que lors de l'examen d'un ensemble de données, vous souhaiterez mesurer certaines choses, telles que sa moyenne et sa médiane (les mesures de la tendance centrale ou les mesures du centre de les données), ainsi que sa variance et son écart-type (les mesures de dispersion, ou mesures de la propagation des données).

Concentrons-nous sur ce dernier : quantifier la répartition d'un ensemble de données.

Pour obtenir une mesure de dispersion, il peut sembler plus intuitif de se procurer l'écart absolu moyen: la moyenne de toutes les distances des points de données à la moyenne. Ainsi, il est calculé comme suit:

Les barres absolues sont présentes puisque la distance ne peut jamais être négative ; ainsi, le plus petit écart absolu moyen qui puisse être égal à zéro, uniquement si toutes les observations de l'ensemble de données sont identiques.

Bien qu'intuitif, l'écart absolu moyen n'est pas une mesure couramment utilisée en statistique car prendre une valeur absolue n'est pas une opération algébrique - contrairement, par exemple, à l'addition, à la prise de racines et à l'élévation aux puissances - et cela pose des problèmes avec des méthodes statistiques plus avancées.

Au lieu de l'écart absolu moyen, l'écart type est utilisé (avec la variance, qui est l'écart type au carré). La formule de l'écart type est similaire à l'absolu moyen, mais sans les valeurs absolues.

En gros, l'écart type vous donne la distance moyenne de tous les points de données à la moyenne. Ainsi, l'écart type et le l'écart absolu moyen seront proportionnels, mais généralement pas les mêmes ; d'où le "grosso modo__"

Le dénominateur du calcul de l'écart type est n-1, appelé en statistique "n-1 degrés de liberté", car il y a en réalité n-1 (et non n) données indépendantes puisque les écarts à la moyenne s'additionnent toujours à zéro.

Lorsque vous exécutez SPREAD.BAS, il vous sera demandé combien d'éléments de données vous souhaitez entrer - la limite est de vingt.

Ensuite, il vous sera présenté non seulement avec les valeurs du l'écart absolu moyen, de la variance et de l'écart type de l'ensemble de données saisi, mais aussi les étapes que le programme a utilisées pour arriver aux calculs.

Un certain nombre de tableaux sont définis dans la première ligne du programme; chacun a de la place pour au plus vingt entrées. SPREAD.BAS s'appuie sur trois boucles : LOOP1 pour saisir l'ensemble de données, LOOP2 pour trouver la moyenne et LOOP3 pour calculer l'écart absolu moyen, la variance et l'écart type.

Pour ce qu'il fait - et sa portée est très étroite - il est difficile d'améliorer SPREAD.BAS, au-delà de permettre l'entrée d'ensembles de données plus volumineux.

Peut-être SPREAD.BAS pourrait constituer la base d'un logiciel statistique, qui pourrait permettre des calculs (et des manipulations) plus avancés d'ensembles de données, tels que la recherche de z-scores et d'étudiants t-scores et la valeurs p, ainsi que l'affichage de diagrammes à points ou de boîtes et le diagramme à boites et moustaches et le diagramme à tiges et à feuilles (deux des nombreuses contributions du statisticien John Tukey au domaine passionnant et toujours en plein essor des statistiques).

5 DIM NUMBERS(20):DIM DEVFM(20):DIM ABSDEV(20):DIM SQDEV(20)
10 KEY OFF:SCREEN 9:CLS
20 PRINT "CALCULER L'ÉCART ABSOLUE MOYENNE"
25 PRINT "LA VARIANCE ET L'ÉCART-TYPE":PRINT
30 SUMNUM=0:SUMDEV=0:SUMABS=0:SUMSQ=0
40 INPUT "COMBIEN DE POINTS DE DONNÉES (LE MAXIMUM EST DE 20)";COUNT
45 IF (COUNT<1 OR COUNT>20) THEN GOTO 40
50 FOR LOOP1=1 TO COUNT
60 PRINT "ENTRER AU POINT # ";LOOP1;
70 INPUT NUMBERS(LOOP1)
80 NEXT LOOP1
90 FOR LOOP2=1 TO COUNT
100 SUMNUM=SUMNUM+NUMBERS(LOOP2)
110 NEXT LOOP2
120 MEAN=SUMNUM/COUNT
130 PRINT "LA MOYENNE EST: ";MEAN
140 FOR LOOP3=1 TO COUNT
150 DEVFM(LOOP3)=NUMBERS(LOOP3)-MEAN
160 IF DEVFM(LOOP3)<0 THEN ABSDEV(LOOP3)=-1*DEVFM(LOOP3) ELSE ABSDEV(LOOP3)=DEVFM(LOOP3)
170 SQDEV(LOOP3)=(ABSDEV(LOOP3))^2
180 PRINT "#";LOOP3;":";NUMBERS(LOOP3);", DevFromMean=";DEVFM(LOOP3);
185 PRINT ", AbsDev= ";ABSDEV(LOOP3);", SqDev=";SQDEV(LOOP3)
190 SUMDEV=SUMDEV+DEVFM(LOOP3)
200 SUMABS=SUMABS+ABSDEV(LOOP3)
210 SUMSQ=SUMSQ+SQDEV(LOOP3)
220 NEXT LOOP3
230 PRINT:PRINT "Somme de: DevFromMean=";SUMDEV;", AbsDev=";SUMABS;", SqDev= ";SUMSQ
240 PRINT:PRINT "L'écart absolu moyen est: ";SUMABS/COUNT
250 PRINT "L'écart est: ";(SUMSQ/(COUNT-1))
260 PRINT "L'écart type est: ";SQR(SUMSQ/(COUNT-1))
270 PRINT:INPUT "Un autre? O/N";I$
280 IF I$="O" OR I$="o" THEN GOTO 10
285 IF I$="N" OR I$="n" THEN END
290 GOTO 270

 

 

 

 

 

 

 

Recherche personnalisée