机器学习-单因子线性回归

回归分析:根据数据,确定两种或两种以上变量间相互依赖的定量关系。

python实现:

python 复制代码
import pandas as pd
data = pd.read_csv('generated_data.csv') # 读数据
data.head()
x = data.loc[:,'x'] # 将文件中的x读入数组
y = data.loc[:,'y']

from matplotlib import pyplot as plt
plt.figure(figsize=(5,5)) # 画图
plt.scatter(x,y)
plt.show()

# set up linear regression model 建立模型
from sklearn.linear_model import LinearRegression
lr_model = LinearRegression()
import numpy as np
x=np.array(x) # 转维
x=x.reshape(-1,1)
y=np.array(y)
y=y.reshape(-1,1)
lr_model.fit(x,y)  # 创建模型

# 用模型测试
y_predict=lr_model.predict(x)  # 用x跑y
print(y_predict)
y_3=lr_model.predict([[3.5]]) # 用3.5跑对应y
print('y_3=',y_3)

# 模型评估
# 打印线性回归模型y=ax+b的a,b
a = lr_model.coef_
b = lr_model.intercept_
print('a=',a)
print('b=',b)

from sklearn.metrics import mean_squared_error,r2_score
MSE = mean_squared_error(y,y_predict) # MSE越解决0,越小越好
R2 = r2_score(y,y_predict)  # 越接近1,说明拟合得越好
print('MSE=',MSE)
print('R2=',R2)
plt.figure()
plt.plot(y,y_predict) # 拟合y和预测y
plt.show()

generated_data.csv文件内容展示:


输出结果:

数据x和y拟合图像:

y与y_predict拟合图像:

相关推荐
黄啊码17 分钟前
【黄啊码】微信 AI 把聊天功能和 Vibe Coding打通了,创业者:我又白干了
人工智能
IT_陈寒1 小时前
React的useState居然还有这种坑?我差点删库跑路
前端·人工智能·后端
用户413062258292 小时前
给AI回答加引用角标citation:RAG前端实现
人工智能
米小虾2 小时前
WAIC 2026 倒计时30天:300+ AI 产品全球首发,今年看点全解析
人工智能
码上天下3 小时前
多模态Agent上传图片:前端压缩格式与预览实战
人工智能
姗姗来迟了3 小时前
Vue3封装可复用AI对话组件:一次抽象复盘
人工智能
怕浪猫3 小时前
哪些软件对 Chrome DevTools Protocol 频繁使用
人工智能·架构·前端框架
leo在掘金5 小时前
从DeepSeek 510亿融资到GitHub 33K Star开源项目:这周的技术生态发生了什么?
人工智能