R 重新定义?(帮助)特定类的函数
是否可以为R类重新定义R 重新定义?(帮助)特定类的函数,r,R,是否可以为R类重新定义?函数(帮助函数) 我试着定义 `?.myclass` = function(x) "foo" help.myclass = function(x) "foo" 但是它不会改变?的行为 f = function() "bar" class(f) = "myclass" ?f # doesn't work help(f) # doesn't work help.myclass(f) #works 我正
?
函数(帮助函数)
我试着定义
`?.myclass` = function(x) "foo"
help.myclass = function(x) "foo"
但是它不会改变?
的行为
f = function() "bar"
class(f) = "myclass"
?f # doesn't work
help(f) # doesn't work
help.myclass(f) #works
我正在编写一个使用
PythonInR
导入一些Python函数的包。我希望可以为导入的Python函数添加一个类,使我能够创建一个自定义的帮助函数,在Python中调用help(fun)
,并打印结果。我可以编写一个python.help函数来实现这一点,但我希望有一个更无缝的解决方案。您可以尝试以下方法:
library(PythonInR)
`?` <- function(e1, e2) UseMethod("?")
`?.default` <- utils::`?`
`?.pyFunction` <- function(e1, e2) {
topicExpr <- substitute(e1)
pyHelp(deparse(topicExpr))
}
pyImport("getcwd", from="os", as="os")
? os.getcwd
但是,要使此函数正常工作,函数在Python和R中必须具有相同的名称
我相信为R函数创建.Rd文件可能会更好
export("?")
S3method("?", "default")
S3method("?", "pyFunction")