簡體   English   中英

如何通過 R package 中的字符串調用內部數據集

[英]How to call internal dataset by a string in R package

在構建本地 R package 期間,我包含了一些內部數據集,例如data_abc, data_cdj, ..., data_mnp 然后我嘗試編寫一個 function 來調用這些數據集之一,具體取決於用戶的輸入參數p這將是abccdj...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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM