Python 在windows 7上安装rpy2
我正在尝试在我的计算机上安装rpy2,但无法完成 我下载了源程序包,并尝试使用命令Python 在windows 7上安装rpy2,python,windows,r,installation,rpy2,Python,Windows,R,Installation,Rpy2,我正在尝试在我的计算机上安装rpy2,但无法完成 我下载了源程序包,并尝试使用命令python setup.py install安装Rpy2(Rpy2-2.3.2)。结果是: running install running build running build_py running build_ext "C:\PROGRA~1\R\R-215~1.2\bin\R" CMD config --ldflags "C:\PROGRA~1\R\R-215~1.2\bin\R" CMD config -
python setup.py install
安装Rpy2(Rpy2-2.3.2)。结果是:
running install
running build
running build_py
running build_ext
"C:\PROGRA~1\R\R-215~1.2\bin\R" CMD config --ldflags
"C:\PROGRA~1\R\R-215~1.2\bin\R" CMD config --cppflags
"C:\PROGRA~1\R\R-215~1.2\bin\R" CMD config LAPACK_LIBS
returned an empty string.
"C:\PROGRA~1\R\R-215~1.2\bin\R" CMD config BLAS_LIBS
returned an empty string.
Configuration for R as a library:
include_dirs: ('C:/PROGRA~1/R/R-215~1.2/include/i386', 'C:/PROGRA~1/R/R-215~1.2/include')
libraries: ('R',)
library_dirs: ('C:/PROGRA~1/R/R-215~1.2/bin/i386',)
extra_link_args: ()
# OSX-specific (included in extra_link_args)
framework_dirs: ()
framework: ()
building 'rpy2.rinterface._rinterface' extension
creating build\temp.win32-2.7
creating build\temp.win32-2.7\Release
creating build\temp.win32-2.7\Release\rpy
creating build\temp.win32-2.7\Release\rpy\rinterface
C:\Rtools\gcc-4.6.3\bin\gcc.exe -mcygwin -mdll -O -Wall -DWin32=1 -I.\rpy\rinterface -IC:\Python27\include -IC:\Python27\PC -IC:/PROGRA~1/R/R-215~1.2/include/i386 -IC:/PROGRA~1/R/R-215~1.2/include -c .\rpy\rinterface\_interface.c -o build\temp.win32-2.7\Release\.\rpy\rinterface\_rinterface.o
cc1.exe: error: unrecognized command line option '-mcygwin'
error: command 'gcc' failed with exit status 1
我还尝试了build-install
和easy\u-install
,但没有成功。我有R2.15.2、Python2.7.2和Windows7(32位)
我做错了什么
PS.如果粘贴该命令,结果是:
cygwin警告:
MS-DOS style path detected C:\PROGRA~1\R\R-215~1.2\bin\config.sh
Preferred POSIX equivalent is: /cygdrive/c/PROGRA~1/R/R-215~1.2/bin/config.sh
CYGWIN environment variable option "nodosfilewarning" turns off this warning.
Consult the user's guide for more details about POSIX paths:
http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
-LC:/PROGRA~1/R/R-215~1.2/bin/i386-lR安装脚本
setup.py
告诉您运行时遇到问题
“C:\PROGRA~1\R\R-215~1.2\bin\R”CMD config--ldflags
打开一个终端,粘贴该命令,检查错误是什么
当您使用输出编辑问题时,问题似乎是当从python setup.py install
将该命令作为子进程运行时,从终端运行该命令时,返回一个空字符串,但有一个输出。
我还从终端的输出中读取cygwin所涉及的数据。也许这就是问题所在?我通常也没有成功地让Rpy2在Windows上工作。在从预编译的二进制文件中使用R2.15和Rpy2进行了几个小时的黑客攻击之后,我接着进行了安装。在得到支持之前,这可能对你有用。就我个人而言,我很想在Windows和IPython笔记本电脑上看到Rpy2(%load_ext rmagic),但我就是不能再花时间在它上面了 我刚刚使用的二进制安装程序在Windows 8.1 64位上成功安装了rpy2。下载二进制文件通常比在Windows中编译软件包容易得多 另外,在安装rpy2二进制文件之前,您应该设置
R\u HOME
环境变量(在我的例子中,设置为C:\Program Files\R\R-3.1.1
)。否则会出现RuntimeError:R\u HOME未定义。
尝试导入rpy2时出错。(感谢)
最后,如果要在ipython中使用,请确保使用%load_ext rpy2.ipython
而不是%load_ext rmagic
。它是rpy2版本2.4.0中的一个重要功能
(多亏了)编辑,我终于设法让它工作了!!!见下文:
我一直在绞尽脑汁想让它发挥作用,但还没有完全弄明白。我发现这个错误
“sh”不被识别为内部或外部命令、可操作程序或批处理文件
是由于缺少mingw和Rtools(以及其他类似unix的帮助程序)造成的。()
我通过安装Rtools()和mingw()度过了这一阶段(但由于sourceforge.net上的mingw-w64项目正在迁移到mingw-w64.org,我建议使用)
我通过了R.exe CMD config--ldflags错误,但被卡住了
TypeError:类型为“NoneType”的对象没有len()
错误。我仍在寻找解决方案
希望这能在某些方面帮助到别人
更新:因此,与安装相关的问题似乎很多。setup.py无法找到R的正确版本,并且编译器存在问题
因此,如何继续:
- 路径:将路径附加到URR安装eg;C:\ProgramFiles\R\R-3.0.2\bin\x64
- R\u HOME:路径为R:C:\Program Files\R\R-3.0.2的新变量
- R_USER:用户名,例如john
希望这有帮助 查看我制作的关于此问题的安装文档
它是特定于ArcGIS设置的目录,但快速移植我不确定是否有人仍在关注讨论,但无论如何,我尝试让rpy2工作的目的是让它在我的Ipython笔记本中工作。如果其他人也这么做,我建议使用IRkernel,它可以像蛋糕一样顺利安装(制作得很好)。以下是完成这项工作的资源。我用过它,它就像一个符咒 基本上,您需要运行的是:
install.packages(c('rzmq','repr','IRkernel','IRdisplay'),repos = c('http://irkernel.github.io/', getOption('repos')))
IRkernel::installspec()
如果您发现任何问题,请参阅以下资源:
好的。根据以前的经验,我发现关于如何在Windows上安装rpy2的说明并不多。我知道这并没有得到官方的支持,但其实也没那么难。在几个步骤中,我将展示我所做的,也许其他人也可以效仿 这些指令很可能只适用于Python2.7+和R3.2+,但可能适用于R3.0+。我正在将我在系统上使用的路径放入确保相应地修改路径: 首先,在尝试这些步骤之前,请确保已卸载以前的任何rpy2安装(并且在安装之前显然已安装R3.2+)
pip安装[put.whl filename here]
(在命令行中)安装.whl文件import rpy2.robjects as robjects
conda install --channel https://conda.anaconda.org/Richarizardd rpy2
conda install -c r rpy2
https://github.com/conda-forge/rpy2-feedstock
R_HOME = D:\Program Files\R\R-3.4.1
R_USER = Administrator
import rpy2.robjects as robjects
# test : evaluating R code
robjects.r('''
# create a function `f`
f <- function(r, verbose=FALSE) {
if (verbose) {
cat("I am calling f().\n")
}
2 * pi * r
}
# call the function `f` with argument value 3
f(3)
''')