最小二乘法构建线性回归方程

本文介绍了如何进行一元线性回归分析,从相关数学概念如一元线性回归方程和相关系数R²的定义,到利用Python的sklearn库和手动计算实现模型。通过不同数据组数的实验,展示了使用Excel进行回归分析的步骤,强调了R²在衡量模型拟合优度中的作用。

一、 相关数学知识的定义

1.1 一元线性回归的定义

一元线性回归分析预测法,是根据自变量x和因变量Y的相关关系,建立X与Y的线性回归方程进行预测的方法。由于市场现象一般是受多种因素的影响,而并不是仅仅受一个因素的影响。所以应用一元线性回归分析预测法,必须对影响市场现象的多种因素做全面分析。只有当诸多的影响因素中,确实存在一个对因变量影响作用明显高于其他因素的变量,才能将它作为自变量,应用一元相关回归分析市场预测法进行预测。
一元线性回归分析法的预测模型如下:
在这里插入图片描述
式中,xt代表t期自变量的值;
代表t期因变量的值;
a、b代表一元线性回归方程的参数。
a、b参数由下列公式求得(用代表):
在这里插入图片描述

1.2 相关系数R²的定义

表征依变数Y的变异中有多少百分比,可由控制的自变数X来解释.
相关系数(coefficient of correlation)的平方即为决定系数。它与相关系数的区别在于除掉|R|=0和1情况,
由于R2<R,可以防止对相关系数所表示的相关做夸张的解释。
确定系数:在Y的总平方和中,由X引起的平方和所占的比例,记为R2(R的平方)
确定系数的大小决定了相关的密切程度。
当R2越接近1时,表示相关的方程式参考价值越高;相反,越接近0时,表示参考价值越低。这是在一元回归分3析中的情况。但从本质上说确定系数和回归系数没有关系,就像标准差和标准误差在本质上没有关系一样。
在多元回归分析中,确定系数是通径系数的平方。
表达式:R2=SSR/SST=1-SSE/SST
其中:SST=SSR+SSE,SST (total sum of squares)为总平方和,SSR (regression sum of squares)为回归平方和,SSE (error sum of squares) 为残差平方和。
注:(不同书命名不同)
回归平方和:SSR(Sum of Squares for regression) = ESS (explained sum of squares)
残差平方和:SSE(Sum of Squares for Error) = RSS (residual sum of squares)
总离差平方和:SST(Sum of Squares for total) = TSS(total sum of squares)
SSE+SSR=SST RSS+ESS=TSS
意义:拟合优度越大,自变量对因变量的解释程度越高,自变量引起的变动占总变动的百分比高。观察点在回归直线附近越密集。
取值范围:0-1.
在这里插入图片描述

二、使用jupyter来做一元线性回归分析

2.1 根据最小二乘法公式手动构建一元线性回归模型

#不掉包实现一元线性回归
import pandas as pd
def read_file(raw):#根据行数来读取文件
    df = pd.read_excel('..\\source\\weights_heights(身高-体重数据集).xls',sheet_name ='weights_heights')
    height=df.iloc[0:raw,1:2].values
    weight=df.iloc[0:raw,2:3].values
    return height,weight

def array_to_list(array):#将数组转化为列表
    array=array.tolist()
    for i in range(0,len(array)):
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值