对sklearn里的鸢尾花数据集进行线性回归分析

纯小白,学习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//决定系数
  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值