用逻辑回归模型拟合鸢尾花数据集
时间: 2024-12-05 17:12:09 浏览: 145
逻辑回归是一种常用的分类算法,适用于二分类问题。鸢尾花数据集(Iris dataset)是一个经典的分类问题数据集,包含150个样本,分为3个类别:Setosa、Versicolor和Virginica。每个样本有4个特征:花萼长度、花萼宽度、花瓣长度和花瓣宽度。
虽然逻辑回归主要用于二分类问题,但我们可以通过一些方法将其扩展到多分类问题。下面是如何使用逻辑回归模型拟合鸢尾花数据集的步骤:
1. **导入必要的库**:
- `pandas` 用于数据处理
- `numpy` 用于数值计算
- `scikit-learn` 用于机器学习模型和工具
2. **加载数据集**:
使用 `scikit-learn` 提供的鸢尾花数据集。
3. **数据预处理**:
将数据集分为特征和标签,并进行训练集和测试集的划分。
4. **训练逻辑回归模型**:
使用 `scikit-learn` 的 `LogisticRegression` 类进行训练。
5. **评估模型**:
使用测试集评估模型的准确率。
```python
import pandas as pd
import numpy as np
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
# 1. 加载数据集
iris = datasets.load_iris()
X = iris.data
y = iris.target
# 2. 数据预处理
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# 3. 训练逻辑回归模型
model = LogisticRegression(multi_class='multinomial', solver='lbfgs', max_iter=200)
model.fit(X_train, y_train)
# 4. 预测
y_pred = model.predict(X_test)
# 5. 评估模型
accuracy = accuracy_score(y_test, y_pred)
print(f"模型准确率: {accuracy:.2f}")
```
通过上述步骤,我们可以使用逻辑回归模型对鸢尾花数据集进行分类,并评估模型的性能。
阅读全文
相关推荐


















