You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

geom_smooth指定method="glm"时method.args参数拟合效果不符合预期

问题原因分析

  • 你当前使用的拟合公式为y ~ x,属于线性预测项结构。泊松回归默认使用对数连接函数,意味着对数转换后的响应变量与自变量treatment呈线性关系,转换回原始响应尺度时是指数函数曲线。你当前的treatment取值范围仅为-100到0,区间范围较小,指数函数在该区间的曲率极不明显,视觉上就会呈现为直线。
  • 如果你想要得到有明显弧度的拟合曲线,需要在预测项中加入非线性结构,而不是使用纯一次项的线性预测。

解决方法

你可以将拟合公式修改为包含多项式项的形式,例如二次多项式,即可得到带弧度的拟合结果,修改后的geom_smooth代码如下:

geom_smooth(data = data, mapping = aes(x= treatment, y= response, color = early_late), 
            method = "glm", method.args = list(family= poisson),   
            formula = y ~ poly(x, 2), se = TRUE)

如果需要更高阶的曲率,也可以将poly(x,2)中的2调整为更大的整数,注意不要取值过高导致过拟合即可。

验证方法

你可以手动拟合模型查看预测值的变化趋势,确认曲率不明显的问题:

# 拟合泊松回归模型
mod <- glm(response ~ treatment, family = poisson, data = data)
# 生成连续自变量对应的预测值
pred_df <- data.frame(treatment = seq(-100, 0, 1))
pred_df$pred <- predict(mod, newdata = pred_df, type = "response")
# 查看相邻预测值的差值,数值接近等距就意味着视觉上接近直线
diff(pred_df$pred)

内容的提问来源于stack exchange,提问作者user3508884

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 12:36:03