R/nhs_target.R

Defines functions nhs_target.data.frame nhs_target.list nhs_target.character nhs_target

Documented in nhs_target nhs_target.character nhs_target.data.frame nhs_target.list

#' target information
#'
#' @param ... variable names, which will be searched by lookl(), list result of
#'     nhs_read() or dataframe or list of nhs_select(), nhs_pg()
#' @name nhs_target
#' @return dataframe
#' @export
nhs_target <- function(...){
    UseMethod('nhs_target')
}
#' @rdname nhs_target
#' @export
#' @method nhs_target character
#' @param data varLabel data, used in web application
nhs_target.character <- function(...,data=NULL){
    variable <- c(...)
    if (is.null(data)){
        data <- data.table::fread(paste0(get_config_path(TRUE),'varLabel.txt'),showProgress = FALSE,data.table = FALSE)
    }
    d1 <- data[,c("year", "item", "file", "variable", "target","url")]
    d1[lookl(d1$variable,variable)]
}
#' @rdname nhs_target
#' @export
#' @method nhs_target list
nhs_target.list <- function(...){
    tg <- attr(list(...)[[1]],"target")
    class(tg) <- c('target','data.frame')
    tg
}
#' @rdname nhs_target
#' @export
#' @method nhs_target data.frame
nhs_target.data.frame <- function(...){
    tg <- attr(list(...)[[1]],"target")
    class(tg) <- c('target','data.frame')
    tg
}
yikeshu0611/nhanesR documentation built on Jan. 29, 2022, 6:08 a.m.