||
概念解释
解释:直和(Direct sum)和直积(Direct product)是混合线性模型中经常用到的概念,下面用具体例子介绍直积和直和是如何通过R语言计算的。
比如下图中,D为2 * 2的矩阵,F为2 * 2 的矩阵,那么直和就是讲D和F作为对角线,非对角线为0,构成一个4 * 4的矩阵。直积D的每个元素分别和F矩阵相乘,得到4 * 4 的矩阵。
这里直积我们用R的默认函数kronecker,为了方便操作,我们赋予它另一个名称:direct_product。
对于直和,我们构建了一个函数,可以将两个矩阵变成直和的结果。
direct_sum<- function(mat1,mat2){ r1 <- dim(mat1)[1];c1<- dim(mat1)[2] r2 <- dim(mat2)[1];c2<- dim(mat2)[2] rbind(cbind(mat1,matrix(0,r1,c2)),cbind(matrix(0,r2,c1),mat2)) } direct_product <- kronecker
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-12-27 23:45
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社