问题描述
我正在搜索如何替换我的数据集中丢失的值被分类为“未知”的内容 所有未知值都在因子列中.. 例如,我的婚姻状况有已婚、单身离异和未知。我正在寻找如何替换“未知”而不是删除的方法。其他因素只有是、否、未知。
bank$marital <- factor(c('married','divorced','married','unkNown','single'))
我只想用例如“单身”替换“未知”
bank$marital = bank$marital.fillna(bank$marital.mode[yes],inplace = True)
bank$marital[is.na(bank$marital)]<-mean(bank$marital,na.rm=TRUE)
我不能使用mean,因为它的因素...... 但我找不到如何替换因子中的“未知”值的正确方法
解决方法
你的意思是像下面这样吗?
f <- type.convert(f,as.is = TRUE)
replace(f,is.na(f),mean(f,na.rm = TRUE))
# [1] 1.000 2.775 4.000 3.000 3.100 2.775
虚拟数据
f <- factor(c(1,NA,4,3,3.1,NA))
,
这个?
见here。
bank <- data.frame(marital = as.factor(c('married','divorced','married','unknown','single')))
levels(bank$marital) <- c(levels(bank$marital),"x") # add new level
bank$marital[ bank$marital == "unknown" ] <- "x"
bank$marital
#> [1] married divorced married x single
#> Levels: divorced married single unknown x
由 reprex package (v0.3.0) 于 2021 年 1 月 29 日创建