5

我是 R 中的 MCMCglmm 包的新手,对 glm 模型一般来说是新手。我有一个物种特征的数据集,以及它们是否被引入到它们的原生范围之外。

我想测试是否可以通过任何物种特征来解释被引入(作为二进制 0/1 响应变量)。我还想纠正物种之间的系统发育。

有人告诉我,对于二元响应,我可以使用 family =“threshold”,并且我应该将残差方差固定为 1。但是我在使用先验所需的其他参数时遇到了一些问题。

我已经为随机效应指定了 R 值,但是如果我指定 RI 还必须指定 G,我不清楚如何确定该参数的值。我尝试使用默认值,但收到错误消息:

Error in MCMCglmm(fixed, random = ~species, data = data2, family = "threshold",  : 
prior$G has the wrong number of structures

我已经阅读了帮助小插曲和课程,但没有找到具有二进制响应的示例,而且我不清楚如何确定先验的值。这是我到目前为止所拥有的:

fixed=Intro_binary ~ Trait1+ Trait2 + Trait3 
Ainv=inverseA(redTree1)$Ainv

binary_model = MCMCglmm(fixed, random=~species, data = data, family = "threshold", ginverse=list(species=Ainv),
 prior = list( 
    G = list(),    #not sure about the parameters for random effects.
    R = list(V = 1, fix = 1)),  #to fix the residual variance at one
  nitt = 60000, burnin = 10000) 

任何帮助或反馈将不胜感激!

4

1 回答 1

0

您提供的信息有点棘手。我想说您可以G在使用之前将其定义为“弱”:

priors <- list(R = list(V = 1, nu = 0.002),
               G = list(V = 1, fix = 1)))

binary_model <- MCMCglmm(fixed, random = ~species, data = data,
                         family = "threshold",
                         ginverse = list(species = Ainv),
                         prior = priors,
                         nitt = 60000, burnin = 10000) 

但是,如果没有关于您的分析的更多信息,我强烈建议您绘制后验图以查看结果,看看是否有任何问题。查看MCMCglmmCourse Notes以获取有关如何设置这些先验的更多信息(特别是在第 1.5 节中不做什么-如果符合教程)。

于 2018-04-16T04:20:52.320 回答