R——将多个文本模式关联到单个引用
我有一个数据文件,其中包含重复的代码,我需要将这些代码映射到更正式的名称。我的数据文件有一列,代码代表一个内部机构。。。。“123”、“1234”和“12345”是重复多次的代码。代码“123”等于“ABC”,代码“1234”等于“BCA”,而“12345”等于“CAB”。我只想添加另一列来映射这些关系 我尝试了下面的gsub代码,但每个实例都重写了前面的命令R——将多个文本模式关联到单个引用,r,gsub,R,Gsub,我有一个数据文件,其中包含重复的代码,我需要将这些代码映射到更正式的名称。我的数据文件有一列,代码代表一个内部机构。。。。“123”、“1234”和“12345”是重复多次的代码。代码“123”等于“ABC”,代码“1234”等于“BCA”,而“12345”等于“CAB”。我只想添加另一列来映射这些关系 我尝试了下面的gsub代码,但每个实例都重写了前面的命令 data$agency您可以试试 install.packages("stringr") library(stringr) data$
data$agency您可以试试
install.packages("stringr")
library(stringr)
data$agency <- sapply(data$Code, function(x) str_replace_all(x, c("12345"="CAB","1234"="BCA","123"="ABC")))
install.packages(“stringr”)
图书馆(stringr)
数据$agency解释“Emiliman 5”评论
> data
agency
1 12345
2 1234
3 123
创建一个新的代码表,如下所示:
> codeTable
code value
1 123 ABC
2 1234 BCA
3 12345 CAB
并且,以下命令将返回所需的结果:
> data['new_column'] <- codeTable$value[match(data$agency, codeTable$code)]
> data
agency new_column
1 12345 CAB
2 1234 BCA
3 123 ABC
>数据['new_column']数据
机构新专栏
12345驾驶室
21234 BCA
3123 ABC
您应该使用数据$agency查看匹配
。创建一个旧代码和新代码的查找表,然后匹配它们。Chi-Pak--工作得很好!!非常感谢。萨加尔和埃米利曼5-谢谢你的建议,这也很有效。