忍者ブログ
統計、機械学習、AIを学んでいきたいと思います。 お役に立てば幸いです。

【DS検定対策】条件付き確率をトランプ図解で攻略!「分母の絞り込み」が合格のカギ

数字だけで説明されると難しく感じる確率の問題も、図にしてみると驚くほどスッと理解できます。この記事では、トランプを題材に、DS検定の頻出項目である「条件付き確率」を解説します。

1. 問題:トランプのマークを当てる

【 問題 】

52枚のトランプから1枚引くとき、そのカードが「黒」であった場合、マークが「クラブ」である確率はいくらでしょうか?

2. 図解:条件付き確率は「世界の絞り込み」

条件付き確率を解く最大のコツは、「条件が示された瞬間に、分母(全体)を切り捨てること」です。


【 図解イメージ 】


[ 全52枚のカード ]

 |

 +-- 黒 (26枚) ---> ★新しい「全体(分母)」

 |    |

 |    +-- クラブ (13枚) ---> ◎ターゲット(分子)

 |    |

 |    +-- スペード (13枚)

 |

 +-- 赤 (26枚) ---> (※計算から除外)

3. 計算プロセス

1. 分母を絞る: 「黒の場合」により、分母は 52 ではなく 26

2. 分子を決める: 黒26枚の中に、クラブは 13枚

3. 答えを出す: 13 ÷ 26 = 1/2




4. DS検定形式:実戦4択クイズ

問:条件付き確率 P(A|B) において、記号「|」の右側にある事象 B が表す役割として、最も適切なものはどれか。


① 求めたいターゲットとなる結果(分子)

② 既に起こった、あるいは分かっている前提条件(分母)

③ 事象 A と事象 B が独立しているという保証

④ 事象 A が起こる確率を 2 倍にする係数


【 正解: ② 】


解説:

条件付き確率では、条件 B によって全体集合(分母)が制限されます。トランプの例で「黒の場合」と言ったとき、それは分母を26枚に絞り込む「前提条件」となりました。




5. まとめ

DS検定の計算問題では、「何を全体(分母)とするか」を読み間違えないことが大切です!「〜のとき」という言葉に注目して分母を絞り込みましょう。

PR

【Python】SymPyで定積分を解く!x^2 + 1 を範囲指定で計算

数学の解析学において重要な「積分」。PythonのSymPyライブラリを使えば、不定積分だけでなく、範囲を指定した「定積分」も正確に解くことができます。今回は f(x) = x^2 + 1 を [0, 1] の区間で積分する方法を解説します。

1. 考え方:SymPyによる定積分の指定

SymPyで積分を行うには integrate 関数を使用します。定積分の場合は、対象となる変数と、その開始値・終了値を「タプル」という形式で指定するのがルールです。

[ 計算する式 ]
∫ (x^2 + 1) dx (範囲: 0から1)

[ SymPyでの記述 ]
integrate(式, (変数, 開始, 終了))
・今回の例:integrate(x**2 + 1, (x, 0, 1))

2. Pythonサンプルプログラム

変数 x を記号として定義し、それを使って式を組み立てます。計算結果が分数のまま保持されるのがSymPyの強みです。

# -*- coding: utf-8 -*-
from sympy import symbols, integrate

def main():
    # 変数xを記号として定義
    x = symbols('x')

    # 式 f(x) = x^2 + 1 の定義
    f = x**2 + 1

    # 0から1の区間で積分を実行
    # integrate(式, (変数, 開始, 終了))
    ans = integrate(f, (x, 0, 1))

    print("SymPyによる定積分を開始します。")
    print(f"x^2 + 1 を [0, 1] で積分した結果: {ans}")

if __name__ == "__main__":
    main()

3. 実行結果

SymPyによる定積分を開始します。
x^2 + 1 を [0, 1] で積分した結果: 4/3

4. ステップアップ:不定積分と数値化

定積分以外にも、SymPyは柔軟な計算が可能です。

  • 不定積分:範囲を指定せず integrate(f, x) とすれば、元の関数(原始関数)を返します。
  • 小数への変換:結果の 4/31.333... のように小数で表示したい場合は、ans.evalf() メソッドを使います。

