我有一个名为 myvec<- (c(141,143,139,139,140,141,138,140,142,138)) 的向量。
如何在 , 的每个 n=3 实例中插入 Y ?

我想要的结果是:141,143,139Y139,140,141Y138,140,142

最佳答案

可能我们需要

gsub("([^,]+,[^,]+,[^,]+),", "\\1Y", paste(myvec, collapse=","))

为了使其更具普遍性,可以使用 strrepsprintf 创建模式
createPattern <- function(n) {
   sprintf("(%s[^,]+),", strrep("[^,]+,", n-1))
 }

pat <- createPattern(3)
gsub(pat, "\\1Y", paste(myvec, collapse=","))

关于r - 在 R 中的每第 n 个实例处插入一个字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57044895/

10-12 17:49