安装 Prophet

安装 Prophet本安装文档主要翻译整理自ProphetInstallation官方安装文档。在R上安装Prophet一、Windows系统安装Prophet前的准备工作如果是Windows系统,需要按照rstan提供的教程给R安装一个编译器。其中,最为关键的一步就是先安装Rtools。1.安装R和RStudio2.安装Rtools,确保其安装…

大家好,又见面了,我是你们的朋友全栈君。

本安装文档主要翻译整理自 Prophet Installation 官方安装文档。

在 R 上安装 Prophet

一、Windows 系统安装 Prophet 前的准备工作

如果是 Windows 系统,需要按照 rstan 提供的教程给 R 安装一个编译器。其中,最为关键的一步就是先安装 Rtools 。

1. 安装 R 和 RStudio

2. 安装 Rtools ,确保其安装目录已添加至系统环境变量中。

假如 Rtools 安装在 C 盘,则运行Sys.getenv('PATH')后,输出应包含如下所示的结果(注:原文教程中结果为”C:\Rtools\bin;C:\Rtools\gcc-4.6.3\bin;”);运行system('g++ -v')system('where make')后输出结果正常,如下所示。

否则,请确保 Rtools 安装目录已添加至系统环境变量中。

 

1

2

3

4

5

6

7

8

9

 

> Sys.getenv(‘PATH’)

C:\\Rtools\\bin;C:\\Rtools\\mingw_64\\bin;

> system(‘g++ -v’)

Using built-in specs.

COLLECT_GCC=C:\Rtools\mingw_64\bin\G__~1.EXE

# 已省略部分输出结果

gcc version 4.9.3 (x86_64-posix-seh, Built by MinGW-W64 project)

> system(‘where make’)

C:\Rtools\bin\make.exe

3. 配置

非必须操作,不会影响 RStan 正常工作,但强烈推荐。

  • 创建一个 Makevars 文件,代码如下:
 

1

2

3

4

5

6

7

8

 

dotR <- file.path(Sys.getenv(“HOME”), “.R”)

if (!file.exists(dotR))

dir.create(dotR)

M <- file.path(dotR, “Makevars”)

if (!file.exists(M))

file.create(M)

cat(“\nCXXFLAGS=-O3 -mtune=native -march=native -Wno-unused-variable -Wno-unused-function”,

file = M, sep = “\n”, append = TRUE)

  • 如果你使用的是 Rtools33 (或更高版本),则需要运行下列代码:
 

1

2

3

 

cat(‘Sys.setenv(BINPREF = “C:/Rtools/mingw_$(WIN)/bin/”)’,

file = file.path(Sys.getenv(“HOME”), “.Rprofile”),

sep = “\n”, append = TRUE)

  • 如果你使用的 g++ 版本号在 6 或以上,且希望关掉和 Stan 不相关的一些警告信息,可以运行下列代码:
 

1

2

 

cat(“\nCXXFLAGS += -Wno-ignored-attributes -Wno-deprecated-declarations”,

file = M, sep = “\n”, append = TRUE)

  • 确认配置成功,可运行下列代码:
 

1

2

3

4

 

# 查看配置的信息

cat(readLines(M), sep = “\n”)

# 或是找到该配置文件的路径,自行打开查看

cat(M)

4. 安装 RStan

  • 安装最新版本的 RStan 及其依赖包,代码如下:
 

1

2

3

 

# 注意: 如果 https 下载不成功,可改为 http

# 确保 dependencies=TRUE ,安装依赖包

