【问题标题】:Python numpy statsmodels OLS Regression specific valuePython numpy statsmodels OLS 回归特定值
【发布时间】:2015-12-31 23:26:44
【问题描述】:

你好社区我在下面有这段代码,它实现了多元回归线性分析并根据 x 和 y 值显示多个统计数据:

import numpy as np
import statsmodels.api as sm

y = [1,2,3,4,3,4,5,4,5,5,4,5,4,5,4,5,6,5,4,5,4,3,4]

x = [
     [4,2,3,4,5,4,5,6,7,4,8,9,8,8,6,6,5,5,5,5,5,5,5],      #<-x1
     [4,1,2,3,4,5,6,7,5,8,7,8,7,8,7,8,7,7,7,7,7,6,5],      #<-x2
     [4,1,2,5,6,7,8,9,7,8,7,8,7,7,7,7,7,7,6,6,4,4,4]       #<-x3
     ]

x = np.array(x).T
x = sm.add_constant(x)
results = sm.OLS(endog=y, exog=x).fit()
print results.summary()

返回:

                            OLS Regression Results                            
==============================================================================
Dep. Variable:                      y   R-squared:                       0.535
Model:                            OLS   Adj. R-squared:                  0.461
Method:                 Least Squares   F-statistic:                     7.281
Date:                Tue, 19 Feb 2013   Prob (F-statistic):            0.00191
Time:                        21:51:28   Log-Likelihood:                -26.025
No. Observations:                  23   AIC:                             60.05
Df Residuals:                      19   BIC:                             64.59
Df Model:                           3                                         
==============================================================================
                 coef    std err          t      P>|t|      [95.0% Conf. Int.]
------------------------------------------------------------------------------
x1             0.2424      0.139      1.739      0.098        -0.049     0.534
x2             0.2360      0.149      1.587      0.129        -0.075     0.547
x3            -0.0618      0.145     -0.427      0.674        -0.365     0.241
const          1.5704      0.633      2.481      0.023         0.245     2.895

==============================================================================
Omnibus:                        6.904   Durbin-Watson:                   1.905
Prob(Omnibus):                  0.032   Jarque-Bera (JB):                4.708
Skew:                          -0.849   Prob(JB):                       0.0950
Kurtosis:                       4.426   Cond. No.                         38.6

如何实现 statsmodel api 仅将 R^2 值(0.535)作为整数返回/打印?我想利用这个值进行多元回归分析,并在分析完成后获取最高的 R^2 值。 谢谢

【问题讨论】:

  • rsquared 介于 0 和 1 之间,如果您包含一个常量,请参阅 J Kelly 的回答以了解如何访问它。更一般地, rsquared 不会惩罚包含更多变量,并且如果您包含所有可用变量,则会最大化。如果您只比较具有相同数量的解释变量的模型,这不是问题,但对于具有不同数量的变量的模型,AIC、BIC 或调整后的 rsquared 会更好。

标签: python numpy regression statsmodels


【解决方案1】:

打印结果.rsquared

“作为整数”是什么意思?舍入到 1 还是 535?

【讨论】:

  • 我只是想获得 r 平方值,因为我将使用它进行进一步的计算!感谢您的帮助
猜你喜欢
  • 2015-07-22
  • 2014-03-30
  • 2016-12-29
  • 1970-01-01
  • 2014-04-09
  • 2014-02-09
  • 2016-05-03
  • 2014-12-19
  • 2017-07-04
相关资源
最近更新 更多