根据每个架构的不同包编写R包

时间:2012-07-04 08:24:08

标签: r package

我想构建一个包,该包涉及根据用户的系统使用不同的包从mysql加载数据。

对于Windows用户,它将通过包RODBC通过ODBC连接,而linux / mac用户将使用RMySQL包。

在脚本中,以下内容非常有效:

if(.Platform$OS.type == "unix") {
library(RMySQL)
} else {
  library(RODBC)
}

现在我想在加载我的包时加载这些包。 我通常会在描述文件中添加它,取决于'取决于:',但这并不允许使用可选子句。

处理此问题的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

我认为解决此问题的常用方法是通过.onLoad函数(请参阅?.onLoadhelp(".onLoad"))。

写作R扩展手册的

Section 1.6.3给出了概述。也许其他人可以给你一个很好的例子,到目前为止我还没有用过。