在r中连接两个字符串列表

时间:2017-06-08 21:26:40

标签: r string data-manipulation

这是我的样本:

a = c("a","b","c")
b = c("1","2","3")

我需要自动连接a和b。结果应为“a 1”,“a 2”,“a 3”,“b 1”,“b 2”,“b 3”,“c 1”,“c 2”,“c 3”。< / p>

目前,我正在使用粘贴功能:

paste(a[1],b[1])

我需要一种自动方式来做到这一点。除了编写循环外,有没有更简单的方法来实现这个目标?

3 个答案:

答案 0 :(得分:3)

c(outer(a, b, paste))

# [1] "a 1" "b 1" "c 1" "a 2" "b 2" "c 2" "a 3" "b 3" "c 3"

答案 1 :(得分:2)

你可以这样做:

c(sapply(a, function(x) {paste(x,b)}))
[1] "a 1" "a 2" "a 3" "b 1" "b 2" "b 3" "c 1" "c 2" "c 3"

已将 paste0修改为paste以匹配OP更新

答案 2 :(得分:2)

其他选项包括:

paste(rep.int(a,length(b)),b)

或:

with(expand.grid(b,a),paste(Var2,Var1))
相关问题