我阅读了很多文章,但似乎无法找到答案
census <- read.csv("data.csv", header=FALSE)
count <- 0
for(i in 1 : nrow(census)) {
if(!(census[i,2] == '?' || census[i,7] == '?' || census[i,14] == '?')) {
# need these values to be in the data frame.
count <- count + 1
}
}
有几列具有由?
表示的未知值。如何在没有?
答案 0 :(得分:0)
试试这个让我知道:
即使一行有"?"
,该行也会被移除
census[(apply(census =="?", 1, sum)==0), ]
答案 1 :(得分:0)
以下是另一项试验。 ?
替换为NA,然后complete.cases()
用于子集化。
set.seed(1237)
census <- data.frame(col1 = sample(c('a','?','b'), 10, TRUE),
col2 = sample(c('a','?','b', 'c'), 10, TRUE),
stringsAsFactors = FALSE)
census[] <- lapply(census, function(x) { x[x == '?'] <- NA; x} )
census[complete.cases(census),]
col1 col2
1 a a
2 b c
3 a a
5 a b
6 b a
7 b c
10 b a