Permalink
Cannot retrieve contributors at this time
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Master-Thesis-Analyses/AntepartumDepression_ASQ_Total.R
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
2320 lines (2114 sloc)
105 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
### Results of prenatal depression and ASQ total | |
#30.06.2021 | |
### Data preparation #### | |
#setwd("C:/Users/User/Desktop/Internship/RScripts/Cortisol/Master_Thesis") | |
setwd("C:/Users/alici/Desktop/Git_Folder/ITU_cortisol_analyses/Master_Thesis") | |
##libraries | |
library(dplyr) | |
library(gtsummary) | |
library(gdata) | |
library(VGAM) | |
library(rcompanion) | |
library(tidyverse) | |
library(broom) | |
library(APAstyler) | |
## 1. cortisol data #### | |
load("Rdata/ITU_combined_cortisol_dates_times_wide_format.Rdata") | |
comments_to_be_excluded <- c(88,6,12,3,15,9999,7,16,45,5,34,17,57,67,99) | |
wide_cort <- wide_cort[!(wide_cort$notes %in% comments_to_be_excluded),] | |
cort_IDs <- unique(wide_cort$participantID) | |
## 2. maternal well-being during pregnancy #### | |
load("Rdata/processed_wellbeingduringpreg_completevars.Rdata") | |
#for now only sleep, anxiety and CESD are included | |
cols <- c("1", "2",grep("gestage", names(q_data_complete)), | |
grep("GWdiff_cort_qclosest", names(q_data_complete)), | |
grep("Cesd", names(q_data_complete)), | |
#grep("puqe", names(q_data_complete)), | |
grep("PSQI", names(q_data_complete)), | |
#grep("ESS", names(q_data_complete)), | |
grep("BAI",names(q_data_complete))) | |
q_data_sub <- q_data_complete[,c(as.numeric(cols))] | |
q_data_sub <- subset(q_data_sub, abs(GWdiff_cort_qclosest_to_cortGW) < 2) | |
## Depressive Symptoms Severity | |
q_data_sub$Depressive_Symptom_Severity <- NA | |
q_data_sub$Depressive_Symptom_Severity_num <- NA | |
for(i in 1:nrow(q_data_sub)){ | |
m <- q_data_sub$Cesd_qclosest_to_cortGW_pregMean[[i]] | |
if(!is.na(m)){ | |
if(m<16){ | |
q_data_sub$Depressive_Symptom_Severity[[i]] <- "Below_Clinical (CES-D < 16)" | |
q_data_sub$Depressive_Symptom_Severity_num[[i]] <- 0 | |
} | |
if(m>=16){ | |
q_data_sub$Depressive_Symptom_Severity[[i]] <- "Clinical (CES-D >= 16)" | |
q_data_sub$Depressive_Symptom_Severity_num[[i]] <- 1 | |
} | |
} | |
} | |
q_data_sub$Depressive_Symptom_Severity <- factor(q_data_sub$Depressive_Symptom_Severity) | |
#Anxiety Symptom Severity | |
q_data_sub$Anxiety_Symptom_Severity <- NA | |
q_data_sub$Anxiety_Symptom_Severity_num <- NA | |
for(i in 1:nrow(q_data_sub)){ | |
m <- q_data_sub$BAI_qclosest_to_cortGW_pregMean[[i]] | |
if(!is.na(m)){ | |
if(m>21){ | |
q_data_sub$Anxiety_Symptom_Severity[[i]] <- "Moderate/Severe" | |
q_data_sub$Anxiety_Symptom_Severity_num[[i]] <- 1 | |
} | |
if(m<=21){ | |
q_data_sub$Anxiety_Symptom_Severity[[i]] <- "Low/Normal" | |
q_data_sub$Anxiety_Symptom_Severity_num[[i]] <- 0 | |
} | |
} | |
} | |
q_data_sub$psych_distress <- rowSums(q_data_sub[,c("Depressive_Symptom_Severity_num", | |
"Anxiety_Symptom_Severity_num")], | |
na.rm=F) | |
### compute additive depression score | |
q_data_sub$clinD <- NA | |
for(i in 1:nrow(q_data_sub)){ | |
cesd <- q_data_sub$Cesd_qclosest_to_cortGW[[i]] | |
if(!is.na(cesd)){ | |
if(cesd >= 16){ | |
q_data_sub$clinD[[i]] <- 1 | |
} | |
if(cesd < 16){ | |
q_data_sub$clinD[[i]] <- 0 | |
} | |
} | |
} | |
##sum occasions of clinical depression together | |
q_data_sub <- q_data_sub %>% | |
group_by(participantID) %>% | |
mutate(additive_clinD = sum(clinD, na.rm = T)) | |
## data selection | |
q_data_subx <- q_data_sub[,c("participantID", | |
"pregstage", | |
"Cesd_qclosest_to_cortGW_pregMean", | |
"Depressive_Symptom_Severity", | |
"Depressive_Symptom_Severity_num", | |
"BAI_qclosest_to_cortGW_pregMean", | |
"PSQI_qclosest_to_cortGW_pregMean", | |
"qclosest_based_clin_Cesd", | |
"Cesd_qclosest_to_cortGW", | |
"BAI_qclosest_to_cortGW", | |
"PSQI_qclosest_to_cortGW", | |
"additive_clinD")] | |
## Sample stratification | |
## those with multiple assessments | |
at_least_two_assessments <- c() | |
q_data_subx <- as.data.frame(q_data_subx) | |
IDs <- unique(q_data_subx$participantID[!is.na(q_data_subx$Cesd_qclosest_to_cortGW)]) | |
for(i in 1:length(IDs)){ | |
ID <- IDs[[i]] | |
#print(ID) | |
trims <- unique(q_data_subx[q_data_subx$participantID == ID, c("pregstage")]) | |
#print(length(trims)) | |
if(length(trims) >= 2){ | |
at_least_two_assessments <- append(at_least_two_assessments, ID) | |
} | |
} | |
### Data in wide format | |
q_data_sub_final <- q_data_subx %>% | |
tidyr::pivot_wider( | |
id_cols = c(participantID, | |
pregstage, | |
Cesd_qclosest_to_cortGW_pregMean, | |
Depressive_Symptom_Severity, | |
Depressive_Symptom_Severity_num, | |
BAI_qclosest_to_cortGW_pregMean, | |
PSQI_qclosest_to_cortGW_pregMean, | |
additive_clinD), | |
names_from = c(pregstage), # Can accommodate more variables, if needed. | |
values_from = c(8:11) | |
) | |
# #only overall questionnaire score during pregnancy | |
# q_data_sub_final <- q_data_sub[,c("participantID", | |
# "Cesd_qclosest_to_cortGW_pregMean", | |
# "BAI_qclosest_to_cortGW_pregMean", | |
# "PSQI_qclosest_to_cortGW_pregMean", | |
# #"WS_CESD_variation_mean", | |
# "Depressive_Symptom_Severity", | |
# "Depressive_Symptom_Severity_num", | |
# "Anxiety_Symptom_Severity", | |
# "psych_distress")] | |
# q_data_sub_final <- subset(q_data_sub_final, !duplicated(q_data_sub_final)) | |
# summary(factor(q_data_sub_final$Anxiety_Symptom_Severity)) #n=5, these also have clin depression | |
# summary(factor(q_data_sub_final$psych_distress)) | |
# summary(factor(q_data_sub_final$Depressive_Symptom_Severity)) | |
# Qs transformations #### | |
q_data_sub_final$Cesd_qclosest_to_cortGW_pregMean_cent <- c(scale(sqrt(q_data_sub_final$Cesd_qclosest_to_cortGW_pregMean), scale = TRUE)) | |
q_data_sub_final$BAI_qclosest_to_cortGW_pregMean_cent <- c(scale(sqrt(q_data_sub_final$BAI_qclosest_to_cortGW_pregMean), scale = TRUE)) | |
q_data_sub_final$PSQI_qclosest_to_cortGW_pregMean_cent <- c(scale(sqrt(q_data_sub_final$PSQI_qclosest_to_cortGW_pregMean), scale = TRUE)) | |
#add categorical anxiety severity | |
q_data_sub_final$Anxiety_Severity_greateroneSD_num <- ifelse(q_data_sub_final$BAI_qclosest_to_cortGW_pregMean_cent > 1, 1, 0) | |
q_data_sub_final$Anxiety_Severity_greateroneSD <- factor(ifelse(q_data_sub_final$BAI_qclosest_to_cortGW_pregMean_cent > 1, "yes", "no")) | |
q_data_sub_final$Anxiety_Severity_greateroneSD <- factor(q_data_sub_final$Anxiety_Severity_greateroneSD) | |
#add psych distress score | |
q_data_sub_final$psych_distress <- rowSums(q_data_sub_final[,c("Depressive_Symptom_Severity_num", | |
"Anxiety_Severity_greateroneSD_num")], | |
na.rm=F) | |
q_data_sub_final$psych_distress <- factor(q_data_sub_final$psych_distress) | |
q_data_sub_final$PSQI_severity <- NA | |
for(i in 1:nrow(q_data_sub_final)){ | |
psqi <- q_data_sub_final$PSQI_qclosest_to_cortGW_pregMean_cent[[i]] | |
if(!is.na(psqi)){ | |
q_data_sub_final$PSQI_severity[[i]] <- "mean" | |
if(psqi <= -1){ | |
q_data_sub_final$PSQI_severity[[i]] <- "-1SD" | |
} | |
if(psqi >= 1){ | |
q_data_sub_final$PSQI_severity[[i]] <- "+1SD" | |
} | |
} | |
} | |
q_data_sub_final$PSQI_severity <- factor(q_data_sub_final$PSQI_severity) | |
## 3. maternal follow-up data #### | |
followUp <- read.delim("Rdata/ITU_1to2YearsFollowup_MaternalandChildQuestionnaires.dat") | |
names(followUp)[1] <- "participantID" | |
relevant_followUp <- c("1", | |
grep("CESD", names(followUp)), | |
grep("BAI", names(followUp))) | |
postpartum_followUp <- followUp[,c(as.numeric(relevant_followUp))] | |
postpartum_followUp$ITU_1.7y_mother_CESD_sum_nomis <- as.numeric(gsub(",", ".", postpartum_followUp$ITU_1.7y_mother_CESD_sum_nomis)) | |
postpartum_followUp$ITU_1.7y_mother_BAI_sum_no_missing <- as.numeric(gsub(",", ".", postpartum_followUp$ITU_1.7y_mother_BAI_sum_no_missing)) | |
postpartum_df <- postpartum_followUp[,c("participantID", | |
"ITU_1.7y_mother_CESD_sum_nomis", | |
"ITU_1.7y_mother_BAI_sum_no_missing")] | |
names(postpartum_df)[2] <- "postpartum_Cesd" | |
names(postpartum_df)[3] <- "postpartum_BAI" | |
## Depressive Symptoms Severity | |
postpartum_df$postpartum_Depressive_Symptom_Severity <- NA | |
postpartum_df$postpartum_Depressive_Symptom_Severity_num <- NA | |
for(i in 1:nrow(postpartum_df)){ | |
m <- postpartum_df$postpartum_Cesd[[i]] | |
if(!is.na(m)){ | |
if(m<16){ | |
postpartum_df$postpartum_Depressive_Symptom_Severity[[i]] <- "Non-Clinical (CES-D < 16)" | |
postpartum_df$postpartum_Depressive_Symptom_Severity_num[[i]] <- 0 | |
} | |
if(m>=16){ | |
postpartum_df$postpartum_Depressive_Symptom_Severity[[i]] <- "Clinical (CES-D >= 16)" | |
postpartum_df$postpartum_Depressive_Symptom_Severity_num[[i]] <- 1 | |
} | |
} | |
} | |
postpartum_df$postpartum_Depressive_Symptom_Severity <- factor(postpartum_df$postpartum_Depressive_Symptom_Severity) | |
#view(postpartum_df[,c("postpartum_Cesd","postpartum_Depressive_Symptom_Severity_num")]) | |
#Anxiety Symptom Severity | |
postpartum_df$postpartum_Anxiety_Symptom_Severity <- NA | |
postpartum_df$postpartum_Anxiety_Symptom_Severity_num <- NA | |
for(i in 1:nrow(postpartum_df)){ | |
m <- postpartum_df$postpartum_BAI[[i]] | |
if(!is.na(m)){ | |
if(m>21){ | |
postpartum_df$postpartum_Anxiety_Symptom_Severity[[i]] <- "Moderate/Severe" | |
postpartum_df$postpartum_Anxiety_Symptom_Severity_num[[i]] <- 1 | |
} | |
if(m<=21){ | |
postpartum_df$postpartum_Anxiety_Symptom_Severity[[i]] <- "Low/Normal" | |
postpartum_df$postpartum_Anxiety_Symptom_Severity_num[[i]] <- 0 | |
} | |
} | |
} | |
#summary(factor(postpartum_df$postpartum_Anxiety_Symptom_Severity)) n = 5 | |
#summary(factor(postpartum_df$postpartum_Depressive_Symptom_Severity)) n = 102 | |
### transformations | |
postpartum_df$postpartum_BAI_cent <- c(scale(sqrt(postpartum_df$postpartum_BAI), scale = TRUE)) | |
postpartum_df$postpartum_Cesd_cent <- c(scale(sqrt(postpartum_df$postpartum_Cesd), scale = TRUE)) | |
### anxiety severity by SD above the sample mean | |
postpartum_df$postpartum_Anxiety_Severity_greateroneSD_num <- ifelse(postpartum_df$postpartum_BAI_cent > 1, 1, 0) | |
postpartum_df$postpartum_Anxiety_Severity_greateroneSD <- factor(ifelse(postpartum_df$postpartum_BAI_cent > 1, "yes", "no")) | |
postpartum_df$postpartum_psych_distress <- rowSums(postpartum_df[,c("postpartum_Depressive_Symptom_Severity_num", | |
"postpartum_Anxiety_Severity_greateroneSD_num")], | |
na.rm=F) | |
postpartum_df$postpartum_psych_distress <- factor(postpartum_df$postpartum_psych_distress) | |
postpartum_df_final <- postpartum_df[,c("participantID", | |
"postpartum_BAI_cent", | |
"postpartum_Cesd_cent", | |
"postpartum_Depressive_Symptom_Severity", | |
"postpartum_Anxiety_Severity_greateroneSD", | |
"postpartum_psych_distress", | |
"postpartum_Depressive_Symptom_Severity_num")] | |
# 3.1 Maternal Education #### | |
maternal_edu <- read.delim("Rdata/ITU maternal education.dat") | |
names(maternal_edu)[1] <- "participantID" | |
names(maternal_edu)[3] <- "Maternal_Education" | |
maternal_edu <- maternal_edu[,c("participantID", | |
"Maternal_Education")] | |
library(naniar) | |
maternal_edu <- maternal_edu %>% replace_with_na(replace = list(Maternal_Education = -9)) | |
maternal_edu$Maternal_Education <- factor(maternal_edu$Maternal_Education, | |
levels = c(1,2,3), | |
labels = c("primary", "applied university", "university")) | |
## 4. Register data during pregnancy #### | |
load("Rdata/processed_register_data.Rdata") | |
register_data$Maternal_Smoking_During_Pregnancy <- factor(register_data$Maternal_Smoking_During_Pregnancy, | |
levels = c("no", "quit_T1", "yes"), | |
labels = c("no", "no", "yes")) | |
register_data$Maternal_Hypertensive_Disorders_anyVSnone <- factor(register_data$Maternal_Hypertensive_Disorders_anyVSnone, | |
levels = c(-999,0,1), | |
labels = c("no", "no", "yes")) | |
register_data$Maternal_Diabetes_Disorders_anyVSnone <- factor(register_data$Maternal_Diabetes_Disorders_anyVSnone, | |
levels = c(-999,0,1), | |
labels = c("no", "no", "yes")) | |
register_data$Maternal_Body_Mass_Index_in_Early_Pregnancy_cent <- c(scale(register_data$Maternal_Body_Mass_Index_in_Early_Pregnancy, scale = F)) | |
register_data$Weight_Gain_cent <- c(scale(register_data$Weight_Gain, scale = F)) | |
register_data$Gestational_Age_Weeks_cent <- c(scale(register_data$Gestational_Age_Weeks, scale = F)) | |
register_data$Child_Birth_Weight_cent <- c(scale(register_data$Child_Birth_Weight, scale = F)) | |
register_data$Maternal_Age_Years_cent <- c(scale(register_data$Maternal_Age_Years, scale = F)) | |
regis_final <- register_data[,c("participantID", | |
"caseVScontrol", | |
"Parity", | |
"Maternal_Smoking_During_Pregnancy", | |
"Maternal_Corticosteroid_Treatment_during_Pregnancy", | |
"Maternal_Body_Mass_Index_in_Early_Pregnancy_cent", | |
"Child_Sex" , | |
"Gestational_Age_Weeks_cent", | |
"Child_Birth_Weight_cent", | |
"Weight_Gain_cent", | |
"Maternal_Hypertensive_Disorders_anyVSnone", | |
"Maternal_Diabetes_Disorders_anyVSnone", | |
"Maternal_Age_Years_cent" | |
)] | |
## 4.1 medication data #### | |
medication <- read.delim("Rdata/ITU_psychotrophicmedication05July21_Maternal_CurrentPregnancy.dat") | |
names(medication)[1] <- "participantID" | |
medication$ITUbroadpsychiatricmedication_18_KELA <- factor(medication$ITUbroadpsychiatricmedication_18_KELA, | |
levels = c(0,1), | |
labels = c("no", "yes")) | |
## 5. ASQ data #### | |
ASQ <- read.csv2("Rdata/ASQ_dataset_ITU_01122020r_shorter.csv") | |
names(ASQ)[1] <- "participantID" | |
#extract only participants who have cortisol data and finalagerange scores | |
#ASQ_final <- ASQ[ASQ$participantID %in% cort_IDs,c(1,3, 18:23)] | |
ASQ_final <- ASQ[ASQ$participantID %in% cort_IDs,c(1,3, 18:23)] | |
ASQ_final_samplesizes <- left_join(ASQ_final, wide_cort) | |
ASQ_final$Child_ASQ_grossmotor_development_infancy_sum_finalagerange <- | |
as.numeric(ASQ_final$Child_ASQ_grossmotor_development_infancy_sum_finalagerange) | |
#normalized rank scores | |
for(col in 3:ncol(ASQ_final)){ | |
column <- ASQ_final[col] | |
name <- paste0(names(ASQ_final[col]), "_norm") | |
ASQ_final[name] <- blom(column, method = "rankit") | |
} | |
#dichotomize normalized rank scores | |
for(col in 9:ncol(ASQ_final)){ | |
column <- ASQ_final[col] | |
old_name <- names(ASQ_final[col]) | |
new_name <- paste0(names(ASQ_final[col]), "_dichom") | |
ASQ_final[new_name] <- NA | |
for(i in 1:nrow(ASQ_final)){ | |
ASQ_score <- ASQ_final[[i, c(old_name)]] | |
if(!is.na(ASQ_score)){ | |
if(ASQ_score <= -1){ | |
ASQ_final[[i,c(new_name)]] <- 1 | |
} | |
if(ASQ_score > -1){ | |
ASQ_final[[i,c(new_name)]] <- 0 | |
} | |
} | |
} | |
} | |
ASQ_final$ChildAge_ASQ_months_allchildren_cent <- | |
c(scale(ASQ_final$ChildAge_ASQ_months_allchildren, scale = F)) | |
#select subset of relevant variables | |
ASQ_final <- ASQ_final[,c("participantID", | |
"ChildAge_ASQ_months_allchildren_cent", | |
"ChildAge_ASQ_months_allchildren", | |
"Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom", | |
"Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange")] | |
## 6. On Pregnancy Averages: merge all data #### | |
#use all the ASQ data | |
ASQ_df1 <- left_join(ASQ_final, q_data_sub_final) | |
ASQ_df2 <- left_join(ASQ_df1, maternal_edu) | |
ASQ_df3 <- left_join(ASQ_df2, postpartum_df_final) | |
ASQ_df_final <- left_join(ASQ_df3, regis_final) | |
ASQ_df_final <- left_join(ASQ_df_final, | |
medication[,c("participantID", | |
"ITUbroadpsychiatricmedication_18_KELA", | |
"antidepressants_18_KELA")], | |
copy=TRUE) | |
#exclude violattions against cortisol collection protocol | |
ASQ_df_final <- ASQ_df_final[!(ASQ_df_final$Maternal_Corticosteroid_Treatment_during_Pregnancy == "yes"),] | |
# length(unique(ASQ_df1$participantID[!is.na(ASQ_df_final$Cesd_qclosest_to_cortGW_pregMean)])) | |
# length(unique(ASQ_df1$participantID[!is.na(ASQ_df_final$Cesd_qclosest_to_cortGW_I)])) | |
# length(unique(ASQ_df1$participantID[!is.na(ASQ_df_final$Cesd_qclosest_to_cortGW_II)])) | |
# length(unique(ASQ_df1$participantID[!is.na(ASQ_df_final$Cesd_qclosest_to_cortGW_III)])) | |
##additive pre/post effects | |
ASQ_df_final$Pre.Post_clinD <- NA | |
for(i in 1:nrow(ASQ_df_final)){ | |
pre <- ASQ_df_final$Depressive_Symptom_Severity_num[[i]] | |
post <- ASQ_df_final$postpartum_Depressive_Symptom_Severity_num[[i]] | |
if(!is.na(pre) & !is.na(post) & pre == 0 & post == 0){ | |
ASQ_df_final$Pre.Post_clinD[[i]] <- "never" | |
} | |
if(sum(pre, post, na.rm=T) == 1 & !is.na(pre) & pre == 1){ | |
ASQ_df_final$Pre.Post_clinD[[i]] <- "pre_only" | |
} | |
if(sum(pre, post, na.rm=T) == 1 & !is.na(post) & post == 1){ | |
ASQ_df_final$Pre.Post_clinD[[i]] <- "post_only" | |
} | |
if(sum(pre, post, na.rm=T) == 2){ | |
ASQ_df_final$Pre.Post_clinD[[i]] <- "pre_post" | |
} | |
} | |
ASQ_df_final$Pre.Post_clinD <- factor(ASQ_df_final$Pre.Post_clinD) | |
#view(ASQ_df_final[,c("Depressive_Symptom_Severity_num", "postpartum_Depressive_Symptom_Severity_num", "Pre.Post_clinD")]) | |
## 7. Apply Exclusion Criteria #### | |
ASQ_df_final <- subset(ASQ_df_final, !(Maternal_Corticosteroid_Treatment_during_Pregnancy == "yes")) | |
#final n = 528 | |
# ASQ_numbers <- ASQ_df_final[, c("Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom", | |
# "Depressive_Symptom_Severity")] | |
# | |
# tbl_summary(data = ASQ_numbers, | |
# by = Depressive_Symptom_Severity) | |
#tidy up | |
rm(list= ls()[!(ls() %in% c("ASQ_df_final", "at_least_two_assessments"))]) | |
ASQ_df_final_sub <- ASQ_df_final[!(ASQ_df_final$ITUbroadpsychiatricmedication_18_KELA == "yes"),] | |
## nr of CESD assessments per mother #### | |
# ASQ_df_final$nr_cesds <- NA | |
# for(i in 1:nrow(ASQ_df_final)){ | |
# cesdI <- ASQ_df_final$Cesd_qclosest_to_cortGW_I[[i]] | |
# cesdII <- ASQ_df_final$Cesd_qclosest_to_cortGW_II[[i]] | |
# cesdIII <- ASQ_df_final$Cesd_qclosest_to_cortGW_III[[i]] | |
# | |
# I <- ifelse(!is.na(cesdI), 1,0) | |
# II <- ifelse(!is.na(cesdII), 1,0) | |
# III <- ifelse(!is.na(cesdIII), 1,0) | |
# | |
# ASQ_df_final$nr_cesds [[i]] <- I + II + III | |
# } | |
# save(ASQ_df_final, file = "Rdata/nr_cesd.Rdata") | |
################################################################################ | |
## Set up results table #### | |
ASQ_total_results <- setNames(data.frame(matrix(ncol = 13, nrow = 8)), | |
c("Maternal depressive symptoms", | |
"B", | |
"SE", | |
"LL", | |
"UL", | |
"z", | |
"p", | |
"OR", | |
"SE", | |
"LL", | |
"UL", | |
"z", | |
"p")) | |
ASQ_total_results[,1] <- c("Pregnancy mean CES-D score (n = ", | |
"Model 1", | |
"Model 2", | |
"Model 3", | |
"Pregnancy mean CES-D score >= 16", | |
"Model 1", | |
"Model 2", | |
"Model 3") | |
## Set up functions to report statistics in APA #### | |
tobit_apa <- function(m,x){ #m=tobit model, x=predictor as displayed in model summary table | |
#document results | |
estimate <- format(round(coef(summary(m))[x,1],2)) | |
SE <- format(round(coef(summary(m))[x,2],2)) | |
CI <- c(confint(m,x)) | |
LL <- format(round(CI[1],2)) | |
UL <- format(round(CI[2],2)) | |
z <- format(round(coef(summary(m))[x,3],2)) | |
p <- snip(as.numeric(format(round(coef(summary(m))[x,4],3))), lead=1) | |
output <- list(estimate,SE,LL,UL,z,p) | |
names(output) <- c("estimate","SE","LL","UL","z","p") | |
return(output) #output = list object of any parameters that may be interesting to report | |
} | |
logit_apa <- function(m,x){ #m=lobit model, x=predictor as displayed in model summary table | |
#document results | |
estimate <- format(round(exp(coef(summary(m))[x,1]),2)) | |
SE <- format(round(exp(coef(summary(m))[x,2]),2)) | |
CI <- exp(c(confint(m,x))) | |
LL <- format(round(CI[1],2)) | |
UL <- format(round(CI[2],2)) | |
z <- format(round(coef(summary(m))[x,3],2)) | |
p <- snip(as.numeric(format(round(coef(summary(m))[x,4],3))), lead = 1) | |
output <- list(estimate,SE,LL,UL,z,p) | |
names(output) <- c("estimate","SE","LL","UL","z","p") | |
return(output) #output = list object of any parameters (of OR) that may be interesting to report | |
} | |
################################################################################ | |
#### Tobit on Pregnancy Averages #### | |
## CES-D #### | |
M.CESD <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final, | |
na.action = "na.exclude") | |
summary(M.CESD) | |
res <- tobit_apa(M.CESD, "Cesd_qclosest_to_cortGW_pregMean_cent") | |
ASQ_total_results[2,2] <- res$estimate | |
ASQ_total_results[2,3] <- res$SE | |
ASQ_total_results[2,4] <- res$LL | |
ASQ_total_results[2,5] <- res$UL | |
ASQ_total_results[2,6] <- res$z | |
ASQ_total_results[2,7] <- res$p | |
M.PSQI <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
PSQI_qclosest_to_cortGW_pregMean_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final, | |
na.action = "na.exclude") | |
summary(M.PSQI) | |
#document results | |
Tobit_res.PSQI <- tobit_apa(M.PSQI, "PSQI_qclosest_to_cortGW_pregMean_cent") | |
M.BAI <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
BAI_qclosest_to_cortGW_pregMean_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final, | |
na.action = "na.exclude") | |
summary(M.BAI) | |
#document results | |
Tobit_res.BAI <- tobit_apa(M.BAI, "BAI_qclosest_to_cortGW_pregMean_cent") | |
##test assumptions | |
ASQ_df_final$yhat <- fitted(M.CESD)[,1] | |
ASQ_df_final$rr <- resid(M.CESD, type = "response") | |
ASQ_df_final$rp <- resid(M.CESD, type = "pearson")[,1] | |
#par(mfcol = c(2, 3)) | |
# with(ASQ_df_final, { | |
# plot(yhat, rr, main = "Fitted vs Residuals") | |
# qqnorm(rr) | |
# plot(yhat, rp, main = "Fitted vs Pearson Residuals") | |
# qqnorm(rp) | |
# plot(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange, | |
# rp, main = "Actual vs Pearson Residuals") | |
# plot(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange, | |
# yhat, main = "Actual vs Fitted") | |
# }) | |
# summary(M.CESD) | |
#Sex-specific effects | |
M.CESDINT_ChS <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
Cesd_qclosest_to_cortGW_pregMean_cent:Child_Sex, | |
tobit(Upper = 300), data = ASQ_df_final) | |
summary(M.CESDINT_ChS) | |
#document results | |
Tobit_res.CESDxChS <- tobit_apa(M.CESDINT_ChS, "Child_Sexgirl:Cesd_qclosest_to_cortGW_pregMean_cent") | |
#caseVScontrol | |
M.CESDINT_CaCo <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
Cesd_qclosest_to_cortGW_pregMean_cent:caseVScontrol, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
summary(M.CESDINT_CaCo) | |
#document results | |
Tobit_res.CESDxCaCo <- tobit_apa(M.CESDINT_CaCo, "caseVScontrolcontrol:Cesd_qclosest_to_cortGW_pregMean_cent") | |
### adding prenatal covariates | |
M.CESD.cov1 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
tobit(Upper = 300), | |
na.action = "na.exclude", | |
data = ASQ_df_final) | |
summary(M.CESD.cov1) | |
#document results | |
res <- tobit_apa(M.CESD.cov1, "Cesd_qclosest_to_cortGW_pregMean_cent") | |
ASQ_total_results[3,2] <- res$estimate | |
ASQ_total_results[3,3] <- res$SE | |
ASQ_total_results[3,4] <- res$LL | |
ASQ_total_results[3,5] <- res$UL | |
ASQ_total_results[3,6] <- res$z | |
ASQ_total_results[3,7] <- res$p | |
#total variance explained by tobit model | |
ASQ_df_final$yhat <- fitted(M.CESD.cov1)[,1] | |
r <- cor(ASQ_df_final$yhat, | |
ASQ_df_final$Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange, | |
use = "pairwise.complete.obs") | |
Tobit_var.explained.prenat <- format(round(r^2,2)) | |
## adding the postnatal factors | |
M.CESD.cov2 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_Cesd_cent + | |
postpartum_BAI_cent, | |
tobit(Upper = 300), | |
na.action = "na.exclude", | |
data = ASQ_df_final) | |
summary(M.CESD.cov2) | |
#document results | |
res <- tobit_apa(M.CESD.cov2, "Cesd_qclosest_to_cortGW_pregMean_cent") | |
ASQ_total_results[4,2] <- res$estimate | |
ASQ_total_results[4,3] <- res$SE | |
ASQ_total_results[4,4] <- res$LL | |
ASQ_total_results[4,5] <- res$UL | |
ASQ_total_results[4,6] <- res$z | |
ASQ_total_results[4,7] <- res$p | |
## also report sig. covariates | |
# COV.tobit_ChS <- tobit_apa(M.CESD.cov2, "Child_Sexgirl") | |
# COV.tobit_Diab <- tobit_apa(M.CESD.cov2, "Maternal_Diabetes_Disorders_anyVSnoneyes") | |
# COV.tobit_birthW <- tobit_apa(M.CESD.cov2, "Child_Birth_Weight_cent") | |
# COV.tobit_postD <- tobit_apa(M.CESD.cov2, "postpartum_Cesd_cent") | |
#total variance explained by tobit model | |
ASQ_df_final$yhat <- fitted(M.CESD.cov2)[,1] | |
r <- cor(ASQ_df_final$yhat, | |
ASQ_df_final$Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange, | |
use = "pairwise.complete.obs") | |
Tobit_var.explained_post <- r^2 | |
## categorical depression #### | |
M.CESD_cat <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
summary(M.CESD_cat) | |
#document results | |
res <- tobit_apa(M.CESD_cat, "Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
ASQ_total_results[6,2] <- res$estimate | |
ASQ_total_results[6,3] <- res$SE | |
ASQ_total_results[6,4] <- res$LL | |
ASQ_total_results[6,5] <- res$UL | |
ASQ_total_results[6,6] <- res$z | |
ASQ_total_results[6,7] <- res$p | |
##INT childsex | |
M.CESD_cat.INT1 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
Depressive_Symptom_Severity:Child_Sex, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
summary(M.CESD_cat.INT1) | |
#document results | |
Tobit_res.CESDxChS_cat <- tobit_apa(M.CESD_cat.INT1, "Child_Sexgirl:Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
#INT caseVScontrol | |
M.CESD_cat.INT2 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Depressive_Symptom_Severity + | |
Depressive_Symptom_Severity:caseVScontrol, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
summary(M.CESD_cat.INT2) | |
#document | |
Tobit_res.CESDxCaCo_cat <- tobit_apa(M.CESD_cat.INT2, "caseVScontrolcontrol:Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
## incl. prenatal covariates | |
M.CESD_cat.cov1 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
summary(M.CESD_cat.cov1) | |
#document results | |
res <- tobit_apa(M.CESD_cat.cov1, "Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
ASQ_total_results[7,2] <- res$estimate | |
ASQ_total_results[7,3] <- res$SE | |
ASQ_total_results[7,4] <- res$LL | |
ASQ_total_results[7,5] <- res$UL | |
ASQ_total_results[7,6] <- res$z | |
ASQ_total_results[7,7] <- res$p | |
## incl. postpartum covariates | |
M.CESD_cat.cov2 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_BAI_cent + | |
postpartum_Cesd_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
summary(M.CESD_cat.cov2) | |
##document results | |
res <- tobit_apa(M.CESD_cat.cov2, "Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
ASQ_total_results[8,2] <- res$estimate | |
ASQ_total_results[8,3] <- res$SE | |
ASQ_total_results[8,4] <- res$LL | |
ASQ_total_results[8,5] <- res$UL | |
ASQ_total_results[8,6] <- res$z | |
ASQ_total_results[8,7] <- res$p | |
## additive pre-post clinical depression #### | |
M.CESD_add <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD, | |
tobit(Upper = 300), | |
data = ASQ_df_final, | |
na.action = "na.exclude") | |
summary(M.CESD_add) | |
##document results | |
tobit_res.addD_pre <- tobit_apa(M.CESD_add, "Pre.Post_clinDpre_only") | |
tobit_res.addD_post <- tobit_apa(M.CESD_add, "Pre.Post_clinDpost_only") | |
tobit_res.addD_preANDpost <- tobit_apa(M.CESD_add, "Pre.Post_clinDpre_post") | |
M.CESD_add.vsPOST <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
relevel(Pre.Post_clinD, ref = "post_only"), | |
tobit(Upper = 300), | |
data = ASQ_df_final, | |
na.action = "na.exclude") | |
rownames(coef(summary(M.CESD_add.vsPOST))) | |
#results relative to post-only | |
tobit_res.addD_pre_post.VS.post_only <- tobit_apa(M.CESD_add.vsPOST, "relevel(Pre.Post_clinD, ref = \"post_only\")pre_post") | |
##test assumptions | |
ASQ_df_final$yhat <- fitted(M.CESD_add)[,1] | |
ASQ_df_final$rr <- resid(M.CESD_add, type = "response") | |
ASQ_df_final$rp <- resid(M.CESD_add, type = "pearson")[,1] | |
# par(mfcol = c(2, 3)) | |
# | |
# with(ASQ_df_final, { | |
# plot(yhat, rr, main = "Fitted vs Residuals") | |
# qqnorm(rr) | |
# plot(yhat, rp, main = "Fitted vs Pearson Residuals") | |
# qqnorm(rp) | |
# plot(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange, | |
# rp, main = "Actual vs Pearson Residuals") | |
# plot(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange, | |
# yhat, main = "Actual vs Fitted") | |
# }) | |
summary(M.CESD) | |
#Sex-specific effects | |
M.CESDINT_ChS_add1 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
M.CESDINT_ChS_add2 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
Pre.Post_clinD:Child_Sex, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
p <- pchisq(2 * (logLik(M.CESDINT_ChS_add1) - logLik(M.CESDINT_ChS_add2)), | |
df = 2, | |
lower.tail = FALSE) | |
Tobit_res.CESDxChS_add <- list(logLik(M.CESDINT_ChS_add1),logLik(M.CESDINT_ChS_add2), p) | |
#caseVScontrol | |
#without interaction | |
M.CESDINT_CaCo_add1 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Pre.Post_clinD, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
summary(M.CESDINT_CaCo_add1) | |
#with interaction | |
M.CESDINT_CaCo_add2 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Pre.Post_clinD + | |
Pre.Post_clinD:caseVScontrol, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
summary(M.CESDINT_CaCo_add2) | |
##document results | |
p <- pchisq(2 * (logLik(M.CESDINT_CaCo_add1) - logLik(M.CESDINT_CaCo_add2)), | |
df = 2, | |
lower.tail = FALSE) | |
Tobit_res.CESDxCaCo_add <- list(logLik(M.CESDINT_CaCo_add1),logLik(M.CESDINT_CaCo_add2), p) | |
### adding prenatal covariates | |
M.CESD.cov1_add <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
summary(M.CESD.cov1_add) | |
## adding the postnatal factors | |
M.CESD.cov2_add <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_BAI_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final) | |
summary(M.CESD.cov2_add) | |
################################################################################ | |
###### Logistic Regression on Neurodevelopmental delay #### | |
# assumptions #### | |
# new_ASQ.total <- na.omit(ASQ_df_final[,-c(4, 7:18,22)]) #first exclude the pregnancy-stage specific predictors | |
# # # Fit the logistic regression model | |
# model <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
# ChildAge_ASQ_months_allchildren_cent + | |
# Child_Sex + | |
# Cesd_qclosest_to_cortGW_pregMean_cent + | |
# BAI_qclosest_to_cortGW_pregMean_cent + | |
# PSQI_qclosest_to_cortGW_pregMean_cent + | |
# caseVScontrol + | |
# Maternal_Age_Years_cent + | |
# Maternal_Education + | |
# Parity + | |
# Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
# Weight_Gain_cent + | |
# Maternal_Hypertensive_Disorders_anyVSnone + | |
# Maternal_Diabetes_Disorders_anyVSnone + | |
# Maternal_Smoking_During_Pregnancy + | |
# Gestational_Age_Weeks_cent + | |
# Child_Birth_Weight_cent + | |
# postpartum_Cesd_cent + | |
# postpartum_BAI_cent, | |
# data = new_ASQ.total, | |
# family = binomial, | |
# na.action = "na.exclude") | |
# | |
# # Predict the probability (p) of diabete positivity | |
# probabilities <- predict(model, type = "response") | |
# # predicted.classes <- ifelse(probabilities > 0.3, "pos", "neg") | |
# # head(predicted.classes) | |
# # Select only numeric predictors | |
# mydata <- new_ASQ.total %>% | |
# dplyr::select_if(is.numeric) | |
# #mydata <- mydata[,-c(5:10)] | |
# predictors <- colnames(mydata) | |
# # Bind the logit and tidying the data for plot | |
# mydata <- mydata %>% | |
# mutate(logit = log(probabilities/(1-probabilities))) %>% | |
# gather(key = "predictors", value = "predictor.value", -logit) | |
# | |
# #create scatterplots | |
# ggplot(mydata, aes(logit, predictor.value))+ | |
# geom_point(size = 0.5, alpha = 0.5) + | |
# geom_smooth(method = "loess") + | |
# theme_bw() + | |
# facet_wrap(~predictors, scales = "free_y") | |
# | |
# ## Cook's distance | |
# plot(model, which = 4, id.n = 3) | |
# | |
# #influential cases | |
# # Extract model results | |
# #new_ASQ <- ASQ_df_final[,-c(10:14)] #first exclude the other outcome variables | |
# model.data <- augment(model, data = new_ASQ.total) %>% mutate(index = 1:n()) | |
# outliers <- model.data %>% top_n(3, .cooksd) #with with neurodevelopmental delay, high depression and anxiety (two controls, one case) | |
# | |
# #plot standardize residuals | |
# ggplot(model.data, aes(index, .std.resid)) + | |
# geom_point(aes(color = Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom), alpha = .5) + | |
# theme_bw() | |
# model.data %>% | |
# filter(abs(.std.resid) > 3) #no influential cases | |
# | |
# #multicollinearity | |
# car::vif(model) | |
## Continuous CES-D Models #### | |
#ASQ and prenatal Cesd | |
M1_total <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total) | |
res <- logit_apa(M1_total,"Cesd_qclosest_to_cortGW_pregMean_cent") | |
ASQ_total_results[2,8] <- res$estimate | |
ASQ_total_results[2,9] <- res$SE | |
ASQ_total_results[2,10] <- res$LL | |
ASQ_total_results[2,11] <- res$UL | |
ASQ_total_results[2,12] <- res$z | |
ASQ_total_results[2,13] <- res$p | |
#ASQ and BAI | |
M1_total_BAI <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
BAI_qclosest_to_cortGW_pregMean_cent, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total_BAI) | |
logit.res_BAI <- logit_apa(M1_total_BAI,"BAI_qclosest_to_cortGW_pregMean_cent") | |
#ASQ and PSQI | |
M1_total_PSQI <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
PSQI_qclosest_to_cortGW_pregMean_cent, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total_PSQI) | |
logit.res_PSQI <- logit_apa(M1_total_PSQI,"PSQI_qclosest_to_cortGW_pregMean_cent") | |
#ASQ and prenatal Cesd*child sex | |
M1_total.INT1 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
Cesd_qclosest_to_cortGW_pregMean_cent:Child_Sex, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total.INT1) | |
logit.res_CESDxChS <- logit_apa(M1_total.INT1,"Child_Sexgirl:Cesd_qclosest_to_cortGW_pregMean_cent") | |
#ASQ and prenatal Cesd*caseVScontrol | |
M1_total.INT2 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
Cesd_qclosest_to_cortGW_pregMean_cent:caseVScontrol, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total.INT2) | |
logit.res_CESDxCaCo <- logit_apa(M1_total.INT2,"caseVScontrolcontrol:Cesd_qclosest_to_cortGW_pregMean_cent") | |
#ASQ and prenatal Cesd + prenatal covariates | |
M2_total.cov <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M2_total.cov) | |
#document | |
res <- logit_apa(M2_total.cov,"Cesd_qclosest_to_cortGW_pregMean_cent") | |
ASQ_total_results[3,8] <- res$estimate | |
ASQ_total_results[3,9] <- res$SE | |
ASQ_total_results[3,10] <- res$LL | |
ASQ_total_results[3,11] <- res$UL | |
ASQ_total_results[3,12] <- res$z | |
ASQ_total_results[3,13] <- res$p | |
#ASQ and prenatal Cesd + postnatal covariates | |
M3_total.cov <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_BAI_cent + | |
postpartum_Cesd_cent, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M3_total.cov) | |
COV.logit_maternal_edu <- logit_apa(M3_total.cov, "Maternal_Educationuniversity") | |
COV.logit_birthW <- logit_apa(M3_total.cov, "Child_Birth_Weight_cent") | |
#document | |
res <- logit_apa(M3_total.cov,"Cesd_qclosest_to_cortGW_pregMean_cent") | |
ASQ_total_results[4,8] <- res$estimate | |
ASQ_total_results[4,9] <- res$SE | |
ASQ_total_results[4,10] <- res$LL | |
ASQ_total_results[4,11] <- res$UL | |
ASQ_total_results[4,12] <- res$z | |
ASQ_total_results[4,13] <- res$p | |
## Categorical CES-D Models ##### | |
# assumptions | |
# new_ASQ.total <- na.omit(ASQ_df_final[,-c(4, 7:18,22)]) | |
# # Fit the logistic regression model | |
# model <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
# ChildAge_ASQ_months_allchildren_cent + | |
# Child_Sex + | |
# Depressive_Symptom_Severity, | |
# data = new_ASQ.total, | |
# family = binomial, | |
# na.action = "na.exclude") | |
# | |
# ## Cook's distance | |
# plot(model, which = 4, id.n = 5) | |
# | |
# #influential cases | |
# # Extract model results | |
# #new_ASQ <- ASQ_df_final[,-c(10:14)] #first exclude the other outcome variables | |
# model.data <- augment(model, data = new_ASQ.total) %>% mutate(index = 1:n()) | |
# model.data %>% top_n(5, .cooksd) | |
# | |
# #plot standardize residuls | |
# ggplot(model.data, aes(index, .std.resid)) + | |
# geom_point(aes(color = Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom), alpha = .5) + | |
# theme_bw() | |
# model.data %>% | |
# filter(abs(.std.resid) > 3) #no influential cases | |
# | |
# #multicollinearity | |
# car::vif(model) | |
## models | |
M1_total_cat <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total_cat) | |
res <- logit_apa(M1_total_cat,"Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
ASQ_total_results[6,8] <- res$estimate | |
ASQ_total_results[6,9] <- res$SE | |
ASQ_total_results[6,10] <- res$LL | |
ASQ_total_results[6,11] <- res$UL | |
ASQ_total_results[6,12] <- res$z | |
ASQ_total_results[6,13] <- res$p | |
#ASQ and prenatal Cesd*child sex | |
M1_total_cat.INT1 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
Depressive_Symptom_Severity:Child_Sex, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total_cat.INT1) | |
logit.res_CESDxChS_cat <- logit_apa(M1_total_cat.INT1, "Child_Sexgirl:Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
#ASQ and prenatal Cesd*caseVScontrol | |
M1_total_cat.INT2 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Depressive_Symptom_Severity + | |
Depressive_Symptom_Severity:caseVScontrol, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total_cat.INT2) | |
logit.res_CESDxCaCo_cat <- logit_apa(M1_total_cat.INT2, "caseVScontrolcontrol:Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
#ASQ and prenatal Cesd + prenatal covariates | |
M2_total_cat.cov <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M2_total_cat.cov) | |
res <- logit_apa(M2_total_cat.cov,"Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
ASQ_total_results[7,8] <- res$estimate | |
ASQ_total_results[7,9] <- res$SE | |
ASQ_total_results[7,10] <- res$LL | |
ASQ_total_results[7,11] <- res$UL | |
ASQ_total_results[7,12] <- res$z | |
ASQ_total_results[7,13] <- res$p | |
#ASQ and prenatal Cesd + postnatal covariates | |
M3_total_cat.cov <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_Cesd_cent + | |
postpartum_BAI_cent, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M3_total_cat.cov) | |
res <- logit_apa(M3_total_cat.cov,"Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
ASQ_total_results[8,8] <- res$estimate | |
ASQ_total_results[8,9] <- res$SE | |
ASQ_total_results[8,10] <- res$LL | |
ASQ_total_results[8,11] <- res$UL | |
ASQ_total_results[8,12] <- res$z | |
ASQ_total_results[8,13] <- res$p | |
## Additive CES-D effects #### | |
## models | |
M1_total_cat_add <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total_cat_add ) | |
##document results | |
logit_res.addD_pre <- logit_apa(M1_total_cat_add, "Pre.Post_clinDpre_only") | |
logit_res.addD_post <- logit_apa(M1_total_cat_add, "Pre.Post_clinDpost_only") | |
logit_res.addD_preANDpost <- logit_apa(M1_total_cat_add, "Pre.Post_clinDpre_post") | |
M1_total_cat_add.vsPOST <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
relevel(Pre.Post_clinD, ref = "post_only"), | |
data = ASQ_df_final, | |
na.action = "na.exclude") | |
#results relative to post-only | |
logit_res.cat_addD_pre_post.VS.post_only <- logit_apa(M1_total_cat_add.vsPOST, "relevel(Pre.Post_clinD, ref = \"post_only\")pre_post") | |
#ASQ and prenatal Cesd*child sex | |
M1_total_cat.INT1_add1 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total_cat.INT1_add1) | |
M1_total_cat.INT1_add2 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
Pre.Post_clinD:Child_Sex, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total_cat.INT1_add2) | |
##document results | |
p <- pchisq(2 * (logLik(M1_total_cat.INT1_add1) - logLik(M1_total_cat.INT1_add2)), | |
df = 2, | |
lower.tail = FALSE) | |
Logit_res.CESDxChS_add <- list(logLik(M1_total_cat.INT1_add1),logLik(M1_total_cat.INT1_add2), p) | |
#ASQ and prenatal Cesd*caseVScontrol | |
M1_total_cat.INT2_add1 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Pre.Post_clinD, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total_cat.INT2_add1) | |
M1_total_cat.INT2_add2 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Pre.Post_clinD + | |
Pre.Post_clinD:caseVScontrol, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M1_total_cat.INT2_add2) | |
##document results | |
p <- pchisq(2 * (logLik(M1_total_cat.INT2_add1) - logLik(M1_total_cat.INT2_add2)), | |
df = 2, | |
lower.tail = FALSE) | |
Logit_res.CESDxCaCo_add <- list(logLik(M1_total_cat.INT2_add1),logLik(M1_total_cat.INT2_add2), p) | |
#ASQ and prenatal Cesd + prenatal covariates | |
M2_total_cat.cov_add <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M2_total_cat.cov_add) | |
#ASQ and prenatal Cesd + postnatal covariates | |
M3_total_cat.cov_add <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_Cesd_cent + | |
postpartum_BAI_cent, | |
data = ASQ_df_final, | |
family = "binomial") | |
summary(M3_total_cat.cov_add) | |
############################################################################### | |
# ## leave out this analysis??? additive effects of clinical depression #### | |
# #test this only in participants assessed at least twice during pregnancy | |
# # multiple_assessments_sub <- ASQ_df_final[ASQ_df_final$participantID %in% at_least_two_assessments & !is.na(ASQ_df_final$Cesd_qclosest_to_cortGW_pregMean_cent),] | |
# # multiple_assessments_sub$additive_clinD <- factor(multiple_assessments_sub$additive_clinD, | |
# # levels = c(0,1,2,3), | |
# # labels = c("never","once","multiple", "multiple")) | |
# # M.CESD_add <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
# # ChildAge_ASQ_months_allchildren_cent + | |
# # Child_Sex + | |
# # additive_clinD, | |
# # tobit(Upper = 300), | |
# # data = multiple_assessments_sub, | |
# # na.action = "na.exclude") | |
# # summary(M.CESD_add) | |
# # | |
# # ##document results | |
# # tobit_res.addD_once <- tobit_apa(M.CESD_add, "additive_clinDonce") | |
# # tobit_res.addD_multiple <- tobit_apa(M.CESD_add, "additive_clinDmultiple") | |
# # | |
# # ##test assumptions | |
# # multiple_assessments_sub$yhat <- fitted(M.CESD_add)[,1] | |
# # multiple_assessments_sub$rr <- resid(M.CESD_add, type = "response") | |
# # multiple_assessments_sub$rp <- resid(M.CESD_add, type = "pearson")[,1] | |
# # | |
# # par(mfcol = c(2, 3)) | |
# # | |
# # with(multiple_assessments_sub, { | |
# # plot(yhat, rr, main = "Fitted vs Residuals") | |
# # qqnorm(rr) | |
# # plot(yhat, rp, main = "Fitted vs Pearson Residuals") | |
# # qqnorm(rp) | |
# # plot(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange, | |
# # rp, main = "Actual vs Pearson Residuals") | |
# # plot(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange, | |
# # yhat, main = "Actual vs Fitted") | |
# # }) | |
# # summary(M.CESD) | |
# # | |
# # #Sex-specific effects | |
# # M.CESDINT_ChS_add <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
# # ChildAge_ASQ_months_allchildren_cent + | |
# # Child_Sex + | |
# # additive_clinD + | |
# # additive_clinD:Child_Sex, | |
# # tobit(Upper = 300), | |
# # data = multiple_assessments_sub) | |
# # summary(M.CESDINT_ChS_add) | |
# # | |
# # #caseVScontrol | |
# # M.CESDINT_CaCo_add <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
# # ChildAge_ASQ_months_allchildren_cent + | |
# # Child_Sex + | |
# # caseVScontrol + | |
# # additive_clinD + | |
# # additive_clinD:caseVScontrol, | |
# # tobit(Upper = 300), | |
# # data = multiple_assessments_sub) | |
# # summary(M.CESDINT_CaCo_add) | |
# # | |
# # ### adding prenatal covariates | |
# # M.CESD.cov1_add <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
# # ChildAge_ASQ_months_allchildren_cent + | |
# # Child_Sex + | |
# # additive_clinD + | |
# # #BAI_qclosest_to_cortGW_pregMean_cent + | |
# # #PSQI_qclosest_to_cortGW_pregMean_cent + | |
# # caseVScontrol + | |
# # Maternal_Age_Years_cent + | |
# # Maternal_Education + | |
# # Parity + | |
# # Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
# # Weight_Gain_cent + | |
# # Maternal_Hypertensive_Disorders_anyVSnone + | |
# # Maternal_Diabetes_Disorders_anyVSnone + | |
# # Maternal_Smoking_During_Pregnancy + | |
# # Gestational_Age_Weeks_cent + | |
# # Child_Birth_Weight_cent, | |
# # tobit(Upper = 300), | |
# # data = multiple_assessments_sub) | |
# # summary(M.CESD.cov1_add) | |
# # | |
# # ## adding the postnatal factors | |
# # M.CESD.cov2_add <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
# # ChildAge_ASQ_months_allchildren_cent + | |
# # Child_Sex + | |
# # additive_clinD + | |
# # #BAI_qclosest_to_cortGW_pregMean_cent + | |
# # #PSQI_qclosest_to_cortGW_pregMean_cent + | |
# # caseVScontrol + | |
# # Maternal_Age_Years_cent + | |
# # Maternal_Education + | |
# # Parity + | |
# # Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
# # Weight_Gain_cent + | |
# # Maternal_Hypertensive_Disorders_anyVSnone + | |
# # Maternal_Diabetes_Disorders_anyVSnone + | |
# # Maternal_Smoking_During_Pregnancy + | |
# # Gestational_Age_Weeks_cent + | |
# # Child_Birth_Weight_cent + | |
# # postpartum_Cesd_cent + | |
# # postpartum_BAI_cent, | |
# # tobit(Upper = 300), | |
# # data = multiple_assessments_sub) | |
# # summary(M.CESD.cov2_add) | |
# | |
# ## Additive CES-D effects #### | |
# multiple_assessments_sub <- ASQ_df_final[ASQ_df_final$participantID %in% at_least_two_assessments & !is.na(ASQ_df_final$Cesd_qclosest_to_cortGW_pregMean_cent),] | |
# multiple_assessments_sub$additive_clinD <- factor(multiple_assessments_sub$additive_clinD, | |
# levels = c(0,1,2,3), | |
# labels = c("never","once","multiple", "multiple")) | |
# ## models | |
# M1_total_cat_add <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
# ChildAge_ASQ_months_allchildren_cent + | |
# Child_Sex + | |
# additive_clinD, | |
# data = multiple_assessments_sub, | |
# #data = age_sub, | |
# family = "binomial") | |
# summary(M1_total_cat_add ) | |
# | |
# #ASQ and prenatal Cesd*child sex | |
# M1_total_cat.INT1_add <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
# ChildAge_ASQ_months_allchildren_cent + | |
# Child_Sex + | |
# additive_clinD + | |
# additive_clinD:Child_Sex, | |
# data = multiple_assessments_sub, | |
# family = "binomial") | |
# summary(M1_total_cat.INT1) | |
# | |
# #ASQ and prenatal Cesd*caseVScontrol | |
# M1_total_cat.INT2_add <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
# ChildAge_ASQ_months_allchildren_cent + | |
# Child_Sex + | |
# caseVScontrol + | |
# additive_clinD + | |
# additive_clinD:caseVScontrol, | |
# data = multiple_assessments_sub, | |
# family = "binomial") | |
# summary(M1_total_cat.INT2_add ) | |
# | |
# #ASQ and prenatal Cesd + prenatal covariates | |
# M2_total_cat.cov_add <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
# ChildAge_ASQ_months_allchildren_cent + | |
# Child_Sex + | |
# additive_clinD + | |
# caseVScontrol + | |
# Maternal_Age_Years_cent + | |
# Maternal_Education + | |
# Parity + | |
# Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
# Weight_Gain_cent + | |
# Maternal_Hypertensive_Disorders_anyVSnone + | |
# Maternal_Diabetes_Disorders_anyVSnone + | |
# Maternal_Smoking_During_Pregnancy + | |
# Gestational_Age_Weeks_cent + | |
# Child_Birth_Weight_cent, | |
# data = multiple_assessments_sub, | |
# family = "binomial") | |
# summary(M2_total_cat.cov_add ) | |
# | |
# #ASQ and prenatal Cesd + postnatal covariates | |
# M3_total_cat.cov_add <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
# ChildAge_ASQ_months_allchildren_cent + | |
# Child_Sex + | |
# additive_clinD + | |
# caseVScontrol + | |
# Maternal_Age_Years_cent + | |
# Maternal_Education + | |
# Parity + | |
# Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
# Weight_Gain_cent + | |
# Maternal_Hypertensive_Disorders_anyVSnone + | |
# Maternal_Diabetes_Disorders_anyVSnone + | |
# Maternal_Smoking_During_Pregnancy + | |
# Gestational_Age_Weeks_cent + | |
# Child_Birth_Weight_cent + | |
# postpartum_Cesd_cent + | |
# postpartum_BAI_cent, | |
# data = multiple_assessments_sub, | |
# family = "binomial") | |
# summary(M3_total_cat.cov_add) | |
##########################3 Sensitivity analysis ######################### | |
## Set up results table #### | |
Appen_ASQ_total_results <- setNames(data.frame(matrix(ncol = 13, nrow = 8)), | |
c("Maternal depressive symptoms", | |
"B", | |
"SE", | |
"LL", | |
"UL", | |
"z", | |
"p", | |
"OR", | |
"SE", | |
"LL", | |
"UL", | |
"z", | |
"p")) | |
Appen_ASQ_total_results[,1] <- c("Pregnancy mean CES-D score (n = ", | |
"Model 1", | |
"Model 2", | |
"Model 3", | |
"Pregnancy mean CES-D score >= 16", | |
"Model 1", | |
"Model 2", | |
"Model 3") | |
################################################################################ | |
#### Tobit on Pregnancy Averages #### | |
## CES-D #### | |
M.CESD <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub, | |
na.action = "na.exclude") | |
summary(M.CESD) | |
res <- tobit_apa(M.CESD, "Cesd_qclosest_to_cortGW_pregMean_cent") | |
Appen_ASQ_total_results[2,2] <- res$estimate | |
Appen_ASQ_total_results[2,3] <- res$SE | |
Appen_ASQ_total_results[2,4] <- res$LL | |
Appen_ASQ_total_results[2,5] <- res$UL | |
Appen_ASQ_total_results[2,6] <- res$z | |
Appen_ASQ_total_results[2,7] <- res$p | |
M.PSQI <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
PSQI_qclosest_to_cortGW_pregMean_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub, | |
na.action = "na.exclude") | |
summary(M.PSQI) | |
#document results | |
Appen_Tobit_res.PSQI <- tobit_apa(M.PSQI, "PSQI_qclosest_to_cortGW_pregMean_cent") | |
M.BAI <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
BAI_qclosest_to_cortGW_pregMean_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub, | |
na.action = "na.exclude") | |
summary(M.BAI) | |
#document results | |
Appen_Tobit_res.BAI <- tobit_apa(M.BAI, "BAI_qclosest_to_cortGW_pregMean_cent") | |
#Sex-specific effects | |
M.CESDINT_ChS <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
Cesd_qclosest_to_cortGW_pregMean_cent:Child_Sex, | |
tobit(Upper = 300), data = ASQ_df_final_sub) | |
summary(M.CESDINT_ChS) | |
#document results | |
Appen_Tobit_res.CESDxChS <- tobit_apa(M.CESDINT_ChS, "Child_Sexgirl:Cesd_qclosest_to_cortGW_pregMean_cent") | |
#caseVScontrol | |
M.CESDINT_CaCo <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
Cesd_qclosest_to_cortGW_pregMean_cent:caseVScontrol, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
summary(M.CESDINT_CaCo) | |
#document results | |
Appen_Tobit_res.CESDxCaCo <- tobit_apa(M.CESDINT_CaCo, "caseVScontrolcontrol:Cesd_qclosest_to_cortGW_pregMean_cent") | |
### adding prenatal covariates | |
M.CESD.cov1 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
tobit(Upper = 300), | |
na.action = "na.exclude", | |
data = ASQ_df_final_sub) | |
summary(M.CESD.cov1) | |
#document results | |
res <- tobit_apa(M.CESD.cov1, "Cesd_qclosest_to_cortGW_pregMean_cent") | |
Appen_ASQ_total_results[3,2] <- res$estimate | |
Appen_ASQ_total_results[3,3] <- res$SE | |
Appen_ASQ_total_results[3,4] <- res$LL | |
Appen_ASQ_total_results[3,5] <- res$UL | |
Appen_ASQ_total_results[3,6] <- res$z | |
Appen_ASQ_total_results[3,7] <- res$p | |
#total variance explained by tobit model | |
ASQ_df_final_sub$yhat <- fitted(M.CESD.cov1)[,1] | |
r <- cor(ASQ_df_final_sub$yhat, | |
ASQ_df_final_sub$Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange, | |
use = "pairwise.complete.obs") | |
Appen_Tobit_var.explained.prenat <- format(round(r^2,2)) | |
## adding the postnatal factors | |
M.CESD.cov2 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_Cesd_cent + | |
postpartum_BAI_cent, | |
tobit(Upper = 300), | |
na.action = "na.exclude", | |
data = ASQ_df_final_sub) | |
summary(M.CESD.cov2) | |
#document results | |
res <- tobit_apa(M.CESD.cov2, "Cesd_qclosest_to_cortGW_pregMean_cent") | |
Appen_ASQ_total_results[4,2] <- res$estimate | |
Appen_ASQ_total_results[4,3] <- res$SE | |
Appen_ASQ_total_results[4,4] <- res$LL | |
Appen_ASQ_total_results[4,5] <- res$UL | |
Appen_ASQ_total_results[4,6] <- res$z | |
Appen_ASQ_total_results[4,7] <- res$p | |
## also report sig. covariates | |
# COV.tobit_ChS <- tobit_apa(M.CESD.cov2, "Child_Sexgirl") | |
# COV.tobit_Diab <- tobit_apa(M.CESD.cov2, "Maternal_Diabetes_Disorders_anyVSnoneyes") | |
# COV.tobit_birthW <- tobit_apa(M.CESD.cov2, "Child_Birth_Weight_cent") | |
# COV.tobit_postD <- tobit_apa(M.CESD.cov2, "postpartum_Cesd_cent") | |
#total variance explained by tobit model | |
ASQ_df_final_sub$yhat <- fitted(M.CESD.cov2)[,1] | |
r <- cor(ASQ_df_final_sub$yhat, | |
ASQ_df_final_sub$Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange, | |
use = "pairwise.complete.obs") | |
Appen_Tobit_var.explained_post <- r^2 | |
## categorical depression #### | |
M.CESD_cat <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
summary(M.CESD_cat) | |
#document results | |
res <- tobit_apa(M.CESD_cat, "Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
Appen_ASQ_total_results[6,2] <- res$estimate | |
Appen_ASQ_total_results[6,3] <- res$SE | |
Appen_ASQ_total_results[6,4] <- res$LL | |
Appen_ASQ_total_results[6,5] <- res$UL | |
Appen_ASQ_total_results[6,6] <- res$z | |
Appen_ASQ_total_results[6,7] <- res$p | |
##INT childsex | |
M.CESD_cat.INT1 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
Depressive_Symptom_Severity:Child_Sex, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
summary(M.CESD_cat.INT1) | |
#document results | |
Appen_Tobit_res.CESDxChS_cat <- tobit_apa(M.CESD_cat.INT1, "Child_Sexgirl:Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
#INT caseVScontrol | |
M.CESD_cat.INT2 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Depressive_Symptom_Severity + | |
Depressive_Symptom_Severity:caseVScontrol, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
summary(M.CESD_cat.INT2) | |
#document | |
Appen_Tobit_res.CESDxCaCo_cat <- tobit_apa(M.CESD_cat.INT2, "caseVScontrolcontrol:Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
## incl. prenatal covariates | |
M.CESD_cat.cov1 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
summary(M.CESD_cat.cov1) | |
#document results | |
res <- tobit_apa(M.CESD_cat.cov1, "Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
Appen_ASQ_total_results[7,2] <- res$estimate | |
Appen_ASQ_total_results[7,3] <- res$SE | |
Appen_ASQ_total_results[7,4] <- res$LL | |
Appen_ASQ_total_results[7,5] <- res$UL | |
Appen_ASQ_total_results[7,6] <- res$z | |
Appen_ASQ_total_results[7,7] <- res$p | |
## incl. postpartum covariates | |
M.CESD_cat.cov2 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_BAI_cent + | |
postpartum_Cesd_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
summary(M.CESD_cat.cov2) | |
##document results | |
res <- tobit_apa(M.CESD_cat.cov2, "Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
Appen_ASQ_total_results[8,2] <- res$estimate | |
Appen_ASQ_total_results[8,3] <- res$SE | |
Appen_ASQ_total_results[8,4] <- res$LL | |
Appen_ASQ_total_results[8,5] <- res$UL | |
Appen_ASQ_total_results[8,6] <- res$z | |
Appen_ASQ_total_results[8,7] <- res$p | |
## additive pre-post clinical depression #### | |
M.CESD_add <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub, | |
na.action = "na.exclude") | |
summary(M.CESD_add) | |
##document results | |
Appen_tobit_res.addD_pre <- tobit_apa(M.CESD_add, "Pre.Post_clinDpre_only") | |
Appen_tobit_res.addD_post <- tobit_apa(M.CESD_add, "Pre.Post_clinDpost_only") | |
Appen_tobit_res.addD_preANDpost <- tobit_apa(M.CESD_add, "Pre.Post_clinDpre_post") | |
M.CESD_add.vsPOST <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
relevel(Pre.Post_clinD, ref = "post_only"), | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub, | |
na.action = "na.exclude") | |
rownames(coef(summary(M.CESD_add.vsPOST))) | |
#results relative to post-only | |
Appen_tobit_res.addD_pre_post.VS.post_only <- tobit_apa(M.CESD_add.vsPOST, "relevel(Pre.Post_clinD, ref = \"post_only\")pre_post") | |
summary(M.CESD) | |
#Sex-specific effects | |
M.CESDINT_ChS_add1 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
M.CESDINT_ChS_add2 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
Pre.Post_clinD:Child_Sex, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
p <- pchisq(2 * (logLik(M.CESDINT_ChS_add1) - logLik(M.CESDINT_ChS_add2)), | |
df = 2, | |
lower.tail = FALSE) | |
Appen_Tobit_res.CESDxChS_add <- list(logLik(M.CESDINT_ChS_add1),logLik(M.CESDINT_ChS_add2), p) | |
#caseVScontrol | |
#without interaction | |
M.CESDINT_CaCo_add1 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Pre.Post_clinD, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
summary(M.CESDINT_CaCo_add1) | |
#with interaction | |
M.CESDINT_CaCo_add2 <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Pre.Post_clinD + | |
Pre.Post_clinD:caseVScontrol, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
summary(M.CESDINT_CaCo_add2) | |
##document results | |
p <- pchisq(2 * (logLik(M.CESDINT_CaCo_add1) - logLik(M.CESDINT_CaCo_add2)), | |
df = 2, | |
lower.tail = FALSE) | |
Appen_Tobit_res.CESDxCaCo_add <- list(logLik(M.CESDINT_CaCo_add1),logLik(M.CESDINT_CaCo_add2), p) | |
### adding prenatal covariates | |
M.CESD.cov1_add <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
summary(M.CESD.cov1_add) | |
## adding the postnatal factors | |
M.CESD.cov2_add <- vglm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
#BAI_qclosest_to_cortGW_pregMean_cent + | |
#PSQI_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_BAI_cent, | |
tobit(Upper = 300), | |
data = ASQ_df_final_sub) | |
summary(M.CESD.cov2_add) | |
################################################################################ | |
###### Logistic Regression on Neurodevelopmental delay #### | |
## Continuous CES-D Models #### | |
#ASQ and prenatal Cesd | |
M1_total <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total) | |
res <- logit_apa(M1_total,"Cesd_qclosest_to_cortGW_pregMean_cent") | |
Appen_ASQ_total_results[2,8] <- res$estimate | |
Appen_ASQ_total_results[2,9] <- res$SE | |
Appen_ASQ_total_results[2,10] <- res$LL | |
Appen_ASQ_total_results[2,11] <- res$UL | |
Appen_ASQ_total_results[2,12] <- res$z | |
Appen_ASQ_total_results[2,13] <- res$p | |
#ASQ and BAI | |
M1_total_BAI <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
BAI_qclosest_to_cortGW_pregMean_cent, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total_BAI) | |
Appen_logit.res_BAI <- logit_apa(M1_total_BAI,"BAI_qclosest_to_cortGW_pregMean_cent") | |
#ASQ and PSQI | |
M1_total_PSQI <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
PSQI_qclosest_to_cortGW_pregMean_cent, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total_PSQI) | |
Appen_logit.res_PSQI <- logit_apa(M1_total_PSQI,"PSQI_qclosest_to_cortGW_pregMean_cent") | |
#ASQ and prenatal Cesd*child sex | |
M1_total.INT1 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
Cesd_qclosest_to_cortGW_pregMean_cent:Child_Sex, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total.INT1) | |
Appen_logit.res_CESDxChS <- logit_apa(M1_total.INT1,"Child_Sexgirl:Cesd_qclosest_to_cortGW_pregMean_cent") | |
#ASQ and prenatal Cesd*caseVScontrol | |
M1_total.INT2 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
Cesd_qclosest_to_cortGW_pregMean_cent:caseVScontrol, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total.INT2) | |
Appen_logit.res_CESDxCaCo <- logit_apa(M1_total.INT2,"caseVScontrolcontrol:Cesd_qclosest_to_cortGW_pregMean_cent") | |
#ASQ and prenatal Cesd + prenatal covariates | |
M2_total.cov <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M2_total.cov) | |
#document | |
res <- logit_apa(M2_total.cov,"Cesd_qclosest_to_cortGW_pregMean_cent") | |
Appen_ASQ_total_results[3,8] <- res$estimate | |
Appen_ASQ_total_results[3,9] <- res$SE | |
Appen_ASQ_total_results[3,10] <- res$LL | |
Appen_ASQ_total_results[3,11] <- res$UL | |
Appen_ASQ_total_results[3,12] <- res$z | |
Appen_ASQ_total_results[3,13] <- res$p | |
#ASQ and prenatal Cesd + postnatal covariates | |
M3_total.cov <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Cesd_qclosest_to_cortGW_pregMean_cent + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_BAI_cent + | |
postpartum_Cesd_cent, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M3_total.cov) | |
# COV.logit_maternal_edu <- logit_apa(M3_total.cov, "Maternal_Educationuniversity") | |
# COV.logit_birthW <- logit_apa(M3_total.cov, "Child_Birth_Weight_cent") | |
#document | |
res <- logit_apa(M3_total.cov,"Cesd_qclosest_to_cortGW_pregMean_cent") | |
Appen_ASQ_total_results[4,8] <- res$estimate | |
Appen_ASQ_total_results[4,9] <- res$SE | |
Appen_ASQ_total_results[4,10] <- res$LL | |
Appen_ASQ_total_results[4,11] <- res$UL | |
Appen_ASQ_total_results[4,12] <- res$z | |
Appen_ASQ_total_results[4,13] <- res$p | |
## Categorical CES-D Models ##### | |
# assumptions | |
# new_ASQ.total <- na.omit(ASQ_df_final[,-c(4, 7:18,22)]) | |
# # Fit the logistic regression model | |
# model <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
# ChildAge_ASQ_months_allchildren_cent + | |
# Child_Sex + | |
# Depressive_Symptom_Severity, | |
# data = new_ASQ.total, | |
# family = binomial, | |
# na.action = "na.exclude") | |
# | |
# ## Cook's distance | |
# plot(model, which = 4, id.n = 5) | |
# | |
# #influential cases | |
# # Extract model results | |
# #new_ASQ <- ASQ_df_final[,-c(10:14)] #first exclude the other outcome variables | |
# model.data <- augment(model, data = new_ASQ.total) %>% mutate(index = 1:n()) | |
# model.data %>% top_n(5, .cooksd) | |
# | |
# #plot standardize residuls | |
# ggplot(model.data, aes(index, .std.resid)) + | |
# geom_point(aes(color = Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom), alpha = .5) + | |
# theme_bw() | |
# model.data %>% | |
# filter(abs(.std.resid) > 3) #no influential cases | |
# | |
# #multicollinearity | |
# car::vif(model) | |
## models | |
M1_total_cat <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total_cat) | |
res <- logit_apa(M1_total_cat,"Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
Appen_ASQ_total_results[6,8] <- res$estimate | |
Appen_ASQ_total_results[6,9] <- res$SE | |
Appen_ASQ_total_results[6,10] <- res$LL | |
Appen_ASQ_total_results[6,11] <- res$UL | |
Appen_ASQ_total_results[6,12] <- res$z | |
Appen_ASQ_total_results[6,13] <- res$p | |
#ASQ and prenatal Cesd*child sex | |
M1_total_cat.INT1 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
Depressive_Symptom_Severity:Child_Sex, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total_cat.INT1) | |
Appen_logit.res_CESDxChS_cat <- logit_apa(M1_total_cat.INT1, "Child_Sexgirl:Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
#ASQ and prenatal Cesd*caseVScontrol | |
M1_total_cat.INT2 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Depressive_Symptom_Severity + | |
Depressive_Symptom_Severity:caseVScontrol, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total_cat.INT2) | |
Appen_logit.res_CESDxCaCo_cat <- logit_apa(M1_total_cat.INT2, "caseVScontrolcontrol:Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
#ASQ and prenatal Cesd + prenatal covariates | |
M2_total_cat.cov <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M2_total_cat.cov) | |
res <- logit_apa(M2_total_cat.cov,"Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
Appen_ASQ_total_results[7,8] <- res$estimate | |
Appen_ASQ_total_results[7,9] <- res$SE | |
Appen_ASQ_total_results[7,10] <- res$LL | |
Appen_ASQ_total_results[7,11] <- res$UL | |
Appen_ASQ_total_results[7,12] <- res$z | |
Appen_ASQ_total_results[7,13] <- res$p | |
#ASQ and prenatal Cesd + postnatal covariates | |
M3_total_cat.cov <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Depressive_Symptom_Severity + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_Cesd_cent + | |
postpartum_BAI_cent, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M3_total_cat.cov) | |
res <- logit_apa(M3_total_cat.cov,"Depressive_Symptom_SeverityClinical (CES-D >= 16)") | |
Appen_ASQ_total_results[8,8] <- res$estimate | |
Appen_ASQ_total_results[8,9] <- res$SE | |
Appen_ASQ_total_results[8,10] <- res$LL | |
Appen_ASQ_total_results[8,11] <- res$UL | |
Appen_ASQ_total_results[8,12] <- res$z | |
Appen_ASQ_total_results[8,13] <- res$p | |
## Additive CES-D effects #### | |
## models | |
M1_total_cat_add <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total_cat_add ) | |
##document results | |
Appen_logit_res.addD_pre <- logit_apa(M1_total_cat_add, "Pre.Post_clinDpre_only") | |
Appen_logit_res.addD_post <- logit_apa(M1_total_cat_add, "Pre.Post_clinDpost_only") | |
Appen_logit_res.addD_preANDpost <- logit_apa(M1_total_cat_add, "Pre.Post_clinDpre_post") | |
M1_total_cat_add.vsPOST <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
relevel(Pre.Post_clinD, ref = "post_only"), | |
data = ASQ_df_final_sub, | |
na.action = "na.exclude") | |
#results relative to post-only | |
Appen_logit_res.cat_addD_pre_post.VS.post_only <- logit_apa(M1_total_cat_add.vsPOST, "relevel(Pre.Post_clinD, ref = \"post_only\")pre_post") | |
#ASQ and prenatal Cesd*child sex | |
M1_total_cat.INT1_add1 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total_cat.INT1_add1) | |
M1_total_cat.INT1_add2 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
Pre.Post_clinD:Child_Sex, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total_cat.INT1_add2) | |
##document results | |
p <- pchisq(2 * (logLik(M1_total_cat.INT1_add1) - logLik(M1_total_cat.INT1_add2)), | |
df = 2, | |
lower.tail = FALSE) | |
Appen_Logit_res.CESDxChS_add <- list(logLik(M1_total_cat.INT1_add1),logLik(M1_total_cat.INT1_add2), p) | |
#ASQ and prenatal Cesd*caseVScontrol | |
M1_total_cat.INT2_add1 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Pre.Post_clinD, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total_cat.INT2_add1) | |
M1_total_cat.INT2_add2 <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
caseVScontrol + | |
Pre.Post_clinD + | |
Pre.Post_clinD:caseVScontrol, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M1_total_cat.INT2_add2) | |
##document results | |
p <- pchisq(2 * (logLik(M1_total_cat.INT2_add1) - logLik(M1_total_cat.INT2_add2)), | |
df = 2, | |
lower.tail = FALSE) | |
Appen_Logit_res.CESDxCaCo_add <- list(logLik(M1_total_cat.INT2_add1),logLik(M1_total_cat.INT2_add2), p) | |
#ASQ and prenatal Cesd + prenatal covariates | |
M2_total_cat.cov_add <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M2_total_cat.cov_add) | |
#ASQ and prenatal Cesd + postnatal covariates | |
M3_total_cat.cov_add <- glm(Child_ASQ_totaldevelopmentalmilestones_Infancy_Sum_finalagerange_norm_dichom ~ | |
ChildAge_ASQ_months_allchildren_cent + | |
Child_Sex + | |
Pre.Post_clinD + | |
caseVScontrol + | |
Maternal_Age_Years_cent + | |
Maternal_Education + | |
Parity + | |
Maternal_Body_Mass_Index_in_Early_Pregnancy_cent + | |
Weight_Gain_cent + | |
Maternal_Hypertensive_Disorders_anyVSnone + | |
Maternal_Diabetes_Disorders_anyVSnone + | |
Maternal_Smoking_During_Pregnancy + | |
Gestational_Age_Weeks_cent + | |
Child_Birth_Weight_cent + | |
postpartum_Cesd_cent + | |
postpartum_BAI_cent, | |
data = ASQ_df_final_sub, | |
family = "binomial") | |
summary(M3_total_cat.cov_add) |