Fbprophet安装错误 - 为fbprophet构建wheel失败。

14

我正在尝试使用Pip安装Python的fbprophet,但是失败了。我已经安装了Pystan。

我能使用Anaconda Navigator导入它吗?

可以有人帮忙吗?

为fbprophet构建轮子失败

Running setup.py clean for fbprophet
Failed to build fbprophet
Installing collected packages: fbprophet
  Running setup.py install for fbprophet ... error
    Complete output from command C:\ProgramData\Anaconda3\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\SJ-Admin\\AppData\\Local\\Temp\\pip-build-bsm4sxla\\fbprophet\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\SJ-Admin\AppData\Local\Temp\pip-kvck8fw1-record\install-record.txt --single-version-externally-managed --compile:
    running install
    running build
    running build_py
    creating build
    creating build\lib
    creating build\lib\fbprophet
    creating build\lib\fbprophet\stan_models
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\SJ-Admin\AppData\Local\Temp\pip-build-bsm4sxla\fbprophet\setup.py", line 126, in <module>
        """
      File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\__init__.py", line 129, in setup
        return distutils.core.setup(**attrs)
      File "C:\ProgramData\Anaconda3\lib\distutils\core.py", line 148, in setup
        dist.run_commands()
      File "C:\ProgramData\Anaconda3\lib\distutils\dist.py", line 955, in run_commands
        self.run_command(cmd)
      File "C:\ProgramData\Anaconda3\lib\distutils\dist.py", line 974, in run_command
        cmd_obj.run()
      File "C:\ProgramData\Anaconda3\lib\site-packages\setuptools\command\install.py", line 61, in run
        return orig.install.run(self)
      File "C:\ProgramData\Anaconda3\lib\distutils\command\install.py", line 545, in run
        self.run_command('build')
      File "C:\ProgramData\Anaconda3\lib\distutils\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "C:\ProgramData\Anaconda3\lib\distutils\dist.py", line 974, in run_command
        cmd_obj.run()
      File "C:\ProgramData\Anaconda3\lib\distutils\command\build.py", line 135, in run
        self.run_command(cmd_name)
      File "C:\ProgramData\Anaconda3\lib\distutils\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "C:\ProgramData\Anaconda3\lib\distutils\dist.py", line 974, in run_command
        cmd_obj.run()
      File "C:\Users\SJ-Admin\AppData\Local\Temp\pip-build-bsm4sxla\fbprophet\setup.py", line 46, in run
        build_stan_models(target_dir)
      File "C:\Users\SJ-Admin\AppData\Local\Temp\pip-build-bsm4sxla\fbprophet\setup.py", line 28, in build_stan_models
        from pystan import StanModel
    ImportError: cannot import name 'StanModel'

我也尝试使用conda install -c conda-forge fbprophet安装fbprophet,但它也没有起作用。 - DataScience2017
14个回答

20

基础步骤: 在Anaconda提示符中切换到您的环境: conda activate name-of-your-python-enviornment

然后以下步骤应该可以正常工作:

  1. 在提示符上安装Ephem:

conda install -c anaconda ephem
  • 安装Pystan:

    conda install -c conda-forge pystan
    
  • 最后安装Fbprophet:

    conda install -c conda-forge fbprophet
    
  • 如果节假日包中存在错误

    pip install holidays==0.9.12
    
  • 参考资料: https://github.com/facebook/prophet/issues/892

    关于节假日包错误的参考资料: https://github.com/facebook/prophet/issues/1300


    在将我的环境的 Python 版本降至 3.9 以下后,我成功地使其工作。 - PigSpider
    这对我有用。我不必执行基本步骤或第四步。谢谢! - Parseval
    经过一整天的浪费时间,感谢这个。终于能够工作了。 - ABD

    6

    使用离线软件包安装程序:该程序适用于Python 3.8和Python 3.9.x版本。

    pip install localpip 
    localpip install fbprophet
    

    4
    fbprophet软件包已更名为prophet。在Anaconda提示符下使用以下命令对我有效:
    pip install prophet
    

    然后你可以使用以下命令导入:
    from prophet import Prophet
    

    3

    我可以使用conda install -c conda-forge fbprophet来安装fbprophet。但由于权限问题,它一直失败。 我的文件夹只有“只读”权限。我将其修改为可读写状态后,再次运行命令就成功安装了fbprophet。


    2
    所以在我完成之后
    conda install -c conda-forge fbprophet
    

    I got at the end:

    EnvironmentNotWritableError: The current user does not have write permissions to the target environment.
      environment location: C:\ProgramData\Anaconda3
    

    ProgramData是系统文件夹,因此更改了读写权限(需要几分钟),我还对C:\Program Files\Python37路径下的Lib文件夹进行了相同操作。


    在另一个分支中有一个解决方案 - 作为解决方案,我重新安装了Anaconda只为我自己,并且现在基本环境位于\AppData\Local\Continuum\anaconda3。 - Pulia Zlaya
    1
    欢迎来到 Stack Overflow!我不确定,但是你的回答好像以一个问题结尾?如果你并没有提出问题(在 Stack Overflow 上被认可的问题),请问能否让最后一句话更加清晰明了一些呢?谢谢。 - inputforcolor

    1

    以下是相关环境信息:

    操作系统:OSX Big Sur 11.6

    Python版本:python:3.7-slim

    $ pip install pystan==2.19
    $ pip install fbprophet
    

    1

    对于这个堆栈:

    • CentOS:7
    • Python:3.8
    • GCC:4.8.5
    • PyStan:2.19.1.1
    • FbProphet:0.7.1

    您需要这些软件包:

    • centos-release-scl devtoolset-8

    启用 SCL devtoolset-8

    source /opt/rh/devtoolset-8/enable
    
    • rh-python38-python rh-python38-python-devel
    • pip install pystan==2.19.1.1

    带有HTTPD MOD_WSGI和FBPROPHET的Docker镜像...

    FROM centos:7
    
    EXPOSE 80
    
    # Install Apache
    RUN yum -y update
    RUN yum -y install centos-release-scl
    RUN yum -y install httpd httpd-tools rh-python38-python-mod_wsgi.x86_64 devtoolset-8-gcc devtoolset-8-gcc-c++ rh-python38-python rh-python38-python-devel
    
    # Copy the wsgi module to Apache HTTP Server modules folder
    RUN cp /opt/rh/httpd24/root/usr/lib64/httpd/modules/mod_rh-python38-wsgi.so /lib64/httpd/modules/mod_wsgi.so
    
    ENV PATH="/opt/rh/rh-python38/root/usr/bin:/opt/rh/rh-python38/root/usr/local/bin:${PATH}"
    
    WORKDIR /
    COPY ROOT .
    
    WORKDIR /opt/rh/rh-python38/root
    RUN ./usr/bin/python3 /etc/get-pip.py
    
    RUN chmod +x /usr/local/bin/install-fb.sh && /usr/local/bin/install-fb.sh
    RUN pip install -r /etc/requirements.txt
    
    # Start Apache
    CMD ["/usr/sbin/httpd","-D","FOREGROUND"]
    

    脚本 install-fb.sh 包含以下代码:

    $ cat ROOT/usr/local/bin/install-fb.sh
    #!/bin/bash
    source /opt/rh/devtoolset-8/enable
    pip install pystan==2.19.1.1 fbprophet==0.7.1
    

    将它放在自己的脚本中的原因是为了避免 gcc 找不到错误,这是由于 SCL 启用行引起的。
    希望这可以帮助您,让所有这些软件包一起运行并不是一件轻而易举的事情 :)

    0

    macOS Big Sur 11.5.2

    Python 3.7

    这个方法对我有效:

    pip install pystan==2.19.1.1
    sudo pip install fbprophet==0.7.1
    

    0

    FB prophet documentation建议Windows用户使用conda作为安装prophet的最简单方法。 在我的情况下,以下方法解决了问题(win10):

    conda install -c conda-forge fbprophet -y
    

    0

    Docker镜像:python 3.8-slim

    这对我有用:

    pip install pystan==2.19.1.1
    pip install fbprophet
    

    请在回答中提及您的工作环境或操作系统,这将有助于其他查看您回答的人。 - Sarfraaz Ahmed

    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接