使用感知机算法实现鸢尾花分类 Python代码
感知机是一种简单的线性分类器,它可以将数据分成两类。本文将演示如何使用感知机算法对鸢尾花进行分类。首先,我们需要导入所需的库。
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris
然后,我们加载鸢尾花数据集,并将其转换为 Pandas DataFrame 格式。
iris = load_iris()
data = np.c_[iris['data'], iris['target']]
columns = iris['feature_names'] + ['class']
df = pd.DataFrame(data, columns=columns)
df.head()
接下来,我们需要数据预处理。我们将把数据拆分成训练集和测试集,并标准化特征值。
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
# 拆分数据集
X = df.iloc[:, :-1].values
y = df.iloc[:, -1].values
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
# 特征缩放
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transfo