我在OSX10.9.4附带的2.7.5旁边安装了python 2.7.8。
现在,我如何将rPython指向python2.7.8?
企图#1
我修改了OSX .bash_profile,如下所示,将所有内容指向更新的python安装。
export PATH=/usr/local/Cellar/python/2.7.8/bin/:$PATH:usr/local/bin:现在,当我从终端运行python时,它正确地运行了更新的版本。
mba:~ tommy$ which python
/usr/local/Cellar/python/2.7.8/bin//python然而,rPython仍然看到了2.7.5。
> library(rPython)
Loading required package: RJSONIO
> python.exec("import sys; print(sys.version)")
2.7.5 (default, Mar 9 2014, 22:15:05)
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)]第二次尝试
看起来R根本不使用.bash_profile .所以我试着修改R.内的路径,但还是没有运气。
> Sys.getenv("PATH")
[1] "/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin"
> Sys.setenv(PATH = "usr/local/Cellar/python/2.7.8/bin")
> library(rPython)
Loading required package: RJSONIO
> python.exec("import sys; print(sys.version)")
2.7.5 (default, Mar 9 2014, 22:15:05)
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)]第三次尝试
我试着删除和重新安装rPython包,可能是因为它使用了安装时找到的版本的Python。也没什么运气。
企图#4
我试过从源头安装看看是否有用.没有运气。
更新
好的,看起来这个问题与rPython本身无关。
http://cran.r-project.org/web/packages/rPython/INSTALL
包rPython依赖于Python (>= 2.7)。 它需要Python及其头和库。这可以在类似Debian的Linux发行版的python和python包中找到。 在多个Python版本共存的系统中,用户可以在安装时选择要使用的Python版本。默认情况下,包将使用 $ python -版本
当我在终点站运行时..。
mba:src tommy$ python --version
Python 2.7.8但当我在R里运行时..。
> system("python --version")
Python 2.7.5所以问题很简单,R不使用OSX的.bash_profile。我需要弄清楚如何在PATH之外更改.bash_profile,或者让R使用.bash_profile。
我还能试着让rPython和2.7.8一起工作吗?
发布于 2016-05-10 09:33:14
我在RStudio中设置了以下命令,希望这些帮助。
> system("python --version")
Python 2.7.10
> Sys.setenv(PATH = paste("/usr/local/bin", Sys.getenv("PATH"),sep=":"))
> system("python --version")
Python 2.7.11发布于 2016-01-20 16:03:57
我知道这是个老问题,但我遇到了和OP一样的问题,这就是我找到的解决方案。
首先,我将RPYTHON_PYTHON_VERSION=3添加到我的~/.bash_profile中。我没有使用rPython安装install.packages,而是从CRAN下载源代码,并使用R CMD INSTALL从命令行安装。这很好,检测到我在我的系统上安装的python3版本。
发布于 2014-10-13 23:17:29
您可以查看rPython安装文件(对不起,也许我应该让它更加明确)。其中有一节介绍了如何在多个同时存在时使用所需的Python版本安装rPython。上面写着:
在多个Python版本共存的系统中,用户可以在安装时选择要使用的Python版本。默认情况下,包将使用 $ python -版本 但是,如果适当设置了RPYTHON_PYTHON_VERSION环境变量,则可以选择不同的变量。 例如,如果它被定义为 RPYTHON_PYTHON_VERSION=3.2 它将尝试使用python3.2 (在路径中查找python3.2和python3.2-config )。如果设置为 RPYTHON_PYTHON_VERSION=3 它将针对3.x分支中系统中的“规范”Python版本进行安装。
https://stackoverflow.com/questions/25383030
复制相似问题