R语言构建Logistic回归模型并预测因子概率
这里提供一个简单的例子,展示如何使用R语言构建logistic模型,并通过已知结果预测各因子的概率。
首先,我们需要准备一个数据集。这里使用R内置的iris数据集作为例子。
data(iris)
我们需要将数据集分成训练集和测试集。这里将前100个样本作为训练集,后50个样本作为测试集。
train <- iris[1:100, ]
test <- iris[101:150, ]
接下来,我们使用训练集构建logistic模型。这里我们使用'petal.width'和'petal.length'两个因子来预测花的种类(Setosa或非Setosa)。
model <- glm(Species ~ petal.width + petal.length, data = train, family = "binomial")
我们可以使用summary函数查看模型的系数。
summary(model)
接下来,我们可以使用predict函数在测试集上进行预测。
predictions <- predict(model, newdata = test, type = "response")
predictions变量包含了测试集中每个样本属于Setosa的概率。我们可以使用以下代码查看前10个样本的预测结果。
head(predictions, 10)
最后,我们可以使用以下代码将预测结果与测试集中的实际结果进行比较。
actual <- ifelse(test$Species == "setosa", 1, 0)
predicted <- ifelse(predictions > 0.5, 1, 0)
table(actual, predicted)
以上就是一个简单的logistic回归模型的构建和预测过程。请注意,这只是一个简单的例子,实际应用中可能需要更复杂的模型和数据处理方法。
原文地址: https://www.cveoy.top/t/topic/lsgQ 著作权归作者所有。请勿转载和采集!