【发布时间】:2009-12-11 08:35:43
【问题描述】:
我正在尝试编写 R 包。我正在从硬盘加载一个 csv 文件,我希望稍后将我的 R 代码和我的 csv 文件捆绑到一个包中。
我的问题是如何在我的包生成时加载我的 csv 文件,我的意思是现在我的文件地址类似于 c:\R\mydirectory....\myfile.csv 但是在我将它发送给某人之后否则我怎样才能获得该文件的相对地址?
如果其他人不清楚,请随时纠正这个问题!
【问题讨论】:
我正在尝试编写 R 包。我正在从硬盘加载一个 csv 文件,我希望稍后将我的 R 代码和我的 csv 文件捆绑到一个包中。
我的问题是如何在我的包生成时加载我的 csv 文件,我的意思是现在我的文件地址类似于 c:\R\mydirectory....\myfile.csv 但是在我将它发送给某人之后否则我怎样才能获得该文件的相对地址?
如果其他人不清楚,请随时纠正这个问题!
【问题讨论】:
您可以将 csv 文件放在 data 目录或 inst/extdata 中。
请参阅Writing R Extensions manual - Section 1.1.5 Data in packages。
要导入您可以使用的数据,例如,
R> data("achieve", package="flexclust")
或
R> read.table(system.file("data/achieve.txt", package = "flexclust"))
【讨论】:
查看package.skeleton的R帮助:这个函数
自动执行新源包的一些设置。它创建目录,将函数、数据和 R 代码文件保存到适当的位置,并创建框架帮助文件和描述打包中进一步步骤的“Read-and-delete-me”文件。
package.skeleton 创建的目录结构包括一个data 目录。如果您将数据放在这里,它将与包一起分发。
【讨论】: