将多个变量重新编码为“其他”

问题描述

我已经对数据框进行了一些重新编码,以反映希望对其进行分析的组,但是需要将其他所有代码编码为“其他”。见下文:

DF:
  Var1
   BIO
   CHEM
   Arts
   BIO
   Zoo
   Edu
   Math
   BIO

我想要的是:

DF: Var1 生物 化工 其他 生物 其他 其他 其他 生物 PSY

我尝试了以下代码

DF[ Var1 ==c(!"BIO","CHEM","PSY")] <- "Other"

但这不起作用。任何帮助表示赞赏。谢谢!

解决方法

这是您代码的改编版本。它适用于字符串。

DF$Var1[!DF$Var1 %in% c("BIO","CHEM","PSY")] <- "Other"

对于可能使用的因素:

fct_other(DF$Var1,keep = c("BIO","PSY"),other_level = "Other")