创建和绘制二项式 GLM

Creating and plotting a Binomial GLM

我正在尝试创建一个具有逻辑 link 的二项式 GLM 来为我的数据建模。变量 是:年龄(年龄组;25-29、30-39 或 40-49)、教育(教育水平;高或低)、wantsMore(长期可能想要更多 children;是或否)、使用(使用避孕措施的女性人数)和 notUsing(未使用避孕措施的女性人数)。

我正在尝试使用教育程度、年龄和 wantsMore 变量来预测不使用避孕药具的女性人数。

我已经如下所示设置了我的模型,但由于错误消息,我无法让它工作,如下所示。有谁知道我在设置模型时哪里出错了?

我的模型

my_model = glm(cbind(notUsing, using-notUsing) ~ age + education + wantsMore,
      data = contraceptive2,
      family = binomial(link = "logit"))

错误信息

Error in family$linkfun(mustart) : Value 7.64286 out of range (0, 1)

假设这是 link我的解释变量,但不确定如何更改它

我的数据框

    head(contraceptive2)
    age education wantsMore notUsing using
1   <25       low       yes       53     6
2   <25       low        no       10     4
3   <25      high       yes      200    52
4   <25      high        no       50    10
5 25-29       low       yes       60    14
6 25-29       low        no       19    10

公式左侧的两列矩阵应包含“成功”和“失败”,即在本例中为“notUsing”和“using”(或 vice-versa)。您不想从失败中减去成功。除此之外,此数据的失败次数为负数!尝试:

my_model = glm(cbind(notUsing, using) ~ age + education + wantsMore,
  data = contraceptive2,
  family = binomial(link = "logit"))