通过在R中有效地连接2个向量的对应元素来制作向量列表

Mar*_*ras 10 r list vector

我有2个向量:

v1 <- letters[1:5]
v2 <- as.character(1:5)

> v1
[1] "a" "b" "c" "d" "e"
> v2
[1] "1" "2" "3" "4" "5"
Run Code Online (Sandbox Code Playgroud)

我想创建一个长度为5的列表,其中包含元素的向量,由两个字符值组成:value from v1v2相应索引号的值:

> list(c(v1[1], v2[1]),
+      c(v1[2], v2[2]),
+      c(v1[3], v2[3]),
+      c(v1[4], v2[4]),
+      c(v1[5], v2[5]))
[[1]]
[1] "a" "1"

[[2]]
[1] "b" "2"

[[3]]
[1] "c" "3"

[[4]]
[1] "d" "4"

[[5]]
[1] "e" "5"
Run Code Online (Sandbox Code Playgroud)

如何有效地做到这一点R

Sim*_*lon 11

mapply(c, v1, v2, SIMPLIFY = FALSE)
#$a
#[1] "a" "1"

#$b
#[1] "b" "2"

#$c
#[1] "c" "3"

#$d
#[1] "d" "4"

#$e
#[1] "e" "5"
Run Code Online (Sandbox Code Playgroud)

(或者更准确地说,关于你的OP返回一个未命名的列表使用mapply(c, v1, v2, SIMPLIFY = FALSE, USE.NAMES = FALSE)).