已跪!终于有人把Python线性回归全面解释清楚了

简单的线性回归用于预测分析和推断。在这种类型中,存在一个自变量和一个因变量。每当建模中存在因果关系时,我们都会进行回归分析。当我们使用因子分析技术时,性能在实时分析中更加准确。回归分析基础知识在有监督的机器学习中的使用。这里要注意的三件事:

  • 我们需要数据来进行分析,对于整个人群来说,这是一个非常繁琐的任务,因此我们需要获取样本数据进行分析。
  • 获取数据后,我们需要设计一个模型,使其适用于整个人群。
  • 建模之后,我们可以对总体进行预测。

直线方程为

y = mx + b

这里,

Y是因变量(结果)或预测变量。

X是一个 自变量。

M是一个斜率,或者我们可以说是梯度。

B是y轴上的值截距。

Y是X的函数。回归模型是线性近似。为了获得良好的预测,我们需要找到BM。

例子:

假设我们具有“能量”和“公里数”的适应性数据。

已跪!终于有人把Python线性回归全面解释清楚了

 

我们需要找到中号。查找这些值得公式如下:

M =样本数*(XY总和-X总和* Y总和)/样本数*(X平方总和-X总和的平方)

B = Y总和-M * X总和/样本数

该图显示了这些值。

已跪!终于有人把Python线性回归全面解释清楚了

 

计算出该值之后,M变为1.89,B的值为0.667。从这些值,我们可以从公式中得出预测。

Y = 1.89 * X + 0.667

在检查了一些X值后,可以预测公里数。一个例子如下所示:

已跪!终于有人把Python线性回归全面解释清楚了

 

我们得到了模型,但是是一种简单的技术。让我们用python检查是否获得相同的值。

#import all the libraries
import numpy as np 
import pandas as pd
import matplotlib.pyplot as plt
import statsmodels.api as sm

读取Excel文件

df = pd.read_excel("fitness.xlsx")

使用describe函数查看统计信息。

已跪!终于有人把Python线性回归全面解释清楚了

 

将数据分为x和y。

y = df['Y1']
x = df['X1']
#plot the scatter plot between them
plt.scatter(x,y)
plt.xlabel('Energy', fontsize =20)
plt.ylabel('Kms Covered', fontsize =20)
plt.show()

我们几乎得到了线性相关。

已跪!终于有人把Python线性回归全面解释清楚了

 

现在,将OLS模型拟合到我们的数据上。

x_new = sm.add_constant(x)
output = sm.OLS(y, x_new).fit()
output.summary()
#output:
                coef        
---------------------------------
const          0.667   
x1             1.89

得到摘要后,我们得到相同的值。在这里,我们使用statsmodels,这是用于统计和推断的出色库。

拟合之后,OLS模型允许使用拟合线检查散布图。

plt.scatter(x1,y)
y_pred = 1.89*X + 0.667
fig = plt.plot(x1, y_pred, lw = 5, c='red', label='regression line' 
plt.xlabel('Energy', fontsize =20)
plt.ylabel('Kms Covered', fontsize =20)
plt.show()

这是拟合最佳线后的散点图。

已跪!终于有人把Python线性回归全面解释清楚了

 

结论:

OLS提供了简单的线性回归近似值,而statsmodel提供了对数据统计信息的绝佳见解。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端仙人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值