当前位置: 首页 > article >正文

基于Scikit-learn的多元线性回归模型构建与验证

废话不多说,直接上代码

# import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error
import joblib  # 用于保存和加载模型

# 1. 导入数据(假设你有一个包含特征和目标值的CSV文件)
# 例如,data.csv 中有若干特征列和一个名为 'target' 的目标列
data = pd.read_csv('FuelConsumptionCo21.csv')

# 2. 准备数据
# 分离特征和目标值
X = data.drop('target', axis=1)
y = data['target']

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 3. 创建并训练模型
model = LinearRegression()
model.fit(X_train, y_train)

print(model.coef_)
print(model.intercept_)

# 4. 进行预测并评估模型
y_pred = model.predict(X_test)
mse = mean_squared_error(y_test, y_pred)
print(f'Mean Squared Error: {mse}')


# 5. 保存模型
joblib.dump(model, 'linear_regression_model.pkl')

# 6. 加载模型(可选,验证模型是否正确保存和加载)
loaded_model = joblib.load('linear_regression_model.pkl')
loaded_y_pred = loaded_model.predict(X_test)
loaded_mse = mean_squared_error(y_test, loaded_y_pred)
print(f'Mean Squared Error after loading: {loaded_mse}')

原始数据是汽车 二氧化碳污染指标排放,数据如下

ENGINESIZECYLINDERSFUELCONSUMPTION_CITYFUELCONSUMPTION_HWYFUELCONSUMPTION_COMBFUELCONSUMPTION_COMB_MPGtarget
249.96.78.533196
2.4411.27.79.629221
1.5465.85.948136
3.5612.79.111.125255
3.5612.18.710.627244
3.5611.97.71028230
3.5611.88.110.128232
3.7612.8911.125255
3.7613.49.511.624267
2.4410.67.59.231212
2.4411.28.19.829225
3.5612.18.310.427239
5.9121812.615.618359
5.9121812.615.618359
4.7817.411.314.719338
4.7818.112.215.418354
4.7817.411.314.719338
4.7818.112.215.418354
5.9121812.615.618359
249.97.48.832202
2411.58.11028230
2410.87.59.330214

http://www.kler.cn/a/385466.html

相关文章:

  • 手动实现h5移动端点击全屏按钮横屏展示图片,左右滑动切换,处理页面会随着手指滑动问题
  • 2.操作系统常见面试问题2
  • ubuntu下安装 git 及部署cosyvoice(2)
  • 使用Python实现智能食品营养分析的深度学习模型
  • .netCore WebAPI中字符串加密与解密
  • Mac如何实现最简单的随时监测实时运行状态的方法
  • 鸿蒙进阶篇-网格布局 Grid/GridItem(二)
  • LeetCode题练习与总结:打乱数组--384
  • 无人机干扰与抗干扰,无人机与反制设备的矛与盾
  • 如何解决导入aioredis报错TypeError: duplicate base class TimeoutError的问题(轻松解决,亲测有效)
  • 可视化建模与UML《类图实验报告》
  • WebRTC 环境搭建
  • 【报错解决】使用@SpringJunitConfig时报空指针异常
  • huawei初级网络工程师综合实验
  • 《计算机网络》课后探研题书面报告_了解网络设备
  • 语音识别如何赋能医疗行业:AI技术应用与场景剖析
  • Linux:git的了解和基础使用(保姆级教程)
  • Vue 的代理和环境变量 - 2024最新版前端秋招面试短期突击面试题【100道】
  • Go语言从入门到精通:一站式学习指南
  • Kubernetes中的网络通信
  • CSharp OpenAI
  • 编写第一个 Appium 测试脚本:从安装到运行!
  • 什么是ARM架构和Cortex内核?
  • pytest插件精选:提升测试效率与质量
  • MySQL DATETIME 和 DATE
  • Sql面试题二:请查询出用户连续三天登录的所有数据记录