计算 TSQL 中多元线性回归的"R 平方"和"P 值"



我们在SQL Server中只有很少的内置功能来进行复杂的统计分析,但是我需要计算TSQL中的多个线性回归。

基于此帖子(SQL Server中的多个线性回归函数),我可以获得CoefficientsIntercept (Y)X1X2

我需要的是p-valueX1X2以及R Square

测试数据:

DECLARE @TestData TABLE (i INT IDENTITY(1, 1), X1 FLOAT, X2 FLOAT, y FLOAT)
INSERT @TestData
    SELECT 0, 17, 210872.3034 UNION ALL
    SELECT 0, 23, 191988.2299 UNION ALL
    SELECT 0, 18, 204564.9455 UNION ALL
    SELECT 0, 4, 189528.9212 UNION ALL
    SELECT 0, 0, 200203.6364 UNION ALL
    SELECT 11, 0, 218814.1701 UNION ALL
    SELECT 5, 0, 220109.2129 UNION ALL
    SELECT 2, 0, 214377.8534 UNION ALL
    SELECT 1, 0, 204926.9208 UNION ALL
    SELECT 0, 0, 202499.4065 UNION ALL
    SELECT 0, 3, 196917.8182 UNION ALL
    SELECT 0, 9, 202286.0012

所需的输出:

R Square    0.4991599183412360
p-value X1  0.0264247876580807
p-value X2  0.7817597643898020

我已经能够从上述测试数据中获取以下数据。

b               Coefficients
----------------------------------
Intercept (Y)   202119.231151577
X1 C(H)         1992.8421941724
X2 C(C)         -83.8561622730127 

我知道TSQL不是获得此功能的好平台,但我需要纯粹在tsql中进行。

我知道SQL Server的XleratordB功能软件包

您可以手动计算r平方并创建一个变量'r2'等于 (nxysum -xsumysum)^2/(nx2sum -xsumxsum)(ny2sum -ysumysum)?

其中xsum和ysum是您的值的总和,n是观察的数量。

R平方的公式非常简单,您不一定需要任何功能或统计软件。查看此链接以手工计算:http://sciencefair.math.iit.edu/analysis/linereg/hand/

您可以将相同的逻辑应用于T-SQL。

相关内容

  • 没有找到相关文章

最新更新