Preface: You have to log into the Pitt network via Pulse Secure first, and then either use the terminal to access Zeus or a remote desktop program. You will need to mount 2 file-server dirs before running this script (/IGNITE_Imaging & /IGNITE_Admin). Use the go tab in the apple toolbar as you normally would to mount both directories on REHA.
Links:
* https://neurostars.org/t/mriqc-users-excluding-bold-data/4560
* https://cran.r-project.org/web/packages/ERSA/vignettes/ERSA.html
* https://nhsrcommunity.com/blog/animating-a-graph-over-time-in-shiny/
* https://indrajeetpatil.github.io/groupedstats/
* https://cran.rstudio.com/web/packages/kableExtra/vignettes/awesome_table_in_html.html
* https://escholarship.org/content/qt00d4q8cp/qt00d4q8cp.pdf?t=odeb86
(potenially useful)
HHQ <- read_csv("/Volumes/IGNITE_Admin/R_IGNITE/RedCap/HHQ/data/IGNITE_BS_Alc_Caff_Smoke_Medu_recoded_2022_10_9.csv")
HHQ$pre.rec<-paste0(HHQ$record_id, "MR1")
HHQ$post.rec<-paste0(HHQ$record_id, "MR2")
## IGNITE MRIQC Database (IGNITE_QC_Database.xlsx)
Withdrew <- readxl::read_excel("/Volumes/IGNITE_Admin/MRI QC/IGNITE_QC_Database.xlsx",
sheet = "Excluded or Withdrew from Study" ,
col_types = c("numeric", "text", "text",
"text", "text", "text", "date", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text"))
Withdrew<-Withdrew[complete.cases(Withdrew$Subjects),]
Withdrew$SubID<-Withdrew$Subjects
Withdrew<-Withdrew[complete.cases(Withdrew$Subjects),]
Withdrew$Session<-"MR1"
Withdrew$SubID_0<-paste(Withdrew$SubID,"0", sep = "_")
Withdrew$session_entry<-paste(Withdrew$SubID,Withdrew$Session ,"0", sep = "_")
Withdrew$MRI.Safety<-Withdrew$`MRI Safety Notes`
Withdrew$MR1_ScanNotes<-Withdrew$`Overall Scan Notes`
Withdrew$ScannerMR1<-Withdrew$`MRI Machine Used`
Withdrew$Date_MR1<-Withdrew$`Date of MRI Scan`
Withdrew$MR1_WeeklyReport<-Withdrew$`Has This Subject Been Included in a Weekly MRI Report?`
Withdrew$MR1.QC3<-Withdrew$`QC3 - VISUAL INSPECTIONS OF THE DATA`
Withdrew$MR1.QC4<-Withdrew$Notes...41
Withdrew$MR2_1<-Withdrew$`Notes and/or Reason for Withdrawl`
Withdrew_4_merge<-Withdrew %>%
select(SubID,Date_MR1, ScannerMR1, MR1_WeeklyReport, MR1_ScanNotes,MR1.QC3,MR1.QC4, MRI.Safety, MR2_1)
Withdrew_4_merge<-Withdrew_4_merge[complete.cases(Withdrew_4_merge$Date_MR1),]
Withdrew_4_merge$Date_MR1<-as.Date(Withdrew_4_merge$Date_MR1)
Withdrew$PET<-Withdrew$`PET Data on Server?`
Withdrew$AIM<-Withdrew$`AIM-IGNITE Notes`
KU_Withdran_Data<-Withdrew %>% filter(ScannerMR1=="Skyra") %>% select(Subjects,Date_MR1, ScannerMR1, MR1_WeeklyReport,`Notes and/or Reason for Withdrawl`)
PITT_P1_Withdrawn_Data<-Withdrew %>% filter(ScannerMR1=="Prisma 1") %>% select(Subjects,Date_MR1, ScannerMR1, MR1_WeeklyReport,`Notes and/or Reason for Withdrawl`)
PITT_P2_Withdrawn_Data<-Withdrew %>% filter(ScannerMR1=="Prisma 2") %>% select(Subjects,Date_MR1, ScannerMR1, MR1_WeeklyReport,`Notes and/or Reason for Withdrawl`)
BaselineMRI_0 <-Withdrew%>% filter(ScannerMR1=="n/a") %>% select(Subjects,Date_MR1, ScannerMR1, MR1_WeeklyReport,`Notes and/or Reason for Withdrawl`)
KU.Baseline.MRI_0<-BaselineMRI_0 %>%
filter(str_detect(BaselineMRI_0$Subjects, pattern = "20")==TRUE)
PITT.Baseline.MRI_0<-BaselineMRI_0 %>%
filter(str_detect(BaselineMRI_0$Subjects, pattern = "10")==TRUE)
NEU.Baseline.MRI_0<-BaselineMRI_0 %>%
filter(str_detect(BaselineMRI_0$Subjects, pattern = "30")==TRUE)
### PITT
IGNITE_PITT_QC_Database <- read_excel("/Volumes/IGNITE_Admin/MRI QC/IGNITE_QC_Database.xlsx",
sheet = "100_PITT",
col_types = c("text", "text", "text",
"text", "text", "date", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "numeric",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "date", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text"), skip = 1)
IGNITE_PITT_QC_Database$SubID<-IGNITE_PITT_QC_Database$Subject...2
IGNITE_PITT_QC_Database$ScannerMR1<-IGNITE_PITT_QC_Database$`Pitt MRI Machine Used:...3`
IGNITE_PITT_QC_Database$ScannerMR2<-IGNITE_PITT_QC_Database$`Pitt MRI Machine Used:...44`
IGNITE_PITT_QC_Database$MRI.Safety<-IGNITE_PITT_QC_Database$`Pitt Staff MRI Safety Notes`
IGNITE_PITT_QC_Database<-IGNITE_PITT_QC_Database[complete.cases(IGNITE_PITT_QC_Database$SubID),]
IGNITE_PITT_QC_Database$Date_MR1<-IGNITE_PITT_QC_Database$`Date of MRI Scan...6`
IGNITE_PITT_QC_Database$MR1_WeeklyReport<-IGNITE_PITT_QC_Database$`Has This Subject Been Included in a Weekly MRI Report?...8`
IGNITE_PITT_QC_Database$MR2_WeeklyReport<-IGNITE_PITT_QC_Database$`Has This Subject Been Included in a Weekly MRI Report?...49`
IGNITE_PITT_QC_Database$Date_MR2<-IGNITE_PITT_QC_Database$`Date of MRI Scan...47`
IGNITE_PITT_QC_Database$MR1_ScanNotes<-IGNITE_PITT_QC_Database$`Overall Scan Notes...9`
IGNITE_PITT_QC_Database$MR2_ScanNotes<-IGNITE_PITT_QC_Database$`Overall Scan Notes...50`
IGNITE_PITT_QC_Database$PET_1<-IGNITE_PITT_QC_Database$`PET Data on Server?...7`
IGNITE_PITT_QC_Database$PET_2<-IGNITE_PITT_QC_Database$`PET Data on Server?...48`
IGNITE_PITT_QC_Database$MR1.QC3<-IGNITE_PITT_QC_Database$Notes...31
IGNITE_PITT_QC_Database$MR1.QC4<-IGNITE_PITT_QC_Database$Notes...40
IGNITE_PITT_QC_Database$MR2.QC3<-IGNITE_PITT_QC_Database$Notes...66
IGNITE_PITT_QC_Database$MR2.QC4<-IGNITE_PITT_QC_Database$Notes...75
## PATCH TO MISS PET SCANS 9/22/20 - SubID gets added to MR2 column bc PET data uploaded, but has not had MR2 yet. PITT_POST_4_merge$MR2_1
IGNITE_PITT_QC_Database$MR2_1<-IGNITE_PITT_QC_Database$Subject...43
IGNITE_PITT_QC_Database$MR2_1<-as.character( IGNITE_PITT_QC_Database$MR2_1)
IGNITE_PITT_QC_Database$MR2_1<-ifelse(IGNITE_PITT_QC_Database$MR2_1=="n/a", "Lost to follow-Up", IGNITE_PITT_QC_Database$MR2_1)
## LOST TO FOLLOW-UP
MR2.Incomplete.df<-IGNITE_PITT_QC_Database %>% filter(IGNITE_PITT_QC_Database$MR2_1== "Lost to follow-Up")
N_PITT_LOST_MR2<-nrow(MR2.Incomplete.df)
IGNITE_PITT_QC_Database$MR2_1<-as.character(IGNITE_PITT_QC_Database$MR2_1)
IGNITE_PITT_QC_Database$MR2_1<-ifelse(is.na(IGNITE_PITT_QC_Database$MR2_1)==TRUE, "Upcoming", IGNITE_PITT_QC_Database$MR2_1)
IGNITE_PITT_QC_Database<-IGNITE_PITT_QC_Database[complete.cases(IGNITE_PITT_QC_Database$SubID),]
#PITT_POST_4_merge$SubID<-PITT_POST_4_merge$MR2_1
#PITT_POST_4_merge$SubID<-as.character(PITT_POST_4_merge$SubID)
### w. New WITH NEW VAR
PITT_PRE_4_merge<-IGNITE_PITT_QC_Database %>%
select(SubID,Date_MR1,ScannerMR1, MR1_WeeklyReport, MR1_ScanNotes,MR1.QC3,MR1.QC4,MRI.Safety, MR2_1)
PITT_PRE_4_merge$Date_MR1<-as.character(PITT_PRE_4_merge$Date_MR1)
PITT_PRE_4_merge<-PITT_PRE_4_merge[complete.cases(PITT_PRE_4_merge$SubID),]
PITT_POST_4_merge<-IGNITE_PITT_QC_Database %>%
select(SubID, Date_MR2, ScannerMR2, MR2_WeeklyReport, MR2_ScanNotes, MR2.QC3, MR2.QC4, MRI.Safety, MR2_1)
## PATCH TO MISS PET SCANS 9/22/20 - SubID gets added to MR2 column bc PET data uploaded, but has not had MR2 yet. PITT_POST_4_merge$MR2_1
P.MR2.Complete.df<-PITT_POST_4_merge %>% filter(!(PITT_POST_4_merge$SubID=="Upcoming" |(PITT_POST_4_merge$SubID=="Lost to follow-Up")))
P.Upcoming.df<-PITT_POST_4_merge %>% filter(PITT_POST_4_merge$SubID=="Upcoming")
N_Upcoming.df<-nrow(P.Upcoming.df)
### KU
IGNITE_KU_QC_Database <- read_excel("/Volumes/IGNITE_Admin/MRI QC/IGNITE_QC_Database.xlsx",
sheet = "200_KANSAS", col_names = TRUE, skip = 1,
col_types = c("text", "text", "text",
"date", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"numeric", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "date", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text"))
IGNITE_KU_QC_Database$SubID<-IGNITE_KU_QC_Database$Subjects...2
IGNITE_KU_QC_Database$MR1_WeeklyReport<-IGNITE_KU_QC_Database$`Has This Subject Been Included in a Weekly MRI Report?...6`
IGNITE_KU_QC_Database$MR2_WeeklyReport<-IGNITE_KU_QC_Database$`Has This Subject Been Included in a Weekly MRI Report?...42`
IGNITE_KU_QC_Database$MRI.Safety<-"Unknown"
IGNITE_KU_QC_Database<-IGNITE_KU_QC_Database[complete.cases(IGNITE_KU_QC_Database$SubID),]
IGNITE_KU_QC_Database$Date_MR2<-IGNITE_KU_QC_Database$`Date of MRI Scan...40`
IGNITE_KU_QC_Database$MR1_ScanNotes<-IGNITE_KU_QC_Database$`Overall Scan Notes...7`
IGNITE_KU_QC_Database$MR2_ScanNotes<-IGNITE_KU_QC_Database$`Overall Scan Notes...43`
#MRI
IGNITE_KU_QC_Database$Date_MR1<-IGNITE_KU_QC_Database$`Date of MRI Scan...4`
IGNITE_KU_QC_Database$Date_MR2<-IGNITE_KU_QC_Database$`Date of MRI Scan...40`
#PET
IGNITE_KU_QC_Database$PET_1<-IGNITE_KU_QC_Database$`PET Data on Server?...5`
IGNITE_KU_QC_Database$PET_1<-as.factor(IGNITE_KU_QC_Database$PET_1)
IGNITE_KU_QC_Database$PET_2<-IGNITE_KU_QC_Database$`PET Data on Server?...41`
IGNITE_KU_QC_Database$PET_2<-as.factor(IGNITE_KU_QC_Database$PET_2)
IGNITE_KU_QC_Database$ScannerMR1<-"Skyra"
IGNITE_KU_QC_Database$ScannerMR2<-"Skyra"
IGNITE_KU_QC_Database$MR1.QC3<-IGNITE_KU_QC_Database$Notes...27
IGNITE_KU_QC_Database$MR1.QC4<-IGNITE_KU_QC_Database$Notes...36
IGNITE_KU_QC_Database$MR2.QC3<-IGNITE_KU_QC_Database$Notes...59
IGNITE_KU_QC_Database$MR2.QC4<-IGNITE_KU_QC_Database$Notes...68
IGNITE_KU_QC_Database$MR2_1<-IGNITE_KU_QC_Database$Subjects...38
IGNITE_KU_QC_Database$MR2_1<-as.character(IGNITE_KU_QC_Database$MR2_1)
IGNITE_KU_QC_Database$MR2_1<-as.character(IGNITE_KU_QC_Database$MR2_1)
IGNITE_KU_QC_Database$MR2_1<-ifelse(is.na(IGNITE_KU_QC_Database$MR2_1)==TRUE, "Upcoming", IGNITE_KU_QC_Database$MR2_1)
########KU_4_merge
KU_PRE_4_merge<-IGNITE_KU_QC_Database %>%
select(SubID,Date_MR1, ScannerMR1, MR1_WeeklyReport, MR1_ScanNotes,MR1.QC3,MR1.QC4,MRI.Safety,MR2_1 )
KU_PRE_4_merge$Date_MR1<-as.character(KU_PRE_4_merge$Date_MR1)
KU_POST_4_merge<-IGNITE_KU_QC_Database %>%
select(SubID, Date_MR2,ScannerMR2, MR2_WeeklyReport, MR2_ScanNotes ,MR2.QC3, MR2.QC4, MRI.Safety, MR2_1)
KU_POST_4_merge$Date_MR2<-as.character(KU_POST_4_merge$Date_MR2)
K.MR2.Complete.df<-KU_POST_4_merge %>% filter(!(KU_POST_4_merge$SubID=="Upcoming" |(KU_POST_4_merge$SubID=="Lost to follow-Up")))
K.Upcoming.df<-KU_POST_4_merge %>% filter(KU_POST_4_merge$SubID=="Upcoming")
IGNITE_NEU_QC_Database <- read_excel("/Volumes/IGNITE_Admin/MRI QC/IGNITE_QC_Database.xlsx",
sheet = "300_NEU", col_types = c("text",
"text", "text", "date", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "date", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text", "text","text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text",
"text", "text", "text", "text", "text"), skip = 1)
IGNITE_NEU_QC_Database$SubID<-IGNITE_NEU_QC_Database$Subjects...2
IGNITE_NEU_QC_Database$ScannerMR1<-"Prisma 3"
IGNITE_NEU_QC_Database$ScannerMR2<-"Prisma 3"
IGNITE_NEU_QC_Database$MRI.Safety<-"Unknown"
IGNITE_NEU_QC_Database$SubID<-IGNITE_NEU_QC_Database$Subjects...2
IGNITE_NEU_QC_Database$Date_MR1<-IGNITE_NEU_QC_Database$`Date of MRI Scan...4`
IGNITE_NEU_QC_Database$MR1_WeeklyReport<-IGNITE_NEU_QC_Database$`Has This Subject Been Included in a Weekly MRI Report?...6`
IGNITE_NEU_QC_Database$MR2_WeeklyReport<-IGNITE_NEU_QC_Database$`Has This Subject Been Included in a Weekly MRI Report?...42`
IGNITE_NEU_QC_Database$Date_MR2<-IGNITE_NEU_QC_Database$`Date of MRI Scan...40`
IGNITE_NEU_QC_Database$MR1_ScanNotes<-IGNITE_NEU_QC_Database$Notes...7
IGNITE_NEU_QC_Database$MR2_ScanNotes<-IGNITE_NEU_QC_Database$Notes...43
IGNITE_NEU_QC_Database$MR1.QC3<-IGNITE_NEU_QC_Database$Notes...27
IGNITE_NEU_QC_Database$MR1.QC4<-IGNITE_NEU_QC_Database$Notes...36
IGNITE_NEU_QC_Database$MR2.QC3<-IGNITE_NEU_QC_Database$Notes...59
IGNITE_NEU_QC_Database$MR2.QC4<-IGNITE_NEU_QC_Database$Notes...68
IGNITE_NEU_QC_Database$MR2_1<-as.character(IGNITE_NEU_QC_Database$SubID)
NEU_PRE_4_merge<-IGNITE_NEU_QC_Database %>%
select(SubID,Date_MR1, ScannerMR1, MR1_WeeklyReport, MR1_ScanNotes,MR1.QC3,MR1.QC4,MRI.Safety, MR2_1)
NEU_PRE_4_merge$Date_MR1<-as.character(NEU_PRE_4_merge$Date_MR1)
NEU_PRE_4_merge<-NEU_PRE_4_merge[complete.cases(NEU_PRE_4_merge$SubID),]
NEU_POST_4_merge<-IGNITE_NEU_QC_Database %>%
select(SubID, Date_MR2,ScannerMR2, MR2_WeeklyReport, MR2_ScanNotes, MR2.QC3, MR2.QC4 ,MRI.Safety, MR2_1)
NEU_POST_4_merge$Date_MR2<-as.character(NEU_POST_4_merge$Date_MR2)
NEU_POST_4_merge<-NEU_POST_4_merge[complete.cases(NEU_POST_4_merge$SubID),]
NEU_POST_4_merge$Date_MR2<-as.character(NEU_POST_4_merge$Date_MR2)
NEU_POST_4_merge$MR2_1<-as.character( NEU_POST_4_merge$MR2_1)
NEU_POST_4_merge$MR2_1<-ifelse(is.na(NEU_POST_4_merge$MR2_1)==TRUE, "Upcoming", NEU_POST_4_merge$MR2_1)
PRE_ALL_SITES_QC_DATABASE<-rbind(PITT_PRE_4_merge , KU_PRE_4_merge, NEU_PRE_4_merge, Withdrew_4_merge)
PRE_ALL_SITES_QC_DATABASE$SubID<-as.numeric(PRE_ALL_SITES_QC_DATABASE$SubID)
PRE_ALL_SITES_QC_DATABASE$Site<-ifelse(PRE_ALL_SITES_QC_DATABASE$SubID >= 1 & PRE_ALL_SITES_QC_DATABASE$SubID < 20000, "UPitt","OTHER" )
PRE_ALL_SITES_QC_DATABASE$Site<-ifelse(PRE_ALL_SITES_QC_DATABASE$SubID >= 20000 & PRE_ALL_SITES_QC_DATABASE$SubID < 30000, "Kansas", PRE_ALL_SITES_QC_DATABASE$Site )
PRE_ALL_SITES_QC_DATABASE$Site<-ifelse(PRE_ALL_SITES_QC_DATABASE$SubID >= 30000 & PRE_ALL_SITES_QC_DATABASE$SubID < 90000, "Northeastern", PRE_ALL_SITES_QC_DATABASE$Site )
PRE_ALL_SITES_QC_DATABASE$Site<-as.factor(PRE_ALL_SITES_QC_DATABASE$Site)
POST_ALL_SITES_QC_DATABSE<-rbind(PITT_POST_4_merge, KU_POST_4_merge, NEU_POST_4_merge)
POST_ALL_SITES_QC_DATABSE$SubID<-as.numeric(POST_ALL_SITES_QC_DATABSE$SubID)
POST_ALL_SITES_QC_DATABSE$Site<-ifelse(POST_ALL_SITES_QC_DATABSE$SubID >= 1 & POST_ALL_SITES_QC_DATABSE$SubID < 20000, "UPitt","OTHER" )
POST_ALL_SITES_QC_DATABSE$Site<-ifelse(POST_ALL_SITES_QC_DATABSE$SubID >= 20000 & POST_ALL_SITES_QC_DATABSE$SubID < 30000, "Kansas", POST_ALL_SITES_QC_DATABSE$Site )
POST_ALL_SITES_QC_DATABSE$Site<-ifelse(POST_ALL_SITES_QC_DATABSE$SubID >= 30000 & POST_ALL_SITES_QC_DATABSE$SubID < 90000, "Northeastern", POST_ALL_SITES_QC_DATABSE$Site )
PRE_ALL_SITES_QC_DATABASE<-PRE_ALL_SITES_QC_DATABASE[complete.cases(PRE_ALL_SITES_QC_DATABASE$Date_MR1),]
PRE_ALL_SITES_QC_DATABASE$Session<-"MR1"
PRE_ALL_SITES_QC_DATABASE$Date<-PRE_ALL_SITES_QC_DATABASE$Date_MR1
PRE_ALL_SITES_QC_DATABASE$WeeklyReport<-PRE_ALL_SITES_QC_DATABASE$MR1_WeeklyReport
PRE_ALL_SITES_QC_DATABASE$ScanNotes<-PRE_ALL_SITES_QC_DATABASE$MR1_ScanNotes
PRE_ALL_SITES_QC_DATABASE$Scanner<-PRE_ALL_SITES_QC_DATABASE$ScannerMR1
PRE_ALL_SITES_QC_DATABASE$Site<-as.factor(PRE_ALL_SITES_QC_DATABASE$Site)
PRE_ALL_SITES_QC_DATABASE$Session<-as.factor(PRE_ALL_SITES_QC_DATABASE$Session)
PRE_ALL_SITES_QC_DATABASE$QC3<-PRE_ALL_SITES_QC_DATABASE$MR1.QC3
PRE_ALL_SITES_QC_DATABASE$QC4<-PRE_ALL_SITES_QC_DATABASE$MR1.QC4
PRE_ALL_SITES_QC_DATABASE$session_entry<-paste(PRE_ALL_SITES_QC_DATABASE$SubID, PRE_ALL_SITES_QC_DATABASE$Session, sep = "_")
PRE_ALL_SITES_QC_DATABASE<-PRE_ALL_SITES_QC_DATABASE %>% select(session_entry, Site, SubID, Session, Scanner, Date, WeeklyReport,ScanNotes, QC3, QC4, MRI.Safety)
POST_ALL_SITES_QC_DATABASE<-POST_ALL_SITES_QC_DATABSE[complete.cases(POST_ALL_SITES_QC_DATABSE$Date_MR2),]
POST_ALL_SITES_QC_DATABASE$Session<-"MR2"
POST_ALL_SITES_QC_DATABASE$Date<-POST_ALL_SITES_QC_DATABASE$Date_MR2
POST_ALL_SITES_QC_DATABASE$WeeklyReport<-POST_ALL_SITES_QC_DATABASE$MR2_WeeklyReport
POST_ALL_SITES_QC_DATABASE$ScanNotes<-POST_ALL_SITES_QC_DATABASE$MR2_ScanNotes
POST_ALL_SITES_QC_DATABASE$Session<-POST_ALL_SITES_QC_DATABASE$Session
POST_ALL_SITES_QC_DATABASE$Scanner<-POST_ALL_SITES_QC_DATABASE$ScannerMR2
POST_ALL_SITES_QC_DATABASE$Site<-POST_ALL_SITES_QC_DATABASE$Site
POST_ALL_SITES_QC_DATABASE$QC3<-POST_ALL_SITES_QC_DATABASE$MR2.QC3
POST_ALL_SITES_QC_DATABASE$QC4<-POST_ALL_SITES_QC_DATABASE$MR2.QC4
POST_ALL_SITES_QC_DATABASE$session_entry<-paste(POST_ALL_SITES_QC_DATABASE$SubID, POST_ALL_SITES_QC_DATABASE$Session, sep = "_")
POST_ALL_SITES_QC_DATABASE<-POST_ALL_SITES_QC_DATABASE %>% select(session_entry, Site, SubID, Session, Scanner, Date,WeeklyReport,ScanNotes, QC3, QC4, MRI.Safety)
PRE_ALL_SITES_QC_DATABASE$Date<-as.Date(PRE_ALL_SITES_QC_DATABASE$Date)
POST_ALL_SITES_QC_DATABASE$Date<-as.Date(POST_ALL_SITES_QC_DATABASE$Date)
MRIQC_Admin.df<-plyr::rbind.fill(PRE_ALL_SITES_QC_DATABASE, POST_ALL_SITES_QC_DATABASE)
MRIQC_Admin.df<-arrange(MRIQC_Admin.df,Date)
# Session LINKER
MRIQC_Admin.df$SubID<-as.character(MRIQC_Admin.df$SubID)
MRIQC_Admin.df$Session<-as.character(MRIQC_Admin.df$Session)
MRIQC_Admin.df$session_entry<-paste(MRIQC_Admin.df$SubID, MRIQC_Admin.df$Session, sep = "")
MRIQC_Admin.df$SubID<-na_if(MRIQC_Admin.df$SubID,"")
MRIQC_Admin.df$Site<-if_else(str_starts(MRIQC_Admin.df$SubID,"1"),"UPitt", MRIQC_Admin.df$Site)
MRIQC_Admin.df$Site<-if_else(str_starts(MRIQC_Admin.df$SubID,"2"),"Kansas", MRIQC_Admin.df$Site)
MRIQC_Admin.df$Site<-if_else(str_starts(MRIQC_Admin.df$SubID,"3"),"Northeastern", MRIQC_Admin.df$Site)
MRIQC_Admin.df$Scanner<-if_else(str_starts(MRIQC_Admin.df$SubID, "3")|MRIQC_Admin.df$Site=="Northeastern", "NE Prisma",MRIQC_Admin.df$Scanner)
MRIQC_Admin.df$Scanner<-if_else(str_starts(MRIQC_Admin.df$SubID, "2")|MRIQC_Admin.df$Site=="Kansas", "Skyra",MRIQC_Admin.df$Scanner)
# Time-Series Data: MONTHS/QUARTERS
MRIQC_Admin.df$Date<-as.Date.factor(MRIQC_Admin.df$Date)
MRIQC_Admin.df$Month<-format(as.Date(MRIQC_Admin.df$Date), "%b %Y")
MRIQC_Admin.df$Scanner<-str_replace(MRIQC_Admin.df$Scanner,"`","")
MRIQC_Admin.df<-MRIQC_Admin.df %>% filter(SubID %in% HHQ$record_id)
MRIQC_Admin.df<-as.data.frame(MRIQC_Admin.df)
write_csv(MRIQC_Admin.df, "/Volumes/IGNITE_Imaging/QC_Output/R_IGNITE/MRIQC/source_files/MRIQC_ADMIN.csv")
CHECK<-MRIQC_Admin.df %>% group_by(SubID, add=T) %>% dplyr::summarise(n=n()) %>% filter(n!=2)
PRE_ANOVA_Database_AllSites <- readxl::read_excel("/Volumes/IGNITE_Imaging/QC_Output/Weekly Data Reports/IGNITE_ANOVA_Database_MASTER.xlsx", sheet = "Baseline", na = c("NA","-99991","9999", "-99992","-99994", "-99993", "-99995", "-99996", "-99997", "-99998", "-99999", "99999", "999", "-999"))
PRE_ANOVA_Database_AllSites$subject_id<-str_replace(PRE_ANOVA_Database_AllSites$subject_id,"MRI", "MR1")
PRE_ANOVA_Database_AllSites$SubID<-PRE_ANOVA_Database_AllSites$subject_id
x<-PRE_ANOVA_Database_AllSites$SubID
temp<-strsplit(x,"MR1")
mat <- matrix(unlist(temp), ncol=1, byrow=TRUE)
df <- as.data.frame(mat)
PRE_ANOVA_Database_AllSites$SubID<-as.character(df$V1)
PRE_ANOVA_Database_AllSites$Session<-"MR1"
PRE_ANOVA_Database_AllSites$session_entry<-paste(PRE_ANOVA_Database_AllSites$SubID, PRE_ANOVA_Database_AllSites$Session, sep="")
PRE_ANOVA_Database_AllSites$subject_id<-str_replace(PRE_ANOVA_Database_AllSites$subject_id,"3127111", "31271")
PRE_ANOVA_Database_AllSites$SubID<-str_remove(PRE_ANOVA_Database_AllSites$SubID, "MRI")
PRE_ANOVA_Database_AllSites<-PRE_ANOVA_Database_AllSites %>% select("session_entry", "SubID" ,"Session",
"MPRAGE_cnr" , "MPRAGE_fwhm_avg","MPRAGE_snr_total","MPRAGE_snrd_total",
"Nback_dvars_nstd","Nback_fd_mean","Nback_fwhm_avg","Nback_gcor","Nback_snr" ,"Nback_tsnr" ,
"Rest_dvars_nstd","Rest_fd_mean","Rest_fwhm_avg","Rest_gcor", "Rest_snr","Rest_tsnr",
"RISE_enc_dvars_nstd", "RISE_enc_fd_mean","RISE_enc_fwhm_avg","RISE_enc_gcor" ,"RISE_enc_snr","RISE_enc_tsnr",
"RISE_rec_dvars_nstd", "RISE_rec_fd_mean","RISE_rec_fwhm_avg","RISE_rec_gcor","RISE_rec_snr","RISE_rec_tsnr",
"DTI_meanFA", "DTI_meanRELrms_b1500","DTI_tsnr_b1500","DTI_outmean_b1500","DTI_meanRELrms_b3000","DTI_tsnr_b3000","DTI_outmean_b3000",
"FLAIR_snr","pCASL_tsnr","pCASL_outmean")
###POST ANVA
POST_ANOVA_Database_AllSites<-readxl::read_excel("/Volumes/IGNITE_Imaging/QC_Output/Weekly Data Reports/IGNITE_ANOVA_Database_MASTER.xlsx", sheet ="FollowUp", na = c("NA","-99991","9999", "-99992","-99994", "-99993", "-99995", "-99996", "-99997", "-99998", "-99999"))
POST_ANOVA_Database_AllSites$subject_id<-str_replace(POST_ANOVA_Database_AllSites$subject_id, "MF2", "MR2")
POST_ANOVA_Database_AllSites$SubID<-as.character(POST_ANOVA_Database_AllSites$subject_id)
x<-POST_ANOVA_Database_AllSites$SubID
temp<-strsplit(x,"MR2")
mat <- matrix(unlist(temp), ncol=1, byrow=TRUE)
df <- as.data.frame(mat)
POST_ANOVA_Database_AllSites$SubID<-as.character(df$V1)
POST_ANOVA_Database_AllSites$Session<-"MR2"
POST_ANOVA_Database_AllSites$session_entry<-paste(POST_ANOVA_Database_AllSites$SubID, POST_ANOVA_Database_AllSites$Session, sep="")
POST_ANOVA_Database_AllSites<-POST_ANOVA_Database_AllSites %>% select("session_entry", "SubID" ,"Session",
MPRAGE_cnr , MPRAGE_fwhm_avg,MPRAGE_snr_total,MPRAGE_snrd_total,
Nback_dvars_nstd,Nback_fd_mean,Nback_fwhm_avg,Nback_gcor,Nback_snr ,Nback_tsnr ,
Rest_dvars_nstd,Rest_fd_mean,Rest_fwhm_avg,Rest_gcor, Rest_snr,Rest_tsnr,
RISE_enc_dvars_nstd, RISE_enc_fd_mean,RISE_enc_fwhm_avg,RISE_enc_gcor ,RISE_enc_snr,RISE_enc_tsnr,
RISE_rec_dvars_nstd, RISE_rec_fd_mean,RISE_rec_fwhm_avg,RISE_rec_gcor,RISE_rec_snr,RISE_rec_tsnr,
DTI_meanFA,DTI_meanRELrms_b1500,DTI_tsnr_b1500,DTI_outmean_b1500,DTI_meanRELrms_b3000,
DTI_tsnr_b3000,DTI_outmean_b3000,FLAIR_snr,pCASL_tsnr,pCASL_outmean)
POST_ANOVA_Database_AllSites[,c(4:length(POST_ANOVA_Database_AllSites))]<-sapply(POST_ANOVA_Database_AllSites[,c(4:length(POST_ANOVA_Database_AllSites))], as.numeric)
##MERGE
ANOVA_Database<-rbind(PRE_ANOVA_Database_AllSites,POST_ANOVA_Database_AllSites )
write_csv(ANOVA_Database, "/Volumes/IGNITE_Imaging/QC_Output/R_IGNITE/MRIQC/source_files/ANOVA_Database.csv")
MPRAGE.IQMs.df<-read.csv("/Volumes/IGNITE_Imaging/QC_Output/QC_04/IGNITE_MRI_BS_QC04_T1.csv")
MPRAGE.IQMs.df$SubID<-as.character(MPRAGE.IQMs.df$bids_name)
x<-MPRAGE.IQMs.df$SubID
temp<-strsplit(x,"-")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df <- as.data.frame(mat)
MPRAGE.IQMs.df$SubID<-as.character(df$V2)
x<-MPRAGE.IQMs.df$SubID
temp<-strsplit(x,"MR1")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df <- as.data.frame(mat)
MPRAGE.IQMs.df$SubID<-as.character(df$V1)
df<-c("SubID", "cnr", "fwhm_avg", "snr_total" ,"snrd_total" )
MPRAGE.IQMs.df<-MPRAGE.IQMs.df[df]
MPRAGE.IQMs.df$SubID<-as.character(MPRAGE.IQMs.df$SubID)
PRE_MPRAGE.IQMs.df<-MPRAGE.IQMs.df
rm(MPRAGE.IQMs.df,df, mat, x, temp )
#PRE_MPRAGE.IQMs.df<-PRE_MPRAGE.IQMs.df[complete.cases(PRE_MPRAGE.IQMs.df$cnr),]
#PRE_MPRAGE.IQMs.df<-PRE_MPRAGE.IQMs.df[!(duplicated(PRE_MPRAGE.IQMs.df$SubID)),]
#PRE_MPRAGE.IQMs.df$SubID<-as.numeric(PRE_MPRAGE.IQMs.df$SubID)
PRE_MPRAGE.IQMs.df$Session<-"MR1"
PRE_MPRAGE.IQMs.df$SubID<-str_replace(PRE_MPRAGE.IQMs.df$SubID,"3127111", "31271")
names(PRE_MPRAGE.IQMs.df)<-c("SubID","MPRAGE_cnr","MPRAGE_fwhm_avg","MPRAGE_snr_total" ,"MPRAGE_snrd_total" ,"Session" )
PRE_MPRAGE.IQMs.df$SubID<-as.character(PRE_MPRAGE.IQMs.df$SubID)
PRE_MPRAGE.IQMs.df$Session<-"MR1"
PRE_MPRAGE.IQMs.df$session_entry<-paste(PRE_MPRAGE.IQMs.df$SubID, PRE_MPRAGE.IQMs.df$Session, sep="")
PRE_MPRAGE.IQMs.df<-PRE_MPRAGE.IQMs.df[!(duplicated(PRE_MPRAGE.IQMs.df$session_entry)),]
#BOLD
BOLD.IQMs.df<-read.csv("/Volumes/IGNITE_Imaging/QC_Output/QC_04/IGNITE_MRI_BS_QC04_BOLD.csv")
BOLD.IQMs.df$SubID<-as.character(BOLD.IQMs.df$bids_name)
x<-BOLD.IQMs.df$SubID
temp<-strsplit(x,"-")
mat <- matrix(unlist(temp), ncol=3, byrow=TRUE)
df <- as.data.frame(mat)
df$SubID<-as.character(df$V2)
tmp1<-c("SubID", "V3")
df<-df[tmp1]
rm(mat,temp)
x<-df$SubID
temp<-strsplit(x,"M")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df2 <- as.data.frame(mat)
df<-cbind(df2, df)
df$SubID<-as.character(df$V1)
df$V3<-as.character(df$V3)
x<-df$V3
temp<-strsplit(x,"_")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df2 <- as.data.frame(mat)
df<-cbind(df, df2)
df$Task<-df[,5]
list<-c("SubID","Task")
Sub_task.df<-df[list]
BOLD.IQMs.df<-cbind(Sub_task.df, BOLD.IQMs.df)
BOLD.IQMs.df<-BOLD.IQMs.df[,-c(3)]
BOLD.IQMs.df<-BOLD.IQMs.df[,-c(9)]
BOLD.IQMs.df$Session<-"MR1"
df<-c("SubID" ,"Session","Task", "dvars_nstd","fd_mean", "fwhm_avg", "gcor", "snr", "tsnr")
BOLD.IQMs.df<-BOLD.IQMs.df[df]
MR1.QC4.BOLD<-BOLD.IQMs.df
rm(BOLD.IQMs.df, x, df, temp, mat, df2, Sub_task.df)
NBACK.df<-MR1.QC4.BOLD %>% filter( MR1.QC4.BOLD$Task=="nback")
NBACK.df$Nback_dvars_nstd<-NBACK.df$dvars_nstd
NBACK.df$Nback_fd_mean<-NBACK.df$fd_mean
NBACK.df$Nback_fwhm_avg<-NBACK.df$fwhm_avg
NBACK.df$Nback_gcor<-NBACK.df$gcor
NBACK.df$Nback_snr<-NBACK.df$snr
NBACK.df$Nback_tsnr<-NBACK.df$tsnr
NBACK.df<-NBACK.df[,-c(3:9)]
REST.df<-MR1.QC4.BOLD %>% filter( MR1.QC4.BOLD$Task=="rest")
REST.df$Rest_dvars_nstd<-REST.df$dvars_nstd
REST.df$Rest_fd_mean<-REST.df$fd_mean
REST.df$Rest_fwhm_avg<-REST.df$fwhm_avg
REST.df$Rest_gcor<-REST.df$gcor
REST.df$Rest_snr<-REST.df$snr
REST.df$Rest_tsnr<-REST.df$tsnr
REST.df<-REST.df[,-c(3:9)]
riseenc.df<-MR1.QC4.BOLD %>% filter( MR1.QC4.BOLD$Task=="riseenc")
riseenc.df$RISE_enc_dvars_nstd<-riseenc.df$dvars_nstd
riseenc.df$RISE_enc_fd_mean<-riseenc.df$fd_mean
riseenc.df$RISE_enc_fwhm_avg<-riseenc.df$fwhm_avg
riseenc.df$RISE_enc_gcor<-riseenc.df$gcor
riseenc.df$RISE_enc_snr<-riseenc.df$snr
riseenc.df$RISE_enc_tsnr<-riseenc.df$tsnr
riseenc.df<-riseenc.df[,-c(3:9)]
riserec.df<-MR1.QC4.BOLD %>% filter( MR1.QC4.BOLD$Task=="riserec")
riserec.df$RISE_rec_dvars_nstd<-riserec.df$dvars_nstd
riserec.df$RISE_rec_fd_mean<-riserec.df$fd_mean
riserec.df$RISE_rec_fwhm_avg<-riserec.df$fwhm_avg
riserec.df$RISE_rec_gcor<-riserec.df$gcor
riserec.df$RISE_rec_snr<-riserec.df$snr
riserec.df$RISE_rec_tsnr<-riserec.df$tsnr
riserec.df<-riserec.df[,-c(3:9)]
BOLD1<-full_join(REST.df,NBACK.df )
BOLD2<-full_join(BOLD1,riseenc.df )
BOLD3<-full_join(BOLD2,riserec.df )
QC04_PRE_BOLD.df<-BOLD3
QC04_PRE_BOLD.df$SubID<-str_replace(QC04_PRE_BOLD.df$SubID,"3127111", "31271")
QC04_PRE_BOLD.df$session_entry<-paste(QC04_PRE_BOLD.df$SubID ,QC04_PRE_BOLD.df$Session, sep="")
PRE_MPRAGE.IQMs.df$SubID<-str_replace(PRE_MPRAGE.IQMs.df$SubID, "3127111", "31271")
MR1_MPRAGE_BOLD<-full_join(PRE_MPRAGE.IQMs.df,QC04_PRE_BOLD.df)
### DTI
DTI.IQMs.df<-read.csv("/Volumes/IGNITE_Imaging/QC_Output/QC_04/IGNITE_MRI_BS_QC04_DTI.csv")
DTI.IQMs.df$SubID<-as.character(DTI.IQMs.df$Subject.ID)
x<-DTI.IQMs.df$SubID
temp<-strsplit(x,"_")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df <- as.data.frame(mat)
DTI.IQMs.df$SubID<-as.character(df$V1)
DTI.IQMs.df$Session<-"MR1"
df<-c("SubID", "Session", "meanFA", "meanRELrms_b1500", "tsnr_b1500" ,"outmean_b1500","meanRELrms_b3000","tsnr_b3000",
"outmean_b3000")
DTI.IQMs.df<-DTI.IQMs.df[df]
MR1.QC4.DTI<-DTI.IQMs.df
rm(DTI.IQMs.df, x, df, temp, mat)
names(MR1.QC4.DTI)<-c("SubID","Session","DTI_meanFA","DTI_meanRELrms_b1500" ,"DTI_tsnr_b1500" ,
"DTI_outmean_b1500" , "DTI_meanRELrms_b3000", "DTI_tsnr_b3000","DTI_outmean_b3000")
MR1.QC4.DTI$Session<-"MR1"
MR1.QC4.DTI$SubID<-as.character(MR1.QC4.DTI$SubID)
MR1.QC4.DTI$Session<-as.character(MR1.QC4.DTI$Session)
MR1.QC4.DTI$session_entry<-paste(MR1.QC4.DTI$SubID, MR1.QC4.DTI$Session, sep="")
MR1.QC4.DTI<-MR1.QC4.DTI[!(duplicated(MR1.QC4.DTI$session_entry)),]
tml<-MR1.QC4.DTI[!(MR1.QC4.DTI$session_entry %in% MR1_MPRAGE_BOLD$session_entry),]
MR1_DTI_MPRAGE_BOLD<-full_join(MR1.QC4.DTI,MR1_MPRAGE_BOLD)
#pCASL
pCASL.IQMs.df<-read.csv("/Volumes/IGNITE_Imaging/QC_Output/QC_04/IGNITE_MRI_BS_QC04_PCASL.csv")
pCASL.IQMs.df$SubID<-as.character(pCASL.IQMs.df$Subject.ID)
x<-pCASL.IQMs.df$SubID
temp<-strsplit(x,"_")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df <- as.data.frame(mat)
pCASL.IQMs.df$SubID<-as.character(df$V1)
pCASL.IQMs.df$Session<-as.character(df$V2)
df<-c("SubID", "Session", "tsnr", "outmean")
pCASL.IQMs.df<-pCASL.IQMs.df[df]
pCASL.IQMs.df<-pCASL.IQMs.df[complete.cases(pCASL.IQMs.df$outmean), ]
pCASL.IQMs.df<-pCASL.IQMs.df[!(duplicated(pCASL.IQMs.df$SubID)), ]
MR1.QC4.pCASL<-pCASL.IQMs.df
rm(x, df, temp, mat, pCASL.IQMs.df)
names(MR1.QC4.pCASL)<-c("SubID","Session","pCASL_tsnr", "pCASL_outmean")
MR1.QC4.pCASL$SubID<-as.character(MR1.QC4.pCASL$SubID)
MR1.QC4.pCASL$Session<-"MR1"
MR1.QC4.pCASL$session_entry<-paste(MR1.QC4.pCASL$SubID, MR1.QC4.pCASL$Session, sep="")
MR1.QC4.pCASL<-MR1.QC4.pCASL[!(duplicated(MR1.QC4.pCASL$session_entry)),]
MR1_pCASL_DTI_MPRAGE_BOLD<-full_join(MR1_DTI_MPRAGE_BOLD,MR1.QC4.pCASL)
flair.IQMs.df<-read.csv("/Volumes/IGNITE_Imaging/QC_Output/QC_04/IGNITE_MRI_12M_QC04_FLAIR.csv")
flair.IQMs.df$SubID<-as.character(flair.IQMs.df$Subject.ID)
x<-flair.IQMs.df$SubID
temp<-strsplit(x,"_")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df <- as.data.frame(mat)
flair.IQMs.df$SubID<-as.character(df$V1)
flair.IQMs.df$Session<-as.character(df$V2)
df<-c("SubID", "Session", "snr")
flair.IQMs.df<-flair.IQMs.df[df]
flair.IQMs.df<-flair.IQMs.df[complete.cases(flair.IQMs.df$snr), ]
flair.IQMs.df<-flair.IQMs.df[!(duplicated(flair.IQMs.df$SubID)), ]
MR1.QC4.Flair<-flair.IQMs.df
rm(x, df, temp, mat, flair.IQMs.df)
names(MR1.QC4.Flair)<-c("SubID","Session","FLAIR_snr")
MR1.QC4.Flair$SubID<-as.character(MR1.QC4.Flair$SubID)
MR1.QC4.Flair$Session<-"MR1"
MR1.QC4.Flair$session_entry<-paste(MR1.QC4.Flair$SubID, MR1.QC4.Flair$Session, sep="")
MR1.QC4.Flair<-MR1.QC4.Flair[!(duplicated(MR1.QC4.Flair$session_entry)),]
PRE_PIPELINE<-full_join(MR1_pCASL_DTI_MPRAGE_BOLD,MR1.QC4.Flair)
PRE_PIPELINE<-PRE_PIPELINE %>% select("session_entry", "SubID" ,"Session",
"MPRAGE_cnr" , "MPRAGE_fwhm_avg","MPRAGE_snr_total","MPRAGE_snrd_total",
"Nback_dvars_nstd","Nback_fd_mean","Nback_fwhm_avg","Nback_gcor","Nback_snr" ,"Nback_tsnr" ,
"Rest_dvars_nstd","Rest_fd_mean","Rest_fwhm_avg","Rest_gcor", "Rest_snr","Rest_tsnr",
"RISE_enc_dvars_nstd", "RISE_enc_fd_mean","RISE_enc_fwhm_avg","RISE_enc_gcor" ,"RISE_enc_snr","RISE_enc_tsnr",
"RISE_rec_dvars_nstd", "RISE_rec_fd_mean","RISE_rec_fwhm_avg","RISE_rec_gcor","RISE_rec_snr","RISE_rec_tsnr",
"DTI_meanFA","DTI_meanRELrms_b1500","DTI_tsnr_b1500","DTI_outmean_b1500","DTI_meanRELrms_b3000","DTI_tsnr_b3000","DTI_outmean_b3000",
"FLAIR_snr","pCASL_tsnr","pCASL_outmean")
PRE_PIPELINE<-PRE_PIPELINE[!duplicated(PRE_PIPELINE$session_entry),]
#PRE_ANOVA_Database_AllSites<-PRE_ANOVA_Database_AllSites[,-c(2)]
write_csv(PRE_PIPELINE, "/Volumes/IGNITE_Imaging/QC_Output/R_IGNITE/MRIQC/PRE/MRIQC_PIPELINE.csv")
MPRAGE.IQMs.df<-read.csv("/Volumes/IGNITE_Imaging/QC_Output/QC_04/IGNITE_MRI_12M_QC04_T1.csv")
MPRAGE.IQMs.df$SubID<-as.character(MPRAGE.IQMs.df$bids_name)
x<-MPRAGE.IQMs.df$SubID
temp<-strsplit(x,"-")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df <- as.data.frame(mat)
MPRAGE.IQMs.df$SubID<-as.character(df$V2)
x<-MPRAGE.IQMs.df$SubID
temp<-strsplit(x,"MR2")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df <- as.data.frame(mat)
MPRAGE.IQMs.df$SubID<-as.character(df$V1)
df<-c("SubID", "cnr", "fwhm_avg", "snr_total" ,"snrd_total" )
MPRAGE.IQMs.df<-MPRAGE.IQMs.df[df]
MPRAGE.IQMs.df$SubID<-as.character(MPRAGE.IQMs.df$SubID)
POST_MPRAGE.IQMs.df<-MPRAGE.IQMs.df
rm(MPRAGE.IQMs.df,df, mat, x, temp )
POST_MPRAGE.IQMs.df<-POST_MPRAGE.IQMs.df[complete.cases(POST_MPRAGE.IQMs.df$cnr),]
POST_MPRAGE.IQMs.df<-POST_MPRAGE.IQMs.df[!(duplicated(POST_MPRAGE.IQMs.df$SubID)),]
POST_MPRAGE.IQMs.df$SubID<-as.character(POST_MPRAGE.IQMs.df$SubID)
POST_MPRAGE.IQMs.df$Session<-"MR2"
names(POST_MPRAGE.IQMs.df)<-c("SubID","MPRAGE_cnr","MPRAGE_fwhm_avg","MPRAGE_snr_total" ,"MPRAGE_snrd_total" ,"Session" )
POST_MPRAGE.IQMs.df$SubID<-as.character(POST_MPRAGE.IQMs.df$SubID)
POST_MPRAGE.IQMs.df$Session<-"MR2"
POST_MPRAGE.IQMs.df$session_entry<-paste(POST_MPRAGE.IQMs.df$SubID, POST_MPRAGE.IQMs.df$Session, sep="")
POST_MPRAGE.IQMs.df<-POST_MPRAGE.IQMs.df[!(duplicated(POST_MPRAGE.IQMs.df$session_entry)),]
#BOLD
BOLD.IQMs.df<-read.csv("/Volumes/IGNITE_Imaging/QC_Output/QC_04/IGNITE_MRI_12M_QC04_BOLD.csv")
BOLD.IQMs.df$SubID<-as.character(BOLD.IQMs.df$bids_name)
x<-BOLD.IQMs.df$SubID
temp<-strsplit(x,"-")
mat <- matrix(unlist(temp), ncol=3, byrow=TRUE)
df <- as.data.frame(mat)
df$SubID<-as.character(df$V2)
tmp1<-c("SubID", "V3")
df<-df[tmp1]
rm(mat,temp)
x<-df$SubID
temp<-strsplit(x,"M")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df2 <- as.data.frame(mat)
df<-cbind(df2, df)
df$SubID<-as.character(df$V1)
df$V3<-as.character(df$V3)
x<-df$V3
temp<-strsplit(x,"_")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df2 <- as.data.frame(mat)
df<-cbind(df, df2)
df$Task<-df[,5]
list<-c("SubID","Task")
Sub_task.df<-df[list]
BOLD.IQMs.df<-cbind(Sub_task.df, BOLD.IQMs.df)
BOLD.IQMs.df<-BOLD.IQMs.df[,-c(3)]
BOLD.IQMs.df<-BOLD.IQMs.df[,-c(9)]
BOLD.IQMs.df$Session<-"MR2"
df<-c("SubID" ,"Session","Task", "dvars_nstd","fd_mean", "fwhm_avg", "gcor", "snr", "tsnr")
BOLD.IQMs.df<-BOLD.IQMs.df[df]
POST_BOLD.IQMs.df<-BOLD.IQMs.df
MR2.QC4.BOLD<-BOLD.IQMs.df
rm(BOLD.IQMs.df, x, df, temp, mat, df2, Sub_task.df)
NBACK.df<-MR2.QC4.BOLD %>% filter( MR2.QC4.BOLD$Task=="nback")
NBACK.df$Nback_dvars_nstd<-NBACK.df$dvars_nstd
NBACK.df$Nback_fd_mean<-NBACK.df$fd_mean
NBACK.df$Nback_fwhm_avg<-NBACK.df$fwhm_avg
NBACK.df$Nback_gcor<-NBACK.df$gcor
NBACK.df$Nback_snr<-NBACK.df$snr
NBACK.df$Nback_tsnr<-NBACK.df$tsnr
NBACK.df<-NBACK.df[,-c(3:9)]
REST.df<-MR2.QC4.BOLD %>% filter( MR2.QC4.BOLD$Task=="rest")
REST.df$Rest_dvars_nstd<-REST.df$dvars_nstd
REST.df$Rest_fd_mean<-REST.df$fd_mean
REST.df$Rest_fwhm_avg<-REST.df$fwhm_avg
REST.df$Rest_gcor<-REST.df$gcor
REST.df$Rest_snr<-REST.df$snr
REST.df$Rest_tsnr<-REST.df$tsnr
REST.df<-REST.df[,-c(3:9)]
riseenc.df<-MR2.QC4.BOLD %>% filter( MR2.QC4.BOLD$Task=="riseenc")
riseenc.df$RISE_enc_dvars_nstd<-riseenc.df$dvars_nstd
riseenc.df$RISE_enc_fd_mean<-riseenc.df$fd_mean
riseenc.df$RISE_enc_fwhm_avg<-riseenc.df$fwhm_avg
riseenc.df$RISE_enc_gcor<-riseenc.df$gcor
riseenc.df$RISE_enc_snr<-riseenc.df$snr
riseenc.df$RISE_enc_tsnr<-riseenc.df$tsnr
riseenc.df<-riseenc.df[,-c(3:9)]
riserec.df<-MR2.QC4.BOLD %>% filter( MR2.QC4.BOLD$Task=="riserec")
riserec.df$RISE_rec_dvars_nstd<-riserec.df$dvars_nstd
riserec.df$RISE_rec_fd_mean<-riserec.df$fd_mean
riserec.df$RISE_rec_fwhm_avg<-riserec.df$fwhm_avg
riserec.df$RISE_rec_gcor<-riserec.df$gcor
riserec.df$RISE_rec_snr<-riserec.df$snr
riserec.df$RISE_rec_tsnr<-riserec.df$tsnr
riserec.df<-riserec.df[,-c(3:9)]
BOLD1<-full_join(REST.df,NBACK.df )
BOLD2<-full_join(BOLD1,riseenc.df )
BOLD3<-full_join(BOLD2,riserec.df )
BOLD3$session_entry<-paste(BOLD3$SubID ,BOLD3$Session, sep="")
QC04_POST_BOLD.df<-BOLD3
MR2_MPRAGE_BOLD<-full_join(POST_MPRAGE.IQMs.df,QC04_POST_BOLD.df)
MR2_MPRAGE_BOLD<-arrange(MR2_MPRAGE_BOLD, by="session_entry")
MR2_MPRAGE_BOLD$session_entry<-as.character( MR2_MPRAGE_BOLD$session_entry)
#DTI
DTI.IQMs.df<-read.csv("/Volumes/IGNITE_Imaging/QC_Output/QC_04/IGNITE_MRI_12M_QC04_DTI.csv")
DTI.IQMs.df$SubID<-as.character(DTI.IQMs.df$Subject.ID)
x<-DTI.IQMs.df$SubID
temp<-strsplit(x,"_")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df <- as.data.frame(mat)
DTI.IQMs.df$SubID<-as.character(df$V1)
DTI.IQMs.df$Session<-as.character(df$V2)
df<-c("SubID", "Session", "meanFA", "meanRELrms_b1500", "tsnr_b1500" ,"outmean_b1500","meanRELrms_b3000","tsnr_b3000",
"outmean_b3000")
DTI.IQMs.df<-DTI.IQMs.df[df]
MR2.QC4.DTI<-DTI.IQMs.df
rm(DTI.IQMs.df, x, df, temp, mat)
names(MR2.QC4.DTI)<-c("SubID","Session","DTI_meanFA","DTI_meanRELrms_b1500" ,"DTI_tsnr_b1500" ,
"DTI_outmean_b1500" , "DTI_meanRELrms_b3000", "DTI_tsnr_b3000","DTI_outmean_b3000")
MR2.QC4.DTI$Session<-"MR2"
MR2.QC4.DTI$SubID<-as.character(MR2.QC4.DTI$SubID)
MR2.QC4.DTI$Session<-as.character(MR2.QC4.DTI$Session)
MR2.QC4.DTI$session_entry<-paste(MR2.QC4.DTI$SubID,MR2.QC4.DTI$Session, sep="")
MR2.QC4.DTI<-MR2.QC4.DTI[!duplicated(MR2.QC4.DTI$session_entry),]
MR2_DTI_MPRAGE_BOLD<-full_join(MR2_MPRAGE_BOLD, MR2.QC4.DTI, by=c("session_entry","SubID", "Session"))
flair.IQMs.df<-read.csv("/Volumes/IGNITE_Imaging/QC_Output/QC_04/IGNITE_MRI_12M_QC04_FLAIR.csv")
flair.IQMs.df$SubID<-as.character(flair.IQMs.df$Subject.ID)
x<-flair.IQMs.df$SubID
temp<-strsplit(x,"_")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df <- as.data.frame(mat)
flair.IQMs.df$SubID<-as.character(df$V1)
flair.IQMs.df$Session<-as.character(df$V2)
df<-c("SubID", "Session", "snr")
flair.IQMs.df<-flair.IQMs.df[df]
flair.IQMs.df<-flair.IQMs.df[!(duplicated(flair.IQMs.df$SubID)), ]
MR2.QC4.Flair<-flair.IQMs.df
rm(x, df, temp, mat, flair.IQMs.df)
MR2.QC4.Flair$SubID<-as.character(MR2.QC4.Flair$SubID)
MR2.QC4.Flair$Session<-as.character(MR2.QC4.Flair$Session)
MR2.QC4.Flair$session_entry<-paste(MR2.QC4.Flair$SubID,MR2.QC4.Flair$Session, sep="")
MR2.QC4.Flair<-MR2.QC4.Flair[!duplicated(MR2.QC4.Flair$session_entry),]
names(MR2.QC4.Flair)<-c( "SubID","Session","FLAIR_snr" ,"session_entry")
#MR2.QC4.Flair[!(MR2.QC4.Flair$session_entry %in% MR2_DTI_MPRAGE_BOLD$session_entry),]
MR2_Flair_DTI_MPRAGE_BOLD<-full_join(MR2_DTI_MPRAGE_BOLD, MR2.QC4.Flair, by=c("session_entry","SubID", "Session"))
#pCASL
pCASL.IQMs.df<-read.csv("/Volumes/IGNITE_Imaging/QC_Output/QC_04/IGNITE_MRI_12M_QC04_PCASL.csv")
pCASL.IQMs.df$SubID<-as.character(pCASL.IQMs.df$Subject.ID)
x<-pCASL.IQMs.df$SubID
temp<-strsplit(x,"_")
mat <- matrix(unlist(temp), ncol=2, byrow=TRUE)
df <- as.data.frame(mat)
pCASL.IQMs.df$SubID<-as.character(df$V1)
pCASL.IQMs.df$Session<-as.character(df$V2)
df<-c("SubID", "Session", "tsnr", "outmean")
pCASL.IQMs.df<-pCASL.IQMs.df[df]
pCASL.IQMs.df<-pCASL.IQMs.df[!(duplicated(pCASL.IQMs.df$SubID)), ]
MR2.QC4.pCASL<-pCASL.IQMs.df
rm(x, df, temp, mat, pCASL.IQMs.df)
MR2.QC4.pCASL$SubID<-as.character(MR2.QC4.pCASL$SubID)
MR2.QC4.pCASL$Session<-as.character(MR2.QC4.pCASL$Session)
MR2.QC4.pCASL$session_entry<-paste(MR2.QC4.pCASL$SubID,MR2.QC4.pCASL$Session, sep="")
MR2.QC4.pCASL<-MR2.QC4.pCASL[!duplicated(MR2.QC4.pCASL$session_entry),]
names(MR2.QC4.pCASL)<-c( "SubID","Session","pCASL_tsnr","pCASL_outmean","session_entry")
MR2_pCASL.Flair.DTI.MPRAGE.BOLD<-full_join(MR2_Flair_DTI_MPRAGE_BOLD, MR2.QC4.pCASL, by=c("session_entry","SubID", "Session"))
POST_Pipeline<-MR2_pCASL.Flair.DTI.MPRAGE.BOLD
POST_Pipeline<-POST_Pipeline %>% select("session_entry", "SubID" ,"Session",
MPRAGE_cnr , MPRAGE_fwhm_avg,MPRAGE_snr_total,MPRAGE_snrd_total,
Nback_dvars_nstd,Nback_fd_mean,Nback_fwhm_avg,Nback_gcor,Nback_snr ,Nback_tsnr ,
Rest_dvars_nstd,Rest_fd_mean,Rest_fwhm_avg,Rest_gcor, Rest_snr,Rest_tsnr,
RISE_enc_dvars_nstd, RISE_enc_fd_mean,RISE_enc_fwhm_avg,RISE_enc_gcor ,RISE_enc_snr,RISE_enc_tsnr,
RISE_rec_dvars_nstd, RISE_rec_fd_mean,RISE_rec_fwhm_avg,RISE_rec_gcor,RISE_rec_snr,RISE_rec_tsnr,
DTI_meanFA,DTI_meanRELrms_b1500,DTI_tsnr_b1500,DTI_outmean_b1500,DTI_meanRELrms_b3000,DTI_tsnr_b3000,DTI_outmean_b3000,
FLAIR_snr,pCASL_tsnr,pCASL_outmean)
POST_Pipeline<-POST_Pipeline[!duplicated(POST_Pipeline$session_entry),]
POST_Pipeline[,c(4:length(POST_Pipeline))]<-sapply(POST_Pipeline[,c(4:length(POST_Pipeline))], as.numeric)
write_csv(POST_Pipeline, "/Volumes/IGNITE_Imaging/QC_Output/R_IGNITE/MRIQC/POST/MRIQC_PIPELINE.csv")
## MERGEE
MRIQC_PIPELINE<-plyr::rbind.fill(PRE_PIPELINE,POST_Pipeline)
write_csv(MRIQC_PIPELINE, "/Volumes/IGNITE_Imaging/QC_Output/R_IGNITE/MRIQC/source_files/MRIQC_PIPELINE.csv")
PRE_DATA<-full_join(PRE_ANOVA_Database_AllSites,PRE_PIPELINE)
PRE_DATA[,c(4:length(PRE_DATA))]<-sapply(PRE_DATA[,c(4:length(PRE_DATA))],as.numeric)
PRE_DATA<-PRE_DATA%>% group_by(session_entry,SubID,Session)%>%
summarize_all(~ max(as.character(.), na.rm = TRUE)) %>%
ungroup
PRE_MASTER$session_entry[!(PRE_MASTER$session_entry %in% PRE_DATA$session_entry)]
## [1] "20536MR1"
PRE_MASTER[,c(1:length(PRE_MASTER))]<-sapply(PRE_MASTER[,c(1:length(PRE_MASTER))], as.character)
PRE_DATA<-full_join(PRE_MASTER,PRE_DATA)
PRE_DATA<-PRE_DATA%>% group_by(session_entry,SubID,Session)%>%
summarize_all(~ max(as.character(.), na.rm = TRUE)) %>%
ungroup
PRE_DATA[,c(4:length(PRE_DATA))]<-sapply( PRE_DATA[,c(4:length(PRE_DATA))], as.numeric)
PRE_UNKNOWN_QC04<-PRE_DATA[(PRE_DATA$session_entry %in% MRIQC_Admin.df$session_entry)==FALSE,]
PRE_NOT_IN_QC04<-MRIQC_Admin.df[(MRIQC_Admin.df$session_entry %in% PRE_DATA$session_entry)==FALSE,]
PRE_NOT_IN_QC04<-PRE_NOT_IN_QC04 %>% filter(PRE_NOT_IN_QC04$Session=="MR1")
PRE_QC_ADMIN_New<-PRE_ALL_SITES_QC_DATABASE %>% filter(WeeklyReport=="0")%>% select(SubID, Session,Site )
if ((nrow(PRE_QC_ADMIN_New))>0) {
BS_MRIQC_RUN0<-paste(NEW_MRIQC_RUN0$SubID,NEW_MRIQC_RUN0$Session, sep = "")
} else {
BS_MRIQC_RUN0 <- ("No New Baseline MRIs")
}
POST_QC_ADMIN_New<-POST_ALL_SITES_QC_DATABASE %>% filter(WeeklyReport=="0")%>% select(SubID, Session,Site )
NEW_POST_RUN0<-POST_QC_ADMIN_New[(POST_QC_ADMIN_New$SubID %in% POST_MPRAGE.IQMs.df$SubID)==FALSE,]
if ((nrow(NEW_POST_RUN0))>0) {
FU_MRIQC_RUN0<-paste(NEW_POST_RUN0$SubID,NEW_POST_RUN0$Session, sep = "")
} else {
FU_MRIQC_RUN0 <- ("Follow-Up MRIQC up to date")
}
POST_UNKNOWN_QC04<-POST_BOLD.IQMs.df[(POST_BOLD.IQMs.df$SubID %in% MRIQC_Admin.df$SubID)==FALSE,]
POST_NOT_IN_QC04<-MRIQC_Admin.df[(MRIQC_Admin.df$SubID %in% POST_UNKNOWN_QC04$SubID)==FALSE,]
POST_NOT_IN_QC04<-POST_NOT_IN_QC04[complete.cases(POST_NOT_IN_QC04$Date),]
names(PRE_DATA)[2]<-"record_id"
PRE_DATA<-PRE_DATA[PRE_DATA$record_id %in% HHQ$record_id,]
MR1.df<-HHQ["record_id"]
MR1.df$Session<-"MR1"
MR1.df$session_entry<-paste0(MR1.df$record_id, MR1.df$Session)
MR1.df<- MR1.df %>% arrange(record_id)
PRE_DATA<-PRE_DATA %>% arrange(record_id)
MR1.df$record_id<-as.character(MR1.df$record_id)
PRE_DATA<-PRE_DATA[PRE_DATA$record_id %in% HHQ$record_id,]
PRE_MRIQC<-left_join(MR1.df, PRE_DATA)
MR1_admin<-MRIQC_Admin.df[MRIQC_Admin.df$session_entry %in% PRE_MRIQC$session_entry,]
PRE_MRIQC<-left_join(PRE_MRIQC, MR1_admin)
PRE_MRIQC<-PRE_MRIQC[!(PRE_MRIQC$record_id=="30877" & PRE_MRIQC$QC3=="1"),]
PRE_MRIQC$QC3<-na_if(PRE_MRIQC$QC3, "")
PRE_MRIQC$QC3<-na_if(PRE_MRIQC$QC3, "n/a")
PRE_MRIQC$QC3<-na_if(PRE_MRIQC$QC3, "'''")
PRE_MRIQC$QC4<-na_if(PRE_MRIQC$QC4, "n/a")
PRE_MRIQC$QC4<-na_if(PRE_MRIQC$QC4, "")
PRE_MRIQC$ScanNotes<-na_if(PRE_MRIQC$ScanNotes,"n/a")
PRE_MRIQC$ScanNotes<-na_if(PRE_MRIQC$ScanNotes,"")
PRE_MRIQC[,c(1:length(PRE_MRIQC))]<-sapply(PRE_MRIQC[,c(1:length(PRE_MRIQC))], as.character)
write_csv(PRE_MRIQC,"/Volumes/IGNITE_Imaging/QC_Output/R_IGNITE/MRIQC/POST/IGNITE_MRIQC_PRE.csv")
names(POST_DATA)[2]<-"record_id"
POST_DATA<-POST_DATA[POST_DATA$record_id%in% HHQ$record_id,]
MR2.df<-HHQ["record_id"]
MR2.df$Session<-"MR2"
MR2.df$session_entry<-paste0(MR2.df$record_id, MR2.df$Session)
MR2.df<- MR2.df %>% arrange(record_id)
POST_DATA<-POST_DATA %>% arrange(record_id)
MR2.df$record_id<-as.character(MR2.df$record_id)
POST_DATA<-POST_DATA[POST_DATA$record_id %in% HHQ$record_id,]
POST_MRIQC<-left_join(MR2.df, POST_DATA)
MR2_admin<-MRIQC_Admin.df[MRIQC_Admin.df$session_entry %in% POST_DATA$session_entry,]
POST_MRIQC<-left_join(POST_MRIQC, MR2_admin)
POST_MRIQC$QC3<-na_if(POST_MRIQC$QC3, "")
POST_MRIQC$QC3<-na_if(POST_MRIQC$QC3, "n/a")
POST_MRIQC$QC3<-na_if(POST_MRIQC$QC3, "'''")
POST_MRIQC$QC4<-na_if(POST_MRIQC$QC4, "n/a")
POST_MRIQC$QC4<-na_if(POST_MRIQC$QC4, "")
POST_MRIQC$ScanNotes<-na_if(POST_MRIQC$ScanNotes,"n/a")
POST_MRIQC$ScanNotes<-na_if(POST_MRIQC$ScanNotes,"")
POST_MRIQC[,c(1:length(POST_MRIQC))]<-sapply(POST_MRIQC[,c(1:length(POST_MRIQC))], as.character)
write_csv(POST_MRIQC,"/Volumes/IGNITE_Imaging/QC_Output/R_IGNITE/MRIQC/POST/IGNITE_MRIQC_POST.csv")
PRE_MISSING_DATA<-HHQ$record_id[!(HHQ$record_id %in% PRE_MRIQC$record_id)]
POST_MISSING_DATA<-HHQ$record_id[!HHQ$record_id %in% HHQ$record_id]
PRE_MRIQC<-PRE_MRIQC %>% select(-subject_id)
DATA<-rbind(PRE_MRIQC,POST_MRIQC)
DATA$Scanner<-if_else(str_starts(DATA$record_id, "2"), "Skyra", DATA$Scanner)
DATA$Scanner<-if_else(str_starts(DATA$record_id, "3"), "NE Prisma", DATA$Scanner)
DATA$Scanner<-str_replace(DATA$Scanner,"`","")
DATA$Scanner<-as.factor(DATA$Scanner)
DATA$Site<-if_else(str_starts(DATA$record_id, "1"), "UPitt", DATA$Site)
DATA$Site<-if_else(str_starts(DATA$record_id, "2"), "Kansas", DATA$Site)
DATA$Site<-if_else(str_starts(DATA$record_id, "3"), "Northeastern", DATA$Site)
DATA$Site<-factor(DATA$Site, levels=c("Northeastern","UPitt","Kansas"))
DATA$Scanner.model<-if_else(str_starts(DATA$record_id, "2"), "SKYRA", "PRISMA")
DATA$Scanner.model<-factor(DATA$Scanner.model, levels=c("PRISMA","SKYRA"))
DATA$Month<-format(as.Date.factor(DATA$Date),"%m/%y")
DATA<-DATA %>% arrange(Date) %>% mutate(Month=as.factor(Month))
levels4mo<-unique(as.character(DATA$Month))
DATA$Month<-factor(DATA$Month, levels=levels4mo)
DATA[,c(4:41)]<-sapply(DATA[,c(4:41)], as.numeric)
DATA$Session<-as.factor(DATA$Session)
DATA$Date<-as.Date(DATA$Date)
DATA$Quarter<-lubridate::floor_date(DATA$Date, "3 months")
DATA$Quarter<-format(as.Date(DATA$Quarter), "%m/%y")
DATA<-DATA %>% arrange(Date)
Q4lev<-unique(DATA$Quarter[complete.cases(DATA$Quarter)])
DATA$Quarter<-factor(DATA$Quarter, levels=Q4lev)
DATA$Year<-format(as.Date(DATA$Date), "%Y")
DATA$Year<-as.factor(DATA$Year)
BOLD<-DATA %>% select(record_id,Session,Scanner, Site, Date, Nback_dvars_nstd:RISE_rec_tsnr)
names(BOLD)[18:29]<-str_replace(names(BOLD)[18:29], "_enc", "enc")
names(BOLD)[18:29]<-str_replace(names(BOLD)[18:29], "_rec", "rec")
DATA$PRISMA_Model<-if_else(DATA$Scanner=="Skyra", 1,2)
DATA$SKYRA_Model<-if_else(DATA$Scanner=="Skyra", 2,1)
DATA$Site_Pittsburgh<-if_else(str_starts(DATA$session_entry, "1"), 1,0)
DATA$Site_Northeastern<-if_else(str_starts(DATA$session_entry, "3"), 1,0)
DATA$Site_Kansas<-if_else(str_starts(DATA$session_entry, "2"), 1,0)
DATA$Date_N<-as.numeric(DATA$Date)
DATA$Month_N<-as.numeric(DATA$Month)
DATA$Quarter_N<-as.numeric(DATA$Quarter)
DATA$Year_N<-as.numeric(DATA$Year)
DATA$Scanner_PRISMA1<-if_else(DATA$Scanner=="Prisma 1", 1,0)
DATA$Scanner_PRISMA2<-if_else(DATA$Scanner=="Prisma 2", 1,0)
DATA$Scanner_NE_PRISMA<-if_else(DATA$Scanner=="NE Prisma", 1,0)
DATA$Scanner_Skyra<-if_else(DATA$Scanner=="Skyra", 1,0)
TMP<-DATA %>%
select(session_entry,contains("_snr")) %>%
rowwise() %>%
mutate(
snr_avg = mean(c_across(Nback_snr:FLAIR_snr), na.rm = TRUE))
DATA<-full_join(DATA, TMP)
TMP<-DATA %>%
select(session_entry,contains("_fd")) %>%
rowwise() %>%
mutate(
fd_avg = mean(c_across(Nback_fd_mean:RISE_rec_fd_mean), na.rm = TRUE))
DATA<-full_join(DATA, TMP)
TMP<-DATA %>%
select(session_entry,contains("_tsnr")) %>%
rowwise() %>%
mutate(
tsnr_avg = mean(c_across(Nback_tsnr:RISE_rec_tsnr), na.rm = TRUE))
DATA<-full_join(DATA, TMP)
TMP<-DATA %>%
select(session_entry,contains("dvars")) %>%
rowwise() %>%
mutate(
dvars_avg = mean(c_across(Nback_dvars_nstd:RISE_rec_dvars_nstd), na.rm = TRUE))
DATA<-full_join(DATA, TMP)
TMP<-DATA %>%
select(session_entry,contains("gcor")) %>%
rowwise() %>%
mutate(
gcor_avg = mean(c_across(Nback_gcor:RISE_rec_gcor), na.rm = TRUE))
DATA<-full_join(DATA, TMP)
TMP<-DATA %>%
select(session_entry,contains("fwhm")) %>%
rowwise() %>%
mutate(
fwhm_avg = mean(c_across(Nback_fwhm_avg:MPRAGE_fwhm_avg), na.rm = TRUE))
DATA<-full_join(DATA, TMP)
BOLD<-BOLD %>%
pivot_longer(
cols = !c(record_id,Session,Scanner, Site, Date ),
names_to = c( "Task",".value"),
names_sep = "_",
values_drop_na = FALSE
)
BOLD$Task<-str_replace(BOLD$Task,"RISErec","RISE_rec")
BOLD$Task<-str_replace(BOLD$Task,"RISEenc","RISE_enc")
BOLD$Task<-as.factor(BOLD$Task)
BOLD$Scanner<-as.factor(BOLD$Scanner)
Hover over open points to get more details (i.e. subject, date, value, etc.).
Key:
DATA<-DATA %>% arrange(Date)
DATA$Session<-as.factor(DATA$Session)
library(formattable)
# Make Summary table w/ SPARK_LINE
# CNR2=hist(MPRAGE_cnr,plot=FALSE)$breaks,
res1<-DATA %>%
arrange(Date) %>%
drop_na(Scanner) %>%
mutate(
ZMPRAGE_cnr=scale(MPRAGE_cnr),
ZMPRAGE_fwhm_avg=scale(MPRAGE_fwhm_avg),
ZMPRAGE_snr_total=scale(MPRAGE_snr_total),
ZMPRAGE_snrd_total=scale(MPRAGE_snrd_total)) %>% ungroup()
res<-res1 %>%
group_by(Scanner, Session, add=T) %>%
dplyr::summarise(N=n(),
snr.sdp=round(sd(MPRAGE_snr_total, na.rm=T)/mean(MPRAGE_snr_total, na.rm=T),2),
CNR=as.character(htmltools::as.tags(sparkline(c(MPRAGE_cnr),type="line"))),
CNRz=as.character(htmltools::as.tags(sparkline(c(ZMPRAGE_cnr),type="bar"))),
CNR.box=as.character(htmltools::as.tags(sparkline(c(ZMPRAGE_cnr),type="box"))),
fwhm=as.character(htmltools::as.tags(sparkline(c(MPRAGE_fwhm_avg),type="line"))),
fwhmZ=as.character(htmltools::as.tags(sparkline(c(ZMPRAGE_fwhm_avg), type="bar"))),
fwhm.box=as.character(htmltools::as.tags(sparkline(c(ZMPRAGE_fwhm_avg), type="box"))),
snr=as.character(htmltools::as.tags(sparkline(c(MPRAGE_snr_total),type="line"))),
snrZ=as.character(htmltools::as.tags(sparkline(c(ZMPRAGE_snr_total), type="bar"))),
snr.box=as.character(htmltools::as.tags(sparkline(c(ZMPRAGE_snr_total), type="box"))),
snrd=as.character(htmltools::as.tags(sparkline(c(MPRAGE_snrd_total), type="line"))),
snrdZ=as.character(htmltools::as.tags(sparkline(c(ZMPRAGE_snrd_total), type="bar"))),
snrd.box=as.character(htmltools::as.tags(sparkline(c(ZMPRAGE_snrd_total), type="box")))) %>%
formattable() %>%
formattable::as.htmlwidget()
res$dependencies <- c(res$dependencies,htmlwidgets:::widget_dependencies("sparkline", "sparkline"))
res
require(htmlwidgets)
require(webshot)
require(htmltools)
require(sparkline)
require(formattable)
DATA$Session<-as.factor(DATA$Session)
res<-
DATA %>%
drop_na(Scanner)%>%
mutate(
FAz=scale(DTI_meanFA),
rms1500z=scale(DTI_meanRELrms_b1500),
rms3000z=scale(DTI_meanRELrms_b3000),
out1500z=scale(DTI_outmean_b1500),
out3000z=scale(DTI_outmean_b3000),
tsnr1500z=scale(DTI_tsnr_b1500),
tsnr3000z=scale(DTI_tsnr_b3000)) %>%
ungroup() %>%
group_by(Scanner, Session, add=T) %>%
arrange(Date) %>%
dplyr::summarise(N=n(),
FA.sdp=round(sd(DTI_meanFA, na.rm=T)/mean(DTI_meanFA, na.rm=T),2),
FAz=as.character(htmltools::as.tags(sparkline(c(FAz), type="box"))),
rms1500=as.character(htmltools::as.tags(sparkline(c(rms1500z), type="box"))),
rms3000=as.character(htmltools::as.tags(sparkline(c(rms3000z), type="box"))),
out1500=as.character(htmltools::as.tags(sparkline(c(out1500z), type="box"))),
out3000=as.character(htmltools::as.tags(sparkline(c(out3000z), type="box"))),
tsnr1500=as.character(htmltools::as.tags(sparkline(c(tsnr1500z), type="box"))),
tsnr3000=as.character(htmltools::as.tags(sparkline(c(tsnr3000z), type="box")))) %>%
formattable() %>%
formattable::as.htmlwidget()
res$dependencies <- c(res$dependencies,htmlwidgets:::widget_dependencies("sparkline", "sparkline" ))
res
res <- DATA %>%
drop_na(Scanner) %>%
mutate("FLAIR_snrZ"=scale(FLAIR_snr)) %>%
group_by(Scanner,Session, add=T) %>%
dplyr::summarise(N=n(),
snr.av=round(mean(FLAIR_snr,na.rm = TRUE),2),
snr.sdp=round(sd(FLAIR_snr, na.rm=T)/mean(FLAIR_snr, na.rm=T),2),
snr=as.character(htmltools::as.tags(sparkline(c(FLAIR_snr), type="line"))),
snrZ=as.character(htmltools::as.tags(sparkline(c(FLAIR_snrZ), type="bar"))),
snrZ.=as.character(htmltools::as.tags(sparkline(c(FLAIR_snrZ), type="box")))) %>%
formattable() %>%
formattable::as.htmlwidget()
res$dependencies <- c(res$dependencies,htmlwidgets:::widget_dependencies("sparkline", "sparkline" ))
res
#TMP2<-MRIQC_Admin.df %>% select(session_entry, SubID, Session, Date, Scanner, Site)
#ALL_BOLD_MASTERS<-full_join(ALL_BOLD_MASTERS,TMP2 )
x <- BOLD %>% drop_na(Scanner) %>%
drop_na(Scanner)%>%
group_by(Task, add=T) %>%
mutate(
dvarsZ=as.numeric(scale(dvars)),
fdZ=as.numeric(scale(fd)),
snrZ=as.numeric(scale(snr)),
fwhmZ=as.numeric(scale(fwhm)),
gcorZ=as.numeric(scale(gcor)),
tsnrZ=as.numeric(scale(tsnr)))%>% ungroup()
require(htmlwidgets)
require(webshot)
require(htmltools)
require(sparkline)
require(formattable)
res <- x %>%
filter(Task=="Nback")
res$Task<-droplevels(res$Task )
res1<-res %>%
group_by(Scanner,Session) %>%
dplyr::summarise(N=n(),
dvars.box=as.character(htmltools::as.tags(sparkline(c(dvarsZ), type="box"))),
dvarsZ=as.character(htmltools::as.tags(sparkline(c(dvarsZ), type="bar"))),
gcorZ.=as.character(htmltools::as.tags(sparkline(c(gcorZ), type="bar"))),
FDz=as.character(htmltools::as.tags(sparkline(c(fdZ), type="box"))),
fwhmZ.=as.character(htmltools::as.tags(sparkline(c(fwhmZ), type="box"))),
gcorZ.=as.character(htmltools::as.tags(sparkline(c(gcorZ), type="box"))),
snrZ.=as.character(htmltools::as.tags(sparkline(c(snrZ), type="box"))),
tsnrZ.=as.character(htmltools::as.tags(sparkline(c(tsnrZ), type="box")))) %>%
formattable() %>%
formattable::as.htmlwidget()
res1$dependencies <- c(res1$dependencies,htmlwidgets:::widget_dependencies("sparkline", "sparkline" ))
res1
res <- x %>%
filter(Task=="Rest")
res$Task<-droplevels(res$Task )
res1<-res %>%
group_by(Scanner,Session) %>%
dplyr::summarise(N=n(),
dvars.box=as.character(htmltools::as.tags(sparkline(c(dvarsZ), type="box"))),
dvarsZ=as.character(htmltools::as.tags(sparkline(c(dvarsZ), type="bar"))),
gcorZ.=as.character(htmltools::as.tags(sparkline(c(gcorZ), type="bar"))),
FDz=as.character(htmltools::as.tags(sparkline(c(fdZ), type="box"))),
fwhmZ.=as.character(htmltools::as.tags(sparkline(c(fwhmZ), type="box"))),
gcorZ.=as.character(htmltools::as.tags(sparkline(c(gcorZ), type="box"))),
snrZ.=as.character(htmltools::as.tags(sparkline(c(snrZ), type="box"))),
tsnrZ.=as.character(htmltools::as.tags(sparkline(c(tsnrZ), type="box")))) %>%
formattable() %>%
formattable::as.htmlwidget()
res1$dependencies <- c(res1$dependencies,htmlwidgets:::widget_dependencies("sparkline", "sparkline" ))
res1
res <- x %>%
filter(Task=="RISE_enc")
res$Task<-droplevels(res$Task )
res1<-res %>%
group_by(Scanner,Session) %>%
dplyr::summarise(N=n(),
dvars.box=as.character(htmltools::as.tags(sparkline(c(dvarsZ), type="box"))),
dvarsZ=as.character(htmltools::as.tags(sparkline(c(dvarsZ), type="bar"))),
gcorZ.=as.character(htmltools::as.tags(sparkline(c(gcorZ), type="bar"))),
FDz=as.character(htmltools::as.tags(sparkline(c(fdZ), type="box"))),
fwhmZ.=as.character(htmltools::as.tags(sparkline(c(fwhmZ), type="box"))),
gcorZ.=as.character(htmltools::as.tags(sparkline(c(gcorZ), type="box"))),
snrZ.=as.character(htmltools::as.tags(sparkline(c(snrZ), type="box"))),
tsnrZ.=as.character(htmltools::as.tags(sparkline(c(tsnrZ), type="box")))) %>%
formattable() %>%
formattable::as.htmlwidget()
res1$dependencies <- c(res1$dependencies,htmlwidgets:::widget_dependencies("sparkline", "sparkline" ))
res1
res <- x %>%
filter(Task=="RISE_rec")
res$Task<-droplevels(res$Task )
res1<-res %>%
group_by(Scanner,Session) %>%
dplyr::summarise(N=n(),
dvars.box=as.character(htmltools::as.tags(sparkline(c(dvarsZ), type="box"))),
dvarsZ=as.character(htmltools::as.tags(sparkline(c(dvarsZ), type="bar"))),
gcorZ.=as.character(htmltools::as.tags(sparkline(c(gcorZ), type="bar"))),
FDz=as.character(htmltools::as.tags(sparkline(c(fdZ), type="box"))),
fwhmZ.=as.character(htmltools::as.tags(sparkline(c(fwhmZ), type="box"))),
gcorZ.=as.character(htmltools::as.tags(sparkline(c(gcorZ), type="box"))),
snrZ.=as.character(htmltools::as.tags(sparkline(c(snrZ), type="box"))),
tsnrZ.=as.character(htmltools::as.tags(sparkline(c(tsnrZ), type="box")))) %>%
formattable() %>%
formattable::as.htmlwidget()
res1$dependencies <- c(res1$dependencies,htmlwidgets:::widget_dependencies("sparkline", "sparkline" ))
res1
mr1<-PITT_Reported_Subs %>% filter(Session=="MR1" & SubID %in% HHQ$record_id)
mr2<-PITT_Reported_Subs %>% filter(Session=="MR2" & SubID %in% HHQ$record_id)
pittrand<-HHQ %>% filter(str_starts(record_id,"1"))
#_.
##
## 1 2
## 428 816
#_
scaled_DTI <- DATA %>%
drop_na(DTI_meanFA) %>%
dplyr::group_by(Scanner, add=T) %>%
mutate(FAz = scale(DTI_meanFA),
RELrms.b1500z= scale(DTI_meanRELrms_b1500),
tsnr.b1500z = scale(DTI_tsnr_b1500),
outmean.b1500z = scale(DTI_outmean_b1500),
RELrms.b3000z = scale(DTI_meanRELrms_b3000),
tsnr.b3000z = scale(DTI_tsnr_b3000),
RELrms.b3000z = scale(DTI_meanRELrms_b3000)) %>% ungroup()
scaled_DTI <- scaled_DTI %>% select(session_entry, Site, Month ,ends_with("z"))
scaled_DTI<-as.data.frame(scaled_DTI)
scaled_DTI$Month<-droplevels(scaled_DTI$Month)
dfmelt<-reshape2::melt(scaled_DTI, id.vars = c("session_entry","Site","Month"),
measure.vars =c("FAz","RELrms.b1500z","tsnr.b1500z",
"outmean.b1500z","RELrms.b3000z",
"tsnr.b3000z", "RELrms.b3000z"))
dfmelt$value<-as.numeric(dfmelt$value)
dfmelt$Outlier_FLAG<-ifelse((dfmelt$value <= (-3) |dfmelt$value >= (3)) , "Outlier", "NotOutlier")
dfmelt<-dfmelt[complete.cases(dfmelt$Outlier_FLAG),]
dfmelt<-dfmelt[complete.cases(dfmelt$Month),]
dfmelt$Month<-as.factor(dfmelt$Month)
dfmelt$variable<-droplevels(dfmelt$variable)
p<- ggplot2::ggplot(dfmelt, aes(x=Month, y=value,fill=variable))+
geom_boxplot()+
theme(legend.position = "none")+
facet_grid(variable~Site, scales = "free")+
geom_point(DTI=dfmelt %>% group_by(Month, add=TRUE ) %>% filter(Outlier_FLAG=="Outlier"),aes(label=session_entry))
p<-p+theme(axis.text.x = element_text(angle = 45, vjust = 0.0, hjust=0))
p<-p+theme(axis.title.x=element_blank())
plotly::ggplotly(p)
x$session_entry<-paste0(x$record_id, x$Session)
mo.df<-DATA %>% select(session_entry, Month)
Nback<-x %>% filter(Task=="Nback") %>% select( dvarsZ:session_entry)
Nback<-full_join(mo.df,Nback)
m.Nback<-reshape2::melt(Nback, id.vars=c("session_entry","Month"))
m.Nback$value<-as.numeric(m.Nback$value)
m.Nback$Outlier_FLAG<-ifelse((m.Nback$value <= (-3) |m.Nback$value >= (3)) , "Outlier", "NotOutlier")
m.Nback<-arrange(m.Nback,Month)
library(ggplot2)
library(ggrepel)
p <- ggplot2::ggplot(m.Nback, aes(x=Month, y=value,fill=variable))+
geom_boxplot()+
theme(legend.position = "none")+
facet_grid(variable~., scales = "free_y")+
geom_point(data=m.Nback %>% group_by(Month, add=TRUE ) %>% filter(Outlier_FLAG=="Outlier"),aes(label=session_entry))
p<-p+theme(axis.text.x = element_text(angle = 45, vjust = 0.0, hjust=0))
p<-p+theme(axis.title.x=element_blank())
plotly::ggplotly(p)
x$session_entry<-paste0(x$record_id, x$Session)
mo.df<-DATA %>% select(session_entry, Month)
Nback<-x %>% filter(Task=="Rest") %>% select(record_id, Session, dvarsZ:session_entry)
Nback<-full_join(mo.df,Nback)
m.Nback<-reshape2::melt(Nback, id.vars=c("record_id", "Session","session_entry","Month"))
m.Nback$value<-as.numeric(m.Nback$value)
m.Nback$Outlier_FLAG<-ifelse((m.Nback$value <= (-3) |m.Nback$value >= (3)) , "Outlier", "NotOutlier")
m.Nback<-arrange(m.Nback,Month)
library(ggplot2)
library(ggrepel)
p <- ggplot2::ggplot(m.Nback, aes(x=Month, y=value,fill=variable))+
geom_boxplot()+
theme(legend.position = "none")+
facet_grid(variable~., scales = "free_y")+
geom_point(data=m.Nback %>% group_by(Month, add=TRUE ) %>% filter(Outlier_FLAG=="Outlier"),aes(label=session_entry))
p<-p+theme(axis.text.x = element_text(angle = 45, vjust = 0.0, hjust=0))
p<-p+theme(axis.title.x=element_blank())
plotly::ggplotly(p)
x$session_entry<-paste0(x$record_id, x$Session)
mo.df<-DATA %>% select(session_entry, Month)
Nback<-x %>% filter(Task=="RISE_enc") %>% select(record_id, Session, dvarsZ:session_entry)
Nback<-full_join(mo.df,Nback)
m.Nback<-reshape2::melt(Nback, id.vars=c("record_id", "Session","session_entry","Month"))
m.Nback$value<-as.numeric(m.Nback$value)
m.Nback$Outlier_FLAG<-ifelse((m.Nback$value <= (-3) |m.Nback$value >= (3)) , "Outlier", "NotOutlier")
m.Nback<-arrange(m.Nback,Month)
library(ggplot2)
library(ggrepel)
p <- ggplot2::ggplot(m.Nback, aes(x=Month, y=value,fill=variable))+
geom_boxplot()+
theme(legend.position = "none")+
facet_grid(variable~., scales = "free_y")+
geom_point(data=m.Nback %>% group_by(Month, add=TRUE ) %>% filter(Outlier_FLAG=="Outlier"),aes(label=session_entry))
p<-p+theme(axis.text.x = element_text(angle = 45, vjust = 0.0, hjust=0))
p<-p+theme(axis.title.x=element_blank())
plotly::ggplotly(p)
x$session_entry<-paste0(x$record_id, x$Session)
mo.df<-DATA %>% select(session_entry, Month)
Nback<-x %>% filter(Task=="RISE_rec") %>% select(record_id, Session, dvarsZ:session_entry)
Nback<-full_join(mo.df,Nback)
m.Nback<-reshape2::melt(Nback, id.vars=c("record_id", "Session","session_entry","Month"))
m.Nback$value<-as.numeric(m.Nback$value)
m.Nback$Outlier_FLAG<-ifelse((m.Nback$value <= (-3) |m.Nback$value >= (3)) , "Outlier", "NotOutlier")
m.Nback<-arrange(m.Nback,Month)
library(ggplot2)
library(ggrepel)
p <- ggplot2::ggplot(m.Nback, aes(x=Month, y=value,fill=variable))+
geom_boxplot()+
theme(legend.position = "none")+
facet_grid(variable~., scales = "free_y")+
geom_point(data=m.Nback %>% group_by(Month, add=TRUE ) %>% filter(Outlier_FLAG=="Outlier"),aes(label=session_entry))
p<-p+theme(axis.text.x = element_text(angle = 45, vjust = 0.0, hjust=0))
p<-p+theme(axis.title.x=element_blank())
plotly::ggplotly(p)
#_
dvarscompar<-ggpubr::compare_means(MPRAGE_cnr ~ Scanner , DATA)
dvarscompar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
fd_mean.compar<-ggpubr::compare_means(MPRAGE_fwhm_avg ~ Scanner , DATA)
fd_mean.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
fwhm_avg.compar<-ggpubr::compare_means(MPRAGE_snr_total~ Scanner , DATA)
fwhm_avg.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE)%>% formatRound(columns=c('p'), digits=3)
gcor.compar<-ggpubr::compare_means(MPRAGE_snrd_total ~ Scanner , DATA)
try(gcor.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE), silent = T) %>% formatRound(columns=c('p'), digits=3)
dvarscompar<-ggpubr::compare_means(DTI_meanFA ~ Scanner , DATA)
dvarscompar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3) %>% formatRound(columns=c('p'), digits=3)
fd_mean.compar<-ggpubr::compare_means(DTI_meanRELrms_b1500 ~ Scanner , DATA)
fd_mean.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3) %>% formatRound(columns=c('p'), digits=3)
fwhm_avg.compar<-ggpubr::compare_means(DTI_tsnr_b1500~ Scanner , DATA)
fwhm_avg.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3) %>% formatRound(columns=c('p'), digits=3)
gcor.compar<-ggpubr::compare_means(DTI_meanRELrms_b3000 ~ Scanner , DATA)
try(gcor.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE), silent = T) %>% formatRound(columns=c('p'), digits=3)
gcor.compar<-ggpubr::compare_means(DTI_tsnr_b3000 ~ Scanner , DATA)
try(gcor.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE), silent = T) %>% formatRound(columns=c('p'), digits=3)
gcor.compar<-ggpubr::compare_means(DTI_outmean_b3000 ~ Scanner , DATA)
try(gcor.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE), silent = T) %>% formatRound(columns=c('p'), digits=3)
dvarscompar<-ggpubr::compare_means(FLAIR_snr ~ Scanner , DATA)
dvarscompar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
dvarscompar<-ggpubr::compare_means(pCASL_outmean ~ Scanner , DATA)
dvarscompar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
fd_mean.compar<-ggpubr::compare_means(pCASL_tsnr ~ Scanner , DATA)
fd_mean.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
MASTER<-BOLD %>% filter(Task=="Nback") %>% as.data.frame()
dvarscompar<-ggpubr::compare_means(dvars ~ Scanner , MASTER)
dvarscompar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
fd_mean.compar<-ggpubr::compare_means(fd ~ Scanner , MASTER)
fd_mean.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
fwhm_avg.compar<-ggpubr::compare_means(fwhm~ Scanner , MASTER)
fwhm_avg.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
gcor.compar<-ggpubr::compare_means(gcor ~ Scanner , MASTER)
try(gcor.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE), silent = T) %>% formatRound(columns=c('p'), digits=3)
snr.compar<-ggpubr::compare_means(snr ~ Scanner , MASTER)
snr.compar %>% filter(p.signif!="ns")%>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
tsnr.compar<-ggpubr::compare_means(tsnr ~ Scanner , MASTER)
tsnr.compar %>% filter(p.signif!="ns") %>% DT::datatable(rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
MASTER<-BOLD %>% filter(Task=="Rest")
dvarscompar<-ggpubr::compare_means(dvars~ Scanner , MASTER)
dvarscompar%>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
fd_mean.compar<-ggpubr::compare_means(fd ~ Scanner , MASTER)
fd_mean.compar%>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
fwhm_avg.compar<-ggpubr::compare_means(fwhm ~ Scanner , MASTER)
fwhm_avg.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
gcor.compar<-ggpubr::compare_means(gcor ~ Scanner , MASTER)
gcor.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
snr.compar<-ggpubr::compare_means(snr ~ Scanner , MASTER)
snr.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
tsnr.compar<-ggpubr::compare_means(tsnr ~ Scanner , MASTER)
tsnr.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
MASTER<-BOLD %>% filter(Task=="RISE_enc")
MASTER$Task<-as.factor(MASTER$Task)
MASTER$Task<-droplevels(MASTER$Task)
dvarscompar<-ggpubr::compare_means(dvars ~ Scanner , MASTER)
dvarscompar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
fd_mean.compar<-ggpubr::compare_means(fd~ Scanner , MASTER)
fd_mean.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
fwhm_avg.compar<-ggpubr::compare_means(fwhm ~ Scanner , MASTER)
fwhm_avg.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
gcor.compar<-ggpubr::compare_means(gcor ~ Scanner , MASTER)
gcor.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
snr.compar<-ggpubr::compare_means(snr ~ Scanner , MASTER)
snr.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
tsnr.compar<-ggpubr::compare_means(tsnr ~ Scanner , MASTER)
tsnr.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE)
MASTER<-BOLD %>% filter(Task=="RISE_rec")
MASTER$Task<-droplevels(MASTER$Task)
dvarscompar<-ggpubr::compare_means(dvars~ Scanner , MASTER)
dvarscompar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
fd_mean.compar<-ggpubr::compare_means(fd ~ Scanner , MASTER)
fd_mean.compar %>% filter(p.signif!="ns") %>% DT::datatable(rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
fwhm_avg.compar<-ggpubr::compare_means(fwhm~ Scanner , MASTER)
fwhm_avg.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
gcor.compar<-ggpubr::compare_means(gcor ~ Scanner , MASTER)
gcor.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
snr.compar<-ggpubr::compare_means(snr ~ Scanner , MASTER)
snr.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
tsnr.compar<-ggpubr::compare_means(tsnr ~ Scanner , MASTER)
tsnr.compar %>% filter(p.signif!="ns") %>% DT::datatable( options = list(pageLength = 5, dom = 't'),rownames = FALSE) %>% formatRound(columns=c('p'), digits=3)
HHQ <- read_csv("/Volumes/IGNITE_Admin/R_IGNITE/RedCap/HHQ/data/IGNITE_BS_Alc_Caff_Smoke_Medu_recoded_2022_10_9.csv")
redcap <- read_csv("/Volumes/IGNITE_Imaging/QC_Output/R_IGNITE/RedCap/IGNITEDatabase_DATA_LABELS_2023-06-16_0823.csv")
redcap<-redcap %>% filter(str_length(`Record ID`)==5)
redcap<-redcap[redcap$`Record ID` %in% HHQ$record_id,]
redcap$record_id<-redcap$`Record ID`
redcap$BMI<-(redcap$`Weight (kg)`/((redcap$`Height (cm)`/100)^2))
redcap$Site<-as.factor(redcap$`Originating Site...7`)
redcap$race<-if_else(redcap$`6. What is your race?`=="African American / Black","Black","Other")
redcap$race<-if_else(redcap$`6. What is your race?`=="Caucasian / White","White",redcap$race)
redcap$latina.factor<-if_else(redcap$`5. Are you Latino/Latina or Hispanic?`=="Yes",1,0)
redcap0<-redcap %>% select(record_id,Gender,Age,Site,race ,latina.factor,BMI, `Weight (kg)` ,`Height (cm)`,`Peak VO2 (L/min)`,`Peak VO2/kg (mL/kg/min)`,`Peak VCO2 (L/min)`,`Peak AcKcal (Kcal)`,`Peak FEO2 (%)`, `Peak RER`,`Peak METS`)
HHQ$record_id<-as.character(HHQ$record_id)
names(HHQ)[names(HHQ) %in% names(redcap0)]
## [1] "record_id" "Site"
#HHQ<-HHQ %>% select(-Site)
HHQ<-full_join(HHQ,redcap0)
IGNITE.MRIQC<-DATA %>% filter(Session=="MR1")
IGNITE.MRIQC$record_id<-IGNITE.MRIQC$SubID
HHQ<-HHQ %>% select(record_id:`Peak METS`)
HHQ$record_id<-as.factor(HHQ$record_id)
HHQ<-HHQ %>% group_by(record_id) %>%
summarize_all(~ max(as.character(.), na.rm = TRUE)) %>%
ungroup
IGNITE.MRIQC<-IGNITE.MRIQC %>% select(record_id,Session,Date, Scanner,MPRAGE_cnr:pCASL_outmean)
DAT<-left_join(HHQ,IGNITE.MRIQC)
DAT[,c(2:8,10:12,14:16,18:20, 22:24,40:49,53:length(DAT))]<-sapply(DAT[,c(2:8,10:12,14:16,18:20,22:24, 40:49,53:length(DAT))], as.numeric)
DAT$Scanner<-as.factor(DAT$Scanner)
DAT$BMI<-as.numeric(DAT$BMI)
DAT$Age<-as.numeric(DAT$Age)
DAT$height<-as.numeric(DAT$`Height (cm)`)
DAT$Gender<-as.factor(DAT$Gender)
DAT$Weight<-as.numeric(DAT$`Weight (kg)`)
neuro<-read_csv("~/Downloads/IGNITENeuroimagingDa_DATA_2023-06-22_2028.csv")
neuro<-neuro %>% select(record_id, starts_with("ni_"))
neuro$record_id<-as.character(neuro$record_id)
neuro<-neuro[neuro$record_id %in% HHQ$record_id,]
DAT<-left_join(DAT,neuro)
#ab<-(lm(ni_flair_ticv ~Age+Gender+Scanner+BMI, DAT0))
#summary(ab)
#visreg::visreg(ab, "Age",by="Scanner", overlay=T)