names(dataALL)
a=as.data.frame(table(dataALL$"年龄",useNA="always"))
# 只有“岁”的为缺失值
dataALL$"年龄"[dataALL$"年龄"=="岁"] <- NA
# 包含天的 替换为1/12=0.083年,相当于1个月吧
dataALL$"年龄"=sub(pattern = ".*(天).*",
replacement = "\\20.083", dataALL$"年龄")
a=as.data.frame(table(dataALL$"年龄",useNA="always"))
# 去除掉岁字
dataALL$"年龄"=gsub('岁', '', dataALL$"年龄")
a=as.data.frame(table(dataALL$"年龄",useNA="always"))
# 只出现月 直接/12 算年
data2=dataALL[stringr::str_which(dataALL$"年龄",'月'),c("卡片ID","年龄")]
data2$"年龄"=stringr::str_extract(pattern = "^\\d{1,2}",data2$"年龄")
data2$"年龄"=round(as.numeric(data2$"年龄")/12,3)
dataALL$"年龄"[stringr::str_which(dataALL$"年龄",'月')] <- data2$"年龄"
a=as.data.frame(table(dataALL$"年龄",useNA="always"))
【R语言】对年龄数据进行清洗
最新推荐文章于 2023-03-19 21:16:07 发布