2013-10-14 89 views
-1

我无法正确导入数据到缺少值的txt文件中的r中。当我导入时,具有缺失值的数值列(已尝试将它作为".""Na")作为因子变量读取。我用的是进口的代码是:从txt文件中将数据导入到r中,但缺失值

dat2 <- read.table(file.choose(), header = T) 

在数据结构看,我看到感兴趣的列:

adultreg : Factor w/ 19 levels "1.85","101.75",..: 11 15 15 1 13 6 17 9 16 3 

因素转换为数值型变量(dat2$adultreg<-as.numeric(dat2$adultreg)后,我问[R为了输出数据,我可以看到它是什么,它不再是来自文本文件的数据。

+2

您应该使用函数read.table'(...,'stringsAsFactors = FALSE')。 – agstudy

回答

1

R中的因素非常棘手 - 它们实际上是作为整数存储的,其中每个整数都基于levels进行解码。

转换的最直观的方法是as.numeric(as.character(dat2$adultreg))

最快的方法(我相信)是levels(dat2$adultreg)[dat2$adultreg]

+0

谢谢。这确实有帮助。但现在当我尝试创建一个包含缺失值的变量的线性模型时,我得到一个错误,指出对象中缺少值。我应该如何将这些标记在我的原始数据中,以防止这种情况发生?或者它在导入命令中,我正确处理这个? – user2880353

+1

@ user2880353此评论与原始问题无关。避免在同一个OP中询问许多问题。这就是说,你只需要删除你的错误值。 – agstudy