此问题已在此处有答案:
How to merge 2 vectors alternating indexes?(6个回答)
2天前关闭。
假设我有一个字符串向量:
vec <- c("D", "A", "B", "A")
我想插入一个修改后的字符串(在字符串的末尾连接“_2”),直接在原始字符串之后,不排序。
预期输出:
[1] "D" "D_2" "A" "A_2" "B" "B_2" "A" "A_2"
我正在寻找比我下面分享的更简单的解决方案,我认为这可能是不必要的过于复杂。
4条答案
按热度按时间x759pob21#
尝试
c
+rbind
沿着paste0
或带有
outer
的更长版本如果你不介意效率,你可以试试
因为当具有较长向量时
scan
可能较慢。djp7away2#
也可以使用
vctrs::vec_interleave
:或者,在每隔一个元素中添加
"_2"
:qkf9rpyu3#
使用
sprintf
将原始字符串和修改后的字符串连接在一起,并添加一个符号,确保该符号不会出现在原始字符串中,然后拆分它们并使用unlist
。0h4hbjxa4#
一个选项可能是每秒
rep
vec和replace
。