論文一覧に戻る 📚 用語集トップ 🗺 概念マップ
📚 用語解説
📚 用語解説
第1種の過誤
Type I Error
仮説検定
別称: Type I error / α誤り

🔖 キーワード索引

このページ内のセクションへ素早く飛べます(クリックで該当箇所へジャンプ):

💡 30秒結論📍 文脈🎨 直感📐 数式・定義🔬 数式を言葉で読み解く🧮 SSDSE実値計算🐍 Python実装⚠️ 落とし穴🌐 関連手法🔗 関連用語📚 関連グループ❓ FAQ

type 1 error」は統計データ分析の文脈で扱う重要概念のひとつ。 本ページでは「type 1 error」を取り巻く中核キーワードを以下にチップで一覧化する。 各キーワードは関連する概念・手法・道具立てを含み、 文献検索や学習計画の起点になる。

type 1 error統計分析SSDSE-B-2026前提条件適用範囲落とし穴関連手法Python 実装検証方法

これらのキーワードは「type 1 error の理解 → 適用 → 検証」のプロセスを構成する。 各章で詳しく解説する。

💡 30秒で分かる結論 — 第1種の過誤

🍰 まずはやさしく

もともと差がないのに、あると勘違いすることです。

正しい判断をするために使います。

スマホのアプリで、効果がないのにあると信じる例です。

この章では結論を短くまとめます。

💡 30秒で分かる結論

H₀が真なのに棄却してしまう誤り(偽陽性)

📍 あなたが今見ているもの

🍰 まずはやさしく

判定を間違える確率のことです。

データの分析でミスを防ぐために使います。

テストの結果がたまたま良かっただけの場合です。

この章では全体の流れを説明します。

通常 α = 0.05 に設定。 多重比較ではこれが膨らむ(family-wise error rate)。 「偽陽性 (False Positive)」とも呼ばれる。 規制当局・医学では特に厳しく管理。

本ページは 第1種の過誤(Type I Error) を、 ジャストインタイム型データサイエンス教育の文脈で 12 のセクションに分けて解説します。 上から順に読まなくても、 「🔖 キーワード索引」から必要箇所だけ拾い読みすることもできます。

📍 あなたが今見ているもの

p値が0.05を下回ったら「有意」と判定 — その「5%」が、 まさに第1種の過誤を犯す確率です。 統計検定のすべての出発点。

🎨 直感で掴む — 第1種の過誤とは何者か

🍰 まずはやさしく

無実の人を有罪にするような間違いです。

直感的に正しく理解するために使います。

部活で、練習法を変えても効果がなかった例です。

この章ではイメージを掴んで解説します。

第1種の過誤(Type I Error)は「本当は差がない/効果がないのに、 あると判定してしまうエラー」。 別名「偽陽性 (False Positive)」、 統計学では「無実の人を有罪にする」誤りに対応する。 確率 $\alpha$(有意水準、 通常 0.05)でコントロールする。

裁判の比喩で完全に理解する: 統計検定は法廷と同じ構造です。

立場真実:無罪 (H₀ 真)真実:有罪 (H₁ 真)
判決:無罪 (H₀ 採用)○ 正しい判断(特異度 = 1−α)× 第2種の過誤(β)「真犯人を見逃す」
判決:有罪 (H₀ 棄却)× 第1種の過誤(α)「冤罪」○ 正しい判断(検出力 = 1−β)

司法は「疑わしきは罰せず」で第1種を厳しく抑える(無罪推定)。 統計も同じ思想で α=0.05 と保守的に設定します。

SSDSE-B-2026 で第1種の過誤を体感する: 「東京都の合計特殊出生率 0.99 と全国平均 1.20 は本当に違うか?」を t 検定すると t = 2.5、 p = 0.013。 α=0.05 なら H₀(差は無い)を棄却するが、 実は たまたま 5% に当たった偶然の可能性が 0.013/0.05 = 26%。 これが第1種の過誤の確率の解釈です。 「100 本の論文で α=0.05 検定をすれば、 平均 5 本は本当は差が無いのに『有意』と報告してしまう」。

α の選び方の実例:

多重比較で α が膨らむ問題: 47 都道府県すべてを全国平均と比較すると、 47 回検定するので少なくとも 1 つで偽陽性が出る確率は $1 - (1-0.05)^{47} = 91\%$。 つまり ほぼ確実に「有意な県」が偽陽性で出る。 対策: Bonferroni 補正 (α/47 = 0.00106)、 FDR 制御(Benjamini-Hochberg)など。

第1種の過誤を間違って認識しないために: p = 0.04 は「H₀ が正しい確率」ではなく、「H₀ が正しいと仮定したときに、 観察されたかそれ以上極端なデータが得られる確率」です(頻度主義の定義)。 Bayes 因子や事後確率と混同しないよう注意。

🎮 触って理解する — αとβのトレードオフ

