【发布时间】:2014-07-23 04:52:27
【问题描述】:
当我尝试将 OLS 与这两个库配合使用时,我得到了不同的 r^2(确定系数)值,但我不太明白为什么。 (为方便起见,删除了一些间距)
In [1]: import pandas as pd
In [2]: import numpy as np
In [3]: import statsmodels.api as sm
In [4]: import scipy.stats
In [5]: np.random.seed(100)
In [6]: x = np.linspace(0, 10, 100) + 5*np.random.randn(100)
In [7]: y = np.arange(100)
In [8]: slope, intercept, r, p, std_err = scipy.stats.linregress(x, y)
In [9]: r**2
Out[9]: 0.22045988449873671
In [10]: model = sm.OLS(y, x)
In [11]: est = model.fit()
In [12]: est.rsquared
Out[12]: 0.5327910685035413
这里发生了什么?我想不通!是不是哪里出错了?
【问题讨论】:
标签: python statistics scipy statsmodels