【回帰分析】ダミー変数の作り方

回帰分析

今回は回帰モデル
利用されるダミー変数
ついて説明をします。

[PR]※本サイトには、プロモーションが含まれています

質的変数をダミー変数に変換

質的変数のデータを数値に変換する方法として
分析時にダミー変数を使用することが一般的です。
ダミー変数はカテゴリーごとに新しいバイナリ変数
(0または1)を作成し
そのカテゴリーに属する場合は1
属さない場合は0とします。
これにより質的変数
数値的な情報として扱うことが可能になります。

ダミー変数は重回帰モデル
ロジスティック回帰モデルに利用されます。

たとえば、性別が質的変数である場合
女性であれば0

の値を持つ変数とします。
性別にダミー変数を適応することで
性別が数値的な情報として分析に組み込まれます。

ダミー変数を作成する時カテゴリーの数-1の変数を
用意する必要があります。
血液型をダミー変数としたとき
0と1を組み合わせて以下のように表すことが出来ます

血液型\(X_1\)\(X_2\)\(X_3\)
O型000
A型100
B型010
AB型001

ダミー変数に変換コード

適当に東北地方の6県をそれ以外の県をダミー変数に変換する
コードを作って
出力を確認していきます。

# データフレームを作成
data <- data.frame(
  prefecture = c("青森県", "岩手県", "宮城県", "秋田県", "山形県", "福島県")
)

# ダミー変数を作成
data <- cbind(data, model.matrix(~prefecture - 1, data))


colnames(data) <- gsub("prefecture", "", colnames(data))

# 結果の表示
print(data)

東北地方6県とそれに該当しない場合はすべて0
表すことができました
12県の内東北地方だったら0

関東地方だったら1と
するコードを作ってみます

# 必要なライブラリを読み込む
library(dplyr)

# 東北地方の6県と関東地方の6県のデータを作成
data <- data.frame(
  prefecture = c("青森県", "岩手県", "宮城県", "秋田県", "山形県", "福島県", "東京都", "神奈川県", "千葉県", "埼玉県", "茨城県", "栃木県")
)

# 東北地方と関東地方を示すダミー変数を作成
data$Tohoku <- as.numeric(data$prefecture %in% c("青森県", "岩手県", "宮城県", "秋田県", "山形県", "福島県"))
data$Kanto <- as.numeric(data$prefecture %in% c("東京都", "神奈川県", "千葉県", "埼玉県", "茨城県", "栃木県"))

# 結果の表示
print(data)

質的変数のダミー変数を
色々考えるの面白そうですね!

おまけ 質的変数例一覧

  1. 性別: 男性、女性
  2. 民族: 日本人、アメリカ人、中国人など
  3. 血液型: A型、B型、AB型、O型
  4. 学歴: 高校卒、大学卒、修士号、博士号など
  5. 職業: 医師、教師、エンジニア、アーティストなど
  6. 居住地: 東京、大阪、名古屋、札幌など

参考文献

https://amzn.to/4aUo4wZ


タイトルとURLをコピーしました