我有一个包含40个类别变量的调查,其中有四个我需要重新编码的答案选项。
变量示例:
table (BD$Q12)
Never 3-5 times
104 3
table (BD$Q1)
Never 1-2 Times 3-5 Times 6+ Times
83 16 5 2
到目前为止,我从事5-8个变量的调查,因此可以使用以下代码行解决我的问题:
BD$Q1 <- factor (BD$Q1, levels = c ("Never", "1-2 Times", "3-5 Times", "6 + Times"))
但是我不知道如何将其自动化到所有列。
我尝试
BD [, names] <- lapply (BD [, names], factor)
但并非所有变量都具有识别出的4种类型的答案(它们可以具有1、2、3或4),因此我得到了几种类型的级别。有任何线索吗?
谢谢!
答案 0 :(得分:0)
您可以在function round(number, significance) {
return Math.ceil(number / significance) * significance;
}
console.log(round(10.986, 5));
console.log(round(105.32, 5));
dplyr
这将重新编码library(dplyr)
BD %>%
mutate_all(~factor(.x, levels = c ("Never", "1-2 Times", "3-5 Times", "6 + Times")))
的所有列。