2017-08-30 22 views
-1

私はRでこの関数を持っています。私はPythonでそれを呼びたいと思います。私はPythonで操作されたデータをR関数に代入して、それをさらに解析することを計画しています。関数が解析を行った後、データをPythonに戻す必要もあります。私はrpy2について知っていると私は、私はこのエラーを取得し、このコマンドPythonでRから関数を呼び出す方法は?

robjects.r('''source('mycode.R')''') 
r_test_function = robjects.globalenv['myFunction'] 

を使用:

/usr/local/lib/python2.7/dist-packages/rpy2/rinterface/init.py:186: RRuntimeWarning: Error in file(filename, "r", encoding = encoding) :
cannot open the connection

warnings.warn(x, RRuntimeWarning) /usr/local/lib/python2.7/dist-packages/rpy2/rinterface/init.py:186: RRuntimeWarning: In addition: warnings.warn(x, RRuntimeWarning) /usr/local/lib/python2.7/dist-packages/rpy2/rinterface/init.py:186: RRuntimeWarning: Warning message:

warnings.warn(x, RRuntimeWarning) /usr/local/lib/python2.7/dist-packages/rpy2/rinterface/init.py:186: RRuntimeWarning: In file(filename, "r", encoding = encoding) :
warnings.warn(x, RRuntimeWarning) /usr/local/lib/python2.7/dist-packages/rpy2/rinterface/init.py:186: RRuntimeWarning:

warnings.warn(x, RRuntimeWarning) /usr/local/lib/python2.7/dist-packages/rpy2/rinterface/init.py:186: RRuntimeWarning: cannot open file 'mycode.R': No such file or directory

warnings.warn(x, RRuntimeWarning) Info | ____________________________________________________________________________________________________| Error | Termination with exception status| Error

が、私は関数を含むディレクトリのsys.path.append('thePath')を使用しました。誰かがこれについて私を助けてくれますか?私はその話題についてたくさんの調査をしましたが、私の場合は何も見つかりませんでした。 rpy2で実用上の上で説明したこともありますか?

ありがとう、

+0

最初の行または2行目でエラーが発生していますか?ソースファイルには何が入っていますか? 'bfast.R'とは何ですか?あなたは基本的なrpyものをやっている間違いを得ますか? – Spacedman

+0

エラーを編集しました.bfast.Rはmycode.Rと同じです。私が参照しているファイルには複数のR関数があります。はい、私は他の簡単な機能を試しましたが、それと同じエラーです。 –

+0

**最初の行または2行目でエラーが発生しますか?** Pythonはどのフォルダから始まりましたか?ファイルシステム内のRファイルはどこにありますか? Rpy2から 'getwd()'を実行するとどうなりますか?それはRの作業ディレクトリです。 'file.exists( 'mycode.R')'はどうでしょうか?ファイルが存在するかどうかがわかります。 – Spacedman

答えて

0

あなたの懸念は完全なディレクトリパスを取得していますか?私は現在、Python 3.6に取り組んで、ディレクトリ内のすべてのファイルをブラウズして一覧表示しています。あなただけの1特定のファイルで作業したいので、次のことを試みることができる:

輸入OS

ファイル= os.path.abspath(「」F:\ Training.xlsx「」) ので、あなたのファイル'F:\ Training.xlsx'のように変わります。

ディレクトリパス全体を入力するのではなく、変数ファイルを使用するだけです。

希望します。

+0

ちょっとSagar、あなたの返事をありがとう。私はPythonの初心者です。私はあなたの提案を試みた。まだ同じエラーが発生しています。 –

関連する問題