R中的分区矩阵

时间:2014-04-11 15:15:38

标签: r

我正在寻找一个从矩阵A创建矩阵B的代码,这是一个非常简单的例子,我的真实矩阵A是(500 x500)和B11(50x50)

1 2 = A        
   3 4

1 1 | 2 2        
1 1 | 2 2        
.----------= B        
3 3 | 4 4        
3 3 | 4 4

提前致谢。

1 个答案:

答案 0 :(得分:2)

您想要一个Kronecker产品,%x%

R>A <- matrix(1:4,2,2)
R>A
     [,1] [,2]
[1,]    1    3
[2,]    2    4
R>X <- matrix(1,2,2)
R>X
     [,1] [,2]
[1,]    1    1
[2,]    1    1
R>A %x% X
     [,1] [,2] [,3] [,4]
[1,]    1    1    3    3
[2,]    1    1    3    3
[3,]    2    2    4    4
[4,]    2    2    4    4
R>t(A) %x% X
     [,1] [,2] [,3] [,4]
[1,]    1    1    2    2
[2,]    1    1    2    2
[3,]    3    3    4    4
[4,]    3    3    4    4