r - 使用 MCMCglmm 预先设置 G,具有分类响应和系统发育

标签 r glm bayesian mixed-models phylogeny

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

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

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

我已经为随机效应指定了 R 值,但是如果我指定 R ,我还必须指定 G 并且我不清楚如何决定这个参数的值。我试过设置默认值,但收到错误消息:

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

我已经阅读了帮助小插曲和类(class),但还没有找到一个二进制响应的例子,我不清楚如何决定先验值。这是我到目前为止:
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) 

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

最佳答案

这个对于您提供的信息有点棘手。我想说你可以定义 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) 

但是,如果没有关于您的分析的更多信息,我强烈建议您绘制后验图以查看结果并查看是否有任何问题。看看 MCMCglmm包裹Course Notes有关如何设置这些先验的更多信息(尤其是在第 1.5 节中不该做什么 - 如果它适合本教程的类别,您还可以找到有关如何将其调整到您的模型的更多具体信息)。

关于r - 使用 MCMCglmm 预先设置 G,具有分类响应和系统发育,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34180677/

相关文章:

bayesian - 如何在pymc中设置确定性变量的键

Java,维卡 : NaiveBayesUpdateable: Cannot handle numeric class

r - R-在自定义错误处理程序中从基本环境访问.Traceback

r - 插入符train()预测的结果与预测值非常不同。

r - 尽管 rggobi.dll 似乎可用,但无法加载

r - ggplot GLM 拟合曲线,无交互作用

machine-learning - 广义线性模型与常规逻辑回归之间的差异

bayesian - 使用 Stan 的分层模型的 Hyperpriors

r - 在 r 中将一列设置为多个值

r - 如何发送 GET 请求而不等待响应