install.packages(“rstan”, repos = “https://cloud.r-project.org/”, dependencies=TRUE)

  • 如果上述过程均失败,可通过下列代码按源码安装:
 

1

2

3

 

# 注意: 可根据你想使用的内核数来更改数字“4”

Sys.setenv(MAKEFLAGS = “-j4”)

install.packages(“rstan”, type = “source”)

  • 安装完成后,重启 R 。并在载入 RStan 前,确认没有旧版本 RStan 所创建(可能是自动创建)的产物已被载入 R 中。
  • 通过运行如下代码,确认工具链已生效,代码应当返回值10:
 

1

2

3

4

 

fx <- inline::cxxfunction( signature(x = “integer”, y = “numeric” ) , ‘

return ScalarReal( INTEGER(x)[0] * REAL(y)[0] ) ;

‘ )

fx( 2L, 5 ) # 应当返回值 10

注:以上命令都是在 R 中输入运行的。

二、安装 Prophet 包

在 R 中运行如下代码:

 

1

2

 

# R

install.packages(‘prophet’)

在 Python 上安装 Prophet

一、安装 Prophet 前的准备工作

Python 中的 Prophet 最主要的依赖库是 pystan。不管什么系统,都需按照 安装教程 先安装pystan

1. 安装 Python

推荐使用 Anaconda 。Anaconda 是一个开源的 Python 发行版本,内置conda来实现pip库管理的功能。

2. 安装 Pthon 的依赖库

如果你使用的是 Anaconda , numpy 和 cython 库已经内置在其中。但是以防万一,你也可以使用conda去安装它们:

  • 打开一个命令行程序

  • 使用conda install numpy命令去安装 numpy ; 使用conda install cython命令去安装 cython

3. 安装 PyStan 库

Mac/Linux 用户按照下述步骤安装 PyStan 即可。

  • 打开一个命令行程序
  • 使用pip install pystan去安装 PyStan

    Windows 用户请按照“Windows 系统安装 PyStan”中的步骤进行安装。

** Windows 系统安装 PyStan

如果是 Windows 系统,在安装 PyStan 前需要按照 安装教程 给 PyStan 安装一个编译器。其中,最为关键的一步就是先安装 C++ 编译器 。

Windows 系统下使用 PyStan 有下列注意事项

  1. 需要使用 Python 3.5 或更高版本

  2. 抽取样本时,必须使用n_jobs=1(Windows 系统下的 PyStan 不能使用并行多线程运算)

  3. 安装 C++ 编译器

    进入 Visual C++ Build Tools 网页,点击“Download Visual C++ Build Tools 2015”。

    如果你遇到了安装的问题,可以去 Python维基下的 Windows Compilers 寻求解决办法。

    如果你使用的 Windows 7 系统,可能需要在安装 Visual C++ Build Tools 下先更新 Microsoft .NET Framework 。

  4. 安装 PyStan

    打开命令行程序,输入下列命令:

     

    1

     

    pip install pystan

    可通过在 python 中输入下列抽样的代码,验证安装成功:

     

    1

    2

    3

    4

    5

     

    >>> import pystan

    >>> model_code = ‘parameters {real y;} model {y ~ normal(0,1);}’

    >>> model = pystan.StanModel(model_code=model_code)

    >>> y = model.sampling(n_jobs=1).extract()[‘y’]

    >>> y.mean() # 结果应当在 0 附近

二、安装 Prophet

使用命令行程序运行下列pip命令安装即可:

 

1

2

 

# bash

$ pip install fbprophet

Ubuntu 系统安装注意事项

  1. 在 Ubuntu 16.04 系统下,使用系统内置的 python 2.7 安装上 fbprophet 后,导入 import fbprophet 时提示需要安装 matplotlib 库和 python-tk。打开一个终端,输入下列命令即可:

     

    1

    2

    3

     

    ~ sudo pip install matplotlib

    ~ sudo apt-get install tk-dev

    ~ sudo apt-get install python-tk

  2. Ubuntu 16.04 系统使用内置的 python 可以成功安装 fbprophet ,但使用 Anaconda 成功安装 PyStan 库后,检验代码无法成功运行, Prophet 库也无法正确安装:

    运行检验代码后的错误信息:

     

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

     

    Traceback (most recent call last):

    File “<ipython-input-28-15d1abb9774a>”, line 1, in <module>

    model = pystan.StanModel(model_code=model_code)

    File “/home/username/anaconda2/lib/python2.7/site-packages/pystan/model.py”, line 315, in __init__

    self.module = load_module(self.module_name, lib_dir)

    File “/home/username/anaconda2/lib/python2.7/site-packages/pystan/model.py”, line 54, in load_module

    return imp.load_module(module_name, *module_info)

    ImportError: /tmp/tmpgc2vTO/stanfit4anon_model_5944bb5b3a93728ca2bf_765485408593311.so: undefined symbol: _ZTVNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEE

    后尝试在 Anaconda 的 Spyder 中将 console 的 python 路径更改为 /usr/bin/python,运行检验代码仍然报错:

     

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

     

    Traceback (most recent call last):

    File “<stdin>”, line 1, in <module>

    File “/usr/local/lib/python2.7/dist-packages/pystan/model.py”, line 315, in __init__

    self.module = load_module(self.module_name, lib_dir)

    File “/usr/local/lib/python2.7/dist-packages/pystan/model.py”, line 54, in load_module

    return imp.load_module(module_name, *module_info)

    ImportError: /home/username/anaconda2/lib/python2.7/site-packages/numexpr/../../../libstdc++.so.6: version `GLIBCXX_3.4.20′ not found (required by /tmp/tmptEazgR/stanfit4anon_model_5944b02c79788fa8ca2bf_7654287730157512986.so)

    在网上查询后,发现是由于 Anaconda 中未安装 libgcc 库。打开一个命令行,运行下列代码安装即可:

     

    1

     

    conda install libgcc

    安装 libgcc 库后,就可以成功运行检验代码了。

    机缘巧合下,发现安装 libgcc 库后,使用Anaconda 自带的 python ,也可以成功安装 PyStan 和 fbprophet 了。遂将 Spyder 中 console 的 python 路径更改为原来默认的。

待解决问题

Windows 10 系统已安装上 C++ 编译器和 PyStan 库且检验代码成功运行后,无法安装 Prophet 库:

错误信息:

 

1

 

error: command ‘C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\cl.exe’ failed with exit status 2

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149003.html原文链接:https://javaforall.net

(1)
上一篇 2022年6月25日 下午9:16
下一篇 2022年6月25日 下午9:16


相关推荐

  • 别怕!MySQL引起的CPU消耗过大,我有办法

    别怕!MySQL引起的CPU消耗过大,我有办法

    2022年2月13日
    45
  • 北京DNS 列表

    北京DNS 列表转载自 winterhome最终编辑 winterhome北京地区免费DNS:北京ns.bta.net.cn202.96.0.133ns.spt.net.cn202.96.199.133ns.cn.net202.97.16.195202.106.0.20202.106.148.1202.106.196.115北京的DNS是:D

    2022年4月28日
    198
  • (void (*Visit)(const ElemType &))[通俗易懂]

    (void (*Visit)(const ElemType &))[通俗易懂]templatevoidLinkList::Traverse(void(*Visit)(constElemType&))const//引用函数,函数指向指针{Node*p=head->next;//新建指向节点类指针p,指针指向头结点的nextwhile(p!=NULL){(*Visit)(p->data);p=p->next;}}…

    2022年5月15日
    34
  • circos 可视化手册- text 篇

    circos 可视化手册- text 篇欢迎关注微信公众号 生信修炼手册 不论是 heatmap 还是 scatter histogram 反应的都是基因组上某段区域对应的 value 值的分布 这里的 value 都是数值 对于 value 是字符串的情况 专门定义了 text 这种图表类型 用于展示 看一个 text 的实例 text 在图上就是一圈的字符串标记 字符串可以添加连线 表明对应的染色体位置 配置文件的写法如下 首先看下 fil

    2025年6月15日
    4
  • 7道常见的数据分析面试题[通俗易懂]

    7道常见的数据分析面试题[通俗易懂]InfoQ内容来自极客时间《数据分析实战45讲》数据分析师近几年在国内互联网圈越来越火,很多开发都因为薪资和发展前景,希望转行到数据分析岗。今天,我们就来聊聊面试数据分析师的那些事。其实,数据分析能力是每个互联网人的必备技能,哪怕你没有转行数据分析师的计划,也推荐你看看这个专题,提升你的数据能力。数据分析的能力要求与数据分析相关的工作有一个特质,就是对数字非常敏感,同时也要求对数据具…

    2022年5月27日
    40
  • vim 颜色主题_color颜色代码

    vim 颜色主题_color颜色代码转自:http://jingyan.baidu.com/article/ab69b270a0a32d2ca7189f35.htmlUbbuntu下Vim设置颜色主题(colorscheme)|浏览:679|更新:2015-03-1702:291234567分步阅读一键约师傅百度师傅高质屏

    2025年6月12日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号