誰かがこれを手伝ってくれることを願っています。
R バージョン: 2.14.1
rpy2 バージョン: 2.2.5
python バージョン: 2.7.3
Pythonスクリプトでrpy2を使用して、依存関係としてrJavaを持つR venneulerパッケージをロードしようとしています。venneuler と rJava の両方が、R 環境内から正常にロードされます。「stats」、「car」などの他の R ライブラリは、rpy2 の importr を使用して Python にロードできます。
Python コード:
>from rpy2 import robjects
>from rpy2.robjects.packages import importr
>venn=importr('venneuler')
次のエラーが発生します。
Warning message:
In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, :
there is no package called ‘venneuler’
Error in .Primitive("as.environment")("package:venneuler") :
no item called "package:venneuler" on the search list
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/rpy2/robjects/packages.py", line 117, in importr
env = _as_env(rinterface.StrSexpVector(['package:'+name, ]))
rpy2.rinterface.RRuntimeError: Error in .Primitive("as.environment")("package:venneuler") :
no item called "package:venneuler" on the search list
トラブルシューティングの過程で、importr を使用して rJava を直接ロードしようとしました。
>java=importr('rJava')
次のエラーが発生します。
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/home/adam/R/x86_64-pc-linux-gnu-library/2.14/rJava/libs/rJava.so':
libjvm.so: cannot open shared object file: No such file or directory
Error in .Primitive("as.environment")("package:rJava") :
no item called "package:rJava" on the search list
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/rpy2/robjects/packages.py", line 117, in importr
env = _as_env(rinterface.StrSexpVector(['package:'+name, ]))
rpy2.rinterface.RRuntimeError: Error in .Primitive("as.environment")("package:rJava") :
no item called "package:rJava" on the search list
「/home/adam/R/x86_64-pc-linux-gnu-library/2.14/rJava/libs/rJava.so」を確認すると、存在し、Java 動的ライブラリ (ldd rJava.so など) に正しくリンクされているように見えます。 .
これを修正する方法についてのアイデアはありますか?