Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R gsub带字符的多重数字_R_Gsub - Fatal编程技术网

R gsub带字符的多重数字

R gsub带字符的多重数字,r,gsub,R,Gsub,我试图用一个字符替换一列多个数字 [,1] 1 2 3 4 5 6 我有一列数字,我想把1,2,3改为“a”,把4,5,6改为“b” 我该怎么做呢? 我可以这样做: gsub(1, "a", mydata) gsub(2, "a", mydata) gsub(3, "a", mydata) gsub(4, "b", mydata) gsub(5, "b", mydata) gsub(6, "b", mydata) 但是它很长,我想要更整洁的 我尝试了gsub(c(1,2,3),“a”,my

我试图用一个字符替换一列多个数字

[,1]
1
2
3 
4
5
6
我有一列数字,我想把1,2,3改为“a”,把4,5,6改为“b

我该怎么做呢? 我可以这样做:

gsub(1, "a", mydata)
gsub(2, "a", mydata)
gsub(3, "a", mydata)
gsub(4, "b", mydata)
gsub(5, "b", mydata)
gsub(6, "b", mydata)
但是它很长,我想要更整洁的

我尝试了
gsub(c(1,2,3),“a”,mydata)
,但没有成功

我发现的另一个选择是
chartr(“áëó”,“aeo”,mydata)
,但我认为它在我的情况下不起作用


有没有更简单的方法

这里有两种方法需要考虑,它们都不使用
gsub

样本数据:

set.seed(1)
vec <- sample(6, 15, TRUE)
vec
# [1] 2 3 4 6 2 6 6 4 4 1 2 2 5 3 5
与预定义词典匹配:

chr <- c(a = 1, a = 2, b = 3, b = 4, c = 5, d = 6) ## Just as an example
names(chr)[match(vec, chr)]
# [1] "a" "b" "b" "d" "a" "d" "d" "b" "b" "a" "a" "a" "c" "b" "c"

chr添加语言标签。是的,对不起,这是R。
chr <- c(a = 1, a = 2, b = 3, b = 4, c = 5, d = 6) ## Just as an example
names(chr)[match(vec, chr)]
# [1] "a" "b" "b" "d" "a" "d" "d" "b" "b" "a" "a" "a" "c" "b" "c"