我想包装 princurve 包中包含的 R 函数。
使用 ipython,我使用 ipython cell R magic 成功完成了此操作:
%%R -i X -o s,lambda
fit1<-principal.curve(X)
s <- fit1$s
l <- fit1$lambda
但我想要一个可以从模块导入的函数,例如:
from mymodule import principal_curve
s, l = principal_curve(X)
我想我必须直接使用 rpy,我不知道如何......
我不使用 R,但在docs http://rpy.sourceforge.net/rpy2/doc-dev/html/robjects_rpackages.html#importing-arbitrary-r-code-as-a-package您可以定义一个函数并将其导入到 python 模块中:
r_mod.py
from rpy2.robjects.packages import SignatureTranslatedAnonymousPackage
string = """
square <- function(x) {
return(x^2)
}
cube <- function(x) {
return(x^3)
}
"""
powerpack = SignatureTranslatedAnonymousPackage(string, "powerpack")
py_mod.py
from r_mod import powerpack
print powerpack.square(3)
[1] 9
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)