在空矩阵中添加一个矩阵

Add a matrix in an empty matrix

我想在空矩阵的特定位置添加一个 3 列的矩阵,即 这是我的矩阵“mat_data”:

col1 col2 col3
 1    2    2           
 2    4    6            
 5    9    7            
 3    4    5 

和我的空白矩阵“mat_blank”:

[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9]
 NA   NA   NA   NA   NA   NA   NA   NA   NA
 NA   NA   NA   NA   NA   NA   NA   NA   NA
 NA   NA   NA   NA   NA   NA   NA   NA   NA
 NA   NA   NA   NA   NA   NA   NA   NA   NA

我想获得:

[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9]
 NA   NA   NA   NA   1    2    2   NA   NA
 NA   NA   NA   NA   2    4    6   NA   NA
 NA   NA   NA   NA   5    9    7   NA   NA
 NA   NA   NA   NA   3    4    5   NA   NA

我该怎么办?

您可以像这样使用他们的索引:

m[,5:7] <- m2

输出

     [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9]
[1,]   NA   NA   NA   NA    1    2    2   NA   NA
[2,]   NA   NA   NA   NA    2    4    6   NA   NA
[3,]   NA   NA   NA   NA    5    9    7   NA   NA
[4,]   NA   NA   NA   NA    3    4    5   NA   NA

数据

m <- matrix(NA, ncol = 9, nrow = 4)
m2 <- structure(c(1L, 2L, 5L, 3L, 2L, 4L, 9L, 4L, 2L, 6L, 7L, 5L), .Dim = 4:3, .Dimnames = list(
    NULL, c("col1", "col2", "col3")))