Получение ошибки сегментации Ошибка сброса ядра при импорте роботов из rpy2
Установил R и rpy2 вручную
Установка прошла успешно, но выдается вышеупомянутая ошибка. Пожалуйста, помогите мне?
Выводы некоторых полезных команд:
>>> import rpy2
>>> rpy2.__path__
['/home/ashish/miniconda2/lib/python2.7/site-packages/rpy2-2.8.2-py2.7-linux-x86_64.egg/rpy2']
>>> import rpy2.robjects
cannot find system Renviron
/home/ashish/miniconda2/lib/python2.7/site-packages/rpy2-2.8.2-py2.7-linux- x86_64.egg/rpy2/rinterface/__init__.py:185: RRuntimeWarning: Fatal error: unable to open the base package
warnings.warn(x, RRuntimeWarning)
Segmentation fault (core dumped)
Заранее спасибо..
0 ответов
Если вы устанавливаете rpy2 через conda, а также имеете системную установку R на том же компьютере (например, с RStudio), будет использоваться системная установка R. Поскольку эта версия R не соответствует той, которая нужна rpy2, возникают ошибки сегментации.
1) удалить все существующие системные установки R ( см. Здесь). Убедитесь, что у вас нет установок R:
$>which R
R not found
2) определить R_HOME
Переменная env, либо в вашем файле.rc:
export R_HOME=/Users/<your user>/anaconda3/envs/<env name>/lib/R
или динамически в проекте Python:
import os
os.environ['R_HOME'] = '/Users/<your user>/anaconda3/envs/<env name>/lib/R'