使用 dummyVars() 和 ifelse() 创建虚拟变量,有区别吗?

creating dummy variables using dummyVars()and ifelse(), are there difference?

我写信是想询问创建或二值化虚拟变量的常用方法。

我参考了很多不同的书,有两种方法:

使用 caret 包下的 dummyVars 或使用 ifelse

谁能说出区别?

使用 ifelse,没有 direct/intuitive 方法可以为超过两个因子的变量创建虚拟变量。在这种情况下,ifelse 对于简单的二进制变量最有用——是或否,有人抽烟或不抽烟。

另一方面,dummyVarsdummy_cols 等函数使您能够轻松地为具有多个因子的变量创建虚拟变量。当您处理非二元分类变量时,这些函数更易于使用,当您需要两者之间的交互时,这些函数也很方便。