5. まとめ

手計算では分数や計算ミスが起きやすい積分も、SymPyを使えば正確かつ迅速に解くことができます。特に理数系のシミュレーションやアルゴリズム開発において、数式をそのままコードに落とし込めるメリットは非常に大きいです。ぜひ活用してみてください!

【DS検定対策】効率的に数え上げる!「約数の個数」は素因数分解で攻略

データの構造を理解する際、大きな数字を要素ごとに分解して考える手法は非常に重要です。今回は144を題材に、素因数分解を利用して「約数の個数」を機械的に求める方法を解説します。

1. 問題:144の正の約数の個数

【 問題 】 144の正の約数は、全部で何個あるでしょうか?

① 10個   ② 12個   ③ 15個   ④ 18個

2. 整理:素因数分解(指数の活用)

約数を一つずつ書き出すのは時間がかかります。まずは144を素数の掛け算に分解(素因数分解)し、その「指数(階乗)」に注目するのがコツです。

【 世界の切り出し 】

[ 144を素因数分解する ]
144 = 12 × 12
    = (2^2 × 3) × (2^2 × 3)
    = 2^4 × 3^2

[ 約数が作られる仕組み ]
約数は、「2を何個使うか」と「3を何個使うか」の組み合わせで決まります。

・2の使い道:{使わない(0個), 1個, 2個, 3個, 4個} の 5通り
・3の使い道:{使わない(0個), 1個, 2個} の 3通り

個数の計算: 5 × 3 = 15個

--------------------------

公式のイメージ: (指数 + 1) を掛け合わせる

3. 計算プロセス

1. 素因数分解: 144を 2^4 × 3^2 の形にします。
2. 指数に1を足す: 2の指数「4」に1を足して「5」、3の指数「2」に1を足して「3」とします。(※「使わない」という選択肢を1通り加えるためです)
3. 掛け合わせる: 5 × 3 を計算して 15個 となります。


4. DS検定形式:実戦4択クイズ

問:自然数 $N$ が $p^a \times q^b$($p, q$は素数)と素因数分解されるとき、その正の約数の個数を求める式として正しいものはどれか。

① $a \times b$   ② $(a+1) + (b+1)$   ③ $(a+1) \times (b+1)$   ④ $a^p \times b^q$

【 正解: ③ 】

解説: 各素因数について「0個から最大数まで」の選択肢があるため、それぞれの指数に1を足したものを掛け合わせることで、すべての約数の組み合わせ(個数)を網羅できます。


5. まとめ

大きな数字の約数を探すとき、やみくもに割り切れる数字を探すのは非効率です。素因数分解をして「構成要素」を分解することで、今回のように計算だけで確実に個数を導き出せます。データ構造を最小単位まで分解して考える癖をつけましょう!



【DS検定対策】確率の余事象を攻略!「積が偶数」は逆から考えるのがコツ

確率の計算で「〜が偶数になる」「少なくとも〜」という言葉が出てきたら、そのまま数える前に「逆のパターン」を考えた方が早い場合があります。今回はサイコロの積を題材に、効率的な解き方を解説します。

1. 問題:2つの目の積が偶数

【 問題 】 大小2個のサイコロを同時に投げたとき、出る目の積(かけ算)が「偶数」になる確率はいくらでしょうか?

① 1/4   ② 1/2   ③ 3/4   ④ 5/6

2. 整理:世界を「奇数」で絞り込む

「積が偶数」になるパターンは、【奇×偶】【偶×奇】【偶×偶】と多くて大変です。そこで、唯一の例外である【奇数 × 奇数 = 奇数】だけを数えて、全体から引く「余事象」の考え方を使います。

【 世界の切り出し 】

[ 全体の世界 ]
6(大) × 6(小) = 36通り

[ 逆の世界(積が奇数になる場合) ]
積が奇数になるには、「大も小も両方とも奇数」である必要があります。
・大が奇数:{1, 3, 5} の 3通り
・小が奇数:{1, 3, 5} の 3通り

3 × 3 = 9通り

