oracle regr,关于oracle进行直线拟合----------太意外的收获,不得不转

2016-07-11 16:40 67人阅读 评论(0) 收藏 举报

一元线性回归是指通过线来拟合空间中的点来表示自变量和因变量之间的关系。

如何在知道这些点的情况下通过计算得出这条直线,进而在知道自变量情况下算出因变量,是本篇文档的目的。

首先来看下一元线性回归方程式及a,b值的公式推导。

101fe5ecdbc027a1eff7f27ec4a6bd8f.png

2、将数据存放到excel中,并做散点图,趋势线,得出线性回归方程。以备做验证。

8ae25348a37c61c7bdb6460a374e4331.png

3bb74df0d769c9c0eba19bf9ba279b37.png

3、将数据存入到oracle中。

4、斜率方程为:

---求出斜率

select ((regr_count(x, y) * sum(x * y) -

sum(x) * sum(a.y)) /

(regr_count(x, y) * sum(x * x) -

sum(x) * sum(x)))

from TTS_BI.TEMP_A a;

efae4bc42603ebecffeec0f3dbab8d70.png

5、截距方程式为:---求出截距

select avg(y) -       avg(x) *

((regr_count(x, y) * sum(x * y) -

sum(x) * sum(a.y)) /

(regr_count(x, y) * sum(x * x) -

sum(x) * sum(x)))

from TTS_BI.TEMP_A  a;

4e45ea076c54d63788284f11c1af7fbe.png

得出的结果与excel图上的结果相同,公式为 y = 6.4286x - 1.4286。

6、最后用oracle自带的函数求线性回归方程。

select regr_intercept(y, x) as inter,

regr_r2(y, x) as r2,

regr_slope(y, x) as slope

from TTS_BI.TEMP_A   a;

9ab28cc77749f4ab1f8627e0475050d1.png

e4452202829fc76f576ab14163a46064.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值