Как связать две матрицы с разным количеством столбцов? - PullRequest
1 голос
/ 25 января 2020

Как связать две матрицы с разными номерами строк У меня две матрицы с разными номерами строк, когда я пытался их объединить, появляется сообщение об ошибке:

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

Ответы [ 2 ]

1 голос
/ 25 января 2020

Мы можем использовать 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
1 голос
/ 25 января 2020

Мы можем преобразовать в data.frame и использовать bind_rows. Если имена столбцов не совпадают, по умолчанию будет заполнено NA

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