R语言删除不规范的值(或NA)

在使用R语言处理表格时(xlsx, csv),有时里面含有缺失值,或者不规范的数值,比如下图有许多的问号“?”,为了便于处理数据,这些都应该整行地删掉。

R语言删除不规范的值(或NA)

为了删掉那些包含"?"的行,需要先找到那些行,方法如下,通过 which(逻辑表达式) 函数找到对应行标

> data<- read.csv(‘breast_cancer.csv‘);
> which(data$x6=="?")
 [1]  24  41 140 146 159 165 236 250 276 293 295 298 316 322 412 618

然后直接进行切片操作就得到了对应的行,然而我们找到的只是包含"?"的行,为了便于直接调用R语言中删除包含NA行的函数,我们可以选择先把"?"转换为NA

data$x6[which(data$x6=="?")]=NA;

    然后直接调用如下函数

data=na.omit(data);

就完成了

-----------------------------------

ZKe

相关推荐