如何在MCMCglmm中的双变量混合模型中仅将固定效应拟合到一个特征?

时间:2017-10-10 12:58:24

标签: r correlation mcmc

我试图找到动物行为和生理特征之间的相关性。我在包MCMCglmm中使用了双变量混合模型分析。基础代谢率(BMR)和活动是我的因变量。我将季节,试验,性别和对冬季的反应类型(RESP)设定为固定效果。我还使用ID作为随机效果。

代码如下:

prior<-list(R=list(V=diag(2),nu=1.02),
         G=list(G1=list(V=diag(2),nu=1.02)))

model1<-MCMCglmm(cbind(BMR,activity)~
        trait-1+trait:trial+trait:SEX+trait:RESP+trait:season,
        random=~us(trait):ID,
        rcov = ~us(trait):units,
        family=c("gaussian","gaussian"),
        prior=prior,data=data,nitt=NITT,thin=THIN,burnin=BURNIN,
        singular.ok=TRUE)

但是因为我知道BMR与体重密切相关,所以我也希望将体重增加到模型中。一开始我使用了BMR的残差,但有人告诉我,我只能将体重修复到BMR而不是行为。这是我的问题:如何在二元模型中仅将固定效应拟合到一个特征?

我每个季节只测量一次BMR,所以我在2次和4次试验中都有NA。我认为我应该将NA改为0并且我做到了。但我被困在这里,我不知道如何移动一个。

这是我的数据框示例。

&#13;
&#13;
ID	RESP	SEX	trial	season	BMR	mb_BMR	activity
4	R	male 	1	summer	0.184630641	21.8	0.76243
4	R	male 	2	summer	NA	NA	1.01422
4	R	male 	3	winter	0.222260753	29.1	0.43704
4	R	male 	4	winter	NA	NA	-1.75655
5	NR	male 	1	summer	0.269151827	27.4	-0.27468
5	NR	male 	2	summer	NA	NA	-0.19718
5	NR	male 	3	winter	0.22583699	31.9	0.94649
5	NR	male 	4	winter	NA	NA	-0.7551
7	NR	female	1	summer	0.252336196	26	0.7615
7	NR	female	2	summer	NA	NA	1.15342
7	NR	female	3	winter	0.19488432	23.3	0.30009
7	NR	female	4	winter	NA	NA	-0.94063
8	NR	female	1	summer	0.216474311	23.8	-0.87454
8	NR	female	2	summer	NA	NA	-0.21937
8	NR	female	3	winter	0.241733394	29.2	0.8145
8	NR	female	4	winter	NA	NA	-0.39096
9	NR	male 	1	summer	0.233164752	24.2	-0.12346
9	NR	male 	2	summer	NA	NA	-1.26554
9	NR	male 	3	winter	0.258378951	30.8	0.35409
9	NR	male 	4	winter	NA	NA	-1.31501
10	R	male 	1	summer	0.233973797	30.1	-0.23988
10	R	male 	2	summer	NA	NA	-0.38281
10	R	male 	3	winter	0.283488877	35	1.03983
10	R	male 	4	winter	NA	NA	-1.60583
11	NR	male 	1	summer	0.247344964	28	-1.2399
11	NR	male 	2	summer	NA	NA	0.0942
11	NR	male 	3	winter	0.294308448	34.1	0.87652
11	NR	male 	4	winter	NA	NA	0.34259
12	NR	male 	1	summer	0.25783053	29.8	0.16997
12	NR	male 	2	summer	NA	NA	0.40338
12	NR	male 	3	winter	0.24469161	29.3	1.87351
12	NR	male 	4	winter	NA	NA	-0.03973
&#13;
&#13;
&#13;

我会感激任何帮助。

1 个答案:

答案 0 :(得分:0)

我有一个类似的问题,并认为使用at.level()是关键。 MCMCglmm课程笔记中有几个示例。您的情况应该是at.level(trait,1):BodyMass