可能重复:
R help page as object
我能做到
temp <- help('ls')
但我无法掌握这个对象。除了打电话外,我不认为里面有很多肉吗? unclass
,str
,attributes
似乎无法领先。
我想,例如,
(1)提取Details
帮助的ls
部分的文字;和
(2)将所有文本提取为一个大字符串。
有什么想法吗?感谢
答案 0 :(得分:6)
help
本身不会返回任何有用的内容。要获取帮助文本,您可以阅读包的帮助数据库的内容,并解析它。
extract_help <- function(pkg, fn = NULL, to = c("txt", "html", "latex", "ex"))
{
to <- match.arg(to)
rdbfile <- file.path(find.package(pkg), "help", pkg)
rdb <- tools:::fetchRdDB(rdbfile, key = fn)
convertor <- switch(to,
txt = tools::Rd2txt,
html = tools::Rd2HTML,
latex = tools::Rd2latex,
ex = tools::Rd2ex
)
f <- function(x) capture.output(convertor(x))
if(is.null(fn)) lapply(rdb, f) else f(rdb)
}
pkg
是一个字符串,给出了包的名称
fn
是一个字符串,给出该包中函数的名称。如果保留为NULL
,则返回该包中所有函数的帮助
to
将帮助文件转换为txt,tml或其他任何内容。
使用示例:
#Everything in utils
extract_help("utils")
#just one function
extract_help("utils", "browseURL")
#convert to html instead
extract_help("utils", "browseURL", "html")
#a non-base package
extract_help("plyr")
答案 1 :(得分:1)
help()
函数有一个名为help_type
的参数,它可以采用以下参数:“text”,“html”,“postscript”,“ps”和“pdf”。运行help(ls, help_type = "text")
是否有助于解决您的问题?