手元に数万行のログがあっても、生データを眺めて意思決定できる人はいません。
記述統計は、大量のデータを「平均」「ばらつき」「分布の形」といった少数の数値や図に圧縮し、データの輪郭を一目で掴むための道具立てです。本稿では、記述統計が何をする技術なのか、推測統計とどこで線を引くのか、そしてSQL・BigQuery・Excel での集計操作がそのまま記述統計に対応していることを確認します。
記述統計(descriptive statistics)とは、観測されたデータの特徴を、要約された数値や図表によって記述する一連の手法を指します。
目的は単純で、そのデータが「どのあたりに集まり、どれくらい散らばり、どんな形をしているか」を、人間が把握できる粒度まで縮約することにあります。たとえば 30 万件の購入ログがあるとき、1 件ずつ金額を読んでも全体像は分かりません。
ですが「平均購入額は 4,200 円」「中央値は 2,980 円」「最高額は 48 万円」と要約すれば、分布が高額側に裾を引いていること、平均が一部の高額購入に引っ張られていることまで瞬時に読み取れます。これが記述統計の仕事です。生データという情報の塊から、判断に使える特徴量を抽出する操作だと捉えるとよいでしょう。
記述統計の要約は、大きく 2 つの軸に整理できます。ひとつはデータがどこに集まるかを表す「中心の指標」(代表値)で、平均値・中央値・最頻値がこれにあたります。
もうひとつはデータがどれだけ散らばっているかを表す「ばらつきの指標」で、分散・標準偏差・四分位範囲などが該当します。この 2 軸は補完関係にあります。中心だけを見ても、その値の周りにデータが密集しているのか広く散っているのかは分かりません。
「平均 50 点」というクラスが、全員ほぼ 50 点なのか、0 点と 100 点が半々なのかは、ばらつきを見て初めて区別できます。中心とばらつきは常にセットで読む——これが記述統計を使ううえでの最初の原則です。それぞれの指標の計算方法と使い分けは、本カテゴリの個別記事で扱います。
中心とばらつきに加えて、分布の形そのものも要約の対象になります。データが左右対称か、片側に裾を引いているか(歪度)、中心に尖っているか平坦か(尖度)といった形の情報は、平均や標準偏差の解釈を左右します。形を最も直感的に捉える手段がヒストグラムであり、数値による要約と図による要約は対になっています。
統計学はしばしば「記述統計」と「推測統計」に大別されます。両者の違いは、手元のデータそのものを語るのか、その背後にある未知の集団を語るのかという一点に集約されます。
| 記述統計 | 推測統計 | |
|---|---|---|
| 対象 | 手元にあるデータそのもの | データの背後にある母集団(未観測を含む) |
| 問い | このデータはどんな特徴か | この標本から母集団について何がいえるか |
| 典型的な出力 | 平均・標準偏差・ヒストグラム | 信頼区間・仮説検定・p値 |
| 不確実性 | 扱わない(あるデータを記述するだけ) | 扱う(推定には誤差が伴う) |
要点は、記述統計は「集めたデータがすべて」という立場で完結するということです。100 人にアンケートを取って平均満足度を出すなら、その 100 人の平均は誤差なく確定します。
一方、その 100 人から「全顧客の満足度」を推し量ろうとした瞬間、話は推測統計に移ります。手元の 100 人は全顧客という母集団からの一部(標本)にすぎず、そこには必ず誤差が伴うからです。
出した数値を「このデータについての事実」として述べているなら記述統計、「まだ見ていないデータや全体について」述べた瞬間に推測統計に入っています。集計と推定の境目は、母集団に言及するかどうかで引かれます。
実務では、この 2 つは段階として連続しています。まず記述統計でデータの素性を掴み、異常や偏りがないかを確認したうえで、必要なら推測統計に進みます。
記述を飛ばして検定に走ると、分布の歪みや外れ値を見落としたまま誤った結論を出しかねません。記述統計はあらゆる分析の前段にある土台だと考えてよいでしょう。推測統計の詳細は該当カテゴリの記事に譲ります。
記述統計を「特別な統計手法」と身構える必要はありません。日常的に書いている集計クエリや表計算の関数は、その大半が記述統計の実装そのものです。
データを要約する操作に名前を付けたものが記述統計だ、と捉えると腑に落ちます。
標準的な SQL の集計関数は、中心とばらつきの指標に素直に対応します。1 本のクエリで主要な要約値をまとめて取得できます。以下のコードは PostgreSQL / BigQuery 系の SQL(標準 SQL 準拠)を前提としています。
SQL — 1テーブルの要約値を一括取得
-- 購入ログを1クエリで要約する
SELECT
COUNT(*) AS n, -- 件数
AVG(amount) AS mean, -- 平均(中心)
MIN(amount) AS min_val, -- 最小
MAX(amount) AS max_val, -- 最大
STDDEV_SAMP(amount) AS sd -- 標準偏差(ばらつき)
FROM purchases;AVG が中心、STDDEV_SAMP がばらつき、MIN / MAX が範囲の端を返します。これだけでデータの輪郭は概ね掴めます。カテゴリ別に見たいなら GROUP BY を足せば、セグメントごとの要約に展開できます。
標準偏差・分散の関数名は方言差があります。
標本標準偏差は PostgreSQL / BigQuery ではSTDDEV_SAMP(母標準偏差は STDDEV_POP )ですが、SQL Server では STDEV(標本)/ STDEVP(母集団)を使います。集計の意味は同じでも関数名が異なる点に注意してください。
中央値や四分位のような分位点は、BigQuery でも PERCENTILE_CONT で厳密に求められます。ただしこれはウィンドウ関数のため、大規模データでは計算コストが高くなりがちです。
そこで BigQuery には、集計関数として高速に動作する近似分位関数 APPROX_QUANTILES が用意されています。厳密な分位点が必要ならPERCENTILE_CONT、GA4 エクスポートのような巨大テーブルを手早く要約したいならAPPROX_QUANTILES 、という使い分けになります。
BigQuery — 中央値と四分位を近似分位関数で求める
-- amount を100分割し、25/50/75パーセンタイル点を取得
SELECT
APPROX_QUANTILES(amount, 100)[OFFSET(25)] AS q1,
APPROX_QUANTILES(amount, 100)[OFFSET(50)] AS median,
APPROX_QUANTILES(amount, 100)[OFFSET(75)] AS q3
FROM purchases;[OFFSET(50)] が中央値にあたります。平均( AVG )と中央値を併記しておくと、両者が大きく離れているときに分布の歪みを察知できます——これは記述統計を実務で使ううえで効く小さな定石です。
Excel なら関数が一対一で対応します。中心は AVERAGE / MEDIAN 、ばらつきは STDEV.S 、最頻値はMODE.SNGL です。
カテゴリ別の要約はピボットテーブルが最速で、ドラッグ操作だけでセグメント別の平均・件数を一覧化できます。少量データの探索や、クエリ結果を貼り付けての最終確認に向いています。
| 要約したい特徴 | SQL | BigQuery | Excel |
|---|---|---|---|
| 件数 | COUNT(*) | COUNT(*) | COUNT |
| 平均(中心) | AVG() | AVG() | AVERAGE |
| 中央値 | PERCENTILE_CONT | APPROX_QUANTILES (厳密値はPERCENTILE_CONT ) | MEDIAN |
| ばらつき | STDDEV_SAMP() | STDDEV_SAMP() | STDEV.S |
| 最小・最大 | MIN() / MAX() | MIN() / MAX() | MIN / MAX |
新しいテーブルを触るとき、まず上記の要約クエリを 1 本投げて件数・平均・標準偏差・最小最大を眺めます。
これだけで、桁外れの外れ値、想定外の NULL、分布の偏りといった「データの素性」が見えてきます。本格的な分析の前に必ず通すべき最初のステップです。
記述統計とは、大量のデータを中心・ばらつき・分布の形といった少数の特徴に縮約し、データの輪郭を把握する技術です。手元のデータそのものを誤差なく語る点で、母集団を推し量る推測統計とは役割が分かれます。
そして日々書いている AVG や STDDEV 、APPROX_QUANTILES といった集計はすべて記述統計の実装であり、特別な道具ではありません。あらゆる分析は、まずデータを要約して素性を掴むこの一歩から始まります。