R , 拨浪鼓 , 重新编码
R , rattle , recode
R , 拨浪鼓
这是我的数据:
KK<- c('yes','no','yes','yes','dp')
LL<- c('dp','no','yes','yes','no')
II<- c('yes','dp','no','no','no')
JJ<- c('yes','no','yes','yes','dp')
AA<- c('no','dp','yes','yes','yes')
MYDATA <- data.frame(KK,LL,II,JJ,AA);MYDATA
目标:
将「no」重新编码为「0.0」
将「是」重新编码为「1.0」
重新编码「dp」为「0.5」
问题:
我如何使用包“rattle”在 r 中重新编码
假设您正在寻找一个数字结果:
(MYDATA == "dp") / 2 + (MYDATA == "yes")
给予:
KK LL II JJ AA
[1,] 1.0 0.5 1.0 1.0 0.0
[2,] 0.0 0.0 0.5 0.0 0.5
[3,] 1.0 1.0 0.0 1.0 1.0
[4,] 1.0 1.0 0.0 1.0 1.0
[5,] 0.5 0.0 0.0 0.5 1.0
我们可以将 'MYDATA' 转换为 'matrix',将 'character' class 更改为 'factor',方法是将标签指定为 '0.5, 0, 1 ' 根据级别的顺序并将其分配回 'MYDATA'。 []
将确保结构保持不变。
MYDATA[] <- as.numeric(as.character(factor(as.matrix(MYDATA),
labels=c(0.5, 0, 1))))
MYDATA
# KK LL II JJ AA
#1 1.0 0.5 1.0 1.0 0.0
#2 0.0 0.0 0.5 0.0 0.5
#3 1.0 1.0 0.0 1.0 1.0
#4 1.0 1.0 0.0 1.0 1.0
#5 0.5 0.0 0.0 0.5 1.0
R , 拨浪鼓
这是我的数据:
KK<- c('yes','no','yes','yes','dp')
LL<- c('dp','no','yes','yes','no')
II<- c('yes','dp','no','no','no')
JJ<- c('yes','no','yes','yes','dp')
AA<- c('no','dp','yes','yes','yes')
MYDATA <- data.frame(KK,LL,II,JJ,AA);MYDATA
目标:
将「no」重新编码为「0.0」
将「是」重新编码为「1.0」
重新编码「dp」为「0.5」
问题: 我如何使用包“rattle”在 r 中重新编码
假设您正在寻找一个数字结果:
(MYDATA == "dp") / 2 + (MYDATA == "yes")
给予:
KK LL II JJ AA
[1,] 1.0 0.5 1.0 1.0 0.0
[2,] 0.0 0.0 0.5 0.0 0.5
[3,] 1.0 1.0 0.0 1.0 1.0
[4,] 1.0 1.0 0.0 1.0 1.0
[5,] 0.5 0.0 0.0 0.5 1.0
我们可以将 'MYDATA' 转换为 'matrix',将 'character' class 更改为 'factor',方法是将标签指定为 '0.5, 0, 1 ' 根据级别的顺序并将其分配回 'MYDATA'。 []
将确保结构保持不变。
MYDATA[] <- as.numeric(as.character(factor(as.matrix(MYDATA),
labels=c(0.5, 0, 1))))
MYDATA
# KK LL II JJ AA
#1 1.0 0.5 1.0 1.0 0.0
#2 0.0 0.0 0.5 0.0 0.5
#3 1.0 1.0 0.0 1.0 1.0
#4 1.0 1.0 0.0 1.0 1.0
#5 0.5 0.0 0.0 0.5 1.0