[英]Using R to recode numeric variables
我正在處理一個數據集,我必須在其中重新編碼變量,以便從不和很少 =0,有時和總是為 1,不適用為 NA。 作為參考,代碼的編號方案是 1=從不,2=很少,3=有時,4=總是,5=不適用。 我應該在重命名之前更改數字變量還是將字符變量更改為數字變量? 我陷入了僵局,可以使用有關使用什么代碼的幫助。
您有一個值為 1 到 5 的向量(或數據框列) x
,例如:
x <- c(1,2,3,4,5,4,3,2,1)
您想將 1 和 2 重新編碼為 0,將 3 和 4 重新編碼為 1,將 5 重新編碼為 NA。
values <- list(`1` = 0, `2` = 0, `3` = 1, `4` = 1, `5` = NA)
x <- unname(unlist(values[x]))
[1] 0 0 1 1 NA 1 1 0 0
values <- list(`1` = 0, `2` = 0, `3` = 1, `4` = 1, `5` = NA_real_)
x <- dplyr::recode(x, !!!values)
[1] 0 0 1 1 NA 1 1 0 0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.