R×forcats::fct_recode 因子水準を変更する

R言語のforcatsパッケージに含まれているfct_recode()関数について解説します。この関数は、「因子型(factor)の因子水準(レベル)の名前を、個別に手動で変更(置換)したい」ときに使える関数です。

forcatsパッケージは、因子型(factor型)データを操作するための強力で便利な関数を多く取り扱っています。また、Rのデータサイエンス向け主要パッケージ群であるtidyverseパッケージにも含まれています。

概要

fct_recode()は、因子水準を変更するための関数です。

使い方


fct_recode(.f, ...)

引数

f

因子(または文字ベクトル)を指定します。

名前が新しい因子水準を示し、値が古い因子水準を示す名前付き文字ベクトルのシーケンスを指定します。
特に指定されていない因子水準はそのまま残ります。因子水準にNULLという名前を付けると、因子水準を削除できます。

使用例

準備

あらかじめ、tidyverseパッケージまたはforcatsパッケージを読み込んでおきます。


# library(tidyverse)でもよい
library(forcats)

具体例で使用する変数を準備します。


f <- fct(c("A", "B", "C", "D", "E"))
f

[1] A B C D E
Levels: A B C D E

因子水準を変更する

因子水準を変更するには次のようにします。


fct_recode(f, a = "A", c = "C", e = "E")

[1] a B c D e
Levels: a B c D e

参考文献