将具有多个数字的向量求和为另一个向量

时间:2020-11-06 08:54:53

标签: r

让我说我有两个向量。一个是我想在每次求和中重复的一般向量,另一个是我想与一般向量相加的数字的容器。

general_vector = c(1:3)
container = c(1:4)

我想要的结果是:

c(1+general_vector, 2+general_vector, 3+general_vector, 4+general_vector)

所以输出应该是

[1] 2 3 4 3 4 5 4 5 6 5 6 7

基本上我想得到一个包含多个项的向量之和的向量。我该如何实现?

2 个答案:

答案 0 :(得分:0)

您可以使用outer进行此操作:

result <- c(outer(general_vector, container, `+`))
result
#[1] 2 3 4 3 4 5 4 5 6 5 6 7

sapply

result <- c(sapply(container, `+`, general_vector))

答案 1 :(得分:0)

我们可以将Reduceexpand.grid一起使用

Reduce(`+`, expand.grid(general_vector, container))
#[1] 2 3 4 3 4 5 4 5 6 5 6 7
相关问题