多元线性回归的python代码实现(基于sklearn的波士顿房价boston数据集为例)

这篇具有很好参考价值的文章主要介绍了多元线性回归的python代码实现(基于sklearn的波士顿房价boston数据集为例)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

基于sklearn自带数据集波士顿房价数据集进行多元线性回归算法代码实现,其数据集包括13个特征向量,共计506个样本集。

本文代码实现步骤如下:

1. 获取数据集

2. 数据集切分,老规矩,80%训练,20%测试

3. 数据预处理(本用例尝试过归一化处理,但发现效果不好,不是每一个算法和模型都适用于归一化处理)

4. 建模并训练

5. 使用并评估

具体代码如下:文章来源地址https://www.toymoban.com/news/detail-740486.html

# -*- coding: UTF-8 -*-
import numpy as np
from sklearn import datasets
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler

# 1.获取数据集
boston = datasets.load_boston()
print(boston.keys())
print(boston.feature_names)  # 所有特征向量名称
# ['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD', 'TAX', 'PTRATIO', 'B', 'LSTAT']
data = boston.data  # (506, 13)
target = boston.target
print(np.shape(data))
print(np.shape(target))

# 2. 数据集切分
X_train, X_test, y_train, y_test = train_test_split(data, target, test_size=0.2, random_state=666)

# 3. 数据预处理
standardscaler = StandardScaler()
standardscaler.fit(X_train)
# X_train = standardscaler.transform(X_train)  # 归一化并不适用于此数据集和模型
# X_test = standardscaler.transform(X_test)
X_train = X_train[y_train < 50]  # 过滤掉上限极值对模型正确性是比较有效的
X_test = X_test[y_test < 50]
y_train = y_train[y_train < 50]
y_test = y_test[y_test < 50]
# 4.建立线形回归模型
lin_reg = LinearRegression()
lin_reg.fit(X_train, y_train)
A = lin_reg.coef_  # 训练出来的系数
b = lin_reg.intercept_  # 训练出来的截距
print("线性回归模型为:y = {}x1 + {}x2 + {}x3 + {}x4 + {}x5 + {}x6 + "
      "{}x7 + {}x8 + {}x9 + {}x10 + {}x11 + {}x12 + {}x13 + {}.".
      format(A[0], A[1], A[2], A[3], A[4], A[5], A[6], A[7], A[8], A[9], A[10], A[11], A[12], b))

# 5.使用并评估回归模型
train_score = lin_reg.score(X_train, y_train)
test_score = lin_reg.score(X_test, y_test)
print("训练数据集模型得分{}".format(train_score))
print("测试数据集模型得分{}".format(test_score))
y_pred = lin_reg.predict(X_test)
# print(y_pred)

到了这里,关于多元线性回归的python代码实现(基于sklearn的波士顿房价boston数据集为例)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于Python的多元线性回归分析

    一、多元线性回归分析(Multiple regression) 1.与简单线性回归相比较,具有多个自变量x 2.多元回归模型 其中是误差值,与简单线性回归分析中的要求特点相一致。其余的系数和截距为参数。 3.多元回归方程 4.估计多元回归方程(点估计) 5.估计方法 使方差和最小,即 从而得到一

    2024年02月06日
    浏览(37)
  • 学习记录2-多元线性回归模型(附上python代码)

    研究货运总量 y (万吨)与工业总产值 x1(亿元)、农业总产值 x2(亿元),居民非商品支出 X3 (亿元)的关系。数据见表3-9。 (1)计算出 y , x1 ,x2, x3 的相关系数矩阵。 (2)求 y 关于 x1 ,x2, x3 的三元线性回归方程。 (3)对所求得的方程做拟合优度检验。 (4)对回归方程做

    2024年02月03日
    浏览(39)
  • 利用python实现多元线性回归

    本文介绍了如何用python进行回归分析 直线回归分析是研究两变量(自变量和因变量)之间的依存关系及其关系的具体方程的形式。分析中所形成的这种关系式称为回归模型,其中以一条直线方程表明的两个变量的依存关系的模型叫一元线性回归模型。 一元线性回归模型研究

    2024年02月11日
    浏览(35)
  • 机器学习之利用线性回归预测波士顿房价和可视化分析影响房价因素实战(python实现 附源码 超详细)

    数据集和源码请点赞关注收藏后评论区留下QQ邮箱或者私信 线性回归是利用最小二乘函数对一个或多个因变量之间关系进行建模的一种回归分析,这种函数是一个或多个称为回归系数的模型参数的线性组合。只有一个变量的称为一元回归,大于一个变量的情况叫做多元回归。

    2024年01月21日
    浏览(45)
  • 机器学习(三):基于线性回归对波士顿房价预测

    ✍ 作者简介: i阿极 ,CSDN Python领域新星创作者, 专注于分享python领域知识。 ✍ 本文录入于《机器学习案例》 ,本专栏精选了经典的机器学习算法进行讲解,针对大学生、初级数据分析工程师精心打造ÿ

    2023年04月25日
    浏览(49)
  • Python-线性回归的sklearn实现

    hello大家好这里是小L😊, 这学期开启机器学习之旅。在这里想和大家一起学习一起进步。💪 这次笔记内容:学习线性回归的sklearn实现 线性回归最后要找的是一条直线 (1)代码 (2)求斜率(数学公式) sklearn.linear_model.LinearRegression ( ) 超参数 fit_ intercept:截距,是否计算该模型

    2024年02月07日
    浏览(37)
  • 【人工智能】多元线性回归模型举例及python实现方式

    比如你做了一个企业想要招人,但是不知道月薪应该定在多少,你做了一个月薪和收入的调研,包括年限、学历、地区和月薪 做一个月薪=w1 年限+w2 学历+w3*城市+…+b的工作年限和薪资的多元线性模型,然后找出最适合线性模型的直线-成本函数、梯度下降方式,来预估你可以

    2024年02月19日
    浏览(52)
  • python机器学习(三)特征预处理、鸢尾花案例--分类、线性回归、代价函数、梯度下降法、使用numpy、sklearn实现一元线性回归

    数据预处理的过程。数据存在不同的量纲、数据中存在离群值,需要稳定的转换数据,处理好的数据才能更好的去训练模型,减少误差的出现。 标准化 数据集的标准化对scikit-learn中实现的大多数机器学习算法来说是常见的要求,很多案例都需要标准化。如果个别特征或多或

    2024年02月16日
    浏览(44)
  • Python预测——多元线性回归

    答辩结束了,把论文里有用的东西摘出来。 多元线性回归模型: 其中 y 为要预测的变量,x 为影响 y 值的变量,b 为回归系数,计算方式为: 计算结果为一个矩阵,分别对应b0,b1,b2,b3。 对猪肉价格进行预测,即猪肉价格作为 y,选择猪肉价格指数,生猪屠宰量,猪粮比作

    2024年02月03日
    浏览(35)
  • 机器学习与深度学习——使用paddle实现随机梯度下降算法SGD对波士顿房价数据进行线性回归和预测

    随机梯度下降(SGD)也称为增量梯度下降,是一种迭代方法,用于优化可微分目标函数。该方法通过在小批量数据上计算损失函数的梯度而迭代地更新权重与偏置项。SGD在高度非凸的损失表面上远远超越了朴素梯度下降法,这种简单的爬山法技术已经主导了现代的非凸优化。

    2024年02月03日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包