如何使用scipy 1.0.0计算python 3.6中的VIF?

时间:2018-02-20 03:03:11

标签: python scipy

我正在尝试导入

from statsmodels.stats.outliers_influence import variance_inflation_factor

这在Scipy 0.19上工作正常。

但是,在Python 3.6.3中,由于Scipy 1.0.0中ss模块不可用,它失败了。

~\Anaconda3\lib\site-packages\statsmodels\regression\linear_model.py in <module>()
     41 from scipy.linalg import toeplitz
     42 from scipy import stats
---> 43 from scipy.stats.stats import ss
     44 from scipy import optimize
     45 from scipy.stats import chi2

ImportError: cannot import name 'ss'

有人可以指导我如何使用Scipy1.0.0进行VIF分析吗?

2 个答案:

答案 0 :(得分:1)

首先,ss模块位于scipy.stats,而scipy 0.17不在scipy.stats.stats。此外,它已被弃用,但您似乎已经想到了这一点。

其次,在github上的当前linear_model.py中,不再导入ss包:

from scipy.linalg import toeplitz
from scipy import stats
from scipy import optimize

您的statsmodels是什么版本?听起来你可能需要更新它。

答案 1 :(得分:0)

SciPy 1.0需要statsmodels >= 0.8 || None(刚出来!)。