1. はじめに
自己紹介: 教育分野でデータ分析をPythonで行っている教師(教師でPython分析する人は珍しい?)
課題: 実務で扱うデータをここでは使えないため、公開データで分析の練習と備忘録を兼ねて記録することにした。
記事の目的: 統計的検定と機械学習、両方の手法を適用した分析プロセスを共有し、そこから得られた学びを記録する。
コード:GitHub
2. 分析の準備と仮説検証
使用データ: Kaggleの「Students Performance in Exams」を使用。
仮説: 「テスト対策講座の有無は、数学の点数に影響を与えるか?」という問いから分析を開始。
手法: Plotlyで視覚的に傾向を捉え、t検定でその差が統計的に有意かを検証。
結果: P値が極めて低く、有意な差があることを確認。(Pythonで書くとあっという間に計算できる)
3. 機械学習による点数予測とインサイトの発見
目的: 点数に影響を与える要因を特定するため、LightGBMで予測モデルを構築。
モデル評価: MAEとRMSEで予測精度を確認し、モデルの信頼性を評価。
SHAPによる解釈: SHAP値を用いて、モデルがなぜそのように予測したのかを解明。reading scoreとwriting scoreが最も重要であることを発見した。(因果推論必須)
4. 分析から得られた示唆と今後の展望
目的意識: 実務では明確に目的を決めて分析するが、公開データでは目的がブレやすいことを実感。分析の初めに「何を知りたいか」を明確にすることの重要性を再認識した。
因果推論への関心: 「対策講座が本当に効果的なのか」という問いに対し、因果推論の重要性を痛感。今後、この分野を深く学びたい。