diff --git a/R/mortalityTables.list.R b/R/mortalityTables.list.R index 7ff5830bc367c1f3dbe3ab6aef0f81c2b6f6cdd6..fc72a7581d48d161805f7614ebf91ad9497d9ed2 100644 --- a/R/mortalityTables.list.R +++ b/R/mortalityTables.list.R @@ -2,11 +2,13 @@ #' An existing life table can then be loaded with \link{mortalityTables.load}. #' #' @param pattern Restrict the results only to life table sets that match the pattern (default: "*" to show all sets) +#' @param package The package that contains the desired dataset in its \code{extdata/} +#' directory. Defaults to the "MortalityTables" package. #' #' @export -mortalityTables.list = function(pattern="*") { - filepath = system.file("extdata", package="MortalityTables"); - files = Sys.glob(file.path(filepath, paste("MortalityTables_", pattern, ".R", sep=""))) +mortalityTables.list = function(pattern = "*", package = "MortalityTables") { + filepath = system.file("extdata", package = package); + files = Sys.glob(file.path(filepath, paste("MortalityTables_", pattern, ".R", sep = ""))) gsub('^MortalityTables_(.*).R$', '\\1', basename(files)) } diff --git a/R/mortalityTables.load.R b/R/mortalityTables.load.R index 6aa3848f98842c81a706ed1727f6154d3c09ad01..f0426dbc20e06e148cce6f76cb75b3e1d2cf8317 100644 --- a/R/mortalityTables.load.R +++ b/R/mortalityTables.load.R @@ -4,23 +4,24 @@ #' data sets is provided by the function \code{\link{mortalityTables.list}}. #' @param wildcard Whether the dataset name contains wildcard. If TRUE, all #' datasets matching the pattern will be loaded +#' @param package The package that contains the dataset in its \code{extdata/} +#' directory. Defaults to the "MortalityTables" package. #' #' @export -mortalityTables.load = function(dataset, wildcard=FALSE) { +mortalityTables.load = function(dataset, wildcard=FALSE, package="MortalityTables") { if (wildcard) { - sets = mortalityTables.list(dataset); + sets = mortalityTables.list(dataset, package = package); } else { sets = c(dataset); } for (set in sets) { sname = gsub("[^-A-Za-z0-9_.]", "", set); message("Loading mortality table data set '", sname, "'"); - filename = system.file("extdata", paste("MortalityTables_", sname, ".R", sep = ""), package="MortalityTables"); + filename = system.file("extdata", paste("MortalityTables_", sname, ".R", sep = ""), package = package); if (filename != "") { sys.source(filename, envir = globalenv()) - #envir=topenv()) } else { - warning(sprintf("Unable to locate dataset '%s' provided by the MortalityTables package!", sname)); + warning(sprintf("Unable to locate dataset '%s' provided by the %s package!", sname, package)); } } }