, inst/extdata. , . , : system.file("extdata", "yourfile", package = "yourpackage"). ( , ).
, , . . :
- sqlite:
sqlite. , rsqlite. - ff:
ff (, , save.ffdf ffbase; load.ffdf ). ff ( ). , , Intel, . - CSV: CSV . ,
LaF. , , , ff, . - RDS: RDS (
saveRDS) , readRDS, , - R-. . , ( ).
, RDS.
RDS
, :
load_data <- function(dataset, columns) {
result <- vector("list", length(columns));
for (i in seq_along(columns)) {
col <- columns[i]
fn <- system.file("extdata", dataset, paste0(col, ".RDS"), package = "lazydata")
result[[i]] <- readRDS(fn)
}
names(result) <- columns
as.data.frame(result)
}
store_data <- function(package, name, data) {
dir <- file.path(package, "inst", "exdata", name)
dir.create(dir, recursive = TRUE)
for (col in names(data)) {
saveRDS(data[[col]], file.path(dir, paste0(col, ".RDS")))
}
}
packagename <- "lazyload"
package.skeleton(packagename, "load_data")
store_data(packagename, "iris", iris)
( , , ), :
library(lazyload)
data <- load_data("iris", "Sepal.Width")
Sepal.Width .
, load_data: , , , , , , .