R×forcats::fct_expand 因子水準を新規追加する

R言語のforcatsパッケージに含まれているfct_expand()関数について解説します。この関数は、「因子型(factor)データに、新しい因子水準(level)を追加したいとき」ときに使える関数です。

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

概要

fct_expand()は、因子水準を新規追加するための関数です。

使い方


fct_expand(f, ..., after = Inf)

引数

f

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

追加する因子水準を指定します。
すでに存在する因子水準は黙って無視されます。

after = Inf

新しい因子水準を配置する位置を指定します。

使用例

準備

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


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

解説のために、次の因子を使用します。


f <-  fct(c("a", "d"), levels = c("a", "b", "d"))

因子水準を新規追加する

因子fに対して、新しい因子水準"c"を新規追加するには次のようにします。


fct_expand(f, "c")

[1] a d
Levels: a b d c

因子fに対して、新しい因子水準"c"を2番目に新規追加するには次のようにします。


fct_expand(f, "c", after = 2)

[1] a d
Levels: a b c d

参考文献