【问题标题】:Python - Patsy apparently installed but python can't find it?Python - Patsy 显然已安装但 python 找不到它?
【发布时间】: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


【解决方案1】:

转到您安装解释器的文件夹。就我而言,我的口译员是 conda。所以我在 C:\Users\%Username% 文件夹中的 AppData 文件夹中找到了它。

  • 打开包含 _conda.exe 或您安装的任何解释器的文件夹
  • 转到 envs 文件夹,假设您已经为解释器设置了环境。然后那个文件夹应该在那里
  • 按照其中的 myenv\Lib\site-packages 顺序进行操作。在此目录中,这将显示您环境中安装的所有软件包。
  • 如果 patsy 文件夹不存在,请再次上到解释器的目录并转到此目录 Lib\site-packages。您很可能会在此处找到您安装的软件包。
  • 只需找到文件:patsy 和 patsy-0.5.1-py3.7.egg-info
  • 将它们复制并再次粘贴到此目录 myenv\Lib\site-packages 中。

它对我有用。我希望它也对你有用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-03-15
    • 2021-01-31
    • 2020-04-14
    • 1970-01-01
    • 1970-01-01
    • 2012-05-09
    • 2012-03-29
    • 1970-01-01
    相关资源
    最近更新 更多