rrBLUP

来源:互联网 发布:苹果cms手机模板破解 编辑:程序博客网 时间:2024/05/22 08:00

可用于genomic selection基因组选择和association mapping关联映射

rrBLUP包中的核心函数:

1.mixed.solve

把标记效应建模为随机效应

把行数据的基因型(genotypic)值用于A.mat函数(计算加性关系矩阵,预测育种值)

2.kinship.BLUP:包含上位效应在基因型值预测中

3.GWA:关联映射

 

处理缺失的数据:

函数mixed.solve,kinship.BLUP和GWA都允许缺失表型数据,那些observations只是简单地不被使用就行。

当表型数据缺失时,kinship.BLUP(选项‘RR’)和GWA都依赖于A.mat中的EM算法,也可以与mixed.solve联合使用。

kinship.BLUP中的非加性核基于dist,它使用成对的完整observations

 

并行计算:

对MAC,Linux和UNIX用户,R包multicore可与rrBLUP联合使用,以便使用单台机器多处理器的优势。对大的数据集,尤其是具有缺失数据时,推荐试用这一特性。对kinship.BLUP,A.mat和GWA都有效。

需要R>=24.1才能正常工作,而且必须在命令行使用R而不是GUI中。

 

函数使用:

1.A.mat:计算加性关系矩阵

A.mat(G,min.MAF=NULL,max.missing=NULL,impute=TRUE,tol=0.02,n.core=1,return.G=FALSE)

其中:

G:n*m unphased基因型矩阵,n个observations,每个observation有m个biallelic标记,编码为{-1,0,1}={aa,Aa,AA},允许有部分的(impute)和缺失的(NA)值。

min.MAF:最小等位基因频率下限。默认时移除monomorphic markers。

max.missing:缺失值比例的上限,默认时移除完全缺失的标记。

impute:若为真,则缺失的基因型数据会被估算;否则,从完整的observations对中计算A,不保证半正定性。

tol:指定用EM算法估计缺失值时的收敛标准。若tol<0,用每个标记的种群均值估算缺失值。

n.core:n.core>1允许在多核机器上并行执行。(需要安装R包multicore,只能用命令行执行,不能在GUI中运行)

return.G:若为真,返回估算的标记矩阵。当使用了EM算法时,估算的等位基因可能位于区间[-1,1]之外。

多态基因不满足min.MAF,也不估算max.missing标准。

 

A.mat函数的值:

return.G为假时,返回n*n的加性关系矩阵

return.G为真时,返回包含以下信息的list:

(1)A:加性关系矩阵A

(2)G.imp:估算的G矩阵

 

2.GWA关联映射

GWA(y,G,Z=NULL,X=NULL,min.MAF=0.05,n.core=1,check.rank=FALSE)

其中:

y:n*1向量,表示observations,不包含NA缺失值。

G:t*m的基因型矩阵,t行observations(?),每行包含m个biallelic标记。

Z:n*t的0-1矩阵,n行observations,如不给出,则使用单位矩阵。

X:n*p的固定效应设计矩阵。若不给出,由1组成的向量对截距建模。

check.rank:若为真,将检查每一个标记的增广设计矩阵的rank。设计矩阵奇异的标记,将赋予零值。

 

GWA函数的值:m*1向量,表示标记的分数,值等于-log10(p-value)

 

该函数实现了2010年Kang等人的迭代广义最小二乘法iterative, generalized least-squares method,使用mixed.solve估计方差组分。

使用min.MAF足够保证问题是well-posed。然而,如果一个错误消息显示问题是奇异的,则将check.rank设为TRUE,这将使算法变慢,但能fix the error。

 

3.kinship.BLUP:使用mixed.solve,基于行之间的kinship进行基因组预测。

kinship.BLUP(y,G.train,G.pred=NULL,X=NULL,Z.train=NULL,K.method="RR",n.profile=10,mixed.method="REML",n.core=1)

其中:

G.train:n.train*m个训练群体的unphased基因型值,n.train行*m个biallelic标记。

Z.train:n.obs*n.train的0-1矩阵,在训练集中将observations与行关联。

K.method:默认为“RR”,岭回归。其中的K是用A.mat计算出的加性关系矩阵。其它选项:

(1)GAUSS:高斯核

(2)EXP:指数核

其中的D是用dist计算出的欧几里得距离。

n.profile:用于k.method=“GAUSS”或“EXP”,对尺度参数,在对数似然profile中使用的点的数量。

mixed.method:为“REML”(默认)或“ML”

 

kinship.BLUP函数的值:

(1)$g.train:训练集的BLUP解

(2)$g.pred:预测集的BLUP解(当G.pred不为空时)

(3)$beta:固定效应的ML估计

对于GAUSS或EXP核,还返回$profile:尺度参数的对数似然profile

 

4.mixed.solve:计算混合模型的最大似然ML或REML

mixed.solve(y,Z=NULL,K=NULL,X=NULL,method="REML",bounds=c(1e-9,1e+9),SE=FALSE,return.Hinv=FALSE)

其中:

y:n*1的observations向量,忽略缺失的值,和X与Z中相应的列对应。

Z:n*m的随机效应设计矩阵。若不传递,默认为单位矩阵。

K:m*m的随机效应协方差矩阵,必须为半正定。若不传递,则设为单位矩阵。

X:固定效应的设计矩阵。若不传递,设单位向量作为截距建模。

method:为完全(ML)或受限(REML)最大似然方法。

bounds:有2个元素的数组,指定为岭参数的下限和上限。

SE:若为真,则计算标准差。

return.Hinv:若为真,则函数返回H的inverse(对GWA有用)。

 

mixed.solve函数的值:

(1)$Vu

(2)$Ve

(3)$beta

(4)u:BLUP(u)

(5)$LL:最大对数似然

若SE=TRUE,返回的结果list还包括:

(1)$beta.SE

(2)$u.SE

若return.Hinv为真,返回的结果list还包括:$Hinv(H的逆矩阵)

 

 

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 脚被磨破了好痛怎么办 脚磨破皮肿了怎么办 脚磨破皮发炎了怎么办 3个月婴儿流口水怎么办 beats耳机被偷了怎么办 beats X耳机丢了怎么办 头戴耳机戴着热怎么办 长时间戴耳机耳朵疼怎么办 手表秒针走得声音很大怎么办 顾客总找老板剪头发怎么办 马来西亚国籍想去中国怎么办 有限元学位课挂了怎么办 五百丁简历导出后不一样怎么办 面试早到了1小时怎么办 头顶头发会越来越少怎么办 vr游戏过后想吐怎么办 win10电脑不能打汉字怎么办 手机看vr特别烫怎么办 苹果手机浏览器横屏怎么办 苹果笔记本浏览器没有了怎么办 剑与家园魔镜带错兵怎么办 橙子vr上下反了怎么办 我的恐龙手机不支持ar怎么办 被小人陷害又无计可施怎么办 蚂蚁借呗2万逾期怎么办 蚂蚁借呗还款金额受限怎么办 蚂蚁借呗不能借钱了怎么办 美柚手机号换了怎么办 美柚他他圈被禁言了怎么办? 被蝎子蜇了屁股怎么办 被蝎子蛰了该怎么办 孕妇让蝎子蛰了怎么办 脸被蝎子蛰了怎么办 皮肤看着有点老怎么办 王者铭文被卖了怎么办 游戏cp送我皮肤怎么办 消防改革武警学院的学员怎么办 几把毛掉的厉害怎么办 从公务员调入事业单位的怎么办 电车被城管扣了怎么办 超变战陀发射器绳坏了怎么办