Hello there, ('ω')ノ
「データが手に入った!でも、どこから見ていいかわからない…」 「分析の前に“ざっくり全体を把握したい”」
そんなときに行うのが EDA(探索的データ分析)です。 EDAは、データの特徴や構造、傾向や問題点を“調査・発見”する分析プロセスで、どんなデータ分析でも最初にやるべき重要なステップです。
✅ EDAとは何か?
EDAとは Exploratory Data Analysis の略で、日本語では「探索的データ分析」と訳されます。
目的 | 内容 |
---|---|
データの理解 | どんな列がある?どんな型?いくつある? |
データの確認 | 欠損、外れ値、異常値、表記ゆれの有無など |
仮説の発見 | パターン・傾向・相関などを見つける |
🔍 EDAは“分析の準備運動”のようなもの。 この段階で「データのクセ」に気づいておくと、後工程がスムーズに進みます。
🛠 EDAの最初にやるべき5つのステップ
① データの構造を確認する
確認内容 | 例 |
---|---|
データの行数・列数 | 何件あるか、何項目あるか |
各列の名前・型 | 数値?文字列?日付? |
項目の意味 | 項目名が略語やコードの場合は要確認 |
▶ Excelならフィルタや関数で、Pythonなら df.info()
で確認できます。
② 欠損値(NULL)があるか調べる
チェック項目 | 方法 |
---|---|
空欄があるか | =COUNTBLANK(列) や ISNULL |
どの列に多いか | 欠損率を算出(件数÷全体) |
欠損のパターン | 特定の列だけ?行全体が抜けてる? |
▶ 欠損の扱い方によって、分析結果が大きく変わるので要注意!
③ 基本統計量を確認する
指標 | 説明 | 用途 |
---|---|---|
平均(mean) | 全体の傾向 | 値の中心を見る |
中央値(median) | 外れ値の影響を受けない中心値 | 偏りのチェック |
標準偏差(std) | 値のばらつき具合 | 正常な範囲か確認 |
最小・最大値(min/max) | 値の幅 | 異常値がないか確認 |
▶ Excelでは「AVERAGE」「MEDIAN」「STDEV.P」、Pythonでは df.describe()
が便利です。
④ カテゴリ変数の分布を確認する
目的 | 内容 |
---|---|
値の種類と出現頻度を知る | どんなカテゴリがあるか(性別、地域など) |
表記ゆれの有無 | "男"と"男性"が混在していないか |
▶ =COUNTIF()
やピボットテーブルで確認しやすいです。
▶ Pythonなら df['gender'].value_counts()
。
⑤ 相関・関係性をざっくり見る
手法 | 使いどころ |
---|---|
散布図 | 数値どうしの関係性(例:年齢と購入額) |
相関係数(correlation) | 相関の強さと向き(-1〜+1) |
クロス集計 | カテゴリどうしの関係性(例:性別と満足度) |
▶ 「売上は広告費と相関しているのか?」など、仮説のヒントが得られます。
📊 EDAは“グラフ”も大事!
グラフ種類 | 使いどころ |
---|---|
棒グラフ | カテゴリの比較(例:職種別人数) |
折れ線グラフ | 時系列の変化(例:月別売上) |
ヒストグラム | 分布の確認(例:年齢構成) |
箱ひげ図 | 外れ値の検出 |
▶ ExcelやBIツール(Tableau、Power BI)でも作れます。
Pythonでは matplotlib
や seaborn
が定番です。
✅ EDAのまとめ:分析は“まず観察”から始めよう
ステップ | やること | 目的 |
---|---|---|
① 構造の確認 | 行数・列数・型など | データの全体像を把握 |
② 欠損チェック | 空欄・NULLなど | 修正や除外の判断材料に |
③ 基本統計量の算出 | 平均・中央値・最大最小など | 値の範囲やばらつきを把握 |
④ カテゴリ分布 | 出現頻度・表記ゆれ確認 | グループの傾向をつかむ |
⑤ 相関分析 | 関係のありそうな変数の確認 | 仮説づくりのヒントに |
🧭 補足:EDAの後にやるべきこと
- データクレンジング(欠損・外れ値の処理)
- 特徴量(変数)エンジニアリング
- モデリング(予測モデルやクラスタリング)
▶ つまり、EDAはすべての分析の“土台”です!
Best regards, (^^ゞ