在phylolm包中的二元响应变量和分类预测器

时间:2017-11-05 15:59:56

标签: r binary-data summary phylogeny

我正在使用phylolm包运行具有二元响应变量(0/1)的模型,以及具有3个以上级别的连续预测变量和分类预测变量。如果我将分类预测器视为连续的,即0,1,2,3,则模型运行良好,我可以使用汇总(模型)来获得模型输出。然而,这种处理(将分类级别视为连续)并不适合现实,我认为将它们视为类别是正确的,这样,模型有效,但我有问题要获得模型输出,就像我使用摘要(模型)时一样,它给出了每个类别与第一个类别相比的结果。我想有一个“anova”类表来总结每个变量的意义,但是,anova函数不适用于这种分析。我想问有没有办法获得这个模型的结果?

一些示例脚本:

require(phylolm)

set.seed(123456)
# Simulate a tree of 50 species
tre = rtree(50)
# Simulate a continuous trait
conTrait = rTrait(n=1,phy=tre)
# Make a design matrix for the binary trait simulation
X = cbind(rep(1,50),conTrait)
# Simulate a binary trait
binTrait = rbinTrait(n=1,phy=tre, beta=c(-1,0.5), alpha=1 ,X=X)
# Simulate a radom categorical trait
catTrait <- 
as.factor(sample(c("A","B","C"),size=length(tre$tip.label),replace=TRUE))
# Create data frame
dat = data.frame(binTrait = binTrait, conTrait = conTrait, catTrait = catTrait)
### run the model
fit = phyloglm(binTrait ~ conTrait*catTrait, phy=tre, data=dat)

##model output
summary(fit)

Call:
phyloglm(formula = binTrait ~ conTrait * catTrait, data = dat, 
    phy = tre)
   AIC     logLik Pen.logLik 
 52.07     -19.04     -17.28 

Method: logistic_MPLE
Mean tip height: 3.596271
Parameter estimate(s):
alpha: 1.437638 

Coefficients:
               Estimate   StdErr z.value p.value
(Intercept)        -0.61804  0.83270 -0.7422  0.4580
conTrait            1.52295  1.16256  1.3100  0.1902
catTraitB           0.92563  0.98812  0.9368  0.3489
catTraitC          -0.24900  1.01255 -0.2459  0.8057
conTrait:catTraitB  0.49031  1.41858  0.3456  0.7296
conTrait:catTraitC -0.74376  1.29850 -0.5728  0.5668

Note: Wald-type p-values for coefficients, conditional on alpha=1.437638

0 个答案:

没有答案