r - 用于绘制 allEffects 的反向转换响应
问题描述
我已经使用包中的一些模型进行glmer
了拟合lme4
,并进行了模型选择,MuMIn::dredge()
然后进行了模型平均。我的回答是动物出现在相机陷阱前的频率(连续,每 100 小时相机时间的照片数量);预测器是从相机陷阱到景观类别的最小距离(以米为单位),有时与白天阶段(白天/夜晚)相互作用。
响应显示 Gamma 分布,但为了使模型工作,我必须通过添加 1 来转换我的响应,因为 Gamma 分布无法处理非正数据,并且我的很多数据点都是零,如此直方图所示:
此外,我必须缩放预测变量,否则我会收到收敛警告,例如
模型几乎无法识别:大特征值比 - 重新调整变量?
我用scale(..., center = TRUE)
.
我的模型公式如下所示:
mod <- glmer(Species_Frequency ~ scaled_Minimal_Distance1 +
scaled_Minimal_Distance2 +
(scaled_Minimal_Distance3 * Dayphase),
data = data,
na.action = na.fail,
family = Gamma(link = "log"),
control = glmerControl(optimizer = "bobyqa"))
现在我想绘制mod
使用的结果plot(allEffects(mod))
。
对于绘图,我allEffects
通过访问来缩减 -object 中的预测变量
allEffects(mod)[["scaled_Minimal_Distance1"]][["x"]][["scaled_Minimal_Distance1"]]
并按照此处所示进行操作。我还想对我的回答进行反向转换,以使情节更容易理解。否则,人们必须始终牢记 y 轴上的 1 实际上是 0,2 是 1 等等。有人可以帮助我如何做到这一点,因为我遇到了障碍,我自己似乎无法弄清楚.
非常感谢您提前。
解决方案
推荐阅读
- node.js - Nodejs:使用回调合并函数
- ruby-on-rails - 充当偏执狂:真正摧毁有偏执儿童的记录
- node.js - 在不知道输入名称的情况下提取 Node.js 中的 POST 数据
- lotus-notes - LotusScript - 多次提取和重新附加附件会导致第一个附件的副本和文件损坏
- javascript - 在 react-native 中测试 TextInput 组件
- scripting - 将脚本列表作为 cron 作业运行的标准解决方案(也许是流利的?)
- sql-server - 如何解决“子查询返回超过 1 个值”错误
- c++ - 迭代器实际上指向容器中的什么?
- python - python - xml.etree.ElementTree.ParseError:格式不正确(无效令牌)
- go - Go 中来自 Kubernetes 的 Cloud SQL 连接 - 错误 403:权限不足