求助:调用plot_model(type="pred")时出现match.arg(ci_style)错误
问题排查思路:
plot_model(type="pred")触发match.arg(ci_style)错误 检查
sjPlot包版本差异
错误根源是ci_style参数的匹配逻辑异常,大概率是当前环境的sjPlot版本与R 4.3.2不兼容,而另一台设备的旧版R搭配旧版sjPlot不存在该问题。执行packageVersion("sjPlot")查看当前版本,对比另一台设备的版本后,尝试降级或升级到匹配版本。例如降级到指定版本:install.packages("https://cran.r-project.org/src/contrib/Archive/sjPlot/sjPlot_2.8.10.tar.gz", repos=NULL, type="source")显式指定
ci_style参数
错误提示ci_style必须为NULL或字符向量,可能新版sjPlot的默认参数逻辑有变化。尝试显式传入合法参数值(如"ribbon"、"errorbar"、"none"):plot_model(yaya, type = "pred", ci_style = "ribbon")同步依赖包版本
sjPlot依赖sjlabelled、sjmisc、ggplot2等包,版本不匹配也可能引发参数传递错误。执行sessionInfo()查看当前依赖版本,对比能正常运行的设备的依赖版本,同步调整对应包的版本。验证模型与数据的基础预测功能
绕过plot_model,手动用基础函数验证模型本身无问题:pred_data <- predict(yaya, interval = "confidence") base100_pred <- cbind(base100, pred_data) library(ggplot2) ggplot(base100_pred, aes(x = Avg, y = OBP)) + geom_point() + geom_line(aes(y = fit)) + geom_ribbon(aes(ymin = lwr, ymax = upr), alpha = 0.2)若此代码能正常运行,说明问题完全集中在
sjPlot的plot_model函数上。检查系统与R版本兼容性
当前环境为macOS Big Sur 11.7.10 + R 4.3.2,虽R 4.3.2官方支持Big Sur,但部分包在特定系统版本下可能存在适配问题。可尝试将Big Sur更新至最新可用版本,或临时安装与另一台设备相同的旧版R进行测试。
内容的提问来源于stack exchange,提问作者James
相关产品推荐
相关产品推荐

