1
我想編寫一個與SPSS命令AUTORECODE完全相同的函數。AUTORECODE從SPSS到R
AUTORECODE將字符串和數字變量的值重新編碼爲連續的整數,並將重新編碼的值放入一個稱爲目標變量的新變量中。
起初我試過這樣:
AUTORECODE <- function(variable = NULL){
A <- sort(unique(variable))
B <- seq(1:length(unique(variable)))
REC <- Recode(var = variable, recodes = "A = B")
return(REC)
}
但是,這會導致錯誤。我認爲這個問題是由A和B對recodes參數的承諾引起的。這就是爲什麼我試圖
eval(parse(text = paste("REC <- Recode(var = variable, recodes = 'c(",A,") = c(",B,")')")))
內的功能。但這不是正確的解決方案。
想法?
如果我沒有弄錯,這不是什麼'因素'嗎? – James 2013-02-20 15:42:19
@James:'as.numeric(factor(。))'來獲得實際的整數,但是。 – Aaron 2013-02-20 15:46:11
因子將變量中的唯一值作爲等級返回。該功能應返回級別,從1開始。 – Diegoal 2013-02-20 15:48:39