タグ: AVERAGE

  • AVERAGE関数の使い方|平均が想定と違うときの原因

    AVERAGEは、指定した範囲の平均値を求める関数です。

    書き方は単純ですが、空欄と0の扱いを知らないと結果がずれます。この記事ではそこを中心に扱います。

    書式

    =AVERAGE(範囲1, [範囲2], ...)

    基本の使い方

    A
    1 80
    2 90
    3 70
    =AVERAGE(A1:A3)   → 80

    離れた範囲もまとめて指定できます。

    =AVERAGE(A1:A10, C1:C10)

    空欄と0の違い

    ここが最も重要です。

    A
    1 80
    2 (空欄)
    3 70
    =AVERAGE(A1:A3)   → 75

    空欄は「無かったこと」として扱われます。 2件で割られて75です。

    一方、A2に 0 が入っていると結果が変わります。

    (A2 = 0 の場合)
    =AVERAGE(A1:A3)   → 50

    0は1件として数えられます。 3件で割られて50です。

    「未回答」を空欄にするか0にするかで、平均が大きく変わります。未入力は空欄のままにしておくのが原則です。0を入れてしまうと、回答した人の平均が下がります。

    数式が返した空文字に注意

    =IF(A2="", "", A2*1.1)

    このような数式の結果は、見た目は空欄ですが文字列です。 AVERAGEは文字列を無視するので、この場合は空欄と同じ扱いになります。

    ただし、Excelでは範囲によってエラーになることがあります。安全に書くなら AVERAGEIF を使ってください。

    =AVERAGEIF(A:A, "<>")

    想定と合わない原因

    1. 数値が文字列になっている

    最も多い原因です。 文字列は無視されるので、その分だけ件数が減り、平均がずれます。

    確認する:

    =COUNT(A2:A100)

    COUNT が行数より少なければ文字列が混ざっています。セルが左寄せになっていないか見てください。

    2. 0が入っている

    上で書いた通りです。未入力に0を入れていないか確認してください。

    3. 非表示の行も含まれている

    AVERAGEはフィルタで隠れた行も計算に入れます。 表示中のデータだけで平均を出したいなら SUBTOTAL を使ってください。

    =SUBTOTAL(101, A2:A100)

    101 は「平均、非表示の行を除く」という意味です。

    4. 外れ値に引っ張られている

    平均は外れ値の影響を強く受けます。1件だけ極端な値があると、全体の平均が実感とずれます。

    この場合は中央値を見てください。

    =MEDIAN(A2:A100)

    平均と中央値が大きく離れていたら、分布が偏っているサインです。売上や年収のように偏りが出やすいデータでは、中央値のほうが実態を表すことが多くなります。

    両方を並べて出しておくのが実務的です。

    条件付きの平均

    条件を付けるなら AVERAGEIF / AVERAGEIFS を使います。

    =AVERAGEIF(B:B, "東京", C:C)
    =AVERAGEIFS(C:C, B:B, "東京", D:D, ">=1000")

    エラーが混ざっているとき

    範囲内に #N/A などがあると、AVERAGEもエラーになります。元のエラーを潰すのが基本です。

    =IFERROR(元の数式, "")

    "" を返せばAVERAGEは無視します。0 を返すと平均が下がるので、ここは "" にしてください。

    Excelとの違い

    AVERAGE・AVERAGEIF・AVERAGEIFS・MEDIAN はすべて共通です。書式も挙動も同じです。

    Excelには AGGREGATE(エラーを無視して集計)がありますが、スプレッドシートにはありません。代わりに QUERYFILTER を使います。

    =AVERAGE(FILTER(C:C, B:B="東京"))

    まとめ

    • – 書式は =AVERAGE(範囲)
    • 空欄は無視、0は1件として数える。未入力に0を入れない
    • – 文字列は無視されるので、混ざっていると平均がずれる
    • – フィルタ中の平均は SUBTOTAL
    • 平均と中央値を並べて見ると、分布の偏りに気づける

    関連する関数

    • AVERAGEIF — 条件に合うものだけ平均
    • SUM — 合計。文字列化の問題も同じ
    • COUNT — 文字列化の検出に使う
    • SUBTOTAL — フィルタで隠れた行を除く集計
    • 関数一覧に戻る