1
真正的R程序员如何用冗余步骤编写代码块?在这里,我复制/粘贴/编辑每一行,这对于这个小的分析来说工作得很好,但对于较大的分析来说却很笨拙。在SAS中,我会编写宏。在R中寻找生成原理。重构R中重复代码的提示
本示例有一些典型模式,如重新编码一组连续的列和/或具有编号模式。此外,重新编码逻辑仅仅是“将NA替换为0,然后将1加上”作为其他算法的输入,这些算法需要输入变量的正整数,这里使用的库为car
。
data$rs14_1 <- recode(data$q14_1,"5=6;4=5;3=4;2=3;1=2;0=1;NA=0")
data$rs14_2 <- recode(data$q14_2,"5=6;4=5;3=4;2=3;1=2;0=1;NA=1")
data$rs14_3 <- recode(data$q14_3,"5=6;4=5;3=4;2=3;1=2;0=1;NA=1")
data$rs14_4 <- recode(data$q14_4,"5=6;4=5;3=4;2=3;1=2;0=1;NA=1")
data$rs14_5 <- recode(data$q14_5,"5=6;4=5;3=4;2=3;1=2;0=1;NA=1")
data$rs14_6 <- recode(data$q14_6,"5=6;4=5;3=4;2=3;1=2;0=1;NA=1")
data$rs14_7 <- recode(data$q14_7,"5=6;4=5;3=4;2=3;1=2;0=1;NA=1")
data$rs14_8 <- recode(data$q14_8,"5=6;4=5;3=4;2=3;1=2;0=1;NA=1")
data$rs14_9 <- recode(data$q14_9,"5=6;4=5;3=4;2=3;1=2;0=1;NA=1")
这很好。我看到生成原理是使用R来将列名称表示为R向量本身,使用R作为它自己的宏语言。在这种情况下,技巧是定义一个数据框只需要一列。 – prototype 2014-09-11 13:35:11