• EXCEL实现回归分析


    转自:https://blog.csdn.net/lulujiang1996/article/details/78802432

    一元线性回归分析
    概念回顾:

    线性回归方程:
    1.假设随机变量y和普通变量x存在以下关系

    y~N(a+bx,σ^2)

     其中a,b,σ^2都是不依赖于x的未知数,记h=Y-(a+bx)

    2.此时对Y作如下的正态假设Y=a+bx+h,h~N(0,σ^2)
    其中a,b,及σ^2都不依赖于x


    3.上式便称为一元线性回归模型,其中b称为回归系数
    根据最小二乘法可得到回归参数方程

    其图像即为回归直线。
    若对最小二乘法有些疑惑,阔以参考http://blog.csdn.net/MarsJohn/article/details/54911788 
    http://blog.csdn.net/lotus___/article/details/20546259 
    两位大佬对最小二乘法讲解的很详细。
    4.
    未知参数a和b的最小二乘估计如下:

     

    其中,x拔,y拔(理解就好)分别为n个x的平均值和y的平均值,a帽和b帽(理解就好)为未知参数a和b的最小二乘估计值。

    5.判定系数R^2:
    R^2=回归平方和/总平方和=1-残差平方和/总平方和


    Excel实现一元回归分析
    1.应用散点图和趋势线进行回归分析
    输入的数据,及用excel散点图实现的效果图如下(因时间问题,在此省略实现过程,若亲在实现过程中遇到问题可以随时提问)

      如上图,R^2=0.999,说明拟合很好,回归线可帮助数据解释的部分占到了99.9%。

    2.应用回归函数进行回归分析
    第一种:综合回归函数
    -LINEST函数,此类函数可返回回归方程的参数
    –直线公式:y=mx+b,y=m1x1+m2x2+..+b,m是每个x值相应的系数,b为常量.
    单元格中输入=LINEST(B2:B10,A2:A10,1,1)
    效果图如下:

     由上图可以看出,对应的回归方程为:y=0.609167x+152

    判定系数R^2=99.9%,说明拟合很好,回归线可帮助数据解释的部分占到了99.9%

    第二种:回归参数函数
    -主要是SLOPE函数,返回回归直线的斜率;
    –SLOPE(因变量,自变量)
    -INTERCEPT函数, 返回线性回归的截距
    –INTERCEPT(因变量,自变量)
    单元格中输入=SLOPE(B2:B10,A2:A10)另一单元格输入=INTERCEPT(B2:B10,A2:A10)

    实现结果如下:

     第三种: 检验类函数

    -RSQ函数,返回Pearson相关系数的平方,用于方程的拟合优度检验
    –RSQ(因变量,自变量)
    -STEYX函数,返回回归的总离差平方和
    单元格中输入=RSQ(B2:B10,A2:A10)
    实现结果如下:

     3.利用数学分析工具进行回归分析

    excel-数据-数据分析-回归,填好x,y值后,勾选线性拟合图,并添加趋势线,输出结果如下:

     Excel实现多元线性回归分析

    线性回归方程:
    多元线性回归方程为:y=b0+b1x1+b2x2+b3x3+..bmxm+h其中b0为常数项,b1,b2....bm为x1,x2...xm的最小二乘估计值,即回归系数,h为随机误差项
    样本回归方程:

     回归方程的显著性检验—判定系数R^2

    R^2=回归平方和/总平方和=1-残差平方和/总平方和

     R^2与样本容量有关,随着n增大,r也会随之增大,所以R^2有以下修正值

     待续~~

    ————————————————
    版权声明:本文为CSDN博主「鲁鲁酱1996」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/lulujiang1996/article/details/78802432

  • 相关阅读:
    Ant-编译构建(2)-第3方jar包引入、log4j2
    Ant-编译构建(1)-HelloWorld
    java List的初始化
    传入json字符串的post请求
    HttPclient 以post方式发送json
    cron表达式详解,cron表达式写法,cron表达式例子
    深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接
    Java两种延时——thread和timer
    List<List<Object>> list = new ArrayList<List<Object>>(); 求回答补充问题 list.get(position).add(Object);为什么会报错啊我想在对应的list里面添加对象
    关于 charset 的几种编码方式
  • 原文地址:https://www.cnblogs.com/YorkZhangYang/p/15981062.html
Copyright © 2020-2023  润新知