处理CHNS受教育年限数据,由于原始数据受教育年限(变量a11)是编码,不是真正的教育年限
现在需要根据编码产生受教育年限变量educyear
写了一个程序,但赋值不对,
各位看看哪里错了
或者有什么更好的编程方法。
谢谢
load("chns_educ.rda")
names(educ)
educ <- within(educ, {
educyear <- a11
educyear[a11>=11 & a11<=16 & is.na(a11)==F] <- a11 - 10
educyear[a11>=21 & a11<=26 & is.na(a11)==F] <- a11 - 20 + 6
educyear[a11>=27 & a11<=29 & is.na(a11)==F] <- a11 - 17
educyear[a11>=31 & a11<=36 & is.na(a11)==F] <- a11 - 30 + 12
})