recoding变量返回“未定义列选中”

时间:2017-11-20 22:51:24

标签: r

我花了几个小时试图解决这个问题: 我需要对变量进行反向编码。我在3个不同的时间点有3个相同的变量。前两个很容易重新编码,但第三个返回“未选定的列选择”,即使我复制粘贴代码。我也尝试过相同代码的不同版本,并遇到同样的问题。 当我打印(dat $ cuppass)时,它返回打印值,1 NA。我有类似的1或2个NAs与前2个时间点,并且在应用complete.cases时没有遇到任何问题。 谁能想出如何重新编码3d变量?

谢谢!

这些工作:

dat$cdppassr <- 5-dat$cdppass[complete.cases(dat[dat$cdppass])]
print(dat$cdppassr)
dat$pdppassr <- 5-dat$pdppass[complete.cases(dat[dat$pdppass])]
print(dat$pdppassr)

这两个都没有,

dat$cuppassr <- 5-dat$cuppass[na.omit(dat[dat$cuppass])]

也不行:

dat$cuppassr <- recode[na.omit(dat$cuppass,'0=5; 1=4; 2=3; 3=2; 4=1; 5=0')]

> print(cuppass)<br/>
  [1]  5  5  5  5  4  3  4  3  3  3  5  4  5  3  5  5  3  3  5  3  3  3  3  4  3  3  4  2<br/>
 [29]  3  3  5  2  3  2  5  3  3  4  5  3  4  5  3  5  4  5  5  4  3  5  3  5  3  4  3  5<br/>
 [57]  4  5  4  4  4  3  3  5  4  4  5  5  3  4  4  4  3  3  3  5  5  5  3  5  3  4  3  3<br/>
 [85]  2  4  3  3  4  5  2  5  5  3  4  4  3  5  5  5  3  5  5  5  3  5  5  3  5  3  5  5<br/>
[113]  4  5  5  3  3  5  3  2  5  5  5  5  4  5  3  5  4  5  5  5  5  4  5  5  3  5  5  5<br/>
[141]  3  5  5  5  3  3  2  5  4  2  3  5  4  5  5  3  3  5  5  5  3  3  5  5  5 NA  3  3<br/>
[169]  5  5  5  5  5  3  5  5  3  5  5  4  5  4  3  5  4  3  2  5  3  3  4  3  5  2  4  5<br/>
[197]  5  3  5  4  4  4  4  2  5  5  4  5  3  2  4  5  4  5  5  5  3  3  5  5  5  3  3  5<br/>
[225]  5  4  2  5  5  3  5  5  3  3  5  4  5  5  0  3  3  5  3  3  4  3  3  1  5  5  5  5<br/>
[253]  5  3  4  5  4  5  5  5  3  5  5  2  5  5  2  3  5  4  5  5  5  3  4  3  3  5  3  3<br/>
[281]  3  3  5  5  3  3  2  5  4  5  3  4  3  4  3  5  4  3  5  5  3  5  5  3  5  5  5  5<br/>
[309]  5  3  5  5  5  5  5  5  4  5  5  3  4  4  5  5  5  5  3  5  3  5  3  5  5  5  5  2<br/>
[337]  3  0  3  3  5  3  3  5  3  4  4  5  5  5  5  3  5  5  3  4  3  5  4  5  4  5  3  2<br/>
[365]  3  3  5  3  5  5  3  4  4  5  5  5  4  5  3  5  3  3  5  3  5  3  5  3  3  5  5  2<br/>
[393]  3  3  5  5  4  3  5  4  3  3  4  3<br/>

0 个答案:

没有答案