纯小白,学习sklearn
from sklearn.datasets import load_iris //导入数据集
from sklearn import linear_model//导入线性回归模型
import matplotlib.pyplot as plt
from sklearn.metrics import mean_squared_error, r2_score
from sklearn.model_selection import train_test_split //导入数据集分割
iris = load_iris()//加载数据集
X_train, X_test, y_train, y_test = train_test_split( iris['data'],
iris['target'],
test_size=0.2 ) //对数据集进行分割,这里的 iris['data']
是 Iris 数据集的特征部分,iris['target']
是目标变量(标签)。test_size=0.2
意味着将数据集按 8:2 的比例划分为训练集和测试集,其中测试集占总数据的 20%。
//创建估计器,相当于创建线性回归模型对象
regr = linear_model.LinearRegression()
//fit()就是开始训练模型,用的是训练集数据
regr.fit(X_train,y_train)
//创建预测器,为了对剩下的测试集数据进行预测,通过x预测y值
y_pred = regr.predict(X_test)
//输出结果,分别是模型的系数、均方误差和决定系数,系数表示了每个特征对目标变量的影响程度,均方误差衡量了模型的预测误差大小,而决定系数则表示模型对数据方差的解释程度。均方误差小,决定系数高,说明模型的预测结果与实际观测值比较接近,模型对数据的解释程度也较高。模型系数表示了每个特征对目标变量的影响程度。系数的正负值表示了特征与目标变量之间的正相关或负相关关系,系数的大小则表示了特征对目标变量的影响强度。
//模型系数
print("Coefficients: \n", regr.coef_)
//均方误差
print("Mean squared error: %.2f" % mean_squared_error(y_test, y_pred))
//决定系数
print("Coefficient of determination: %.2f" % r2_score(y_test, y_pred))
---------------------------------------------------------------------------------------------------------------------------------结果:
Coefficients: [-0.01148717 -0.1507466 0.17339247 0.62553567]//模型系数,分别是四个特征值对结果的影响程度 Mean squared error: 0.06//均方误差 Coefficient of determination: 0.91//决定系数