Skip to content

Commit

Permalink
v1.1.0 - Merge branch 'post-version-1.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
omair-a-khan committed Dec 4, 2018
2 parents 5162493 + fe56bec commit a70da82
Show file tree
Hide file tree
Showing 48 changed files with 3,595 additions and 1,198 deletions.
30 changes: 19 additions & 11 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,46 +1,54 @@
### macOS ###
*.DS_Store

### R ###
>>>>>>> rVMAC/master
# History files
.Rhistory
.Rapp.history

# Session Data files
.RData

# Example code in package build process
*-Ex.R

# Output files from R CMD build
/*.tar.gz

# Output files from R CMD check
/*.Rcheck/

# RStudio files
.Rproj.user/

<<<<<<< HEAD
# produced vignettes
vignettes/*.html
vignettes/*.pdf

=======
>>>>>>> rVMAC/master
# OAuth2 token, see https://github.com/hadley/httr/releases/tag/v0.3
.httr-oauth

# knitr and R markdown default cache directories
/*_cache/
/cache/

# Temporary files created by R markdown
*.utf8.md
*.knit.md
<<<<<<< HEAD
=======

# packrat
.Rproj.user
20180912_differing_variable_labels\.csv
20180919_comprehensive_redcap_factors\.csv
20180919_comprehensive_redcap_factors_d20180901\.csv
abbreviated_differing_values_w_rounding\.csv
abbreviated_differing_values\.csv
differing_level_labels\.csv
DocumentationPeek\.pdf
full_differing_values\.csv
variables_in_current_but_not_in_old\.txt
variables_in_old_but_not_in_current\.txt
redcap_api_tokens.R
test_merge_20181127.Rmd
test_merge_20181127.nb.html
20181201_processed_data.rds
epoch4aslmanualscandate.csv
epoch_4_asl_manual_scan_date.csv
merged_finally.rds
mergedacrossepochs.rds
processed_dec_data.rds
7 changes: 4 additions & 3 deletions DESCRIPTION
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ Type: Package
Title: A research package for improving statistical collaboration between
VMAC and VUMC Department of Biostatistics for the Vanderbilt Memory and Aging
Project (VMAP)
Version: 1.0
Version: 1.1.0
Authors@R: c(
person(c("Omair", "A."), "Khan",
email = c("omair.a.khan@vumc.org", "omair@prettynumbe.rs"),
email = c("omair.a.khan@vumc.org"),
role = c("aut", "cre")),
person("Dandan", "Liu",
email = "dandan.liu@vanderbilt.edu",
Expand All @@ -33,5 +33,6 @@ Imports: knitr,
Hmisc,
formattable,
REDCapR,
secret
secret,
arsenal
RoxygenNote: 6.1.0
6 changes: 3 additions & 3 deletions R/check_shared_vars.R
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@ check_shared_vars <- function(data1, data2, merge.by) {
warning(
paste0(
"[warning] The datasets (", deparse(substitute(data1)), " and ", deparse(substitute(data2)), ") share the following variable names: ",
paste(sharedNames, collapse = ", "), ". \n"
paste(sharedNames, collapse = ", "), ". \n\n"
),
immediate. = TRUE
)
} else {
message(
paste0("The datasets (", deparse(substitute(data1)), " and ", deparse(substitute(data2)), ") do not share any variable names except: ", deparse(substitute(merge.by)), ". \n")
cat(
paste0("The datasets (", deparse(substitute(data1)), " and ", deparse(substitute(data2)), ") do not share any variable names except: ", deparse(substitute(merge.by)), ". \n\n")
)
}
}
Expand Down
5 changes: 3 additions & 2 deletions R/coerce_and_stack.R
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,11 @@ coerce_and_stack <- function(new_data, old_data) {
}
}
}
different_modes.df <- different_modes.df[-1, ]

if (!is.null(nrow(different_modes.df))) {
if (all(!is.null(nrow(different_modes.df)) & nrow(different_modes.df) > 0)) {
cat("There are differences in storage modes in the following variables:\n")
print(different_modes.df[-1, ], row.names = FALSE)
print(different_modes.df, row.names = FALSE)
cat("Numeric variables were coerced to character.\n")
} else {
cat("Variables in the new and old data sets share the same storage modes.\n")
Expand Down
30 changes: 30 additions & 0 deletions R/consolidate_variable_names_and_labels.R
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
consolidate_variable_names_and_labels <- function(data_freeze = MAPfreeze.list) {
within_epoch.df <- NULL
all_variables_labels.df <- NULL

for (epoch.i in names(data_freeze)[-1]) {
for (dataset.i in names(data_freeze[[epoch.i]][["data"]])) {
my.df <- NULL

if (grepl("\\.static", dataset.i)) {
my.df <- dplyr::tibble(
epoch = epoch.i,
dataset = dataset.i,
field_name = names(data_freeze[[epoch.i]][["data"]][[dataset.i]]),
field_label = NA_character_
)
} else {
my.df <- dplyr::tibble(
epoch = epoch.i,
dataset = dataset.i,
field_name = data_freeze[[epoch.i]][["metadata"]][[dataset.i]] %>% pull(field_name),
field_label = data_freeze[[epoch.i]][["metadata"]][[dataset.i]] %>% pull(field_label)
)
}
within_epoch.df <- rbind(within_epoch.df, my.df)
}
all_variables_labels.df <- rbind(all_variables_labels.df, within_epoch.df)
}

return(all_variables_labels.df)
}
47 changes: 23 additions & 24 deletions R/convert_dates.R
Original file line number Diff line number Diff line change
Expand Up @@ -5,39 +5,38 @@
#' @export

convert_dates <- function(data) {
datevars <- setdiff(names(data)[grepl("\\.date", names(data))], "usa.date")
current_data.df <- data

if ("dob" %in% names(data)) {
datevars <- c(datevars, "dob")
date.var <- setdiff(names(current_data.df)[grepl("(\\_|\\.)date$", names(current_data.df))], c("usa.date", "usa_date"))

if ("dob" %in% names(current_data.df)) {
date.var <- c(date.var, "dob")
}

for (vname in datevars) {
datevar <- data[, vname]
if (length(date.var) > 0) {
for (var.i in date.var) {
current_date.var <- current_data.df[, var.i]

if (is.factor(datevar)) {
datevar <- as.character(datevar)
}
if (is.factor(current_date.var)) {
current_date.var <- as.character(current_date.var)
}

if (all(is.na(datevar))) {
warning(paste0(vname, " is entirely missing values.\n"))
next
}
if (!is.character(current_date.var) & !is.Date(current_date.var) & !all(is.na(current_date.var))) {
warning(paste0(var.i, " is not formatted properly and will not be converted to 'Date' class. This variable should be manually checked.\n\n"))
next
}

if (!is.character(datevar) & !is.Date(datevar)) {
warning(paste0(vname, " is not in character format and may not need to be converted.\n"))
next
}
if (!is.Date(current_date.var) & any(nchar(na.omit(current_date.var)) %nin% c(0, 10))) {
warning(paste0(var.i, " has non-date values and will not be converted to 'Date' class. This variable should be manually checked.\n\n"))
next
}

datevar[datevar %in% c("1111-11-11", "", as.Date("1111-11-11"))] <- NA
#ifelse(datevar %in% c("1111-11-11", ""), NA, datevar)
current_date.var[nchar(current_date.var) == 0] <- NA
current_date.var[grep("1111", current_date.var)] <- NA

if (any((!is.na(datevar)) & nchar(datevar) != 10)) {
warning(paste0(vname, " is not in yyyy-mm-dd format.\n"))
next
current_data.df[, var.i] <- lubridate::as_date(current_date.var)
}

data[, vname] <- as.Date(datevar)
}

return(data)
return(current_data.df)
}
2 changes: 1 addition & 1 deletion R/derive_AD_signature.R
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ derive_AD_signature <- function(data) {

data <- merge(data, mcevoy.all.temp, by = c("map.id", "epoch"), all.x = TRUE)

data$AD.sig.schwarz <- rowSums(data[, schwarz], na.rm = FALSE)
data$AD.sig.schwarz <- rowMeans(data[, schwarz], na.rm = FALSE)

data <- within(data, {
label(avg.hippocampus) <- "Avg hippocampus vol - T1 3T FreeSurfer"
Expand Down
4 changes: 2 additions & 2 deletions R/derive_abp_qc.R
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@ derive_abp_qc <- function(data) {
data <- within(data, {
# ABP QC:
abp.within.90d.of.np <- ifelse(
is.na(days.np.date.minus.abp.date),
is.na(days.np.date.minus.abp.date.diff),
NA,
ifelse(
abs(days.np.date.minus.abp.date) <= 90,
abs(days.np.date.minus.abp.date.diff) <= 90,
1,
0
)
Expand Down
Loading

0 comments on commit a70da82

Please sign in to comment.