r - 用一系列其他矩阵填充一个矩阵

标签 r matrix

我想用一系列其他矩阵填充一个矩阵,其方式与我的示例中“mat”的格式相同(其中 m1 和 m2 是用于填充 mat 的矩阵)。有谁知道是否有一个函数可以做到这一点?

m1 <- matrix (1, nrow = 2, ncol = 2)
m2 <- matrix (2, nrow = 3, ncol = 3)
mat <- matrix(c(1,1,0,0,0,1,1,0,0,0,0,0,2,2,2,0,0,2,2,2,0,0,2,2,2), nrow = 5, ncol = 5)

最佳答案

是的,Matrix 包中的 bdiag 函数。周围的 as.matrix 将其转换回基本矩阵,而不是 dgCmatrix

library(Matrix)
as.matrix(bdiag(list(m1, m2)))

     [,1] [,2] [,3] [,4] [,5]
[1,]    1    1    0    0    0
[2,]    1    1    0    0    0
[3,]    0    0    2    2    2
[4,]    0    0    2    2    2
[5,]    0    0    2    2    2

关于r - 用一系列其他矩阵填充一个矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45017633/

相关文章:

c++ - C++ 中用于打印由各种技术创建的二维整数数组的通用函数

python - 如何迭代行索引并从Python数据集中找到具有最大行列式的组?

r - 将嵌套列表转换为数据框 : extract only specific elements of interest

html - 用透视渲染 HTML 元素?

matrix - 最大值中的任意大小矩阵

java - Java 中的矩阵运算

r - 重复执行矩阵乘法的有效方法

r - 嵌套 ifelse 语句中未使用的参数错误

r - 将 shapefile 添加到 ggmap

R install.packages 返回 'ERROR: failed to lock directory'