Как настроить переменную среды R_user для использования rpy2 в python

Я не могу запустить rpy2 в python.

с этим кодом

 import rpy2.robjects as robjects

Здесь полные исключения:


RuntimeError: R_USER не определен.

Файл "d:\py\r\r.python.py", строка 1, в

  import rpy2.robjects as robjects

File "c:\Python27\Lib\site-packages\rpy2\robjects\__init__.py", line 17, in <module>
  from rpy2.robjects.robject import RObjectMixin, RObject

File "c:\Python27\Lib\site-packages\rpy2\robjects\robject.py", line 5, in <module>
  rpy2.rinterface.initr()

Я использую окно xp win32 Вот мои местоположения:

C:\Python27\Lib\site-packages\rpy2\robjects\robject.py

C:\Program Files\R\R-2.15.0\bin\i386\R.exe

C:\Python27\python.exe

Ответ 1

Вот как я исправил версию пакета R 3.0.2 python версии 2,7 платформы ipython.

Изменить путь для R computer- > property → advanced и system setting → переменные окружения

в поле пользовательской переменной добавьте C:\Program Files\R\R-3.0.2\bin\x64 (моя система - 64-битная Windows) к пути

В поле системной переменной добавьте две новые переменные

R_HOME c:\program files\r\r-3.0.2

R_USER C:\Users\"your user name"\Anaconda\Lib\site-packages\rpy2

Ответ 2

Если вы хотите использовать Python с rpy2, но вы также хотите использовать RStudio, не забудьте добавить RStudio на свой путь, или вы получите некоторые проблемы с контентом.

Вы можете изменить свои пути в соответствии с @user3758274:

Изменить путь для R computer- > property → advanced и system setting → переменные окружения в поле переменной пользователя добавить C:\Program Files\R\R-3.0.2\bin\x64 (моя система - 64-битная Windows) в путь

В поле системной переменной добавьте две новые переменные

R_HOME    c:\program files\r\r-3.0.2

R_USER    C:\Users\"your user name"\Anaconda\Lib\site-packages\rpy2

Но затем добавьте RStudio в системную переменную R_USER, чтобы вы получили:

R_USER    C:\Program Files\RStudio\bin;C:\Users\"your user name"\Anaconda\Lib\site-packages\rpy2

Ответ 3

OH, nvm.. Я исправил это.. вот как я это сделал, просто у кого-то есть такая же проблема. Я должен указать PYTHONPATH для местоположения rpy2.robjects, сохраненного

Здесь подробно: Мой компьютеp > Свойства системы > Дополнительно > Переменные среды:

В системных переменных создайте или отредактируйте

Variable name : PYTHONPATH 

Variable value : C:\Python27\Lib\site-packages\rpy2;C:\Program Files\R\R-2.15.0\bin\i386;C:\Python27\Lib\site-packages\rpy2\robjects

Это должно работать, наслаждаться.

Ответ 4

Для мгновенного и временного решения вы можете добавить следующий код перед импортом rpy2:

import os
os.environ['R_HOME'] = 'C:/program files/R-3.3.1'

Следует отметить, что вам следует использовать обратную косую черту вместо косой черты в пути.

Ответ 5

Объединив ответы от @laven_qa и @user3758274, вот что сработало для меня:

# installing steps after downloading .whl from http://www.lfd.uci.edu/~gohlke/pythonlibs/#rpy2
import pip
pip.main(["install", "C:/Users/YOUR_USERNAME/Downloads/rpy2-2.8.6-cp36-cp36m-win_amd64.whl"]) # Path to the file that was downloaded from the website above

# setting temporary PATH variables
import os
os.environ['R_HOME'] = 'C:\Program Files\Microsoft\R Open\R-3.4.0' #path to your R installation
os.environ['R_USER'] = 'C:\ProgramData\Anaconda3\Lib\site-packages\rpy2' #path depends on where you installed Python. Mine is the Anaconda distribution

# importing rpy2
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)
        ''')

# returns : 
> R object with classes: ('numeric',) mapped to:
> <FloatVector - Python:0x000000000C260508 / R:0x000000000F2872E8>
> [18.849556]