gsub需要字符串参数。但我想处理一整套字符串替换。我的示例代码如下,但不起作用
pairs <- c(c("a", "b"), c("e", "f"))
gsub("a", "b", "age")
#[1] "bge"
p1 <- pairs[1][1]
p1
#[1] "a"
p2 <- pairs[1][2]
gsub(p1, p2, "age")
#[1] NA
我确定这是关于向量和字符串之间差异的基本要素,但我不知道如何解决它。为无疑是一个重复的问题道歉,但我试图谷歌搜索了很多虚假的线索
因此,通过以下评论和回答,我现在明白了: 没有真正得到“一切都是矢量”我正在制作一个虚假的心理模型,c(“a”,“b”)将字符转换为字符矢量。 通过扩展,我认为c(c(“a”,“b”),c(“e”,“f”))正在创建一个矢量矢量 但是c(“a”,“b”)实际上是将2个单元素向量组合成单个2元素向量,并通过扩展c(c(“a”,“b”),c(“e”,“f) “))实际上将两个2元素向量组合成4元素向量。 因此,矩阵确实是我应该首先使用的。 谢谢你们!
答案 0 :(得分:0)
虽然你有pairs
作为字符向量的向量。最后,如果你检查pairs
,它会给出
pairs
#[1] "a" "b" "e" "f"
因此,您可以将它们与单个索引一起使用
p1 <- pairs[1]
p2 <- pairs[2]
gsub(p1, p2, "age")
#[1] "bge"