import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
from sklearn.datasets import load_iris
data,label_ = load_iris(return_X_y=True)
fram = np.zeros(150*5).reshape([150,5])
fram[:,:4] = data
fram[:,4] = label_
number_train = int(0.8*data.shape[0])
number_test = data.shape[0]-number_train
X_train = data[:number_train,1].reshape(-1,1)
y_train = data[:number_train,2].reshape(-1,1)
X_test = data[number_train:,1].reshape(-1,1)
y_test = data[number_train:,2].reshape(-1,1)
from sklearn import linear_model
linear_regressior = linear_model.LinearRegression()
linear_regressior.fit(X_train,y_train)
y_predict = linear_regressior.predict(X_train)
plt.figure(dpi=100,figsize=(10,8))
plt.scatter(X_train,y_train,c="r")
plt.plot(X_train,y_predict,c="b",linewidth = 4)
plt.show()
y_test_predict = linear_regressior.predict(X_test)
import sklearn.metrics as sm
print("均方误差:",round(sm.mean_squared_error(y_test,y_test_predict,),2))
print("解释方差分:",round(sm.explained_variance_score(y_test,y_test_predict,),2))
import pickle
output_file = "./saved_model.pkl"
with open(output_file,"wb") as f:
pickle.dump(linear_regressior,f)
机器学习---线性回归器
最新推荐文章于 2023-05-22 10:52:13 发布