【问题标题】:add every combination between two vectors in R [duplicate]在R中添加两个向量之间的每个组合[重复]
【发布时间】:2020-09-06 18:54:25
【问题描述】:

我有两个长度不等的向量:


vector1 <- c(1,2)
vector2 <- c(1,2,3)

我想将每个字符添加到每个其他字符并输出一个看起来像这样的矩阵:


2,3,4
3,4,5

我的实际向量非常大,所以我需要一种有效的方法。

【问题讨论】:

    标签: r vector


    【解决方案1】:

    我们可以使用outer,这对于更大的向量会更有效

    outer(vector1, vector2, `+`)
    #     [,1] [,2] [,3]
    #[1,]    2    3    4
    #[2,]    3    4    5
    

    或者另一个选项是rep

    matrix(rep(vector1, each = length(vector2)) + vector2, 
                nrow = length(vector1), byrow = TRUE)
    

    或者sapply

    sapply(vector2, `+`, vector1)
    

    【讨论】:

      猜你喜欢
      • 2017-12-29
      • 2011-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-12
      • 2023-03-12
      • 2017-10-25
      • 1970-01-01
      相关资源
      最近更新 更多