【发布时间】:2016-03-04 04:26:16
【问题描述】:
所以我的 statsmodels 安装非常混乱 - 实际上我不得不自己将文件夹移动到 Enthought 的 site-packages 文件夹中。但无论如何现在,当我选择import statsmodels.api as smapi 时,我会收到以下错误消息列表:
ImportError Traceback (most recent call last)
/home/joshuajoseph/Desktop/ANU PhD 2016 onwards/msagnfracs.py in <module>()
9 import matplotlib.cm as cm #colour maps for plotting
10 from operator import truediv #to divide lists
---> 11 import statsmodels.api as smapi
12 import statsmodels.graphics as smgraphics
13
/home/joshuajoseph/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/statsmodels/api.py in <module>()
3 from . import tools
4 from .tools.tools import add_constant, categorical
----> 5 from . import regression
6 from .regression.linear_model import OLS, GLS, WLS, GLSAR
7 from .regression.quantile_regression import QuantReg
/home/joshuajoseph/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/statsmodels/regression/__init__.py in <module>()
----> 1 from .linear_model import yule_walker
2
3 from statsmodels import NoseWrapper as Tester
4 test = Tester().test
/home/joshuajoseph/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/statsmodels/regression/linear_model.py in <module>()
50 cache_readonly,
51 cache_writable)
---> 52 import statsmodels.base.model as base
53 import statsmodels.base.wrapper as wrap
54 from statsmodels.emplike.elregress import _ELRegOpts
/home/joshuajoseph/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/statsmodels/base/model.py in <module>()
9 import statsmodels.base.wrapper as wrap
10 from statsmodels.tools.numdiff import approx_fprime
---> 11 from statsmodels.formula import handle_formula_data
12 from statsmodels.compat.numpy import np_matrix_rank
13 from statsmodels.base.optimizer import Optimizer
/home/joshuajoseph/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/statsmodels/formula/__init__.py in <module>()
2 test = Tester().test
3
----> 4 from .formulatools import handle_formula_data
/home/joshuajoseph/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/statsmodels/formula/formulatools.py in <module>()
1 from statsmodels.compat.python import iterkeys
2 import statsmodels.tools.data as data_util
----> 3 from patsy import dmatrices, NAAction
4 import numpy as np
5
ImportError: No module named patsy
所以看起来patsy 没有安装。但是当我执行pip install patsy 时,我得到以下信息:
Requirement already satisfied (use --upgrade to upgrade): patsy in ./Enthought/Canopy_64bit/User/lib/python2.7/site-packages/patsy-0.4.1-py2.7.egg
Requirement already satisfied (use --upgrade to upgrade): six in ./Enthought/Canopy_64bit/User/lib/python2.7/site-packages (from patsy)
Requirement already satisfied (use --upgrade to upgrade): numpy in ./Enthought/Canopy_64bit/User/lib/python2.7/site-packages (from patsy)
检查我的site-packages 文件夹,我看到了这个:
patsy-0.4.1-py2.7.egg
上面的代码指向的是什么。但就是这样。仅此一项显然无法帮助我解决statsmodels 的问题,但我无法再安装patsy。如果我尝试升级它 (pip install --upgrade patsy),我会得到:
Requirement already up-to-date: patsy in ./patsy-0.4.1-py2.7.egg
Requirement already up-to-date: six in /home/joshuajoseph/Enthought/Canopy_64bit/User/lib/python2.7/site-packages (from patsy)
Requirement already up-to-date: numpy in /home/joshuajoseph/Enthought/Canopy_64bit/User/lib/python2.7/site-packages (from patsy)
谁能帮我弄清楚发生了什么?
【问题讨论】:
-
看来您正在使用 virtualenv。您确定
site-packages/中的patsy/子目录(不是egg 文件)具有适当的权限/存在吗?您也可以尝试先删除 patsy,然后重新安装。 -
嗨@RedBaron,这就是问题所在-
site-packages/目录中没有patsy/子目录! -
那么
patsy并没有实际安装(pip 只查看egg 文件以查看是否安装了包)。您可以从您的 virtualenv 运行pip remove patsy然后pip install patsy以正确重新安装 patsy。可以肯定的是,您可以多次运行pip remove patsy(直到它抱怨找不到patsy)然后运行install
标签: python enthought statsmodels patsy