如何 gsub 连续第二个字符
How to gsub second character in a row
我正在尝试对连续的第二个字符进行 gsub。我觉得我很接近,但我似乎无法弄清楚。我尝试阅读它并查看其他示例。我好像想不通
这是我正在尝试的
df3 <- c("ATG")
df4 <- gsub('^.{0,2}', 'A', df3)
df5 <- gsub('^.{0,2}', 'T', df3)
df6 <- gsub('^.{0,2}', 'G', df3)
df7 <- gsub('^.{0,2}', 'C', df3)
这就是我想要的输出结果
AAG
ATG
AGG
ACG
但目前的输出是这样的
AG
TG
GG
CG
我觉得我很接近,但我似乎无法弄清楚
是否必须 gsub
?
substr
可以轻松获取第二个元素
substr(df3, start = 2, stop = 2).
substr(df3, start = 2, stop = 2) <- "A"
分配所需的字符。
你可以试试:
gsub("^(.).{1}", "\1A", df3)
(.)
获取第一个字符作为要提取的组 - 与 \1
匹配。
然后 .{1}
获取下一个字符。
我正在尝试对连续的第二个字符进行 gsub。我觉得我很接近,但我似乎无法弄清楚。我尝试阅读它并查看其他示例。我好像想不通
这是我正在尝试的
df3 <- c("ATG")
df4 <- gsub('^.{0,2}', 'A', df3)
df5 <- gsub('^.{0,2}', 'T', df3)
df6 <- gsub('^.{0,2}', 'G', df3)
df7 <- gsub('^.{0,2}', 'C', df3)
这就是我想要的输出结果
AAG
ATG
AGG
ACG
但目前的输出是这样的
AG
TG
GG
CG
我觉得我很接近,但我似乎无法弄清楚
是否必须 gsub
?
substr
可以轻松获取第二个元素
substr(df3, start = 2, stop = 2).
substr(df3, start = 2, stop = 2) <- "A"
分配所需的字符。
你可以试试:
gsub("^(.).{1}", "\1A", df3)
(.)
获取第一个字符作为要提取的组 - 与 \1
匹配。
然后 .{1}
获取下一个字符。