代码之家  ›  专栏  ›  技术社区  ›  Brani

计算列表或三维数组中矩阵的和

  •  5
  • Brani  · 技术社区  · 15 年前

    给定一个2x2矩阵的列表(长度=n),如何计算所有这些矩阵的和(并得到一个2x2矩阵)?

    如果我把这些矩阵放在一个(2x2xn)维数组中,而不是一个列表,我该怎么做呢?

    2 回复  |  直到 15 年前
        1
  •  7
  •   rcs    15 年前

    列表中矩阵的总和:

    Reduce("+", matrix_list)
    
        2
  •  4
  •   Marek    15 年前

    我会弄乱数组所以如果你有 list 例如。:

    n <- 5
    someList <- lapply(1:n, function(i) matrix(1:4+(i-1)*4,2,2))
    

    array

    someArray <- array(unlist(someList ), c(2,2,n))
    

    现在你可以用 rowSums

    rowSums(someArray, dims=2)
    #      [,1] [,2]
    # [1,]   45   55
    # [2,]   50   60
    
    推荐文章