Может импортировать rpy2, но не rpy2.objects в университетском кластере - PullRequest
0 голосов
/ 13 апреля 2020

Я понимаю, что этот вопрос немного связан с предыдущими вопросами (например, это ), но я думаю, что они получали разные ошибки, и в любом случае, я боюсь, что я такой скандал с такого рода проблемы со средой, которые мне могут понадобиться ...

В любом случае, как говорится в заголовке, я пытаюсь запустить скрипт python 3.5, который импортирует из rpy2.objects. Я заставил это работать на моей локальной машине, и теперь я пытаюсь заставить это работать на моем университетском кластере. Это ошибка:

>>> from rpy2.robjects import pandas2ri
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/drrichie/.local/lib/python3.8/site-packages/rpy2/robjects/__init__.py", line 16, in <module>
    import rpy2.rinterface as rinterface
  File "/home/drrichie/.local/lib/python3.8/site-packages/rpy2/rinterface.py", line 6, in <module>
    from rpy2.rinterface_lib import openrlib
  File "/home/drrichie/.local/lib/python3.8/site-packages/rpy2/rinterface_lib/openrlib.py", line 44, in <module>
    rlib = _dlopen_rlib(R_HOME)
  File "/home/drrichie/.local/lib/python3.8/site-packages/rpy2/rinterface_lib/openrlib.py", line 37, in _dlopen_rlib
    rlib = ffi.dlopen(lib_path)
OSError: cannot load library '/cm/shared/apps/R/3.5.2/lib/libR.so': /cm/shared/apps/R/3.5.2/lib/libR.so: cannot open shared object file: No such file or directory

Я могу успешно импортировать rpy2:

>>> import rpy2
>>> rpy2.__version__
'3.3.0'

Некоторая информация о версии:

Python 3.8.1 (default, Jan  8 2020, 22:29:32) 
[GCC 7.3.0] :: Anaconda, Inc. on linux
R version 3.5.2 (2018-12-20) -- "Eggshell Igloo"
Copyright (C) 2018 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

Я также сначала загрузил оба этих модуля в командной строке: module load python/anaconda/3.5 и module load R/3.5.2.

Я учусь в Университете Пенсильвании GP C (более подробная информация здесь ), если это имеет значение. (Приношу извинения, если это то, о чем я должен go сообщить руководителям GP C.)

...