在R中,如何正确地将0-1变量分类为因子变量?

在R中,如何正确地将0-1变量分类为因子变量?,r,R,我试图编写一个函数,对数据框中的所有变量进行汇总。数据框架有468个变量和274个观测值 我的数据框中的变量类型为integer和factor(分类) 一些分类变量的值为0-1,当我尝试使用lappy查找这些变量的类时,我得到的输出为整数。我应该使用什么函数将这些变量视为分类变量 我使用以下语法查找所有变量的类 class_list <- lapply(dataset,class) class\u列表您可以使用factor()或as.factor(),但在大多数建模应用程序中,编码为0-

我试图编写一个函数,对数据框中的所有变量进行汇总。数据框架有468个变量和274个观测值

我的数据框中的变量类型为integer和factor(分类)

一些分类变量的值为0-1,当我尝试使用
lappy
查找这些变量的类时,我得到的输出为整数。我应该使用什么函数将这些变量视为分类变量

我使用以下语法查找所有变量的类

class_list <- lapply(dataset,class)

class\u列表您可以使用
factor()
as.factor()
,但在大多数建模应用程序中,编码为0-1的二进制整数变量和二进制分类变量之间没有实际区别。谢谢Gregor!!但你是在建议我用手来做吗?因为我的数据帧中的变量数量是478,遍历这些变量的每个子集都会非常耗时。不,通过说“在大多数建模应用程序中,编码为0-1的二进制整数变量和二进制分类变量之间没有实际区别”,我建议您不要全部这么做。如果您真的想继续这样做,那么当然不应该手动执行-使用
for
循环或
lappy
。编写一个测试来确定是否要转换列,然后`my_data[cols_to_convert]=lappy(my_data[cols_to_convert],as.factor)。好的!!我会试试看它是如何工作的。谢谢。嘿,坦克斯·格雷戈!!我使用了一个带有as.factor的for循环,结果非常好。