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

在oracle 经过sql实现一元线性回归方程sql

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

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

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

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

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

三、将数据存入到oracle中。文档

四、斜率方程为:get

---求出斜率变量

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

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

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

       sum(x) * sum(x)))

  from TTS_BI.TEMP_A a;

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

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;

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

六、最后用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;

相关文章
相关标签/搜索