0

我在安装包 RSQLite.extfuns 时遇到问题。我得到错误:

package ‘RSQLite.extfuns’ is not available (for R version 3.4.2)

我尝试通过从 https://cran.r-project.org/src/contrib/Archive/RSQLite.extfuns/下载文件来手动执行此操作, 但也有负面影响。谁能解决我的问题?

4

3 回答 3

4

这些函数现在在 RSQLite 本身中。调用initExtension命令来访问它们。此示例使用varianceextfun 中的函数:

library(RSQLite)

m <-dbDriver("SQLite")
con <- dbConnect(m, dbname = ":memory:")

initExtension(con)  # access extfuns

dbWriteTable(con, 'BOD', BOD, row.names = FALSE)

dbGetQuery(con, 'select variance(demand) from BOD')
##   variance(demand)
## 1         21.44267

dbDisconnect(con)

另请注意,sqldf 会自动加载它们,因此如果您使用它,则无需执行任何特殊操作:

library(sqldf)

sqldf('select variance(demand) from BOD')
##   variance(demand)
## 1         21.44267
于 2017-10-19T13:07:35.637 回答
0

至少在几秒钟前,这些包裹已从 CRAN 中删除。您现在最好的选择是手动编译包。要在 Windows 中执行此操作,您将需要一些工具,例如 Rtools(我认为还有 LaTeX)。

如果您使用的是 mac 或 linux,那么您可能已经设置好了。

这样做的缺点是您可能必须手动满足所有依赖项。最新的软件包可能有效,也可能无效。在这种情况下,您必须安装旧版本。考虑使用packrat

于 2017-10-19T12:07:52.277 回答
0

如何使用“devtools”包从源代码安装(虽然它可能不适用于较新版本的 R):

devtools::install_version("RSQLite.extfuns", version = "0.0.1", repos = "http://cran.us.r-project.org")
于 2019-08-07T13:50:04.410 回答