绘制具有二元响应变量的系统发育逻辑回归
plot phylogenetic logistic regression with binary response variable
我用phylolm包做了系统发育比较分析。由于我的响应变量是二进制数据(1 和 0),我使用了系统发育逻辑回归。
如何绘制 phyloglm
的输出?我发现了一个类似的问题here,但我无法理解回复。您能否就如何绘制结果提供一些建议,如此处所示?
使用 ?phyloglm
中的示例:
library(ape)
library(phylolm)
set.seed(123456)
tre = rtree(50)
x = rTrait(n=1,phy=tre)
X = cbind(rep(1,50),x)
y = rbinTrait(n=1,phy=tre, beta=c(-1,0.5), alpha=1 ,X=X)
dat = data.frame(trait01 = y, predictor = x)
fit = phyloglm(trait01~predictor,phy=tre,data=dat,boot=100)
绘制(抖动的)数据和响应(plogis()
是逻辑函数。
预测值为logistic(a+b*x)
;我们使用 curve()
add=TRUE
画线)
par(las=1,bty="l") ## cosmetic
plot(x,jitter(y,factor=0,amount=0.02),
xlab="trait",ylab="response",xlim=c(-3.5,3.5))
cc <- coef(fit)
curve(plogis(cc[1]+cc[2]*x),col="red",add=TRUE)
该情节的 OP 版本是
这(虽然我们看不到 y 轴刻度)与逻辑拟合完全一致,在预测值的中间范围内近似线性(在预测值的上端有减速的迹象)曲线)。
我用phylolm包做了系统发育比较分析。由于我的响应变量是二进制数据(1 和 0),我使用了系统发育逻辑回归。
如何绘制 phyloglm
的输出?我发现了一个类似的问题here,但我无法理解回复。您能否就如何绘制结果提供一些建议,如此处所示?
使用 ?phyloglm
中的示例:
library(ape)
library(phylolm)
set.seed(123456)
tre = rtree(50)
x = rTrait(n=1,phy=tre)
X = cbind(rep(1,50),x)
y = rbinTrait(n=1,phy=tre, beta=c(-1,0.5), alpha=1 ,X=X)
dat = data.frame(trait01 = y, predictor = x)
fit = phyloglm(trait01~predictor,phy=tre,data=dat,boot=100)
绘制(抖动的)数据和响应(plogis()
是逻辑函数。
预测值为logistic(a+b*x)
;我们使用 curve()
add=TRUE
画线)
par(las=1,bty="l") ## cosmetic
plot(x,jitter(y,factor=0,amount=0.02),
xlab="trait",ylab="response",xlim=c(-3.5,3.5))
cc <- coef(fit)
curve(plogis(cc[1]+cc[2]*x),col="red",add=TRUE)
该情节的 OP 版本是
这(虽然我们看不到 y 轴刻度)与逻辑拟合完全一致,在预测值的中间范围内近似线性(在预测值的上端有减速的迹象)曲线)。