[ ターゲット(積が偶数になる場合) ]
全体(36) - 逆の世界(9) = 27通り

--------------------------

確率: 27 / 36 = 3 / 4

3. 計算プロセス(図解イメージ)

1. 全事象を把握: 6×6の36マスをイメージします。
2. 例外を引く: 36マスの中で、縦も横も「1,3,5」が交差するエリア(3×3=9マス)だけが「積が奇数」のエリアです。
3. 答えを出す: 残りの 27マスが「積が偶数」になります。 27/36 を約分して 3/4


4. DS検定形式:実戦4択クイズ

問:ある事象Aに対して、「事象Aが起こらない」という事象のことを、統計学・確率論で何と呼ぶか。

① 独立事象   ② 排反事象   ③ 余事象   ④ 条件付き事象

【 正解: ③ 】

解説: ある事象が「起こらない」方の事象を「余事象(よじしょう)」と呼びます。全体の確率1から事象Aの確率を引くことで、複雑な計算をショートカットできる、データ分析でも必須のテクニックです。


5. まとめ

「偶数になる組み合わせを全部書き出す」のは時間がかかり、ミスも起きやすくなります。「逆(奇数)を数えて引く」という視点を持つだけで、計算スピードは劇的に上がります。DS検定の限られた時間内でも、この「引き算の思考」を武器にしましょう!


【DS検定対策】その数字に騙されるな!「擬似相関」を見抜く思考法

データ分析の結果、一見すると納得感のある結論が出たとしても、それが「真実の因果」とは限りません。今回は、実社会でもよくある事例をもとに、擬似相関の正体を詳しく解説します。

1. 問題:読書量とテストの点数

【 問題 】 ある小学校で調査したところ、「自宅にある本の数が多い子供ほど、テストの点数が高い」という強い相関が見つかりました。この結果から「子供に本を買い与えれば、成績は必ず上がる」と結論づける際に、最も注意すべき点はどれでしょうか?

① 本のページ数と点数の相関も調べるべきである  
② 「保護者の教育意識や年収」という共通要因が、両方に影響している可能性がある  
③ 統計学的に、本の数と点数が関係することは絶対にありえない  
④ デジタル書籍(Kindleなど)を数に含めていないのが問題である

2. 整理:背後に潜む「黒幕」の正体

二つの事象が連動しているとき、その背後で両方を操っている「第三の変数」が存在しないかを考えます。

【 世界の切り出し 】

[ 表面的な相関 ]
・家の本の数
・テストの点数
(一見、本が点数を上げているように見える)

[ 隠れた交絡因子(黒幕) ]
真の要因は 「保護者の教育への関心・経済力」 などです。

1. 教育意識が高い → 家に本をたくさん買う(結果A)
2. 教育意識が高い → 勉強を教える環境が整う → 点数が高い(結果B)

結論:本を買うこと「だけ」で点数が上がるわけではない

--------------------------

教訓: データの連動=仕組みの解明ではない

3. 解説プロセス

1. もっともらしい仮説を疑う: 「本を読めば頭が良くなる」という仮説は魅力的ですが、データはその証明には不十分です。
2. 共通の原因を探す: 本を買う余裕や習慣がある家庭の「他の特徴」を想像してみます。
3. 打ち手の有効性を考える: もし擬似相関なら、本を配るだけの施策では成績向上(目的達成)には繋がりません。


4. DS検定形式:実戦4択クイズ

問:擬似相関を排除し、真の因果関係を測定するために、対象をランダムに2群に分けて比較する実験手法を何と呼ぶか。

① 主成分分析   ② 時系列分析   ③ ランダム化比較試験(RCT)   ④ 重回帰分析

【 正解: ③ 】

解説: ランダム化比較試験(RCT)は、未知の交絡因子の影響を均等化できるため、因果推論の「黄金律」と呼ばれます。ビジネスの現場では「A/Bテスト」として広く活用されています。


5. まとめ

「本の数」と「学力」の例のように、擬似相関は一見すると正しい論理のように聞こえるのが特徴です。DS検定でも、「この相関を説明できる別の要因はないか?」と常に自問自答する姿勢が求められます。