2010-10-22 5 views
10

Disons que, nous calculer les moyennes des résultats des tests:Général - Existe-t-il un moyen de calculer une moyenne basée sur une moyenne existante et de nouveaux paramètres donnés pour la moyenne obtenue?

À partir Test Scores: 75, 80, 92, 64, 83, 99, 79

moyenne = 572/7 = 81,714 ...

Maintenant donné 81.714, y a-t-il un moyen d'ajouter un nouvel ensemble de résultats de test pour "étendre" cette moyenne si vous ne connaissez pas les résultats des tests initiaux?

Nouveau Test Scores: 66, 89, 71

moyenne = 226/3 = 75,333 ...

normale en moyenne: 798/10 = 79,8

J'ai essayé :

Avg = (OldAvg + sumOfNewScores)/(numOfNewScores + 1) 

(81.714 + 226)/(3 + 1) = 76.9285 

Avg = (OldAvg + NewAvg)/2 

(81.714 + 79.8)/2 = 80.77 

Et ni l'un ni l'autre n'indique la moyenne exacte que cela «devrait» être. Est-il mathématiquement possible de le faire, étant donné que vous ne connaissez pas les valeurs initiales?

Répondre

19

Vous devez connaître le nombre de scores de test dans le jeu original et l'ancienne moyenne:

newAve = ((oldAve*oldNumPoints) + x)/(oldNumPoints+1) 
4

Dites, vous avez 2 blocs de notes:

1st: n scores with average = a1 
2nd: m scores with average = a2 

que la moyenne des scores totaux égal à:

a1*(1.0*n/(m+n))+a2*(1.0*m/(m+n)) 

Si vous voulez juste ajouter 1 note (a2) à la formule existante de jeu devient

a1*(n/(n+1))+ a2/(n+1) 
2

L'approche standard consiste à stocker le compte et la somme des valeurs.

Ils peuvent être mis à jour facilement, et à partir d'eux la moyenne peut être calculée sans perte de précision.