R语言基础统计示例:逻辑回归
逻辑回归是一种广泛应用的统计学方法,主要用于预测分类变量(如二分类或多分类)。以下是关于R语言中逻辑回归的详细解释及应用实例。
-
逻辑回归的原理
逻辑回归是基于对数几率(log odds)的线性回归。对于二分类问题,逻辑回归模型预测事件发生的概率(P),通过Sigmoid函数将线性回归结果映射到0到1之间。
-
R语言实现逻辑回归
R语言中的glm()
函数可用于拟合逻辑回归模型。以下是使用glm()
函数的基本语法:
glm(formula, data, family = binomial(link = "logit"))
其中,formula
表示模型公式,data
表示数据集,family
指定使用二项逻辑回归。
-
应用实例
以下是一个简单的逻辑回归应用实例,使用R语言内置的mtcars数据集:
# 加载数据集
data(mtcars)
# 将数据集分为训练集和测试集
set.seed(123)
train_index <- sample(1:nrow(mtcars), 0.8 * nrow(mtcars))
train_data <- mtcars[train_index, ]
test_data <- mtcars[-train_index, ]
# 使用glm()函数拟合逻辑回归模型
# 预测汽车是否为自动挡(am)基于马力(hp)和重量(wt)
logit_model <- glm(am ~ hp + wt, data = train_data, family = binomial(link = "logit"))
# 查看模型摘要
summary(logit_model)
# 对测试集进行预测
test_data$predicted_prob <- predict(logit_model, newdata = test_data, type = "response")
# 将预测概率转换为分类标签
test_data$predicted_label <- ifelse(test_data$predicted_prob > 0.5, 1, 0)
# 计算准确率
accuracy <- mean(test_data$predicted_label == test_data$am)
cat("Accuracy:", accuracy)
在这个示例中,我们使用glm()
函数拟合了一个逻辑回归模型,以预测汽车是否为自动挡(am),基于马力(hp)和重量(wt)。我们将预测的概率转换为分类标签,并计算了模型在测试集上的准确率。
逻辑回归在R语言中的应用非常广泛,可以用于各种分类问题。要深入了解逻辑回归在R语言中的应用,可以阅读有关逻辑回归的专业书籍、研究论文和教程。