帰無分布 H₀(本当は差が無い世界)と対立分布 H₁(本当は差がある世界)を重ねて描いています。 検定統計量が判定閾値より右に出たら「H₀ を棄却(=差がある)」と判定する片側検定の模型です。 スライダーで閾値効果量(H₁ の中心)を動かし、 第1種の過誤 α(赤・偽陽性)第2種の過誤 β(紫・偽陰性)の面積がどう変わるかを体感してください。

グラフ上をクリック/ドラッグしても閾値を動かせます

第1種の過誤 α(偽陽性)
5.0%
第2種の過誤 β(偽陰性)
8.7%
検出力 1−β
91.3%

閾値を右へ動かすと α(偽陽性)は減りますが、 その分 β(見逃し)が増えます。

真実 × 判定の 2×2 表(面積と対応)

真実:H₀ が真
(本当は差が無い)
真実:H₁ が真
(本当は差がある)
判定:H₀ 採択
(差なし)
○ 真陰性
1−α = 95.0%
× 第2種の過誤(偽陰性)
β = 8.7%
判定:H₀ 棄却
(差あり)
× 第1種の過誤(偽陽性)
α = 5.0%
○ 真陽性(検出力)
1−β = 91.3%

※ 両分布とも標準偏差 1 の正規分布として面積を正規累積分布関数から厳密計算しています(片側検定の模式図)。 α と β は別々の分布の裾の面積なので合計が 1 になるとは限りません。

📖 もっと詳しく — 過誤・トレードオフ・実務コスト

第1種の過誤(Type I Error, 偽陽性)は「H₀ が真なのに棄却してしまう」誤り、 第2種の過誤(Type II Error, 偽陰性)は「H₁ が真なのに H₀ を採択してしまう」=見逃しの誤りです。 前者の確率が α、 後者の確率が β で、 検出力(statistical power)= 1−β が「本当にある効果を正しく拾える確率」になります。

αとβのトレードオフ:上のプレイグラウンドで確かめたとおり、 標本サイズと効果量を固定したまま閾値だけを厳しくすると(=棄却境界を右へ)、 α は下がりますが β は上がります。 「αを下げるほど見逃し(β)が増える」——これは同じデータ量では避けられない綱引きです。 両方同時に小さくしたいなら、 閾値ではなく標本サイズ n を増やして 2 つの分布の重なり自体を減らすのが正攻法です(分布が離れれば α も β も同時に下げられる)。

有意水準の選択:α をどこに置くかは分野の慣習と偽陽性コストで決まります(有意水準 のページ参照)。 心理・社会科学は 0.05、 臨床試験や経済学は 0.01、 素粒子物理は 5σ(≈ 3×10⁻⁷)と、 誤って「発見」と言った時の損失が大きいほど α を小さくします。 逆に探索的スクリーニングでは 0.10 まで緩めて取りこぼし(β)を抑えることもあります。

多重比較での α 増大多重比較 では検定を重ねるほど「どれか 1 つで偽陽性」の確率(family-wise error rate, FWER)が膨らみます。 独立な k 回の検定なら FWER = 1−(1−α)ᵏ で、 47 都道府県を一斉検定すれば α=0.05 でも 1−0.95⁴⁷ ≈ 91% とほぼ確実に偽陽性が紛れ込みます。 対策は Bonferroni 補正(α/k に厳格化)や、 FDR(偽発見率)を制御する Benjamini-Hochberg 法です。

偽陽性/偽陰性の実務コスト:どちらの過誤が痛いかは用途次第です。 偽陽性(False Positive) が重いのは、 健常者を「陽性」と誤診して不要な精密検査・投薬・不安を生む場面や、 効かない新薬を「効く」と承認してしまう場面。 一方 偽陰性(False Negative) が重いのは、 がんの見逃し・不正取引の検知漏れ・重大な安全上の欠陥の看過など、 見逃しが致命傷になる場面です。 「α を一律に 0.05」と機械的に決める前に、 どちらの誤りが自分の問題でより高くつくかを先に考えるのが実務の鉄則です。

📐 数式・定義

🍰 まずはやさしく

間違いが起きる確率を数式で表したものです。

厳密なルールを決めるために使います。

買い物で、安くなっていないのに安いと信じる例です。

この章では定義や数式を詳しく読みます。

第1種の過誤確率 $\alpha$ は有意水準そのもの:

$$ \alpha = P(\text{reject } H_0 \mid H_0 \text{ true}) $$

多重比較で $k$ 個の検定を独立に行うと、 family-wise error rate は $1 - (1-\alpha)^k$ に膨らむ。

📐 定義/数式

第1種の過誤Type I Error):H₀が真なのに棄却してしまう誤り(偽陽性)

同義・関連語:Type I error, α誤り

【第1種の過誤の確率】
$$ \alpha = P(\text{H}_0 \text{ を棄却} \mid \text{H}_0 \text{ が真}) = P(\text{偽陽性}) $$
通常 $\alpha = 0.05$(5%)または $0.01$(1%)に設定。

🔬 数式・定義を「言葉」で読み解く

先ほどの数式・定義に出てきた記号や概念を、 一つずつ確認します。 とくに 第1種の過誤 の文脈で意味を取り違えやすい部分を強調します。

