在Jupyter notebook中(1)载鸢尾花(iris)数据集(2)降维可视化. (3)划分训练集测试集(4)构建模型。(5)训练模型。 (6) 评估模型
时间: 2024-12-13 21:27:19 浏览: 29
simple-iris-flower-classification-ML-
在Jupyter Notebook中操作鸢尾花数据集并进行分析,你可以按照以下步骤进行:
1. **载入鸢尾花数据集**:
使用Python的库`sklearn.datasets`可以加载鸢尾花数据集。首先导入所需的模块:
```python
import numpy as np
from sklearn.datasets import load_iris
iris = load_iris()
```
2. **数据预处理**:
`iris`是一个Bunch对象,包含了数据(`data`)、目标变量(`target`)等信息。数据通常需要归一化或编码以便于机器学习。这里假设已经处理过:
```python
X = iris.data
y = iris.target
```
3. **降维可视化**:
对于降维,比如PCA(主成分分析),可以用`sklearn.decomposition.PCA`。先计算降维后的结果:
```python
from sklearn.decomposition import PCA
pca = PCA(n_components=2)
X_pca = pca.fit_transform(X)
```
然后使用matplotlib展示二维投影:
```python
import matplotlib.pyplot as plt
plt.scatter(X_pca[:, 0], X_pca[:, 1], c=y, cmap='viridis')
plt.xlabel('PC1')
plt.ylabel('PC2')
plt.title('Iris dataset PCA projection')
```
4. **划分训练集和测试集**:
使用`sklearn.model_selection.train_test_split`:
```python
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
```
5. **构建模型**:
例如,选择决策树分类器:
```python
from sklearn.tree import DecisionTreeClassifier
model = DecisionTreeClassifier(random_state=42)
```
6. **训练模型**:
```python
model.fit(X_train, y_train)
```
7. **评估模型**:
最终评估可用准确率、精确率、召回率等指标,比如交叉验证(cross-validation)或混淆矩阵:
```python
from sklearn.metrics import accuracy_score, classification_report
y_pred = model.predict(X_test)
print("Accuracy:", accuracy_score(y_test, y_pred))
print(classification_report(y_test, y_pred))
```
阅读全文