Импорт модуля rpy в python

#python #r

#python #r

Вопрос:

Я пытаюсь импортировать модуль rpy1.0.3 для python2.6.6, используя:

from rpy import *

и получение этой ошибки:

 File "C:Python26libsite-packagesrpy.py", line 58, in <module>
    RVERSION = rpy_tools.get_R_VERSION(RHOME)
  File "C:Python26libsite-packagesrpy_tools.py", line 103, in get_R_VERSION
    raise RuntimeError("Couldn't obtain version number from outputn"
RuntimeError: Couldn't obtain version number from output
of `R --version'.
  

Как указано в документации rpy, я настроил переменную среды с путем к файлу в моем каталоге R, но, похоже, она не может распознать версию R (у меня установлена 2.9.0). Есть мысли? Спасибо

Комментарии:

1. Что произойдет, если запустить R —version из командной строки?

Ответ №1:

The setup.py скрипт вызывает rpy_tools.py скрипт для получения доступа к номеру версии. Он выполняет поиск регулярного выражения в выходных данных R —version:

 version = re.search("  ([0-9].[0-9].[0-9])", output)
  

Однако R теперь находится в версии 2.13.0, поэтому он не сможет найти двузначный номер версии. Замените эту строку в rpy_tools.py с:

 version = re.search("  ([0-9] .[0-9] .[0-9] )", output)
  

Вам также нужно будет удалить rpy_tools.pyc-файл, созданный setup.py