【发布时间】:2013-11-21 12:56:39
【问题描述】:
lm函数的参数可以使用:
args(lm)
输出
function (formula, data, subset, weights, na.action, method = "qr",
model = TRUE, x = FALSE, y = FALSE, qr = TRUE, singular.ok = TRUE,
contrasts = NULL, offset, ...)
NULL
问题
如何获得:
lm (formula, data, subset, weights, na.action, method = "qr",
model = TRUE, x = FALSE, y = FALSE, qr = TRUE, singular.ok = TRUE,
contrasts = NULL, offset, ...)
在Sweave 或knitr 中使用每个参数的描述(不是完整的帮助)。谢谢
已编辑
使用@Ananda 提供的 funExtract 函数,我非常接近我想要的结果。这是我的Rnw 文件的代码,带有输出。
\documentclass{article}
\usepackage[T1]{fontenc}
\begin{document}
Arguments for lm
<< label = funExtract, echo = TRUE, results = "hide", tidy = FALSE >>=
funExtract <- function(Function, section = "Usage") {
A <- deparse(substitute(Function))
x <- capture.output(tools:::Rd2txt(utils:::.getHelpFile(help(A))))
B <- grep("^_", x) ## section start lines
x <- gsub("_\b", "", x, fixed = TRUE) ## remove "_\b"
X <- rep(FALSE, length(x))
X[B] <- 1
out <- split(x, cumsum(X))
out <- out[[which(sapply(out, function(x)
grepl(section, x[1], fixed = TRUE)))]]
cat(out, sep = "\n")
invisible(out)
}
@
\vspace{0.5cm}\\
funExtract function output
\vspace{0.25cm}\\
<< label = lm-usage, echo = FALSE, results = "asis" >>=
funExtract(lm, section="Usage:")
@
\vspace{0.5cm}\\
args function output
\vspace{0.25cm}\\
<< label = lm-args, echo = FALSE, results = "asis" >>=
args(lm)
@
\end{document}
输出
funExtract 函数输出的问题
- 如何将 funExtract 函数的突出显示输出作为其他代码?
- 如何从 funExtract 函数输出中删除部分标题?
【问题讨论】:
-
args(lm)应该仍然可以在 Sweave 或 knitr 中工作。你没有做什么? -
你可能想看看
formalArgs(lm)、formals(lm)和sig(lm),最后一个在sig包中。 -
感谢@AnandaMahto 愿意抽出时间解决第一个问题。恐怕
out <- out[-1]也没有提供预期的结果。 -
见this。如果您安装了最新版本的“devtools”,则有一个示例 Rnw 和 Rmd 文件应该可以直接工作。如果不是,请将前几行替换为
helpExtract函数,也在该页面上。祝你好运。 -
我有一个单一的解决方案,稍后我将发布它来解决您提到的所有问题。