質問

sweave sweave workを構成する方法とrpy2を認識する方法は?

私はこれを使用します

 import rpy2.robjects as robjects

  R["library"]("utils")
  R["library"]("tools")
  R['sweave("/var/www/tmp/pywps/central.Rnw")']
  R['texi2dvi("/var/www/tmp/pywps/central.tex", pdf=TRUE)']

しかし、私はこれらのエラーを取得します

[File "/usr/lib/python2.6/dist-packages/rpy2/robjects/__init__.py", line 241, in   __getitem__
    res = rinterface.globalenv.get(item)
    LookupError: 'Sweave("/var/www/tmp/pywps/central.Rnw")' not found
     Traceback (most recent call last):]

あなたの答えと助けをありがとう

役に立ちましたか?

解決

正方形のブラケットを使用してRオブジェクトを取得し、Pythonから呼び出します。または()ブラケットを使用して、ラインをrに渡します。

R["Sweave"]("/var/www/tmp/pywps/central.Rnw")
R('Sweave("/var/www/tmp/pywps/central.Rnw")')

Sweaveには資本が必要です(私のテストで)。

他のヒント

ええと、これはうまくいきますか?すべてのr []の呼び出しを同じようにしているわけではありません。

import rpy2.robjects as robjects

R["library"]("utils")
R["library"]("tools")
R["sweave"]("/var/www/tmp/pywps/central.Rnw")
R["texi2dvi"]("/var/www/tmp/pywps/central.tex", "pdf=TRUE")

(RPY2を使用したことがないので、これは完全に推測しています。)

Rパッケージインポーターを使用すると、IDEまたはInteractiveシェルでAutoComplytionを使用して、コードをよりPythonのようにすることができます。

from rpy2.robjects.packages import importr
utils = importr('utils')
utils.Sweave("/var/www/tmp/pywps/central.Rnw")
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top