【问题标题】:How to rbind two matrix with different number of columns?如何绑定两个具有不同列数的矩阵?
【发布时间】:2020-01-24 21:26:43
【问题描述】:

如何 rbind 具有不同行号的两个矩阵 我有两个行数不同的矩阵,当我尝试组合它们时,有错误报告:

A <- matrix (1:4, 2)
B <- matrix (6:11, 2)
rbind(A,B)
"Error in rbind(A, B):
  number of columns of matrices must match (see arg 2)"

我想要

       [,1] [,2] [,3]
 [1,]    1    3
 [2,]    2    4
 [1,]    6    8   10
 [2,]    7    9   11

【问题讨论】:

标签: r matrix rbind


【解决方案1】:

我们可以转换为data.frame 并使用bind_rows。如果列名不匹配,默认填NA

library(dplyr)
out <- bind_rows(as.data.frame(A),  as.data.frame(B))
as.matrix(out)

【讨论】:

    【解决方案2】:

    我们可以使用plyr包:

    plyr::rbind.fill.matrix(A, B)
    
     #>      1 2  3
     #> [1,] 1 3 NA
     #> [2,] 2 4 NA
     #> [3,] 6 8 10
     #> [4,] 7 9 11
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-04
      • 1970-01-01
      • 2013-10-20
      • 1970-01-01
      • 2019-03-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多