5.4 Recoding

比修改因子水平顺序、改变水平个数更强大的操作时修改水平的值。修改水平的值不仅可以使图形标签更为美观清晰,以满足出版发行的要求,还可以将水平汇集成更高层次的显示。修改水平最常用、最强大的工具是fct_recode()函数,它可以对每个水平进行修改或重新编码。例如,我们来看一下综合社会调查数据中的因子变量partyid:

在这个因子中,对水平的描述太过简单,而且不一致,我们用 fct_recode() 将其修改为较为详细的排比结构,格式为fct_recode(f,level_new = level_old):

fct_recode() 函数会让没有明确提及的水平保持原样,如果不小心修改了一个不存在的水平,那么它也会给出警告。

可以将多个原水平赋给同一个新水平,这样就可以合并原来的分类:

As a variant of fct_recode(), fct_collapse() collapses factor levels into manually defined groups

Unmentioned levels stay as is. To collapse this levels, specify other_level, this is always placed at the end of levels.