% Generated by roxygen2: do not edit by hand % Please edit documentation in R/ds2dd_detailed.R \name{ds2dd_detailed} \alias{ds2dd_detailed} \title{Extract data from stata file for data dictionary} \usage{ ds2dd_detailed( data, add.auto.id = FALSE, date.format = "dmy", form.name = NULL, form.sep = NULL, form.prefix = TRUE, field.type = NULL, field.label = NULL, field.label.attr = "label", field.validation = NULL, metadata = names(REDCapCAST::redcapcast_meta), validate.time = FALSE, time.var.sel.pos = "[Tt]i[d(me)]", time.var.sel.neg = "[Dd]at[eo]" ) } \arguments{ \item{data}{data frame} \item{add.auto.id}{flag to add id column} \item{date.format}{date format, character string. ymd/dmy/mdy. dafault is dmy.} \item{form.name}{manually specify form name(s). Vector of length 1 or ncol(data). Default is NULL and "data" is used.} \item{form.sep}{If supplied dataset has form names as suffix or prefix to the column/variable names, the seperator can be specified. If supplied, the form.sep is ignored. Default is NULL.} \item{form.prefix}{Flag to set if form is prefix (TRUE) or suffix (FALSE) to the column names. Assumes all columns have pre- or suffix if specified.} \item{field.type}{manually specify field type(s). Vector of length 1 or ncol(data). Default is NULL and "text" is used for everything but factors, which wil get "radio".} \item{field.label}{manually specify field label(s). Vector of length 1 or ncol(data). Default is NULL and colnames(data) is used or attribute `field.label.attr` for haven_labelled data set (imported .dta file with `haven::read_dta()`).} \item{field.label.attr}{attribute name for named labels for haven_labelled data set (imported .dta file with `haven::read_dta()`. Default is "label"} \item{field.validation}{manually specify field validation(s). Vector of length 1 or ncol(data). Default is NULL and `levels()` are used for factors or attribute `factor.labels.attr` for haven_labelled data set (imported .dta file with `haven::read_dta()`).} \item{metadata}{redcap metadata headings. Default is REDCapCAST:::metadata_names.} \item{validate.time}{Flag to validate guessed time columns} \item{time.var.sel.pos}{Positive selection regex string passed to `gues_time_only_filter()` as sel.pos.} \item{time.var.sel.neg}{Negative selection regex string passed to `gues_time_only_filter()` as sel.neg.} } \value{ list of length 2 } \description{ Extract data from stata file for data dictionary } \details{ This function is a natural development of the ds2dd() function. It assumes that the first column is the ID-column. No checks. Please, do always inspect the data dictionary before upload. Ensure, that the data set is formatted with as much information as possible. `field.type` can be supplied } \examples{ data <- REDCapCAST::redcapcast_data data |> ds2dd_detailed(validate.time = TRUE) data |> ds2dd_detailed() iris |> ds2dd_detailed(add.auto.id = TRUE) mtcars |> ds2dd_detailed(add.auto.id = TRUE) data <- iris |> ds2dd_detailed(add.auto.id = TRUE) |> purrr::pluck("data") names(data) <- glue::glue("{sample(x = c('a','b'),size = length(names(data)), replace=TRUE,prob = rep(x=.5,2))}__{names(data)}") data |> ds2dd_detailed(form.sep="__") }