R言語で、因子(ファクター)を因子水準を手動でまとめる方法について解説します。因子の操作には、tidyverseパッケージに含まれているforcatsパッケージを使用するのが便利です。ここでは、forcatsパッケージのfct_collapse()を使用した方法についてお伝えします。
fct_collapse()の概要
fct_collapse()は、因子水準を手動で定義されたグループにまとめるための関数です。
fct_collapse()の使い方
forcats::fct_collapse()の使い方は次になります。
fct_collapse(.f, ..., other_level = NULL, group_other = "DEPRECATED")
fct_collapse()の引数の意味
.f
因子または文字列ベクトルを指定します。
…
名前付き文字ベクトルのシリーズを指定します。各ベクトルのレベルは名前に置き換えられます。
other_level = NULL
「other」の値に使用される水準の値を指定します。
常にレベルの最後に配置されます。
group_other = “DEPRECATED”
非推奨・… に指定されていないすべての水準を「other」に置き換えるかどうかを指定します。
準備
あらかじめ、tidyverseパッケージを読み込んでおきます。
library(tidyverse)
解説のために、次の因子を使用します。
F <- fct(letters[floor(runif(20, min = 1, max = 5))])
F
[1] d a b a b a c b d d c b c d a b a b d b
Levels: d a b c
因子水準を手動でまとめる
因子Fに対して、因子水準を手動でまとめるには次のようにします。
fct_collapse(
F,
X = c("a", "b"),
Y = "c"
)
[1] d X X X X X Y X d d Y X Y d X X X X d X
Levels: d X Y
R×forcats::fct_collapse 因子水準を手動でまとめる