iris鸢尾花数据集
时间: 2025-05-19 20:16:01 浏览: 15
### 关于 Iris 鸢尾花数据集的介绍
Iris 数据集是一个经典的小型多分类数据集,广泛用于机器学习和数据分析的教学与实践。该数据集包含 150 条记录,每条记录有四个特征(花萼长度、花萼宽度、花瓣长度、花瓣宽度)以及三个目标类别(Setosa、Versicolor 和 Virginica)。为了便于处理,在某些场景下会将其转换为二分类问题[^1]。
以下是基于 Python 的示例代码,展示如何加载并预处理 Iris 数据集:
```python
from sklearn.datasets import load_iris
import pandas as pd
# 加载数据集
data = load_iris()
X = data.data # 特征矩阵
y = data.target # 标签向量
# 转换为目标 DataFrame 形式以便查看
df = pd.DataFrame(X, columns=data.feature_names)
df['target'] = y
print(df.head())
```
对于上述提到的二分类转化操作,可以按照如下方式实现:
```python
import numpy as np
# 将类别2 (Virginica) 设置为0,其他设置为1
y_binary = np.where(y == 2, 0, 1)
print(f"原始标签分布: {np.unique(y, return_counts=True)}")
print(f"二分类后的标签分布: {np.unique(y_binary, return_counts=True)}")
```
通过以上代码片段,能够完成对 Iris 数据集的基础加载与简单预处理工作。
### 示例:使用逻辑回归模型进行分类
下面提供一段完整的代码实例,演示如何利用逻辑回归算法针对二分类版本的 Iris 数据集构建预测模型:
```python
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
# 划分训练集与测试集
X_train, X_test, y_train, y_test = train_test_split(
df[data.feature_names], y_binary, test_size=0.3, random_state=42
)
# 初始化逻辑回归模型
model = LogisticRegression()
# 训练模型
model.fit(X_train, y_train)
# 测试模型性能
predictions = model.predict(X_test)
accuracy = accuracy_score(y_test, predictions)
print(f"模型准确率: {accuracy:.2f}")
```
问题
阅读全文
相关推荐














