【发布时间】:2012-08-02 15:59:40
【问题描述】:
我有一个包含数值变量和因子的数据框。
当将数据从一个数据帧移动到另一个数据帧时,一切都按我的意愿保存:
copy_data<-as.data.frame(original_data)
这将创建一个包含因子剩余因子的“original_data”副本。
当我尝试更复杂的版本时,最终结果是数值数据框,而我希望因子仍然是因子:
model_data<-with(subset(copy_data, copy_data$var1<0),
as.data.frame(cbind(var1, var2, var3, factor1, factor2, factor3)))
所以 factor1、factor2 和 factor3 最终都是数字而不是因数。我错过了什么?我尝试过使用和不使用as.data.frame,并在填充之前将 model_data 定义为数据框。
我对 StackExchange 存档的搜索主要返回关于故意将因素更改为变量的结果,并且对我没有多大帮助。略显笨拙的标题是为了将我的问题与那些问题区分开来。
【问题讨论】:
-
欢迎来到 StackOverflow。也许如果您制作了一个 reproducible example 来展示您的问题/问题,人们会发现它更容易回答。在您的案例中,一个可重现的示例将包含一些演示问题的示例数据。
标签: r dataframe subset with-statement