エクセルでテストの点数、商品の購入金額、作業時間などのデータを集計すると、数値のばらつきや中心となる範囲を確認したくなる場面があります。
そのときに役立つのが、データを一定の区間に分けて件数を数える度数分布表です。
度数とは、指定した条件や階級に当てはまるデータの個数を意味します。
ExcelではCOUNTIFS関数、FREQUENCY関数、ピボットテーブルなどを使い、元データから度数を効率よく求められます。
度数分布表を作る流れ
・元データを1列に整理する
・階級の下限値と上限値を決める
・COUNTIFS関数またはFREQUENCY関数で件数を集計する
・必要に応じて相対度数や累積度数、ヒストグラムを追加する
この記事では、1行目に見出しがある表を前提に、エクセルで度数を求める方法と度数分布表の作成手順を詳しく解説します。
数式をコピーして使えるよう、セル参照の考え方やつまずきやすい点も確認していきましょう。
COUNTIFS関数による度数分布表の作成
それではまず、COUNTIFS関数を使って階級ごとの度数を求める方法について解説していきます。
| A列 | B列 | C列 | D列 |
|---|---|---|---|
| 得点 | 階級下限 | 階級上限 | 度数 |
| 42 | 0 | 49 | 7 |
| 68 | 50 | 59 | 9 |
| 73 | 60 | 69 | 11 |
度数と階級の設定
度数分布表では、集計対象の値をそのまま並べるのではなく、近い値を一定の範囲ごとにまとめます。
この範囲を階級と呼び、たとえばテストの点数なら0点から49点、50点から59点、60点から69点というように設定します。
階級の幅は、データの量と確認したい細かさに合わせて決めます。
階級幅が小さすぎると表が細かくなりすぎ、大きすぎると分布の特徴が見えにくくなります。
得点データが0点から100点までなら、10点刻みは扱いやすい代表的な設定です。
元データはA列に入力し、A1には得点というヘッダー、A2以降には各人の得点が入力されているものとします。
B列には各階級の下限値、C列には上限値を入力します。
たとえばB2に0、C2に49、B3に50、C3に59と入力すれば、どの範囲を数えるのかが表から明確に分かります。
整数の得点を10点刻みで区分する場合、49と50のように階級の境目を連続させます。
小数を含むデータでは、0以上10未満、10以上20未満のように、上限値を含めるかどうかのルールを先に統一することが重要です。
COUNTIFS関数の数式
D2セルには、A列の得点がB2以上かつC2以下である件数を数える数式を入力します。
=COUNTIFS($A$2:$A$101,”>=”&B2,$A$2:$A$101,”<=”&C2)
COUNTIFS関数は、複数の条件をすべて満たすセルを数える関数です。
最初の$A$2:$A$101は集計対象の得点範囲です。
“>=”&B2はB2セルの値以上という条件であり、”<=”&C2はC2セルの値以下という条件を表します。
比較演算子を文字列として記載し、&記号でセル参照とつなぐことがCOUNTIFS関数の基本です。
得点が100件より多い場合は、$A$2:$A$101の末尾を実際の最終行に合わせて変更します。
また、空白セルが含まれていても、数値条件に一致しないため通常は度数に含まれません。
エラー値や文字列が混在している場合は、集計前にデータの内容を確認することが大切です。

