20

たとえば、テスト スコアの平均を計算しているとします。

テストスコアの開始: 75、80、92、64、83、99、79

平均 = 572 / 7 = 81.714...

81.714 が与えられた場合、最初のテスト スコアがわからない場合、この平均を「拡張」するために新しいテスト スコアのセットを追加する方法はありますか?

新しいテストの点数: 66、89、71

平均 = 226 / 3 = 75.333...

通常の平均は次のようになります: 798 / 10 = 79.8

私はもう試した:

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

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

Avg = (OldAvg + NewAvg) / 2

(81.714 + 79.8) / 2 = 80.77

そして、どちらも「あるべき」正確な平均を出していません。初期値がわからないことを考慮して、これを行うことは数学的に可能ですか?

4

3 に答える 3

39

元のセットと古い平均のテスト スコアの数を知る必要があります。

newAve = ((oldAve*oldNumPoints) + x)/(oldNumPoints+1)
于 2010-10-22T16:17:24.083 に答える
6

たとえば、スコアのブロックが2つあるとします。

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

その場合、合計スコアの平均は次のようになります。

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

既存の設定式に1スコア(a2)を追加したい場合は、

a1*(n/(n+1))+ a2/(n+1)
于 2010-10-22T16:18:26.523 に答える
5

標準的なアプローチは、カウントと値の合計を格納することです。

それらは簡単に更新でき、それらから精度を失うことなく平均を計算できます。

于 2010-10-22T17:12:35.920 に答える