アンケートデータ分析の導入

Pythonで学ぶアンケートデータ分析

EbunOluwa Andrew

Data Scientist

アンケートデータ分析とは?

  • 洞察を得る
    • 結果が多いほど理解が深まる
  • 効果を測定
    • 高い回答率が重要
    • 例: 追跡調査の回答で製品変更の有効性を確認

ご意見をお聞かせください バナー

Pythonで学ぶアンケートデータ分析

アンケートデータとは?

  • 調査参加者からの回答データ
  • 量的(数値)
  • 質的(記述)
  • 受講者の意見を公正に反映

Photo by Celpax on Unsplash - アンケートに回答する女性

1 Photo by Celpax on Unsplash
Pythonで学ぶアンケートデータ分析

アンケートデータの種類

  • 順序尺度
    • 回答に順序がある
    • 質問例: 製品をどのくらい使いますか?
    • 回答例: まったく、たまに、ときどき、よく、常に
    • 順序が重要

アンケート用紙の記入

Pythonで学ぶアンケートデータ分析

アンケートデータの種類

  • 名義尺度
    • 異なるグループ/カテゴリ
    • 順序はない
    • 例: 出生地、性別、民族

出生証明書

Pythonで学ぶアンケートデータ分析

アンケートデータの種類

  • 間隔尺度
    • 順序あり
    • 値間の距離=意味があり等間隔
    • 回答例: 22C、24C、26C

温度計 - Photo by Bianca Ackermann on Unsplash

  • 比例尺度
    • 精密な測定
    • 真のゼロ点
    • 回答例: $5321

百ドル札の家 - Photo by Kostiantyn Li on Unsplash

Pythonで学ぶアンケートデータ分析

目標の定義

  • 研究目標の定義
  • 回答率
  • フィードバックから学ぶ

代表性のないサンプル

Pythonで学ぶアンケートデータ分析

アンケートのサンプリング

  • 大集団すべてからの収集は困難
  • 標本抽出で母集団を推定・仮説検証
  • 偏りの少ない標本のために手法を使い分ける

Photo by Joseph Chan on Unsplash - 昼間の道路で傘を持つ人々

1 Photo by Joseph Chan on Unsplash
Pythonで学ぶアンケートデータ分析

サンプリング手法の概要

  • 単純無作為
    • 母集団から無作為にサブグループを抽出
  • 層化無作為
    • 母集団を層(例: 人種、性別など)に分割
    • 各層から無作為に抽出

Analytics Vidhya - 層化無作為抽出

Pythonで学ぶアンケートデータ分析

サンプリング手法の概要

  • 割当法(重み付け)
    • 母集団比率に合うサブグループを選ぶ
  • 集落(クラスター)
    • 母集団をクラスタ(例: 学校、都市など)に分割
    • クラスタから無作為に抽出

Aoife Dalton on SlideServe - クラスタサンプリングの図

1 Aoife Dalton on SlideServe
Pythonで学ぶアンケートデータ分析

クロス集計:一般的なアンケート分析

  • .crosstab() -> 2つの名義変数の関係を確認します。
print(survey.head())
| Age     | Occupation_Title          | Current Student | Gender | Education  |
|---------|---------------------------|-----------------|--------|------------|
| 18 - 24 | Credit officer            | No              | Female | Bachelor's |
| 18 - 24 | Student                   | Yes, Full-Time  | Male   | Bachelor's |
| 18 - 24 | Student                   | Yes, Full-Time  | Female | Bachelor's |
| 25 - 34 | Senior Financial Analyst  | No              | Female | Bachelor's |
| 35 - 44 | Public Relations Director | No              | Female | Bachelor's |
Pythonで学ぶアンケートデータ分析

crosstab 関数

cross_tabulation = pd.crosstab(survey.Age, survey.Gender)
cross_tabulation
|         | Female | Male |
|---------|--------|------|
| 18 - 24 |     39 |   12 |
| 25 - 34 |     28 |   12 |
| 35 - 44 |      5 |    1 |
| 45 - 54 |      3 |    0 |
Pythonで学ぶアンケートデータ分析

Ayo berlatih!

Pythonで学ぶアンケートデータ分析

Preparing Video For Download...