访问R包中的子目录

时间:2013-10-30 20:12:36

标签: r list package directory

我在R包中有一个数据文件夹。在数据目录中我有一个子目录data / JE。我想访问此目录并应用list.file函数,然后使用我想要读取每个文件的列表。不运行包时我可以setwd()。但是当程序包运行时,我不知道如何访问该目录。

     JESP = system.file("data/JE",package="DNA_test")
     listoffiles <- list.files(path=JESP)

要访问pacakg中的文件,我使用system.file函数。但我不知道如何访问目录并从中读取文件。我在循环中使用以下语句来读取

     check <- as.matrix(read.csv(file=listoffiles[j],sep=",",header=FALSE))

1 个答案:

答案 0 :(得分:5)

您应该能够根据自己的需要进行修改:

> packagePath <- find.package("survival", lib.loc=NULL, quiet = TRUE)
> packagePath
[1] "/Library/Frameworks/R.framework/Versions/3.0/Resources/library/survival"

> list.files(packagePath)
 [1] "CITATION"    "data"        "DESCRIPTION" "doc"         "help"        "html"       
 [7] "INDEX"       "libs"        "Meta"        "NAMESPACE"   "NEWS.Rd"     "R"          
> list.files(paste0(packagePath, "/data") )
[1] "Rdata.rdb" "Rdata.rds" "Rdata.rdx"

如果您需要进一步了解system.file的工作原理,请输入

system.file