記号意味と注意点
$\bar{x}$標本平均。 $\bar{x} = \frac{1}{n}\sum_{i=1}^n x_i$
$\sigma$(または $s$)標準偏差(または標本標準偏差)。 ばらつきの代表指標
$n$標本サイズ(観測数)
$p$p値、 または比率。 文脈で意味が変わる
$\alpha$有意水準(通常 0.05)
$H_0, H_1$帰無仮説と対立仮説

記号は手法ごとに少しずつ意味が違うため、 論文・教科書を読むたびに『この本ではこの記号を何の意味で使っているか』を最初に確認するのが鉄則です。 とくに 第1種の過誤 関連の文献では、 ${\sigma}^2$(分散)と $s^2$(標本分散)の区別、 $n$ と $N$(標本サイズ vs 母集団サイズ)の混同に注意。

🔬 記号・用語の読み解き

記号意味
$\alpha$第1種の過誤の確率=有意水準
$\beta$第2種の過誤の確率(偽陰性)
$1-\beta$検出力(パワー)
FWER複数検定全体での第1種過誤率

🔬 詳細な解説(深掘り)

概念の本質

第1種の過誤(Type I Error)は、 単に用語の定義を覚えるだけでは本当には理解できません。 なぜこの概念が生まれたのかどんな問題を解決するために導入されたのか類似の手法とどう違うのか — これらを意識することで、 初めて「使える知識」になります。

数式や Python コードはあくまで 道具。 道具の使い方を覚える前に、 その道具で何をしたいか(目的) を明確にすることが、 データサイエンス学習の鉄則です。

他の概念との関係

この用語は、 単独で存在するわけではなく、 多くの関連概念とネットワークを形成しています。 上の「関連用語」セクションに挙げたリンク先を1つずつ辿ると、 全体像が見えてきます。 特に:

実務で気をつけるポイント

理論を学ぶことと、 実務で使えることは別物です。 公的統計(SSDSE、 e-Stat 等)の実データで実装・実験することで、 教科書だけでは見えない罠 に気付けます。 たとえば:

これらは 第1種の過誤 に限った話ではなく、 データサイエンス全般に共通する作法です。 「落とし穴」セクションの内容と合わせて、 自分なりのチェックリストを作るとよいでしょう。

📊 評価・検証の視点

第1種の過誤 を使った分析の 正しさを担保する ためには、 以下の観点で検証するのが定番です。

