0

私は次のコードを試しています:

from rpy import *
r.library("ltm")

dat= #some data frame or matrix
r.ltm(r('dat~z1'))

エラーが発生しました--- RPy_RException: eval(expr、envir、enclos) のエラー: オブジェクト 'dat' が見つかりません

rpyライブラリを使ってltm関数を呼び出す正しい方法を教えてください

4

1 に答える 1

1

rpy2 と次のようなものを使用して、一般的なアプローチとして試してみます。

from rpy2.robjects import *
r("library('ltm')")
r.assign('r_var_name',py_var_name)
r("r_var_name<-as.desired.data.type(r_var_name)")

次に、「ltm」パッケージ関数を使用して「r_var_name」に対して行っているコマンドは、さらに r("blah") ステートメント内で機能します。

たとえば、ltm パッケージの例の 1 つの係数を取得します。

In [30]: py_obj = r("coef(ltm(Abortion ~ z1, control = list(GHk = 20, iter.em = 20)))")
In [32]: py_obj
Out[32]: 
<Matrix - Python:0x4db0290 / R:0x52f04f0>
[0.188998, -0.256378, -0.367623, ..., 4.542567, 5.840821, 3.243826]
于 2013-01-08T10:50:12.837 に答える