数式のコピーと合計確認
D2セルに数式を入力したら、セル右下のフィルハンドルを下方向へドラッグし、各階級の度数を求めます。
集計範囲のA列は絶対参照にしているため、数式をコピーしても$A$2:$A$101は変化しません。
一方でB2とC2は相対参照なので、D3ではB3とC3を条件として使う形に自動で変わります。
集計対象範囲だけを絶対参照にする設定により、数式を効率よくコピーできます。
最後に度数の合計を確認するため、最終行の下にSUM関数を入力しましょう。
=SUM(D2:D11)
この合計が、元データの件数と一致していれば、すべてのデータをいずれかの階級に正しく分類できている可能性が高いと判断できます。
一致しない場合は、階級に空白の範囲がある、上限または下限の指定がずれている、元データに想定外の数値があるといった原因を確認します。
【操作のポイント】階級の境目となる値を二重に数えないよう、下限と上限の条件を統一してから数式をコピーします。
FREQUENCY関数による度数の一括集計
続いては、階級の上限値を基準に複数の度数をまとめて求めるFREQUENCY関数を確認していきます。
| A列 | F列 | G列 |
|---|---|---|
| 得点 | 階級上限 | 度数 |
| 42 | 49 | 7 |
| 68 | 59 | 9 |
| 73 | 69 | 11 |
FREQUENCY関数の役割
FREQUENCY関数は、数値データが指定した各区間に何個含まれるかを返す関数です。
度数分布表を作る目的に合った関数であり、連続した数値データを集計したい場合に便利です。
F列には49、59、69、79、89、100のように、各階級の上限値だけを小さい順に並べます。
この場合、49以下、50から59、60から69という順番で度数が求められます。
FREQUENCY関数では、階級の下限値を直接入力せず、上限値の並びから区間を判断します。
値は必ず昇順で入力してください。
上限値の順序が逆になっていたり、途中で小さい値に戻ったりすると、意図した集計結果になりません。
49、59、69と設定した場合、49以下の度数、50以上59以下の度数、60以上69以下の度数が順に返されます。
最後には、指定した最大階級より大きい値の件数も返される点を覚えておきましょう。
スピル対応Excelでの入力
Microsoft 365やExcel 2021以降では、FREQUENCY関数の結果が複数のセルへ自動展開されるスピル機能を利用できます。
G2セルを選択し、次の数式を入力します。
=FREQUENCY($A$2:$A$101,F2:F11)
Enterキーを押すと、G2から下方向に各階級の度数が表示されます。
さらに1行下には、F11の上限値より大きいデータの件数も表示されます。
スピル範囲に値が入力されていると結果を展開できず、スピルエラーになることがあります。
数式を入力する前に、G2より下の必要なセルが空白であることを確認しましょう。
元データの範囲をテーブル化している場合は、通常のセル範囲ではなくテーブル名と列名を参照する方法もあります。
ただし、最初は通常のセル参照で仕組みを理解しておくと、エラーの原因を特定しやすくなります。

旧バージョンでの配列数式
スピル機能がないExcelでは、FREQUENCY関数を配列数式として確定します。
上限値がF2からF11にある場合は、度数を表示するG2からG12までをあらかじめ選択します。
その状態で数式を入力し、Ctrlキー、Shiftキー、Enterキーを同時に押して確定します。
結果が一括で入力され、最後のG12には100点を超えるデータなど、最終階級を超えた件数が表示されます。
旧バージョンではEnterキーだけで確定すると、必要な複数セルに結果が表示されないことがあります。
なお、配列数式で入力した範囲は一部のセルだけを削除または編集しにくい仕様です。
修正する場合は、配列数式が入っている範囲全体を選択してから編集します。
【操作のポイント】FREQUENCY関数の上限値は昇順に並べ、結果の最終行に階級外のデータがないかも確認します。
相対度数と累積度数の計算
続いては、度数分布表をより読み取りやすくする相対度数と累積度数の計算方法を確認していきます。
| 階級 | 度数 | 相対度数 | 累積度数 |
|---|---|---|---|
| 0から49 | 7 | 7.0% | 7 |
| 50から59 | 9 | 9.0% | 16 |
| 60から69 | 11 | 11.0% | 27 |
相対度数の考え方
相対度数は、全体に対して各階級がどの程度の割合を占めるかを示す値です。
人数や件数が異なる複数のグループを比べるときは、単なる度数より相対度数のほうが比較しやすくなります。
たとえば100人中10人なら10パーセントですが、50人中10人なら20パーセントです。
相対度数を使うと、対象件数の違いに左右されず、分布の形を比較できます。
度数がD2からD11にあり、その合計がD12にある場合、E2には次の数式を入力します。
=D2/$D$12
数式を下へコピーした後、表示形式をパーセンテージに変更すると、割合として読みやすくなります。
$D$12を絶対参照にすることで、どの行でも全体件数を分母として計算できます。
累積度数と累積相対度数
累積度数は、最も小さい階級からその階級までの度数を順番に足し合わせた値です。
60点未満の人数や、ある金額以下の件数を確認したいときに役立ちます。
F2セルには最初の度数を参照する数式を入力します。
=D2
F3セルには、前行の累積度数に現在の度数を加える数式を入力します。
=F2+D3
この数式を下へコピーすると、階級が進むごとに件数が積み上がります。
最終行の累積度数は、度数合計と一致することが正常な結果の目安です。
相対度数を累積した累積相対度数は、最終的に原則100パーセントになります。

