0

我正在尝试将此调用矢量化为source_url,以便从 GitHub 加载一些函数:

library(devtools)
# Find ggnet functions.
fun = c("ggnet.R", "functions.R")
fun = paste0("https://raw.github.com/briatte/ggnet/master/", fun)
# Load ggnet functions.
source_url(fun[1], prompt = FALSE)
source_url(fun[2], prompt = FALSE)

最后两行应该能够在lapply调用中工作,但由于某种原因,这在 knitr 中不起作用:当我将Rmd文档处理为 HTML 时,要让这段代码工作,我必须调用source_url两次。

同样的错误出现在source_urlfromdevtools和 fromdownloader中:在我的代码中,一个类型的对象closure不是子集的。

我怀疑这与SHA有关;任何解释都将受到欢迎。

4

1 回答 1

1

knitr它与或devtools或矢量化无关。这只是您的(?)代码中的一个错误,使用traceback().

> library(devtools)
> # Find ggnet functions.
> fun = c("ggnet.R", "functions.R")
> fun = paste0("https://raw.github.com/briatte/ggnet/master/", fun)
> # Load ggnet functions.
> source_url(fun[1], prompt = FALSE)
SHA-1 hash of file is 2c731cbdf4a670170fb5298f7870c93677e95c7b
> source_url(fun[2], prompt = FALSE)
SHA-1 hash of file is d7d466413f9ddddc1d71982dada34e291454efcb
Error in df$Source : object of type 'closure' is not subsettable
> traceback()
7: which(df$Source == x) at file34af6f0b0be5#14
6: who.is.followed.by(df, "JacquesBompard") at file34af6f0b0be5#19
5: eval(expr, envir, enclos)
4: eval(ei, envir)
3: withVisible(eval(ei, envir))
2: source(temp_file, ...)
1: source_url(fun[2], prompt = FALSE)

df在代码中使用了,并且dfstats包中的一个函数(F 分布的密度)。我知道您可能指的是数据框,但您没有在代码中声明。

于 2013-06-20T08:21:27.377 回答