Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何识别数据集中的因素_R_Database - Fatal编程技术网

R 如何识别数据集中的因素

R 如何识别数据集中的因素,r,database,R,Database,我使用的是从UCI检索到的成人数据集,我称之为成人数据。我正在尝试识别数据集中的因素。首先,我试图删除丢失数据的观察值,所以有没有任何一行有?在V1、V2、…、V15列中,我想删除。我尝试了以下方法: adultdata1<- adultdata[adultdata$V2 !="?",] 我提出的一个解决方案是,确定数值是什么?通过使用: sapply(adultdata, class) as.numeric(adultdata$V2) 结果呢?is=1,然后删除?值使用: adul

我使用的是从UCI检索到的成人数据集,我称之为成人数据。我正在尝试识别数据集中的因素。首先,我试图删除丢失数据的观察值,所以有没有任何一行有?在V1、V2、…、V15列中,我想删除。我尝试了以下方法:

adultdata1<- adultdata[adultdata$V2 !="?",]
我提出的一个解决方案是,确定数值是什么?通过使用:

sapply(adultdata, class)
as.numeric(adultdata$V2)
结果呢?is=1,然后删除?值使用:

adultdata1<- adultdata[as.numeric(adultdata$V2) !="1",]

我必须对每个包含缺失值的变量V2、V3、…、V15执行此操作。我觉得应该有更简单的方法?我还希望能够识别它们所称的值,而不是它们的数字类别。

尝试在中读取数据并设置StringsAsAffactors=F:

read.csv(file = 'myfile',header = T, stringsAsFactors = F)

R将比我更倾向于默认一个因子。除非我明确想要,否则我倾向于避免使用该因子。

strip.white=T是解决方案。所有文本前面都有一个空格。就上面写的内容而言

adultdata1<- adultdata[adultdata$V2 !=" ?",] 


这两种方法都有效。注意?前面的空格

这不一定重要,因为因子?=?是真的,即可以使用!=和==在因子上。@RichardScriben你是对的。知道为什么子集不起作用吗?大概真的吗?或者其他一些微妙的区别…我认为你的问题不清楚。您要求对因子进行索引,但问题更像是我想删除V2等于a?的字符串。好吧,我需要识别它们以供将来分析。我宁愿使用给出的名称,而不是它们的数字基础,例如1是=?。因此,我想大体上拜访他们。如果我知道如何做到这一点,我也可以解决出现的问题。尝试查找与?捆绑的任何非打印字符,这在我身上发生过。您可以使用grep而不是相等测试来设置susbset,也可以查看伟大的stringi包,特别是stringi::stri_escape_unicode
adultdata1<- adultdata[adultdata$V2 !=" ?",] 
adultdata1<- subset(adultdata, V2!="?")