[英]How to call internal dataset by a string in R package
在構建本地 R package 期間,我包含了一些內部數據集,例如data_abc, data_cdj, ..., data_mnp
。 然后我嘗試編寫一個 function 來調用這些數據集之一,具體取決於用戶的輸入參數p
這將是abc
、 cdj
、 ...
、 mnp
,例如:
get_data <- function(p) {
use_data <- paste0('data_', 'p')
...
return(use_data)
}
由於use_data <- paste0('data_', 'p')
是一個字符串,我的問題是如何讓 function 返回內部數據,例如data_mnp
if p = 'mnp'
。
我認為這就是你需要這樣做的方式,但我很想得到糾正。
get_data <- function(p) {
data_name = paste0( "data_", p )
# check first that it exists in your package:
ns <- getNamespace("your.package.name")
if(!exists(data_name, where=ns, inherits=FALSE)) {
stop( "a data set with suffix ", p, " does not exist!")
}
return( get( data_name, where=ns, inherits=FALSE ) )
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.