パーセンテージ表示と丸め誤差
相対度数の表示形式をパーセンテージにすると、小数点以下の桁数によって合計が99.9パーセントや100.1パーセントに見えることがあります。
これは表示上の丸めによるもので、計算値そのものが誤っているとは限りません。
たとえば3分の1を小数第1位まで表示すると33.3パーセントとなり、3つを足すと99.9パーセントになります。
表示値の合計だけでなく、数式バーに表示される計算値も確認する姿勢が大切です。
報告資料で合計を厳密に100パーセントと見せる必要がある場合は、最後の階級だけを100パーセントから前行までの合計を引く形で調整する方法もあります。
ただし、分析用の表では無理な調整よりも、丸めが発生していることを理解しておくほうが適切です。
【操作のポイント】相対度数は全体件数を絶対参照にし、累積度数の最終値が度数合計と一致するか確認します。
ヒストグラムによる度数分布の可視化
続いては、作成した度数分布表をヒストグラムで見やすく表現する方法を確認していきます。
| 階級 | 度数 | 棒のイメージ |
|---|---|---|
| 50から59 | 9 | ■■■■■■■■■ |
| 60から69 | 11 | ■■■■■■■■■■■ |
| 70から79 | 18 | ■■■■■■■■■■■■■■■■■■ |
ヒストグラム作成前の表準備
ヒストグラムは、横軸に数値の階級、縦軸に度数を配置し、データの分布を棒で表すグラフです。
70点台にデータが集中している、低い値側に裾が広がっているなど、表だけでは見つけにくい傾向を把握できます。
階級の幅が同じである場合、棒と棒の間を空けない表示がヒストグラムの基本です。
すでに作成した階級名と度数の列を使う場合は、通常の集合縦棒グラフを挿入し、要素の間隔を調整してヒストグラム風にします。
元データを直接選んでExcelの統計グラフ機能からヒストグラムを作る方法もあります。
ただし、任意の度数分布表と完全に同じ階級にしたいときは、表を作成してからグラフ化する方法が分かりやすいでしょう。
集合縦棒グラフの設定
階級名の列と度数の列を選択し、挿入タブから縦棒グラフの集合縦棒を選びます。
作成されたグラフの棒を右クリックし、データ系列の書式設定を開きます。
要素の間隔を0パーセントに近づけると、隣り合う棒が接してヒストグラムらしい見た目になります。
階級が連続する数値範囲であることを視覚的に示すため、棒の間隔を小さくする設定が有効です。
横軸のラベルは、50から59、60から69のように範囲が分かる表記にすると、読む人が迷いません。
縦軸には度数という軸タイトルを付け、グラフタイトルには得点の度数分布など、内容が伝わる名称を設定します。
分析に活かす読み取り方
ヒストグラムでは、最も高い棒の階級がデータの集中している範囲を示します。
左右がほぼ対称なら、平均値の周辺にデータが集まっている可能性があります。
一方で右側または左側に長く伸びる形なら、少数の大きな値または小さな値が分布に影響しているかもしれません。
グラフは結論を自動で出すものではなく、次に確認すべき点を見つけるための手がかりです。
たとえば低得点層が多い場合には、設問の難易度、学習時間、出題範囲などを追加で確認できます。
購買金額の分析なら、一部の高額購入が全体の売上を押し上げていないかを調べるきっかけになります。
【操作のポイント】度数分布表の階級幅とグラフの横軸表示をそろえ、棒の間隔を小さくして連続性を伝えます。
度数分布表で起こりやすいエラー
続いては、度数分布表を作成するときに起こりやすいエラーと確認方法を解説していきます。
| 確認項目 | よくある状態 | 確認内容 |
|---|---|---|
| 度数合計 | 元データ件数と違う | 階級の空白や重複 |
| FREQUENCY関数 | 想定外の値 | 上限値の昇順 |
| 表示形式 | 割合合計がずれる | 丸め誤差 |
階級の重複と空白
度数合計が元データの件数と一致しないときは、まず階級の境界を確認します。
0から50と50から59のように設定すると、50という値を二重に数える可能性があります。
反対に0から49、51から59のようにすると、50がどの階級にも入らず集計から漏れます。
整数データでは49の次を50にするよう、階級を切れ目なく連続させることが基本です。
小数データを扱う場合は、0以上10未満、10以上20未満という考え方を数式にも反映します。
COUNTIFS関数なら、上限側を”<“、下限側を”>=”にする設定が分かりやすいでしょう。
数値が文字列になっている状態
見た目は数字でも、セルに文字列として保存されていると、関数の集計結果が期待と異なる場合があります。
セルの左上に緑色の三角形が表示される、左寄せになっているといった状態は、文字列として保存されている可能性を示します。
エラー表示から数値に変換するか、VALUE関数を利用して数値化します。
集計前に数値の形式をそろえることは、正確な度数計算の前提です。
全角数字、前後の空白、単位付きの文字列も数値判定を妨げる原因になります。
必要に応じてTRIM関数やSUBSTITUTE関数でデータを整えましょう。
範囲指定と欠損値
数式の集計範囲に新しいデータ行が含まれていないと、追加分が度数に反映されません。
データが増える可能性がある場合は、十分な行数を含めた範囲を指定するか、Excelテーブルに変換して管理します。
また、空白は欠損値なのか、単に未入力なのかを区別する必要があります。
欠損値を0として扱うか、集計対象から除くかで分布の意味が変わります。
集計する前に、空白セルやエラーセルをどのように扱うのかを決め、表の注記にも残しておくと報告時に誤解を防げます。
【操作のポイント】度数合計と元データの件数を比較し、階級の境界、数値形式、集計範囲を順番に確認します。
まとめ エクセルで度数分布表を作成する方法(度数の求め方)
エクセルで度数を求めるには、データを階級に分け、各範囲に入る件数を数える度数分布表を作成します。
条件を細かく指定したい場合はCOUNTIFS関数が便利です。
上限値を基準に複数の階級を一括集計したい場合はFREQUENCY関数が役立ちます。
まずは階級を重複なく、空白なく設定することが正確な集計への近道です。
相対度数を追加すれば全体に対する割合を比較でき、累積度数を使えばある値以下の件数を確認できます。
さらにヒストグラムを作成すると、データの集中、ばらつき、偏りを直感的に把握しやすくなります。
実務で確認したい要点
・COUNTIFS関数では集計範囲を絶対参照にする
・FREQUENCY関数では階級上限を昇順に並べる
・度数合計と元データ件数が一致するか確認する
・相対度数とヒストグラムを加えて分析しやすくする
表を作った後も、数式の範囲、階級の境目、数値形式を確認することで、信頼できる分析結果につながります。