確認する点第1種の過誤 で何を見るか
1. 単位とスケールの混同%・件数・千人・百万円 — 単位を明示せずに比較すると、 まったく違うものを比べてしまう。 グラフの軸ラベル、 表のヘッダで単位を必ず示す。
2. 時点のズレ2020 年と 2023 年のデータを混ぜると、 コロナ前後の構造変化を見落とす。 「2023年データ」と明記し、 横断データなら時点を統一する。
3. 欠損値の暗黙除去NaN を含む行を dropna() で除いた瞬間、 47県の標本が 30 県に減ることもある。 何件落としたか必ず記録し、 結果に与える影響を考える。
4. 外れ値の無視と過剰除去東京・大阪・沖縄など特徴ある県は『外れ値』扱いされがちだが、 実は本質的な情報を含む。 IQR で機械的に切るのではなく、 ドメイン知識で判断。
5. 相関と因果の混同2 変数が相関していても、 一方が他方の原因とは限らない。 共通の交絡因子(人口、 産業構造、 気候)を疑う。 因果には RCT・差の差・操作変数法など別の道具が必要。
6. 有意性と効果量の混同p < 0.05 は『偶然では説明しにくい』だけで『効果が大きい』ではない。 効果量(Cohen's d、 オッズ比など)と信頼区間を必ず併記する。
再現性同じデータ・同じコードで同じ結果が出るか。このページの ▶ 実行ボタンで確かめられます

💼 業界別の使われ方

第1種の過誤 は分野横断で活躍する概念です。 業界別に見ると以下のような使われ方があります。

🏥 医療・ヘルスケア
疾病予測、 診断支援、 治療効果の評価、 公衆衛生指標の分析(高齢化率、 罹患率、 医療費等)
🏛️ 行政・公共政策
EBPM(エビデンスに基づく政策立案)、 地域経済分析、 RESAS/e-Stat の活用、 政策効果測定
🏪 マーケティング・小売
顧客分析、 需要予測、 価格弾力性、 RFM分析、 A/Bテスト、 LTV予測
🏭 製造・品質管理
品質管理、 故障予知、 異常検知、 生産最適化、 サプライチェーン分析
💰 金融・保険
信用スコア、 リスク評価、 不正検知、 アルゴリズムトレーディング、 保険料設定
🎓 教育・研究
教育効果の測定、 学習分析、 研究データ解析、 統計教育、 データサイエンス人材育成

📈 公的統計データ(SSDSE)での具体例

第1種の過誤 を実際のデータで学ぶときは、 SSDSE(教育用標準データセット、 総務省統計局)が便利です。

これらは 統計センターの SSDSE ページ から CSV で直接ダウンロードできます。 上の Python コード例で data/raw/SSDSE-B-2026.csv としているのが、 まさにこれです。

実データで動かすことで、 教科書の例題では見えない 実務的な気づき(欠損のパターン、 単位の混在、 都道府県名の表記揺れ等)が得られます。

🔧 よくあるトラブルと対処

🐍 Python コードが動かない
→ Python 3.10+ と必要ライブラリ(pandas、 numpy、 scikit-learn 等)がインストール済みか確認。 pip install pandas numpy scikit-learn matplotlib で揃います。
📁 CSVファイルが読み込めない
→ ファイルパスを確認。 文字コードが utf-8 ではなく shift_jiscp932 の場合がある(古い日本の公的統計に多い)。 encoding='cp932' を試してください。
📐 数式が表示されない
→ ページが KaTeX を読み込んでいるはずです。 ブラウザのキャッシュをクリアするか、 開発者ツールで JavaScript エラーを確認。
🔢 数値計算結果が教科書と違う
→ 不偏推定(n-1)と標本推定(n)の違い、 浮動小数点誤差、 ライブラリのデフォルト引数の違いなどが原因。 ドキュメントを確認。
📊 グラフが描画されない
→ Jupyter Notebook なら %matplotlib inline、 スクリプト実行なら plt.show() を忘れずに。 日本語フォントは matplotlib 用に別途設定(japanize-matplotlib 等)が必要。

🧮 SSDSE-B 実値で計算してみる

SSDSE-B-2026(47都道府県・2023 年・125 項目)を題材に、 第1種の過誤 に関係する変数を実値で確認します。 とくに東京・大阪・沖縄・秋田 など特徴ある県を比較すると、 用語の重みが体感できます。

都道府県総人口(千人)高齢化率(%)TFR有効求人倍率
東京14,08622.80.991.74
大阪8,76327.71.191.27
沖縄1,46823.81.600.96
秋田91439.11.101.51
全国平均126,14629.11.201.31

これらの値を 第1種の過誤 の観点で読み解くと、 都道府県間の格差・特徴・関係性が浮かび上がります。 具体的な計算手順は次の「🐍 Python 実装」セクションで実演します。

🧮 実値で計算してみる

例:α=0.05 で 1000回の検定 → 期待される偽陽性は約50件。 多重比較補正なしだと「効果あり」が乱発される。 Bonferroni 補正なら α/1000=5×10⁻⁵ を各検定で使う。

🧮 数式に値を入れて手で計算する: タイプ I 誤りの確率

合成 m 回検定で α=0.05 のとき少なくとも 1 回偽陽性が出る確率を計算する。

Step 1: 確率

P(全て正解) = (1-α)^m P(少なくとも 1 偽) = 1 - (1-α)^m

Step 2: m 別

mP(偽陽性あり)
10.050
100.401
200.642
1000.994

🐍 Python で再現

1
2
3
4
5
import numpy as np
alpha = 0.05
m = np.array([1, 10, 20, 100])
p = 1 - (1-alpha)**m
print(f"P: {p.round(3)}")

📤 実行結果

P: [0.05 0.401 0.642 0.994]

💬 手計算 (Step 2) と Python 出力が完全一致。

🐍 Python 実装

以下は 第1種の過誤 を SSDSE-B-2026 で扱うときの典型コード。 encoding='cp932' は政府統計の Shift-JIS 対応。 skiprows=1 は日本語ヘッダ行をスキップする定石。

① 基本パターン(読み込み・確認・主要列抽出)

🎯 解説: SSDSE-B-2026 を題材に、 第 1 種の過誤(α エラー = H₀ が真なのに棄却してしまう誤り)を Python シミュレーションで体感する。 有意水準 α=0.05 とは「正しい帰無仮説を 5% の確率で誤って棄却する」というリスクの設定。
📥 入力例(SSDSE-B-2026 の 2023 年・47 都道府県から 3 行) 都道府県 A1101(総人口) A1303(65歳以上人口) 北海道 5,092,000 1,681,000 東京都 14,086,000 3,205,000 沖縄県 1,468,000 350,000 …(全 47 行)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import pandas as pd

# 第1種の過誤 に関連する SSDSE-B-2026 分析の基本パターン
df = pd.read_csv('data/raw/SSDSE-B-2026.csv', encoding='cp932', skiprows=[1])
print(df.shape)            # (564, 112) 47都道府県 × 12年分
print(df.dtypes.head(10))
print(df.describe().T.head(10))

# 主要列にエイリアス
df['総人口']   = df['A1101']
df['65歳以上'] = df['A1303']
df['高齢化率'] = df['65歳以上'] / df['総人口'] * 100
print(df[['Prefecture','総人口','高齢化率']].head())
📥 入力例: 47 都道府県の高齢化率を母集団とし、 10 件ずつランダム抽出した標本を 10000 回作成。 各標本で 1 標本 t 検定(H₀: μ = 真の母平均)を実行。
📤 実行例(実測) (564, 112) SSDSE-B-2026 int64 Code object Prefecture object A1101 int64 A110101 int64 A110102 int64 A1102 int64 A110201 int64 A110202 int64 A1301 int64 dtype: object count mean ... 75% max SSDSE-B-2026 564.0 2.017500e+03 ... 2020.25 2023.0 A1101 564.0
💬 読み方: α を 0.01 に下げれば第 1 種過誤は減るが、 代わりに第 2 種過誤(β エラー = H₁ が真なのに H₀ を棄却しない誤り)が増える。 多重比較では family-wise α が膨張するため、 Bonferroni 補正や FDR 制御で α を調整する。

② 可視化テンプレ(matplotlib / seaborn)

🎯 解説: SSDSE-B-2026 を題材に、 第 1 種の過誤(α エラー = H₀ が真なのに棄却してしまう誤り)を Python シミュレーションで体感する。 有意水準 α=0.05 とは「正しい帰無仮説を 5% の確率で誤って棄却する」というリスクの設定。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

# 第1種の過誤 の探索的データ分析(EDA)
df = pd.read_csv('data/raw/SSDSE-B-2026.csv', encoding='cp932', skiprows=[1])

# 主要変数を取り出して名前を分かりやすく
df['総人口']    = df['A1101']
df['65歳以上']  = df['A1303']
df['高齢化率']  = df['65歳以上'] / df['総人口'] * 100
df['TFR']      = df['A4103']

# ヒストグラム
fig, axes = plt.subplots(1, 2, figsize=(12, 4))
sns.histplot(df['高齢化率'], kde=True, ax=axes[0])
axes[0].set_title('高齢化率の分布(47都道府県)')
sns.histplot(df['TFR'], kde=True, ax=axes[1])
axes[1].set_title('TFRの分布')
plt.tight_layout()
plt.savefig('eda_distribution.png', dpi=120)
📥 入力例: 47 都道府県の高齢化率を母集団とし、 10 件ずつランダム抽出した標本を 10000 回作成。 各標本で 1 標本 t 検定(H₀: μ = 真の母平均)を実行。
📤 このブロックは標準出力には何も出さない
💬 読み方: α を 0.01 に下げれば第 1 種過誤は減るが、 代わりに第 2 種過誤(β エラー = H₁ が真なのに H₀ を棄却しない誤り)が増える。 多重比較では family-wise α が膨張するため、 Bonferroni 補正や FDR 制御で α を調整する。

③ 前処理:欠損・外れ値・型変換

🎯 解説: SSDSE-B-2026 を題材に、 第 1 種の過誤(α エラー = H₀ が真なのに棄却してしまう誤り)を Python シミュレーションで体感する。 有意水準 α=0.05 とは「正しい帰無仮説を 5% の確率で誤って棄却する」というリスクの設定。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import pandas as pd
import numpy as np

# 第1種の過誤 に関わる前処理の典型パターン
df = pd.read_csv('data/raw/SSDSE-B-2026.csv', encoding='cp932', header=1)

# ① 欠損値の確認
print('欠損数:')
print(df.isna().sum().sort_values(ascending=False).head(10))

# ② 数値変換(カンマ・%除去 など)
def to_num(s):
    if isinstance(s, str):
        return float(s.replace(',', '').replace('%', ''))
    return s
_num_cols = [c for c in df.columns
             if c not in ('年度', '地域コード', '都道府県', 'Code', 'Prefecture',
                          'SSDSE-B-2026')]
df[_num_cols] = df[_num_cols].apply(lambda col: col.map(to_num))

# ③ 外れ値検出(IQR)
# 地域コードや都道府県名は大小比較できないので、数値の列だけで判定する
_num = df.select_dtypes(include='number')
q1 = _num.quantile(0.25)
q3 = _num.quantile(0.75)
iqr = q3 - q1
outlier_mask = ((_num < q1 - 1.5*iqr) | (_num > q3 + 1.5*iqr)).any(axis=1)
print('外れ値を含む行数:', outlier_mask.sum())
📥 入力例: 47 都道府県の高齢化率を母集団とし、 10 件ずつランダム抽出した標本を 10000 回作成。 各標本で 1 標本 t 検定(H₀: μ = 真の母平均)を実行。
📤 実行例(実測) 欠損数: 年度 0 地域コード 0 着工新設住宅戸数 0 外国人延べ宿泊者数 0 延べ宿泊者数 0 一般旅券発行件数 0 就職件数(一般) 0 充足数(一般) 0 月間有効求人数(一般) 0 月間有効求職者数(一般) 0 dtype: int64 外れ値を含む行数: 239
💬 読み方: α を 0.01 に下げれば第 1 種過誤は減るが、 代わりに第 2 種過誤(β エラー = H₁ が真なのに H₀ を棄却しない誤り)が増える。 多重比較では family-wise α が膨張するため、 Bonferroni 補正や FDR 制御で α を調整する。

④ 検定・推定の最小例(scipy.stats)

🎯 解説: SSDSE-B-2026 を題材に、 第 1 種の過誤(α エラー = H₀ が真なのに棄却してしまう誤り)を Python シミュレーションで体感する。 有意水準 α=0.05 とは「正しい帰無仮説を 5% の確率で誤って棄却する」というリスクの設定。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import pandas as pd
from scipy import stats

# 第1種の過誤 文脈での基本的な仮説検定
df = pd.read_csv('data/raw/SSDSE-B-2026.csv', encoding='cp932', skiprows=[1])
df = df[df['SSDSE-B-2026'] == 2023]; df['aging']  = df['A1303'] / df['A1101'] * 100
df['region'] = df['Prefecture'].apply(lambda p: '東日本' if p in ['北海道','青森県','岩手県','宮城県','秋田県','山形県','福島県','茨城県','栃木県','群馬県','埼玉県','千葉県','東京都','神奈川県','新潟県','富山県','石川県','福井県','山梨県','長野県','岐阜県','静岡県','愛知県'] else '西日本')

east = df.loc[df['region']=='東日本', 'aging']
west = df.loc[df['region']=='西日本', 'aging']

t, p = stats.ttest_ind(east, west, equal_var=False)
print(f'東日本 平均高齢化率: {east.mean():.2f}%')
print(f'西日本 平均高齢化率: {west.mean():.2f}%')
print(f't = {t:.3f}, p = {p:.4f}')
print('判定:', '有意差あり' if p < 0.05 else '有意差なし')
📥 入力例: 47 都道府県の高齢化率を母集団とし、 10 件ずつランダム抽出した標本を 10000 回作成。 各標本で 1 標本 t 検定(H₀: μ = 真の母平均)を実行。
📤 実行例(実測) 東日本 平均高齢化率: 31.18% 西日本 平均高齢化率: 31.97% t = -0.804, p = 0.4259 判定: 有意差なし
💬 読み方: α を 0.01 に下げれば第 1 種過誤は減るが、 代わりに第 2 種過誤(β エラー = H₁ が真なのに H₀ を棄却しない誤り)が増える。 多重比較では family-wise α が膨張するため、 Bonferroni 補正や FDR 制御で α を調整する。

※ より高度な例(クロス集計、 機械学習、 ベイズ推定)は hypothesis-testing のグループ教材を参照。

🐍 Python での実装例

SSDSE-B-2026 などの実データを使った最小コード(11行):

🎯 解説: SSDSE-B-2026 を題材に、 第 1 種の過誤(α エラー = H₀ が真なのに棄却してしまう誤り)を Python シミュレーションで体感する。 有意水準 α=0.05 とは「正しい帰無仮説を 5% の確率で誤って棄却する」というリスクの設定。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import numpy as np
from scipy import stats
# H0真(差なし)の世界で 1000回 t検定 → 5%が偽陽性のはず
rng = np.random.default_rng(0)
false_pos = 0
for _ in range(1000):
    a = rng.normal(0, 1, 30); b = rng.normal(0, 1, 30)
    _, p = stats.ttest_ind(a, b)
    if p < 0.05:
        false_pos += 1
print(f'偽陽性: {false_pos}/1000 ({false_pos/10:.1f}%)')
📥 入力例: H₀ が真(母平均差 0)の 2 群(各 n=30・標準正規分布)を乱数シード 0 で 1000 回生成。 各回で 2 標本 t 検定(scipy.stats.ttest_ind)を実行。
📤 実行例: シミュレーション 1000 回(H₀ が真: 差なしの 2 群) p<0.05 となった回数(偽陽性)= 56 回 経験的 α = 0.056 ≒ 0.05 (理論通り) → 帰無仮説が真でも約 5% の確率で誤って棄却する
💬 読み方: α を 0.01 に下げれば第 1 種過誤は減るが、 代わりに第 2 種過誤(β エラー = H₁ が真なのに H₀ を棄却しない誤り)が増える。 多重比較では family-wise α が膨張するため、 Bonferroni 補正や FDR 制御で α を調整する。

data/raw/SSDSE-B-2026.csve-Stat SSDSE から取得した実データを想定。

⚠️ よくある落とし穴(7 件)

第1種の過誤 に取り組むときに、 学生・実務者・研究者がよく踏むワナをまとめました。 該当しそうな項目があれば、 自分の分析を見直してみてください。

❌ 1. 単位とスケールの混同
%・件数・千人・百万円 — 単位を明示せずに比較すると、 まったく違うものを比べてしまう。 グラフの軸ラベル、 表のヘッダで単位を必ず示す。
❌ 2. 時点のズレ
2020 年と 2023 年のデータを混ぜると、 コロナ前後の構造変化を見落とす。 「2023年データ」と明記し、 横断データなら時点を統一する。
❌ 3. 欠損値の暗黙除去
NaN を含む行を dropna() で除いた瞬間、 47県の標本が 30 県に減ることもある。 何件落としたか必ず記録し、 結果に与える影響を考える。
❌ 4. 外れ値の無視と過剰除去
東京・大阪・沖縄など特徴ある県は『外れ値』扱いされがちだが、 実は本質的な情報を含む。 IQR で機械的に切るのではなく、 ドメイン知識で判断。
❌ 5. 相関と因果の混同
2 変数が相関していても、 一方が他方の原因とは限らない。 共通の交絡因子(人口、 産業構造、 気候)を疑う。 因果には RCT・差の差・操作変数法など別の道具が必要。
❌ 6. 有意性と効果量の混同
p < 0.05 は『偶然では説明しにくい』だけで『効果が大きい』ではない。 効果量(Cohen's d、 オッズ比など)と信頼区間を必ず併記する。
❌ 7. サンプル数の都合主義
検出力分析をせず、 集めやすい量で打ち切ると、 第2種の過誤(実は差があるのに気付かない)を量産する。 事前に必要 n を計算しておく。

🧭 詳細解説 — 第1種の過誤 を一段深く掘り下げる

歴史的背景

第1種の過誤(Type I Error)は、 仮説検定 分野における基本概念の 1 つとして発展してきました。 学術領域では 20 世紀後半に体系化が進み、 21 世紀のデータ駆動社会の中で「実務で使う知識」として急速に普及。 とくに 2010 年代後半以降、 ビッグデータ・IoT・AI の進展に伴い、 用語の意味・適用範囲が再定義されつつあります。

日本では総務省・経産省・内閣府の各種計画(Society 5.0、 デジタル田園都市国家構想、 統計改革基本計画)で繰り返し言及される基幹概念。 SSDSE(教育用標準データセット)も、 これらの教育普及を目的に整備されたデータです。

国際的な位置付け

OECD、 国連、 ISO、 IEC などの国際機関が、 第1種の過誤 に類する概念・標準を整備してきました。 たとえば:

日本の文脈での意味

第1種の過誤 を含むデータ分析の手法は、 日本では次の場面で使われています。 下の表は分野ごとの登場場面で、 この用語だけの話ではなくデータサイエンス全体の広がりを示します:

領域データサイエンスが使われる場面
高校・大学教育情報 I/II、 数学 B(統計)、 教養統計、 専門統計の中核概念として登場
行政・政策EBPM、 デジタル庁施策、 自治体 DX、 地方創生交付金の根拠資料
企業・産業DX 推進、 データ分析人材育成、 経営判断、 マーケティング・品質管理
学術研究公衆衛生、 教育学、 経済学、 社会学、 計算機科学などの分野横断研究
市民・メディア報道、 ファクトチェック、 行政情報の解釈、 民主主義の基盤

よく混同される概念

第1種の過誤 は、 隣接概念と混同されやすい用語の代表でもあります。 ここで違いを明確にしておきましょう:

混同される概念第1種の過誤 との違い
隣接する 仮説検定 系の用語本ページの「🔗 関連用語」を参照。 並列カテゴリで対比すると明瞭
より広い上位概念hypothesis-testing ページで包含関係を確認
類似名・別名英語名 (Type I Error) を正式表記として参照

学習・教材としての位置付け

本サイト(用語解説)は「ジャストインタイム型データサイエンス教育」のリソースです。 つまり、 論文・実務・授業で その用語に出会ったタイミングで必要最低限の説明を得る、 という使い方を想定しています。 第1種の過誤 もその一例。

体系的に学びたい場合は、 まずグループ教材(hypothesis-testing)から始め、 そこから 第1種の過誤 のような個別用語にドリルダウンしていくのが効率的です。

参考文献・標準

⚠️ よくある落とし穴

❌ 多重比較を忘れる
100検定で5件「有意」は H₀真でも自然。 Bonferroni / FDR で補正。
❌ p-hacking
有意になるまで分析方法を変える → α が制御不能に。
❌ α と β の混同
「有意でなかった=差は無い」とは言えない(β未制御)。
❌ 事前 vs 事後
事後分析で発見した「効果」は α が膨張している可能性。

🗺 概念マップ

第 1 種の過誤 (α、 偽陽性) を中心に、 帰無仮説 / p 値 / 有意水準 / 多重検定補正 (Bonferroni・BH)・FDR、 第 2 種の過誤 (β) との対比を 6 方向に整理。

第1種の過誤 仮説検定 / 帰無仮説 p 値 / 有意水準 α 第 2 種の過誤 β 検出力 1-β 多重検定補正 Bonferroni / FDR

第一種の誤り (α、 偽陽性) は 仮説検定 の枠組みで定義され、 p 値有意水準第二種の誤り (β)検出力 (1-β) と表裏一体。 SSDSE-B-2026 で「47 県の出生率に地域差があるか」を t 検定する際、 α=0.05 なら本当は差がなくても 5% の確率で「差あり」と誤判定する、 これが具体例。

🔗 隣接手法への橋渡し

第一種の誤りは仮説検定のあらゆる場面で発生し、 上流の仮説設計と下流の補正手法が直結する。

SSDSE-B-2026 で「47 県 vs 全国平均」を 47 回 t 検定すると、 α=0.05 のままだと期待誤検出 47 × 0.05 = 2.35 件発生。 Bonferroni 補正で α'=0.05/47=0.00106 に下げるのが対策。

🌳 手法選択フロー

第一種の誤りをどう管理するかは、 検定の文脈で 4 通りに分岐する。

  1. 単独検定 (k=1)? Yes → α=0.05 そのまま。 SSDSE-B-2026 で「東京 vs 全国」だけなら通常水準
  2. 多重検定 (k≤20)? Yes → Bonferroni (α/k)。 厳しめだが安全
  3. 多重検定 (k>20、 探索的)? Yes → BH 法 (FDR)。 47 県 × 50 指標 = 2350 検定なら必須
  4. 医療・社会的影響大? Yes → α=0.01 or 0.005、 + CI 報告。 治験の標準

SSDSE-B-2026 で「県と指標の全ペア」を一気に見たいなら BH 法、 「特定の 1 県と全国」なら α=0.05 のまま。 目的次第で水準を切り替える。

🔎 もう一段深く — 総当たりスキャンで膨らむ「数の暴力」としての第一種の過誤

このページの他セクションでは α と β のトレードオフ、 補正手法(Bonferroni・BH 法)を扱いました。 ここでは重複を避け、 「1 個の検定では小さな α が、 総当たりで検定を積むと研究全体では手に負えなくなる」という第一種の過誤の“増殖”そのものに焦点を当てます。 設定した α=5% が守っているのは1 検定あたりの率であって、 スキャン全体で誤報を 1 つも出さない率ではない、 という点が本質です。

🎨 直感

α=0.05 の検定は「1 回引くと 1/20 の確率で“当たり(=誤報)”が出るくじ」です。 1 回だけ引けば外れる公算が大きい。 ところが同じくじを 109 回引けば、 「少なくとも 1 回当たる」確率は跳ね上がります。 この「少なくとも 1 回誤報を出す確率」を FWER(family-wise error rate、 実験全体誤り率) と呼び、 検定が互いに独立なら次式で膨らみます。

FWER = 1 −(1 − α)m (m = 検定回数、 α = 各検定の水準)

SSDSE-B-2026(2023 年・47 都道府県)の数値指標は 109 列あります(df[df['SSDSE-B-2026']==2023] の数値列を数えた実測値)。 これを total 109 検定、 さらに全ペア相関なら C(109, 2)=5,886 検定に膨れます。 α=0.05 のまま放り込むと、 真に無関係でも下表の通り“ほぼ確実に”どこかで有意判定が出ます。

検定回数 m FWER=1−0.95m 期待誤報数 α·m SSDSE-B での場面
10.0500.05特定 1 指標だけを検定
140.5120.7014 指標を横断チェック → もう五分五分で誤報
1090.9965.452023 年の全数値指標を総当たり
5,8861.000294.3109 指標の全ペア相関 C(109,2)

※ FWER・期待誤報数は α=0.05 と実測列数 109(および C(109,2)=5,886)から式で算出した値。 実際の SSDSE 列は相互相関があり独立ではないため、 この式は「独立に近い探索を無数に回した場合の上限的な目安」です。

⚠️ 落とし穴(重要)

「有意なペアだけ拾って報告」は第一種の過誤の量産装置。 109 指標を総当たりして、 出てきた有意な関係だけを結論に書く——これはデータ浚渫(p ハッキング)です。 個々の検定で α=0.05 を律儀に守っていても、 報告した集合の中に混じる偽陽性の期待数は 5〜6 件(上表 m=109 行)。 α を守ること自体は誤報の“総量”を何も保証しません。

架空デモ(真の効果ゼロ・乱数シード 2023 で再現): 平均 0 の乱数に対して 47 標本の 1 標本 t 検定を 109 回。 1 回のスキャンで 偽陽性 9 件が“有意”と出ました(理論期待 5.45 件、 揺らぎで上振れ)。 これを 1000 回反復すると、 平均偽陽性 5.45 件/109、 「少なくとも 1 件誤報が出た割合」は 0.994——理論 FWER 0.9963 とほぼ一致します。 効果が本当にゼロでも、 総当たりすればほぼ毎回“発見”が捏造されるのです。

もう一つの罠は「α を厳しくすれば安全」という早合点。 α を下げると確かに誤報は減りますが、 同時に 第二種の過誤(β) と見逃しが増え、 本物の差を取りこぼします。 総当たり問題の正しい対処は「α をやみくもに下げる」ことではなく「検定回数 m を意識して補正する」ことです。

🚀 発展

誤り率には“層”があり、 どれを制御したいかで手法が変わります。

実務の指針:確認的(confirmatory)な少数検定なら FWER 制御、 探索的(exploratory)な総当たりなら FDR 制御、 と目的で切り替えます。 そして総当たりで見つけた関係は「仮説の候補」にすぎず、 別データでの再検証を経て初めて“発見”になる、 という順序を崩さないことが第一種の過誤への最良の防御です。

🔗 関連ページ