前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >线性混合模型系列二:模型假定

线性混合模型系列二:模型假定

作者头像
邓飞
发布2019-10-17 16:31:06
1.3K0
发布2019-10-17 16:31:06
举报

1. 混合线性模型公式和假定 混合线性模型的公式和假定,一般认为随机因子和残差是符合正态分布的,随机因子可以相关(比如系谱关系,SNP构建G矩阵关系),用A矩阵或者G矩阵表示,残差是独立同分布的,矩阵结构一般是单位矩阵。

举个栗子:

比如这里不同场的一些个公牛(Sire)的体重(y),如果要分析这个数据,公牛作为随机因子,模型为:

这里:

  • 观测值:体重weight
  • 固定因子:Chang
  • 随机因子:Sire
  • 残差:e

如果公牛之间没有亲缘关系,那么他们之间的亲缘关系矩阵是单位矩阵,它的分布为:

残差的分布为:

那么G矩阵(随机因子)和R矩阵(残差)为:

如果,公牛之间是由亲缘关系A的,那么:

2. 多个固定因子和多个随机因子的剖分

这里b为固定因子的效应值,加入固定因子有多个,场,年,季,性别等等,那么b 可以分解为:[b1, b2, b3,...]

X为固定因子对应的矩阵,X也可以分解为:[X1,X2,X3...]

同样的道理,随机因子和随机因子的矩阵,也可以剖分为类似的形式,比如动物模型中,除了加性效应,还可以有母体效应,永久环境效应,窝别效应作为随机因子。

3. 直和和直积

3.1 概念解释

多个随机因子时,如果他们之间是独立的,那么整个随机因子的矩阵由每个随机因子的矩阵构成,他们之间的关系是直和。

如果随机因子之间,是有相关的,比如母体效应和加性效应,有时会有协方差的关系,那么他们之间的关系就是直积。

直和(Direct sum)和直积(Direct product)是混合线性模型中经常用到的概念,下面用具体例子介绍直积和直和是如何通过R语言计算的。

比如下图中,D为22的矩阵,F为22的矩阵,那么直和就是讲D和F作为对角线,非对角线为0,构成一个44的矩阵。直积D的每个元素分别和F矩阵相乘,得到44的矩阵。

3.2 R语言实现直和与直积

函数构建

这里直积我们用R的默认函数kronecker,为了方便操作,我们赋予它另一个名称:direct_product。

对于直和,我们构建了一个函数,可以将两个矩阵变成直和的结果。

代码语言:javascript
复制
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

运行结果:

4. sigma参数化和gamma参数化

一般混合模型中的假定都是sigma参数化的:

也就是,需要计算Vg和Ve的方差组分,sigma。

gamma参数化,是直接是Vg/Ve,因此只需要计算Ve,然后根据gamma,就可以计算Vg,因为:Vg = gamma*Ve。

我们假定:

这样做的好处是方便指定初始值,只需要指定比例(比如根据遗传力推导)即可,很方便,这样,y的方差就变成了:

asreml中,在固定初始值,要制定gamma参数化,一般我们在分析时,都是用的是sigma参数。混合线性模型,可以根据直接方法,也可以根据MME间接方法,在求解之前,需要知道随机因子和残差的方差组分,这就需要用REML方法。

线性混合模型系列一:基本定义

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 育种数据分析之放飞自我 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2. 多个固定因子和多个随机因子的剖分
    • 3.2 R语言实现直和与直积
    • 4. sigma参数化和gamma参数化
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档