library(xtable)
library(dplyr)
library(foreign)
library(png)
library(knitr)
library(dplyr)
library(kableExtra)
library(readr)
library(tidyverse)
library(summarytools)
library(data.table)
library(corrplot)
library(readxl)
VO2.HR.df <- readxl::read_excel("/Users/alyshagilmore/Downloads/restingstate_crew/CREATE_SUB_LIST/EPICC Data.xlsx", skip = 1, na = "<NA>")
VO2.HR.df<-VO2.HR.df[(VO2.HR.df$`Pre / Post`=="PRE"),]
VO2.HR.df<-VO2.HR.df<-VO2.HR.df[!(is.na(VO2.HR.df$`LAB ID`)),]
VO2.HR.df$Rest_HR<-VO2.HR.df$`REST HR`
VO2.HR.df$Rest.Sys<-VO2.HR.df$`REST SYST. BP`
VO2.HR.df$Rest.Dia<-VO2.HR.df$`REST DIAST. BP`
VO2.HR.df$Rest_MAP<- ((2*VO2.HR.df$Rest.Dia) +VO2.HR.df$Rest.Sys) / 3
VO2.HR.df <- VO2.HR.df %>% select(`LAB ID`,Rest_HR , Rest.Sys, Rest.Dia ,Rest_MAP)
VO2.HR.df$ID<-as.character(VO2.HR.df$`LAB ID`)
# Import VO2 data
VO2.df<-readxl::read_xlsx("/Users/alyshagilmore/Downloads/restingstate_crew/CREATE_SUB_LIST/EPICC Data.xlsx", sheet = "VO2 Data")
VO2.df$Session<-as.character(VO2.df$`Pre / Post`)
VO2.df$Session<-as.character(VO2.df$`Pre / Post`)
VO2.df<-VO2.df[(VO2.df$Session=="PRE"),]
VO2.df<-VO2.df[,-c(3:4)]
VO2.df<-VO2.df[complete.cases(VO2.df$`Pre / Post`),]
VO2.df$ID<-as.character(VO2.df$`LAB ID`)
# Define variables as numeric values (because R sometimes likes to make them character strings).
VO2.df$VO2_END_REASON_NOTES<-as.character(VO2.df$`TEST END REASONS`)
VO2.df$CRFrel<-as.numeric(VO2.df$`PEAK VO2/KG`)
VO2.df$CRFabs<-as.numeric(VO2.df$`PEAK VO2`)
VO2.df$BMI<-as.numeric(VO2.df$BMI)
VO2.df$WEIGHT_kg<-VO2.df$`WEIGHT (KG)`
VO2.df$ID<-as.character(VO2.df$`LAB ID`)
VO2.df$VO2_END_factor<-as.numeric(VO2.df$`TEST END REASON?`)
VO2.df$VO2_END_REASON<-as.factor(VO2.df$`TEST END REASON?`)
VO2.df$AP_VO2MAX<-as.numeric(VO2.df$`AGE PERCENTILE OF VO2 MAX`)
VO2.df$VO2_END_REASON <- factor(VO2.df$VO2_END_REASON,
levels = c(1 ,2 ,3 , 4 ,5 , 6 ),
labels = c("Achieved HR Goal","Subject Quit", "Safety Concern", "Equipment Malfunction",
"Beta-Blocked- Reached RPE Goal",
"Other"))
VO2.df$BetaBlocker<-(grepl(VO2.df$VO2_END_REASON_NOTES, pattern = "beta", ignore.case = TRUE))
VO2.df$BetaBlocker<-if_else(VO2.df$BetaBlocker==TRUE, 1,0)
TEXT1<-c("Beta-Blocked- Achieved HR goal")
VO2_END_REASON_char<-as.character(VO2.df$VO2_END_REASON)
VO2.df$VO2_END_REASON<-if_else((VO2.df$BetaBlocker==1 & VO2.df$VO2_END_REASON=="Achieved HR Goal"), TEXT1, VO2_END_REASON_char)
VO2.df$VO2_END_REASON<-as.factor(VO2.df$VO2_END_REASON)
VO2.df$BetaBlocker<-as.factor(VO2.df$BetaBlocker)
VO2.df<-left_join(VO2.HR.df, VO2.df )
VO2.df$RESTING_HR<-VO2.df$`REST HR`
VO2.df$BetaBlocker<-ifelse(VO2.df$BetaBlocker==1, "YES", "NO")
VO2.df$BetaBlocker<-as.factor(VO2.df$BetaBlocker)
VO2.df<-VO2.df %>% select(ID, AGE, BetaBlocker, WEIGHT_kg, BMI , CRFrel, Rest_HR,Rest.Sys, Rest.Dia, Rest_MAP,VO2_END_REASON, CRFabs)
VO2.df<-VO2.df[!(VO2.df$AGE<30),]
VO2.df<-VO2.df[!(VO2.df$VO2_END_REASON=="Subject Quit"),]
#VO2.df<-VO2.df[!(VO2.df$VO2_END_REASON=="Other"),]
VO2.df$VO2_END_REASON<- droplevels(VO2.df$VO2_END_REASON)
print(dfSummary(VO2.df[,2:8], plain.ascii = TRUE,
justify="c", graph.magnif = .50, valid.col = TRUE, na.col = FALSE,
labels.col = TRUE,
varnumbers = FALSE, tmp.img.dir = "/tmp"),
method = 'render' )
# Import SPSS Database
EPIC_vars<-read.spss("/Users/alyshagilmore/Downloads/restingstate_crew/CREATE_SUB_LIST/merged EPICC data with 1024 &1069 & 674 & 7701 & 745.sav" , use.value.labels = TRUE, trim.factor.names = FALSE, to.data.frame = TRUE)
EPICC.MASTER<-EPIC_vars
EPIC_vars<-as.data.frame(EPIC_vars)
EPIC_vars$ncomorbidities<-as.numeric(EPIC_vars$ncomorbidities)
EPIC_vars$radiation_n<-EPIC_vars$SBD009
# Rename known variables for exported sublist
EPIC_vars$ID<-as.character(EPIC_vars$ID)
EPIC_vars$Age<-EPIC_vars$BDH001
EPIC_vars$EDU<-EPIC_vars$BDH004 #Rename variables for exported sublist
EPIC_vars$Smoker<-EPIC_vars$SBD003 #Rename variables for exported sublist
EPIC_vars$Handedness<-EPIC_vars$BDH003
EPIC_vars$English_native<-EPIC_vars$BDH006
EPIC_vars$Handedness<-as.factor(EPIC_vars$Handedness)
EPIC_vars$ASA_Status<-EPIC_vars$POF009
EPIC_vars$ASA_Physical_Status<-as.numeric(EPIC_vars$POF009)
EPIC_vars$English_native<-EPIC_vars$BDH006
EPIC_vars$BDH010A<-as.numeric(EPIC_vars$BDH010A)
EPIC_vars$BDH010A<-if_else(EPIC_vars$BDH010A==1, "White", "Other")
EPIC_vars$BDH010B<-as.numeric(EPIC_vars$BDH010B)
EPIC_vars$BDH010B<-if_else(EPIC_vars$BDH010B==1, "AA", "Other")
EPIC_vars$FIRST.bilat.Hippo<-EPIC_vars$collapsed_hippocampus
EPIC_vars<-EPIC_vars[ , -which(names(EPIC_vars) %in% c("BMI"))] ## works as expected
Race.df<-EPIC_vars %>%
select(ID, BDH010B,BDH010A)
EPIC_vars$Race<-""
EPIC_vars$Race<-if_else(Race.df$BDH010B=="AA", "black", EPIC_vars$Race )
EPIC_vars$Race<-if_else(Race.df$BDH010A=="White", "white", EPIC_vars$Race )
EPIC_vars$Race<-as.factor(EPIC_vars$Race)
EPIC_vars$Race_10<-if_else(EPIC_vars$Race=="white", "1", "0")
rm(Race.df)
EPIC_vars$BDH003<-as.character(EPIC_vars$BDH003)
EPIC_vars$Handedness_10<- ifelse(EPIC_vars$BDH003=="Right", 1, EPIC_vars$BDH003)
EPIC_vars$Handedness_10<- ifelse(EPIC_vars$Handedness=="Left", 0, EPIC_vars$Handedness_10)
EPIC_vars$Handedness_10<- ifelse(EPIC_vars$Handedness=="Both", "Both", EPIC_vars$Handedness_10)
EPIC_vars$Smoker<-EPIC_vars$SBD003
EPIC_vars$Smoker_10<-if_else(EPIC_vars$SBD003=="Yes", "1", "0")
EPIC_vars$Smoker_10<-as.factor(EPIC_vars$Smoker_10)
DEMOS<-EPIC_vars %>% select(ID,Age,EDU,Race,Race_10, Handedness, Handedness_10,Smoker, Smoker_10, ncomorbidities,ASA_Status, ASA_Physical_Status,radiation_n)
EPIC_vars$ASA_Status<-factor(EPIC_vars$ASA_Status , levels=c(2,3),labels=c("ASA II" , "ASA III"))
#MAP
EPIC_vars$T1_Rest_MAP<- ((2*EPIC_vars$T1_Rest_Diast_BP) +EPIC_vars$T1_Rest_Syst_BP) / 3
# Clean up a few things T1
EPIC_vars$T1_Moderate_AVGhrs_perday<-as.numeric(EPIC_vars$T1_Moderate_AVG)
EPIC_vars$T1_Moderate_Total_hrs<-as.numeric(EPIC_vars$T1_Moderate_Total)
EPIC_vars$T1_ACC_weartime_hrs<-as.numeric(EPIC_vars$T1_Total_Hrs)
# Weekly minutes of MVPA
EPIC_vars$WeeklyMVPA_min <-EPIC_vars$T1_Moderate_Total*60
## Self-Reported Symptoms Scale
TRI_data<- EPIC_vars %>% select(ID, starts_with("tri_") )
TRI_data<- TRI_data %>% select(ID, ends_with("score") )
#table(complete.cases(TRI_data$tri_totscore))
#shapiro.test(TRI_data$tri_totscore)
EPIC_vars<-full_join(EPIC_vars,VO2.df, by="ID")
EPIC_vars<-EPIC_vars[!(EPIC_vars$VO2_END_REASON=="Subject Quit"),]
#EPIC_vars<-EPIC_vars[!(EPIC_vars$VO2_END_REASON=="Other"),]
EPIC_vars$BetaBlocker<-ifelse(EPIC_vars$BetaBlocker==1, "YES", "NO")
EPIC_vars$BetaBlocker<-as.factor(EPIC_vars$BetaBlocker)
EPIC_vars<-EPIC_vars[!(duplicated(EPIC_vars$ID)),]
EPIC_vars<-EPIC_vars[!(is.na(EPIC_vars$ID)),]
# Import FreeSurfer Volumetric Data:
ASEG<-read.delim("/Users/alyshagilmore/Downloads/restingstate_crew/FreeSurfer_Results_sub7001_to_7063/aseg_stats.txt")
x<-ASEG$Measure.volume
x<-as.character(x)
tmp<-strsplit(x, "_") #strsplit: splits a charachter string in a fixed spot. in this case at' '[space]
mat <- matrix(unlist(tmp), ncol=2, byrow=TRUE) #this breaks the char string into 2 sep columns.
df<-as.data.frame(mat) #make a data frame
df$ID<-as.character(df$V1) #make var ID
ASEG$ID<-df$ID
Brain_vols<-ASEG %>%
select(ID, EstimatedTotalIntraCranialVol, CSF, MaskVol,
BrainSegVol,BrainSegVolNotVentSurf,BrainSegVolNotVent,
SubCortGrayVol,
TotalGrayVol ,CorticalWhiteMatterVol, Brain.Stem,
Right.Hippocampus,Left.Hippocampus,
Left.Amygdala ,Right.Amygdala,
Right.Putamen,Left.Putamen,
Right.Caudate, Left.Caudate,
Right.Accumbens.area, Left.Accumbens.area,
Left.VentralDC, Right.VentralDC,
Left.Pallidum,Right.Pallidum,
Left.Thalamus.Proper,Right.Thalamus.Proper,
Left.Cerebellum.Cortex, Right.Cerebellum.Cortex,
Left.Cerebellum.White.Matter, Right.Cerebellum.White.Matter,
Right.vessel,Left.vessel,
Left.choroid.plexus,Right.choroid.plexus)
# Sum Total Volume
Brain_vols$TOT_HIPP_VOL<-Brain_vols$Left.Hippocampus+Brain_vols$Right.Hippocampus
Brain_vols$TOT_VentralDC<-Brain_vols$Left.VentralDC+Brain_vols$Right.VentralDC
Brain_vols$TOT_Amygdala<-Brain_vols$Left.Amygdala+Brain_vols$Left.Amygdala
Brain_vols$TOT_Accumbens<-Brain_vols$Left.Accumbens.area+Brain_vols$Right.Accumbens.area
Brain_vols$TOT_Thalamus.Proper<-Brain_vols$Left.Thalamus.Proper+Brain_vols$Right.Thalamus.Proper
Brain_vols$TOT_Pallidum<-Brain_vols$Left.Pallidum+Brain_vols$Right.Pallidum
Brain_vols$TOT_Caudate<-Brain_vols$Left.Caudate+Brain_vols$Right.Caudate
Brain_vols$TOT_Putamen<-Brain_vols$Left.Putamen+Brain_vols$Right.Putamen
## Merge it all together and write out (check-point)
EPIC_vars<-full_join(EPIC_vars, Brain_vols , by="ID")
#**CRF Relative GLM - Extract Z-Stat for % BOLD Change for each participant**
library(stringr)
DATA=EPIC_vars
setwd("/Users/alyshagilmore/Downloads/restingstate_crew/ROIoutput/1")
PSC<-list.files("/Users/alyshagilmore/Downloads/restingstate_crew/ROIoutput/1", pattern = glob2rx("*-psc.txt"))
i=1
for (i in PSC) {
featquery<-read.delim(i , sep = " ", header = FALSE)
colnames(featquery)<-c("SubID", "ROI_CLUSTER_NAME", "Type", "L_R" , "POS_NEG","meanZ", "medianZ", "maxZ", "X", "Y", "Z")
ROI_CLUSTER_NAME<-paste(as.character(featquery[2,2]), "PBC", sep = "_")
featquery[,1:11]<-lapply(featquery[,1:11], as.character)
featquery<-featquery %>%select(SubID, meanZ )
names(featquery)<-c("ID", ROI_CLUSTER_NAME)
featquery$ID <-as.character(featquery$ID)
featquery$ID<-str_sub(featquery$ID, 1, 4)
DATA <-left_join(DATA, featquery, by="ID")
}
Z<-list.files("/Users/alyshagilmore/Downloads/restingstate_crew/ROIoutput/1", pattern = glob2rx("*-zscr.txt"))
for (i in Z) {
featquery<-read.delim(i , sep = " ", header = FALSE)
colnames(featquery)<-c("ID", "ROI_CLUSTER_NAME", "Type", "L_R" , "POS_NEG","meanZ", "medianZ", "maxZ", "X", "Y", "Z")
featquery[,1:11]<-lapply(featquery[,1:11], as.character)
ROI_CLUSTER_NAME<-paste(as.character(featquery[2,2]), "Z", sep = "_")
featquery[,1:11]<-lapply(featquery[,1:11], as.character)
featquery<-featquery %>%select(ID, meanZ )
names(featquery)<-c("ID", ROI_CLUSTER_NAME)
featquery$ID <-as.character(featquery$ID)
featquery$ID<-str_sub(featquery$ID, 1, 4)
DATA <-left_join(DATA, featquery, by="ID")
}
DATA<-DATA[!(duplicated(DATA$ID)),]
DATA<-DATA[!(is.na(DATA$ID)),]
#**BMI GLM - Extract Z-Stat for % BOLD Change for each participant**
library(stringr)
setwd("/Users/alyshagilmore/Downloads/restingstate_crew/ROIoutput/2")
PSC<-list.files("/Users/alyshagilmore/Downloads/restingstate_crew/ROIoutput/2", pattern = glob2rx("*-psc.txt"))
i=1
for (i in PSC) {
featquery<-read.delim(i , sep = " ", header = FALSE)
colnames(featquery)<-c("SubID", "ROI_CLUSTER_NAME", "Type", "L_R" , "POS_NEG","meanZ", "medianZ", "maxZ", "X", "Y", "Z")
ROI_CLUSTER_NAME<-paste(as.character(featquery[2,2]), "PBC", sep = "_")
featquery[,1:11]<-lapply(featquery[,1:11], as.character)
featquery<-featquery %>%select(SubID, meanZ )
names(featquery)<-c("ID", ROI_CLUSTER_NAME)
featquery$ID <-as.character(featquery$ID)
featquery$ID<-str_sub(featquery$ID, 1, 4)
DATA <-left_join(DATA, featquery, by="ID")
}
Z<-list.files("/Users/alyshagilmore/Downloads/restingstate_crew/ROIoutput/2", pattern = glob2rx("*-zscr.txt"))
for (i in Z) {
featquery<-read.delim(i , sep = " ", header = FALSE)
colnames(featquery)<-c("ID", "ROI_CLUSTER_NAME", "Type", "L_R" , "POS_NEG","meanZ", "medianZ", "maxZ", "X", "Y", "Z")
featquery[,1:11]<-lapply(featquery[,1:11], as.character)
ROI_CLUSTER_NAME<-paste(as.character(featquery[2,2]), "Z", sep = "_")
featquery[,1:11]<-lapply(featquery[,1:11], as.character)
featquery<-featquery %>%select(ID, meanZ )
names(featquery)<-c("ID", ROI_CLUSTER_NAME)
featquery$ID <-as.character(featquery$ID)
featquery$ID<-str_sub(featquery$ID, 1, 4)
DATA <-left_join(DATA, featquery, by="ID")
}
DATA<-DATA[!(duplicated(DATA$ID)),]
MeanFD<-read.delim2("/Users/alyshagilmore/Downloads/restingstate_crew/meanFD.txt", header = F) #Not sure why, but R imports loads of duplicates in txt file.
MeanFD<-MeanFD[!duplicated(MeanFD),] # To remove duplicates
MeanFD<-data.frame(MeanFD) #as dataframe with 34 rows and no duplicates.
#view(MeanFD)
#Step 12b:** Next, we use a few commands to split the subject ids that we have (e.g., 7001_1) into subject ids that can be merged with other databases (i.e., 7001). Same as Step 7c
x<-MeanFD$MeanFD
x<-as.character(x)
tmp<-strsplit(x, " ") #strsplit: splits a charachter string in a fixed spot. in this case at' '[space]
mat <- matrix(unlist(tmp), ncol=2, byrow=TRUE) #this breaks the char string into 2 sep columns.
df<-as.data.frame(mat) #make a data frame
df$ID<-as.character(df$V1) #make var ID
df$meanFD<-as.character(df$V2) #make var session
MeanFD<-df %>% select(ID, meanFD) #extract ID & session only (e.i., ignore identical colummns V1 & V2)
rm(x, mat,tmp, df)
# Now again, but for '_1'
x<-MeanFD$ID
x<-as.character(x)
tmp<-strsplit(x, "_") #strsplit: splits a charachter string in a fixed spot. in this case at'_1'
mat <- matrix(unlist(tmp), ncol=2, byrow=TRUE) #this breaks the char string into 2 sep columns.
df<-as.data.frame(mat) #make a data frame
df$ID<-as.character(df$V1) #make var ID
df<-df %>% select(ID) #extract ID & session only (e.i., ignore identical colummns V1 & V2)
rm(mat,tmp)
MeanFD.df<-cbind(df, MeanFD) #bind/merge with orginal dataframe
MeanFD.df<-MeanFD.df[,-c(2)] # Remove duplicate col
# Step 12c:** Mean center MeanFD values, just in case we'll need them later. Same as Step 11b.
MeanFD.df$meanFD<-as.numeric(MeanFD.df$meanFD)
MeanFD.df$meanFD_mc<-scale(MeanFD.df$meanFD, scale = FALSE)
FULL_DATA<-left_join(DATA,MeanFD.df, by="ID")
FULL_DATA$SURF.bilat.Hippo<-FULL_DATA$TOT_HIPP_VOL
FULL_DATA$SURF.bilat.Hippo.eiv<-FULL_DATA$TOT_HIPP_VOL/DATA$EstimatedTotalIntraCranialVol
DATA<-FULL_DATA[complete.cases(FULL_DATA$meanFD),]
Constricted_DAT<-DATA
Background: Women with breast cancer may experience broad neurocognitive deficits that persist for years beyond treatment, particularly in measures of learning and memory, attention, and executive function. Prior research also shows that maladaptive changes in resting state functional connectivity (rsFC) in the hippocampus and dorsolateral prefrontal cortex (DLPFC) may underlie cognitive impairment in post-treatment breast cancer. Improvements in cardiorespiratory fitness have been associated with enhanced resting state functional connectivity and cognitive performance in healthy and patient populations. Thus, the aim of the present study was to examine the association between cardiorespiratory fitness, rsFC of the hippocampus and DLPFC, and memory, attention, and executive function among women diagnosed with breast cancer.
Aims: (1) Examine the relationship between cardiorespiratory fitness and rsFC of the hippocampus and DLPFC; (2) examine the relationship between rsFC of the hippocampus and DLPFC and cognitive performance (memory, attention, and executive function).
Hypotheses: (1) Cardiorespiratory fitness will be related to altered resting hippocampal and DLPFC functional connectivity with regions of the default mode and cognitive control networks; (2) rsFC of the hippocampus and DLPFC will be positively associated with cognitive performance in each domain (memory, attention, and executive function).
Methods: The sample included 34 postmenopausal women newly diagnosed with Stage II&IIIa breast cancer (age M=63.59±5.73) who were enrolled in a six-month randomized clinical trial of aerobic exercise. At baseline, prior to the start of the exercise program, participants completed a resting state functional MRI scan. Using the hippocampus as a seed, whole-brain functional connectivity analyses were performed to examine the relationship between cardiorespiratory fitness (VO2 Max, relative) and hippocampal connectivity at rest. Connectivity values from significant clusters were then extracted and correlated with composite scores of cognitive function within the domains of memory and executive function. Whole-brain models included age, education, and framewise displacement as covariates.
Fitness Testing Cardiorespiratory Fitness was measured in all participants via a submaximal graded exercise test which is often used in at-risk populations as a safer yet highly correlated (r > 0.80) alternative to a maximal VO2 test. Resting heart rate and resting blood pressure values were also obtained to ensure they were within a safe range to begin testing. Heart rate, blood pressure, respiratory gases and ratings of perceived exertion were continuously monitored during the test. The test was terminated when a participant reached 85% of her age-predicted maximal heart rate (220–age), a Borg rating of perceived exertion of 15 or greater in participants taking a beta blocker, or volitional exhaustion. Peak oxygen consumption was analyzed using a ParvoMedics metabolic cart.
Particpants were removed from the sample if..
1. They quit the fittness test prior to meeting one of the criteria listed above.
2. Equipment malfunction or safety concerns prevented fitness test completion.
For resting state connectivity glm models, VO2 Max was expressed in millilitres of oxygen per kilogram of body mass per minute (e.g., mL/(kg·min)).
| Achieved HR Goal (N=31) |
Beta-Blocked- Achieved HR goal (N=1) |
Beta-Blocked- Reached RPE Goal (N=1) |
Other (N=1) |
Overall (N=34) |
|
|---|---|---|---|---|---|
| AGE | |||||
| Mean (SD) | 63.8 (5.79) | 59.0 (NA) | 67.0 (NA) | 57.0 (NA) | 63.6 (5.73) |
| Median [Min, Max] | 64.0 [51.0, 76.0] | 59.0 [59.0, 59.0] | 67.0 [67.0, 67.0] | 57.0 [57.0, 57.0] | 64.0 [51.0, 76.0] |
| BMI_group | |||||
| normal | 4 (12.9%) | 0 (0%) | 0 (0%) | 1 (100%) | 5 (14.7%) |
| overweight | 8 (25.8%) | 1 (100%) | 1 (100%) | 0 (0%) | 10 (29.4%) |
| obese | 12 (38.7%) | 0 (0%) | 0 (0%) | 0 (0%) | 12 (35.3%) |
| severe obese | 7 (22.6%) | 0 (0%) | 0 (0%) | 0 (0%) | 7 (20.6%) |
| BMI | |||||
| Mean (SD) | 32.6 (6.41) | 26.2 (NA) | 26.5 (NA) | 20.2 (NA) | 31.8 (6.62) |
| Median [Min, Max] | 32.5 [21.4, 43.3] | 26.2 [26.2, 26.2] | 26.5 [26.5, 26.5] | 20.2 [20.2, 20.2] | 31.4 [20.2, 43.3] |
| Race | |||||
| black | 4 (12.9%) | 0 (0%) | 0 (0%) | 0 (0%) | 4 (11.8%) |
| white | 23 (74.2%) | 0 (0%) | 1 (100%) | 0 (0%) | 24 (70.6%) |
| Missing | 4 (12.9%) | 1 (100%) | 0 (0%) | 1 (100%) | 6 (17.6%) |
| EDU | |||||
| Mean (SD) | 15.7 (2.85) | NA (NA) | 18.0 (NA) | NA (NA) | 15.8 (2.83) |
| Median [Min, Max] | 16.0 [12.0, 23.0] | NA [NA, NA] | 18.0 [18.0, 18.0] | NA [NA, NA] | 16.0 [12.0, 23.0] |
| Missing | 4 (12.9%) | 1 (100%) | 0 (0%) | 1 (100%) | 6 (17.6%) |
| Smoker | |||||
| Yes | 1 (3.2%) | 0 (0%) | 0 (0%) | 0 (0%) | 1 (2.9%) |
| No | 30 (96.8%) | 1 (100%) | 1 (100%) | 1 (100%) | 33 (97.1%) |
| CRFrel | |||||
| Mean (SD) | 16.4 (2.37) | 18.3 (NA) | 20.2 (NA) | 24.0 (NA) | 16.8 (2.70) |
| Median [Min, Max] | 16.4 [11.4, 21.0] | 18.3 [18.3, 18.3] | 20.2 [20.2, 20.2] | 24.0 [24.0, 24.0] | 16.8 [11.4, 24.0] |
| Rest.Sys | |||||
| Mean (SD) | 138 (12.6) | 139 (NA) | 164 (NA) | 110 (NA) | 138 (13.7) |
| Median [Min, Max] | 137 [113, 165] | 139 [139, 139] | 164 [164, 164] | 110 [110, 110] | 138 [110, 165] |
| Rest.Dia | |||||
| Mean (SD) | 83.0 (9.02) | 87.0 (NA) | 92.0 (NA) | 67.0 (NA) | 82.9 (9.20) |
| Median [Min, Max] | 84.0 [59.0, 99.0] | 87.0 [87.0, 87.0] | 92.0 [92.0, 92.0] | 67.0 [67.0, 67.0] | 84.0 [59.0, 99.0] |
| Rest_MAP | |||||
| Mean (SD) | 101 (7.89) | 104 (NA) | 116 (NA) | 81.3 (NA) | 101 (8.69) |
| Median [Min, Max] | 102 [82.3, 115] | 104 [104, 104] | 116 [116, 116] | 81.3 [81.3, 81.3] | 102 [81.3, 116] |
| Rest_HR | |||||
| Mean (SD) | 73.1 (9.13) | 55.0 (NA) | 52.0 (NA) | 65.0 (NA) | 71.7 (9.96) |
| Median [Min, Max] | 74.0 [55.0, 97.0] | 55.0 [55.0, 55.0] | 52.0 [52.0, 52.0] | 65.0 [65.0, 65.0] | 74.0 [52.0, 97.0] |
| T1_Moderate_Total_hrs | |||||
| Mean (SD) | 4.22 (3.52) | NA (NA) | 1.68 (NA) | 2.67 (NA) | 4.08 (3.43) |
| Median [Min, Max] | 2.50 [0.730, 12.3] | NA [NA, NA] | 1.68 [1.68, 1.68] | 2.67 [2.67, 2.67] | 2.50 [0.730, 12.3] |
| Missing | 4 (12.9%) | 1 (100%) | 0 (0%) | 0 (0%) | 5 (14.7%) |
Cognitive Function Data:
* Verbal Memory Composite
* Mental Flexibility (formerly labeled Executive Function Composite [Version 1])
* Psychomotor Speed Composite
* Attention Composite
* Visual Memory Composite
* Executive Function Composite (Version 2) * Visual Working Memory Composite
* Concentration Composite (where both measured variables are reverse-scored)
| ASA II (N=25) |
ASA III (N=5) |
Overall (N=34) |
|
|---|---|---|---|
| AGE | |||
| Mean (SD) | 63.9 (5.70) | 62.8 (3.63) | 63.6 (5.73) |
| Median [Min, Max] | 65.0 [51.0, 74.0] | 64.0 [59.0, 67.0] | 64.0 [51.0, 76.0] |
| BMI | |||
| Mean (SD) | 31.7 (6.71) | 35.3 (6.39) | 31.8 (6.62) |
| Median [Min, Max] | 30.3 [21.4, 43.3] | 35.2 [26.2, 41.5] | 31.4 [20.2, 43.3] |
| Race | |||
| black | 4 (16.0%) | 0 (0%) | 4 (11.8%) |
| white | 18 (72.0%) | 4 (80.0%) | 24 (70.6%) |
| Missing | 3 (12.0%) | 1 (20.0%) | 6 (17.6%) |
| EDU | |||
| Mean (SD) | 16.0 (2.51) | 16.3 (4.50) | 15.8 (2.83) |
| Median [Min, Max] | 16.0 [12.0, 20.0] | 14.0 [14.0, 23.0] | 16.0 [12.0, 23.0] |
| Missing | 3 (12.0%) | 1 (20.0%) | 6 (17.6%) |
| Smoker | |||
| Yes | 1 (4.0%) | 0 (0%) | 1 (2.9%) |
| No | 24 (96.0%) | 5 (100%) | 33 (97.1%) |
| CRFrel | |||
| Mean (SD) | 16.5 (2.44) | 16.4 (2.61) | 16.8 (2.70) |
| Median [Min, Max] | 16.4 [11.4, 21.0] | 18.2 [13.3, 18.4] | 16.8 [11.4, 24.0] |
| verbalmemory | |||
| Mean (SD) | -0.183 (0.759) | 0.00763 (0.432) | -0.138 (0.697) |
| Median [Min, Max] | -0.0880 [-2.13, 0.846] | 0.178 [-0.625, 0.299] | 0.00151 [-2.13, 0.846] |
| Missing | 3 (12.0%) | 1 (20.0%) | 6 (17.6%) |
| executivefunctionv1 | |||
| Mean (SD) | -0.325 (0.797) | 0.125 (0.289) | -0.245 (0.774) |
| Median [Min, Max] | -0.199 [-1.86, 0.918] | 0.176 [-0.262, 0.411] | -0.0683 [-1.86, 0.918] |
| Missing | 3 (12.0%) | 1 (20.0%) | 6 (17.6%) |
| psychomotorspeed | |||
| Mean (SD) | 0.0816 (0.775) | 0.171 (0.271) | 0.109 (0.701) |
| Median [Min, Max] | 0.328 [-1.84, 0.933] | 0.150 [-0.129, 0.513] | 0.283 [-1.84, 0.933] |
| Missing | 3 (12.0%) | 1 (20.0%) | 6 (17.6%) |
| attention | |||
| Mean (SD) | -0.0557 (0.743) | -0.307 (1.01) | -0.130 (0.808) |
| Median [Min, Max] | 0.0255 [-1.35, 1.06] | -0.508 [-1.20, 0.988] | 0.00544 [-1.84, 1.06] |
| Missing | 4 (16.0%) | 1 (20.0%) | 6 (17.6%) |
| visualmemory | |||
| Mean (SD) | 0.291 (0.767) | 0.281 (1.07) | 0.178 (0.995) |
| Median [Min, Max] | 0.508 [-1.96, 0.932] | 0.741 [-1.31, 0.954] | 0.528 [-3.17, 0.954] |
| Missing | 3 (12.0%) | 1 (20.0%) | 5 (14.7%) |
| executivefunctionv2 | |||
| Mean (SD) | 0.00991 (0.674) | 0.0699 (0.563) | 0.0488 (0.626) |
| Median [Min, Max] | -0.0159 [-1.27, 1.69] | 0.0782 [-0.591, 0.714] | -0.000887 [-1.27, 1.69] |
| Missing | 3 (12.0%) | 1 (20.0%) | 5 (14.7%) |
| visualworkingmemory | |||
| Mean (SD) | 0.105 (0.682) | 0.399 (0.340) | 0.110 (0.694) |
| Median [Min, Max] | 0.000336 [-1.06, 1.26] | 0.358 [0.0494, 0.833] | 0.0156 [-1.10, 1.26] |
| Missing | 3 (12.0%) | 1 (20.0%) | 5 (14.7%) |
| concentrationv2 | |||
| Mean (SD) | 0.0281 (0.669) | -0.119 (0.278) | 0.0233 (0.606) |
| Median [Min, Max] | 0.189 [-2.05, 0.783] | -0.0467 [-0.493, 0.110] | 0.0588 [-2.05, 0.783] |
| Missing | 3 (12.0%) | 1 (20.0%) | 6 (17.6%) |
Resting State MRI
Preprocessing: After skull stripping, the structural image was spatially normalized to MNI space. All rsfMRI frames were aligned to correct for head motion during the scan, co-registered to each participant’s structural image, and spatially normalized to MNI space. The rsfMRI timecourses were then band-pass filtered (TBH) to attenuate respiration and other physiological noise. In addition, six affine transformation parameters from the alignment process, as well as the mean time courses from the brain parenchyma including white matter tissue and ventricles were included as covariates in order to further account for motion and physiological noise. The data were of high quality in this healthy young adult sample, and no subjects were eliminated due to excessive motion (mean framewise displacement ranged from 0.0425mm to 0.2187mm) or physiological noise. The residualized parameter estimate maps were converted to z scores (via Fishers r to z transform) to achieve normality and were entered into higher level analyses.
Seed Creation: For the functional connectivity and volumetric analysis of the hippocampus and control (caudate nucleus) seeds, we employed FMRIB’s Integrated Registration and Segmentation Tool (FIRST) in FMRIB’s Software Library (FSL) version 5.0. FIRST is a semi-automated model-based subcortical segmentation tool which uses a Bayesian framework from shape and appearance models obtained from manually segmented images from the Center for Morphometric Analysis, Massachusetts General Hospital, Boston, MA, USA (see Patenaude, Smith, Kennedy, & Jenkinson, 2011 for further description of this method). Briefly, FIRST runs a two-stage affine registration to a standard space template (MNI space) with 1mm resolution using 12 degrees of freedom and uses a subcortical mask to exclude voxels outside subcortical regions. Second, subcortical regions, including hippocampus, are segmented (both hemispheres separately). Manual volumetric region labels are parameterized as surface meshes and modeled as a point distribution model. For CRF related hippocampus connectivity, FIRST hippocampi metrics were collapsed across both hemipheres.
CRFrel was positively associated with resting hippocampal connectivity to a single cluster (657 voxels) encompassing regions in the prefrontal cortex (PFC) (Z-max=3.93, p=0.0345), including the left dorsolateral PFC, superior frontal gyrus (SFG), and Paracingulate Gyrus. Mean Hippocampal connectivity with this cluster was negatively related to BMI (r=-0.3047) and weight (kg) (r=-0.2928), but these relations were non-significant (p=0.07973, p=0.09278).
include_graphics("~/Downloads/restingstate_crew/SBM1/HIPP_FITT_thresh_zstat2.png")
─────────────────────────────────────────────────────────
Model 1 Model 2 Model 3
─────────────────────────────────────
(Intercept) 30.78 *** 43.68 *** 43.44 ***
(3.97) (3.62) (3.51)
AGE -0.20 ** -0.31 *** -0.31 ***
(0.06) (0.05) (0.05)
HandednessLeft 0.19 0.65 0.51
(0.77) (0.54) (0.53)
Racewhite -0.90 0.03 -0.01
(0.91) (0.64) (0.62)
C1Z2_CRF.full 0.43 *** 0.41 *** 0.72 **
(0.06) (0.04) (0.21)
EDU -0.06 -0.03
(0.08) (0.08)
BMI -0.18 *** -0.20 ***
(0.04) (0.04)
C1Z2_CRF.full:BMI -0.01
(0.01)
─────────────────────────────────────
N 28 28 28
R2 0.70 0.87 0.89
─────────────────────────────────────────────────────────
*** p < 0.001; ** p < 0.01; * p < 0.05.
Column names: names, Model 1, Model 2, Model 3
Call:
lm(formula = CRFrel ~ AGE + Handedness + EDU + Race + C1Z2_CRF.full *
BMI, data = DATA)
Residuals:
Min 1Q Median 3Q Max
-2.2012 -0.4078 -0.1214 0.5523 2.0557
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 43.436165 3.511663 12.369 7.95e-11 ***
AGE -0.305533 0.048092 -6.353 3.36e-06 ***
HandednessLeft 0.510790 0.531503 0.961 0.34801
EDU -0.029542 0.076815 -0.385 0.70461
Racewhite -0.014507 0.622579 -0.023 0.98164
C1Z2_CRF.full 0.717929 0.205285 3.497 0.00227 **
BMI -0.197379 0.039652 -4.978 7.23e-05 ***
C1Z2_CRF.full:BMI -0.008816 0.005803 -1.519 0.14439
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.9957 on 20 degrees of freedom
(6 observations deleted due to missingness)
Multiple R-squared: 0.8874, Adjusted R-squared: 0.8479
F-statistic: 22.51 on 7 and 20 DF, p-value: 3.562e-08
───────────────────────────────────────────────────────────────
Model 1 Model 2 Model 3
─────────────────────────────────────
(Intercept) 3.99 *** 2.00 *** 2.00 ***
(0.60) (0.39) (0.39)
AGE -0.04 *** -0.02 *** -0.02 ***
(0.01) (0.01) (0.01)
HandednessLeft 0.06 0.02 0.01
(0.12) (0.06) (0.06)
Racewhite 0.08 -0.03 -0.02
(0.14) (0.07) (0.07)
C1Z2_CRF.full 0.03 ** 0.04 *** 0.05 *
(0.01) (0.00) (0.02)
EDU -0.00 -0.00
(0.01) (0.01)
WEIGHT_kg 0.01 *** 0.01 ***
(0.00) (0.00)
C1Z2_CRF.full:WEIGHT_kg -0.00
(0.00)
─────────────────────────────────────
N 28 28 28
R2 0.50 0.88 0.88
───────────────────────────────────────────────────────────────
*** p < 0.001; ** p < 0.01; * p < 0.05.
Column names: names, Model 1, Model 2, Model 3
Call:
lm(formula = CRFabs ~ AGE + Handedness + EDU + Race + C1Z2_CRF.full *
WEIGHT_kg, data = DATA)
Residuals:
Min 1Q Median 3Q Max
-0.228134 -0.061163 0.002883 0.076281 0.209497
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.0014940 0.3918103 5.108 5.36e-05 ***
AGE -0.0236760 0.0053967 -4.387 0.000285 ***
HandednessLeft 0.0131254 0.0603752 0.217 0.830101
EDU -0.0006139 0.0091210 -0.067 0.947002
Racewhite -0.0244963 0.0719332 -0.341 0.736999
C1Z2_CRF.full 0.0531033 0.0218657 2.429 0.024711 *
WEIGHT_kg 0.0116801 0.0016966 6.884 1.09e-06 ***
C1Z2_CRF.full:WEIGHT_kg -0.0001826 0.0002312 -0.790 0.438770
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.1164 on 20 degrees of freedom
(6 observations deleted due to missingness)
Multiple R-squared: 0.8849, Adjusted R-squared: 0.8446
F-statistic: 21.96 on 7 and 20 DF, p-value: 4.406e-08
Call:
lm(formula = CRFrel ~ AGE + Handedness + EDU + Race + C1Z2_CRF.full *
BMI + FIRST.bilat.Hippo, data = DATA)
Residuals:
Min 1Q Median 3Q Max
-2.1719 -0.4586 -0.1527 0.5827 2.0442
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 42.5431806 3.9579684 10.749 1.62e-09 ***
AGE -0.3063697 0.0490102 -6.251 5.29e-06 ***
HandednessLeft 0.5545555 0.5477029 1.013 0.324015
EDU -0.0230270 0.0792117 -0.291 0.774428
Racewhite -0.1393124 0.6769204 -0.206 0.839134
C1Z2_CRF.full 0.7552643 0.2207736 3.421 0.002865 **
BMI -0.2069609 0.0442927 -4.673 0.000166 ***
FIRST.bilat.Hippo 0.0001759 0.0003337 0.527 0.604322
C1Z2_CRF.full:BMI -0.0095780 0.0060854 -1.574 0.132008
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.014 on 19 degrees of freedom
(6 observations deleted due to missingness)
Multiple R-squared: 0.889, Adjusted R-squared: 0.8422
F-statistic: 19.02 on 8 and 19 DF, p-value: 1.564e-07
[1] -1.184720 1.288213 -0.152571 -10.147438 -6.023160 0.388026 2.288412 3.420068 -4.861563 -10.313178
[11] -4.844495 -2.293315 -1.720767 2.275182 -0.222640 -3.446379 -4.512305 -0.467338 -3.236715 -1.969659
[21] -4.961824 3.044665 -5.089193 -1.525088 0.275289 9.089527 1.978382 -2.502622 -9.571169 -5.840969
[31] -1.368142 5.087868 -6.347431 1.593831