Rで解析:ダミー変数の作成に便利です。「fastDummies」パッケージ


行列方向にダミー変数を作成するのに便利なパッケージの紹介です。

パッケージバージョンは1.6.3。windows 11のR version 4.1.2で確認しています。

パッケージのインストール

下記コマンドを実行してください。

#パッケージのインストール
install.packages("fastDummies")

コマンドの紹介

詳細はコマンド、パッケージのヘルプを確認してください。

#パッケージの読み込み
library("fastDummies")

###データ例の作成#####
set.seed(1234)
n <- 4
TestData <- data.frame(Number = 1:n,
                       FactorNum = factor(1:n),
                       ID = paste0("ID", 1:n),
                       Group = sample(paste0("Group", 1:3),
                                      n, replace = TRUE))
########

#数値以外の全変数の組み合わせでダミー変数を列側に作成:dummy_rowsコマンド
#データを指定:.dataオプション
#対象列を指定:select_columnsオプション,数値は対象外
#数値または対象列外に埋める値:dummy_valueオプション,初期値:NA
dummy_rows(.data = TestData, select_columns = c("ID", "Group"),
           dummy_value = "Dummy")
   Number FactorNum  ID  Group
1       1         1 ID1 Group2
2       2         2 ID2 Group2
3       3         3 ID3 Group1
4       4         4 ID4 Group3
5   Dummy     Dummy ID1 Group1
6   Dummy     Dummy ID2 Group1
7   Dummy     Dummy ID4 Group1
8   Dummy     Dummy ID3 Group2
9   Dummy     Dummy ID4 Group2
10  Dummy     Dummy ID1 Group3
11  Dummy     Dummy ID2 Group3
12  Dummy     Dummy ID3 Group3

#ダミー変数を行側に作成:dummy_colsコマンド
#列に含まれる初めの変数を除外:remove_first_dummyオプション
dummy_cols(.data = TestData, select_columns = c("ID", "Group"),
           remove_first_dummy = FALSE)
Number FactorNum  ID  Group ID_ID1 ID_ID2 ID_ID3 ID_ID4 Group_Group1
1      1         1 ID1 Group2      1      0      0      0            0
2      2         2 ID2 Group2      0      1      0      0            0
3      3         3 ID3 Group1      0      0      1      0            1
4      4         4 ID4 Group3      0      0      0      1            0
Group_Group2 Group_Group3
1            1            0
2            1            0
3            0            0
4            0            1

少しでも、あなたの解析が楽になりますように!!

スポンサードリンク

スポンサードリンク