本次使用的数据是鸢尾花数据
import numpy as np #导入科学计算库
import matplotlib.pyplot as plt #画图
from sklearn import datasets #导入数据
iris=datasets.load_iris() #导入鸢尾花数据
#获取特征数据和标签数据
X=iris.data #数据
y=iris.target #标签
#进行筛选,选择标签为0和1的样本,并且特征选择前2个
X=X[y<2,:2]
y=y[y<2]
#数据可视化展示
plt.scatter(X[y==0,0],X[y==0,1],color='red')
plt.scatter(X[y==1,0],X[y==1,1],color='blue')
plt.show()
#数据切分
#数据归一化
from sklearn.preprocessing import StandardScaler
from sklearn.preprocessing import MinMaxScaler
ss=StandardScaler() #定义出归一化函数
ss.fit(X) #训练数据
X_tranceform=ss.transform(X) #对鸢尾花数据进行归一化
#画直线函数,绘制分界线
def plot_decision_boundary(model, axis):
x0, x1 = np.meshgrid(
np.linspace(axis[0], axis[1], int((axis[1] - axis[0]) * 100)).reshape(-1, 1),
np.linspace(axis[2], axis[3], int((axis[3] - a