Cygwin安装及Cmdstan-2.16.0在Cygwin下的使用

时间:2021-10-13 15:52:00

Cygwin官网 https://cygwin.com/install.html 

功能:Get that Linux feeling - on Windows(在Windows环境下模拟Linux)

一 、安装

  1. 首先从官网上下载(根据电脑系统类型选择下载);
  2. 双击下载的.exe(64位系统"setup-x86_64.exe")选择默认安装模式(也可根据自己喜好选择)-> [下载源建议选择国内的源,我选择的是163源,在User URL内输入"http://mirrors.163.com/cygwin/"]->安装完成;

  3. 添加环境变量,把cygwin安装路径下的bin目录添加到环境变量path中(如默认安装下添加"C:\cygwin64\bin"到path中)。

二、简单使用

说明:Cygwin把它的安装路径作为Linux环境中的根目录"/",windows下的盘都挂载在"/cygdrive"下

  1. 在Cygwin窗口执行Linux命令;
  2. 查看windows下的盘用 df -h;
  3. Cmdstan Cmdstan 为例展示Cmdstan-2.16.0在Cygwin下的使用

(说明:Cmdstan使用需要又g++和make的支持)

*******************************************install Smdstan********************************************************

首先移动到cmdstan文件夹(例typed "cd /cygdrive/e/mediaE/matlab/CommonAlgorithm/bayes/cmdstan-2.16.0")(注红色字体部分是Windows下的路径);

Now,通过make命令生成Stan binary。我的电脑是4核的,通过选项 -j 确定使用内核(以使用2核为例typed "make build -j2")。

*******************************************finished Smdstan********************************************************

下面测试该安装,在cmdstan-2.16.0文件下的examples有个bernoulli的案例,bernoulli文件下两个子文件bernoulli.stanbernoulli.data.r

首先,生产.exe文件,typed

make examples/bernoulli/bernoulli.exe

(该命令告诉STAN将model文件bernoulli.stan转换成C++代码,编译并产生bernoulli.exe文件,该.exe可执行文件和bernoulli.stan在同一个文件下)

其次,利用bernoulli分析bernoulli.data.r数据,typed

./bernoulli.exe sample data file=bernoulli.data.r

(注意"./",没有它Cygwin64没有办法执行.exe文件,执行该命令之后会生成文件output.csv,该文件可以用EXCEL打开)

最后,利用bin文件夹下的stansummary.exe查看结果,回到cmdstan-2.16.0文件,typed

$ bin/stansummary.exe E:/mediaE/matlab/CommonAlgorithm/bayes/cmdstan-2.16.0/examples/bernoulli/output.csv

最后分析结果如下图:

Cygwin安装及Cmdstan-2.16.0在Cygwin下的使用Cygwin安装及Cmdstan-2.16.0在Cygwin下的使用Cygwin安装及Cmdstan-2.16.0在Cygwin下的使用


(说明,在window的Cmd同样可以执行到上述结果,可参考post by John,CmdStan的使用可以参考https://github.com/stan-dev/cmdstan/wiki/Getting-Started-with-CmdStan


感谢:Cygwin官网John ,Stan官网