Skip to content
Permalink
master
Switch branches/tags

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?
Go to file
 
 
Cannot retrieve contributors at this time
### 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)