鸢尾花卉数据集逻辑回归Rstudio
时间: 2025-02-04 08:12:08 浏览: 55
### 使用逻辑回归分析 Iris 数据集
Iris 数据集是一个经典的数据集,通常用于多类别分类问题。然而,在此场景下为了应用逻辑回归,可以选择两个特定种类来进行二分类处理[^1]。
#### 加载必要的库和数据
首先加载 `datasets` 包中的 Iris 数据集,并选取其中两种类型的花朵作为目标变量:
```r
# 加载内置iris数据集
data(iris)
# 只保留setosa和versicolor两类样本
df <- subset(iris, Species %in% c('setosa', 'versicolor'))
```
#### 准备训练与测试集合
接着划分训练集和验证集以便评估模型性能:
```r
library(caTools) # 提供split功能
set.seed(123)
spl <- sample.split(df$Species, SplitRatio = .8)
train_data <- df[spl==TRUE , ]
test_data <- df[spl==FALSE, ]
```
#### 构建逻辑回归模型
利用 `glm()` 函数创建广义线性模型(GLM),指定家庭参数为 "binomial" 来表示这是一个二项分布下的逻辑回归问题:
```r
model <- glm(Species ~ ., data=train_data, family=binomial(link='logit'))
summary(model) # 查看模型摘要信息
```
#### 预测新观测值的结果
使用已建立好的模型去预测未知类别的实例属于哪一类:
```r
predictions <- predict(model, newdata=test_data, type="response")
predicted_classes <- ifelse(predictions > 0.5, "versicolor", "setosa")
table(Predicted=predicted_classes, Actual=test_data$Species)
```
以上就是完整的流程展示,通过上述步骤可以在 RStudio 中成功地运用逻辑回归算法对简化后的 Iris 数据集执行二分类任务[^2][^3]。
阅读全文
相关推荐

















