导入scikit-learm库中的鸢尾花数据集,显示数据集特征值和标签值的类型、属性和部分数据,并绘制花瓣长度和花瓣宽度与鸢尾花品种的散点图。
时间: 2024-10-17 21:11:32 浏览: 48
在Python中,我们可以使用scikit-learn库中的`load_iris`函数导入鸢尾花数据集。这个数据集是一个经典的分类任务数据集,包含三个品种的鸢尾花:Setosa、Versicolour和Virginica。以下是操作步骤:
首先,我们需要安装并导入所需的库:
```python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris
```
然后加载数据集:
```python
iris = load_iris()
```
数据集包含了四个特征(sepal length, sepal width, petal length, petal width)和一个标签(class label)。我们可以查看特征和标签的数据类型以及一些属性信息:
```python
# 特征值和标签值的类型
print("Features data type:", iris.data.dtype)
print("Target (labels) data type:", iris.target.dtype)
# 属性信息
print(iris.DESCR)
```
为了展示花瓣长度(petal_length)和花瓣宽度(petal_width)与鸢尾花品种的关系,我们创建一个散点图:
```python
# 数据分割
X = iris.data[:, [2, 3]] # 取第4和5列作为花瓣长度和宽度
y = iris.target
# 绘制散点图
plt.figure(figsize=(10, 6))
for i in range(3):
plt.scatter(X[y == i, 0], X[y == i, 1],
color=plt.cm.Set1(i), label=iris.target_names[i])
plt.xlabel('Petal Length')
plt.ylabel('Petal Width')
plt.title('Iris dataset - Petal Length vs. Width by Species')
plt.legend()
plt.show()
```
这将生成一个散点图,每个颜色代表一个品种,展示了它们在这两个特征上的分布。
阅读全文