开始使用免费开始使用

拟合逻辑回归模型

有了随机划分的训练集和测试集后,您可以使用 glm() 函数在训练集上拟合逻辑回归模型。glm()lm() 的进阶版本,除了最基础的普通最小二乘回归外,还支持更多类型的回归模型。

请务必向 glm() 传入参数 family = "binomial",以指定执行逻辑回归(而非线性回归)。例如:

glm(Target ~ ., family = "binomial", dataset)

glm.fit: algorithm did not convergeglm.fit: fitted probabilities numerically 0 or 1 occurred 这样的警告不必担心。在小型数据集上很常见,通常不会带来实际问题。它们通常意味着您的数据集是「完全可分」的,这可能会影响模型背后的数学性质,但 R 的 glm() 函数几乎总能稳健地处理这种情况。

在将 glm() 模型拟合到数据集后,您可以使用 predict() 函数并设置参数 type = "response",在 test 集上预测结果(例如 rock 或 mine):

predict(my_model, test, type = "response")

本练习是课程的一部分

在 R 中使用 caret 的机器学习

查看课程

练习说明

  • 拟合一个名为 model 的逻辑回归模型,用所有其他变量作为自变量来预测 Class。使用 Sonar 的训练集。
  • 使用该模型在 test 集上进行预测。像之前一样,将结果命名为 p

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Fit glm model: model


# Predict on test: p
编辑并运行代码