2010-10-22 6 views
10

consente di dire, stiamo calcolando le medie dei punteggi dei test:Generale - C'è un modo per calcolare una media basata su una media esistente e dati nuovi parametri per la media risultante?

partire punteggi dei test: 75, 80, 92, 64, 83, 99, 79

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

Ora dato 81.714, c'è un modo per aggiungere una nuova serie di punteggi dei test per "estendere" questa media se non si conoscono i punteggi dei test iniziali?

Nuovo punteggi dei test: 66, 89, 71

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

normale media sarebbe: 798/10 = 79,8

ho provato :

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

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

Avg = (OldAvg + NewAvg)/2 

(81.714 + 79.8)/2 = 80.77 

E nessuno si avvicina alla media esatta che "dovrebbe" essere. È matematicamente possibile farlo considerando che non conosci i valori iniziali?

risposta

19

Dovete conoscere il numero di punteggi dei test nella serie originale e il vecchio media:

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

Say, avete 2 blocchi di punteggi:

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

poi media dei punteggi totali uguale:

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

Nel caso in cui si desidera solo aggiungere 1 punteggio (a2) per set formula esistente diventa

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

L'approccio standard è quello di memorizzare il conteggio e la somma dei valori.

Possono essere aggiornati facilmente e da questi la media può essere calcolata senza perdita di precisione.

Problemi correlati