使用 R 来“翻译”编码表时遇到问题。所以我有一个包含XX,XY,YY表格元素的表格。我有第二个表(.csv),其中包含X和Y的正确含义 - 所以它可能看起来像,如果X = 1且Y = 2,
XY转换为12 XX转变为11 ......
任何人都可以提示在 R 中编写这样的程序/代码吗?
答案 0 :(得分:2)
这与查找表略有不同,因为您实际上正在重新编译并替换每个元素的部分。 qdap(定量话语分析包)有一个mgsub
(多个gsub
)函数,可以轻松处理这个问题。
library(qdap)
#recreate scenerio with quick character vector (no need for quotes)
z <- factor(qcv(XX,XY,YY))
#replace all X and Ys with 1 and 2
mgsub(pattern = c("X", "Y"), replacement = c(1, 2), text.var = z)
#Even better if you have the code book read in, say it looks like this:
code.book <- data.frame(symb = c("X", "Y"), replacement = c(1, 2))
# > code.book
# symb replacement
# 1 X 1
# 2 Y 2
mgsub(code.book$symb, code.book$replacement, z)