Steps:

1. Filter in data from subjects which have completed MR1 and MR2

Repeated_T1<-read.csv("Database.T1.clean.csv")
tmp1<-c("SubID","Session")
tmp1<-Repeated_T1[tmp1]
tmp1<-tmp1[duplicated(tmp1$SubID), ]
Completed_Subs<- c("SubID")
Completed_Subs<-tmp1[Completed_Subs]
df<-c("SubID",  "Session" , "SITE", "Scanner",  "MPRAGE_cnr", "MPRAGE_fwhm_avg", "MPRAGE_snr_total" ,"MPRAGE_snrd_total" )
rep<-Repeated_T1[df]
Completed.Repeated.df<-merge(rep,Completed_Subs, by="SubID" )
Completed.Repeated.df<-Completed.Repeated.df[complete.cases(Completed.Repeated.df),]
rm(Completed_Subs, tmp1, rep, Repeated_T1)

2. Compute basic stat tables across scanner and site

## Step 2
Completed.Repeated.df$N<-1
ByScanner<-Completed.Repeated.df %>%
  group_by(Scanner) %>%
  summarise( ScannerCount=sum(N), 
             meanCNR=mean(MPRAGE_cnr), sdCNR=sd(MPRAGE_cnr),
             meanFWHM=mean(MPRAGE_fwhm_avg), sdFWHM=sd(MPRAGE_fwhm_avg),
             meanSNR=mean(MPRAGE_snr_total), sdSNR=sd(MPRAGE_snr_total),
             meanSNRd=mean(MPRAGE_snrd_total), sdSNRd=sd(MPRAGE_snrd_total))
ByScanner
## # A tibble: 4 x 10
##   Scanner ScannerCount meanCNR  sdCNR meanFWHM sdFWHM meanSNR sdSNR
##   <fct>          <dbl>   <dbl>  <dbl>    <dbl>  <dbl>   <dbl> <dbl>
## 1 KU Sky…          112    1.61 0.166      4.04 0.139    10.4  0.504
## 2 NEU Pr…           60    1.83 0.262      4.14 0.145    10.5  0.523
## 3 PITT P…          118    1.70 0.200      4.15 0.149    10.1  0.508
## 4 PITT P…            2    1.49 0.0242     4.23 0.0522    9.67 0.373
## # … with 2 more variables: meanSNRd <dbl>, sdSNRd <dbl>
BySITE<-Completed.Repeated.df %>%
  group_by(SITE) %>%
summarise(ScannerCount=sum(N), 
             meanCNR=mean(MPRAGE_cnr), sdCNR=sd(MPRAGE_cnr),
             meanFWHM=mean(MPRAGE_fwhm_avg), sdFWHM=sd(MPRAGE_fwhm_avg),
             meanSNR=mean(MPRAGE_snr_total), sdSNR=sd(MPRAGE_snr_total),
             meanSNRd=mean(MPRAGE_snrd_total), sdSNRd=sd(MPRAGE_snrd_total))

BySITE
## # A tibble: 3 x 10
##   SITE  ScannerCount meanCNR sdCNR meanFWHM sdFWHM meanSNR sdSNR meanSNRd
##   <fct>        <dbl>   <dbl> <dbl>    <dbl>  <dbl>   <dbl> <dbl>    <dbl>
## 1 KU             112    1.61 0.166     4.04  0.139    10.4 0.504     65.2
## 2 NEU             60    1.83 0.262     4.14  0.145    10.5 0.523     58.7
## 3 PITT           120    1.70 0.200     4.15  0.148    10.1 0.508     52.1
## # … with 1 more variable: sdSNRd <dbl>

NEU Repeated Measures MPRAGE Reports

DATA_NEU_Prisma<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="NEU Prisma",]
DATA_Kansas_Skyra<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="KU Skyra",]
DATA_PITT_Prisma_1<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="PITT Prisma 1",]
DATA_PITT_Prisma_2<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="PITT Prisma 2",]
DATA_PITT<-rbind(DATA_PITT_Prisma_2,DATA_PITT_Prisma_1 )


# Mann-Whitney U test (nonparametric test)
NU_MPRAGE_cnr.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_NEU_Prisma,
  x = Session,
  y = MPRAGE_cnr,
  xlab = "Session",
  ylab = "CNR",
  type = "np",
  conf.level = 0.99,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
NU_MPRAGE_cnr.RepeatedMs.plot

NU_MPRAGE_fwhm.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_NEU_Prisma,
  x = Session,
  y = MPRAGE_fwhm_avg,
  xlab = "Session",
  ylab = "FWHM",
  type = "np",
  conf.level = 0.99,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
NU_MPRAGE_fwhm.RepeatedMs.plot

NU_MPRAGE_snr.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_NEU_Prisma,
  x = Session,
  y = MPRAGE_snr_total,
  xlab = "Session",
  ylab = "SNR",
  type = "np",
  conf.level = 0.99,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
NU_MPRAGE_snr.RepeatedMs.plot

NU_MPRAGE_snrd.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_NEU_Prisma,
  x = Session,
  y = MPRAGE_snrd_total,
  xlab = "Session",
  ylab = "SNRd",
  type = "np",
  pairwise.annotation = "p-value",
  outlier.tagging = TRUE,
  pairwise.comparisons = TRUE,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
NU_MPRAGE_snrd.RepeatedMs.plot

# combining the individual plots into a single plot
ggstatsplot::combine_plots(
  NU_MPRAGE_cnr.RepeatedMs.plot, NU_MPRAGE_fwhm.RepeatedMs.plot, NU_MPRAGE_snr.RepeatedMs.plot, NU_MPRAGE_snrd.RepeatedMs.plot,
  nrow = 2,
  title.text = "Northeastern Repeated Measures: \nMPRAGE IQMs Non-parametric Test",
  caption.text = "Method: Non-parametric test from `ggstatsplot` R package",
  title.size = 12,
  caption.size = 10
)

# Mann-Whitney U test (nonparametric test)
PITT_MPRAGE_cnr.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_PITT,
  x = Session,
  y = MPRAGE_cnr,
  xlab = "Session",
  ylab = "CNR",
  type = "np",
  conf.level = 0.99,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
PITT_MPRAGE_cnr.RepeatedMs.plot

PITT_MPRAGE_fwhm.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_PITT,
  x = Session,
  y = MPRAGE_fwhm_avg,
  xlab = "Session",
  ylab = "FWHM",
  type = "np",
  conf.level = 0.99,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
PITT_MPRAGE_fwhm.RepeatedMs.plot

PITT_MPRAGE_snr.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_PITT,
  x = Session,
  y = MPRAGE_snr_total,
  xlab = "Session",
  ylab = "SNR",
  type = "np",
  conf.level = 0.99,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
PITT_MPRAGE_snr.RepeatedMs.plot

PITT_MPRAGE_snrd.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_PITT,
  x = Session,
  y = MPRAGE_snrd_total,
  xlab = "Session",
  ylab = "SNRd",
  type = "np",
  pairwise.annotation = "p-value",
  outlier.tagging = TRUE,
    outlier.label = SubID,

  pairwise.comparisons = TRUE,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
PITT_MPRAGE_snrd.RepeatedMs.plot

# combining the individual plots into a single plot
ggstatsplot::combine_plots(
  PITT_MPRAGE_cnr.RepeatedMs.plot, PITT_MPRAGE_fwhm.RepeatedMs.plot, PITT_MPRAGE_snr.RepeatedMs.plot, PITT_MPRAGE_snrd.RepeatedMs.plot,
  nrow = 2,
  title.text = "Pittsburgh Site Repeated Measures: \nMPRAGE IQMs Non-parametric Test",
  caption.text = "Method: Non-parametric test from `ggstatsplot` R package",
  title.size = 12,
  caption.size = 10
)

DATA_Kansas_Skyra
##     SubID Session SITE  Scanner MPRAGE_cnr MPRAGE_fwhm_avg
## 121 20014     MR1   KU KU Skyra   1.776900        4.036300
## 122 20014     MR2   KU KU Skyra   1.882200        4.037100
## 123 20018     MR2   KU KU Skyra   1.546000        4.074000
## 124 20018     MR1   KU KU Skyra   1.675100        4.037700
## 125 20021     MR2   KU KU Skyra   1.648900        4.318200
## 126 20021     MR1   KU KU Skyra   1.597900        4.115700
## 127 20022     MR1   KU KU Skyra   1.589100        3.945300
## 128 20022     MR2   KU KU Skyra   1.630000        3.985200
## 129 20025     MR2   KU KU Skyra   1.564300        4.227000
## 130 20025     MR1   KU KU Skyra   1.512700        4.188100
## 131 20027     MR2   KU KU Skyra   1.581100        4.114200
## 132 20027     MR1   KU KU Skyra   1.653200        4.052400
## 133 20028     MR2   KU KU Skyra   1.414900        3.916700
## 134 20028     MR1   KU KU Skyra   1.385200        3.965200
## 135 20033     MR2   KU KU Skyra   1.740900        4.215900
## 136 20033     MR1   KU KU Skyra   1.573600        4.255400
## 137 20034     MR2   KU KU Skyra   1.574100        4.091400
## 138 20034     MR1   KU KU Skyra   1.369600        4.130400
## 139 20035     MR1   KU KU Skyra   1.568000        4.053100
## 140 20035     MR2   KU KU Skyra   1.450300        4.122000
## 141 20041     MR2   KU KU Skyra   1.650700        3.885200
## 142 20041     MR1   KU KU Skyra   1.756200        3.808800
## 143 20045     MR1   KU KU Skyra   1.649000        4.176000
## 144 20045     MR2   KU KU Skyra   1.610200        4.045300
## 145 20050     MR2   KU KU Skyra   1.831900        3.975600
## 146 20050     MR1   KU KU Skyra   1.792500        3.859300
## 147 20057     MR2   KU KU Skyra   1.888600        3.915100
## 148 20057     MR1   KU KU Skyra   1.910700        3.928300
## 149 20058     MR1   KU KU Skyra   1.599900        4.166000
## 150 20058     MR2   KU KU Skyra   1.604500        4.051100
## 151 20062     MR1   KU KU Skyra   1.736300        4.047600
## 152 20062     MR2   KU KU Skyra   1.644400        4.051100
## 153 20065     MR1   KU KU Skyra   1.551700        4.005300
## 154 20065     MR2   KU KU Skyra   1.141700        3.866500
## 155 20070     MR2   KU KU Skyra   1.350500        4.080100
## 156 20070     MR1   KU KU Skyra   1.523600        3.947800
## 157 20075     MR1   KU KU Skyra   1.622500        4.049200
## 158 20075     MR2   KU KU Skyra   1.779100        4.155000
## 159 20077     MR2   KU KU Skyra   1.630200        4.130700
## 160 20077     MR1   KU KU Skyra   1.523500        4.009700
## 161 20080     MR2   KU KU Skyra   1.349800        4.037500
## 162 20080     MR1   KU KU Skyra   1.393700        3.872700
## 163 20082     MR1   KU KU Skyra   1.952600        4.109500
## 164 20082     MR2   KU KU Skyra   1.890600        4.008400
## 165 20084     MR1   KU KU Skyra   1.422200        3.973200
## 166 20084     MR2   KU KU Skyra   1.457800        4.193800
## 167 20085     MR1   KU KU Skyra   1.822800        4.091400
## 168 20085     MR2   KU KU Skyra   1.668500        4.068300
## 169 20087     MR1   KU KU Skyra   1.509700        4.399700
## 170 20087     MR2   KU KU Skyra   1.610800        4.252800
## 171 20088     MR2   KU KU Skyra   1.482800        4.210900
## 172 20088     MR1   KU KU Skyra   1.469500        4.167500
## 173 20089     MR2   KU KU Skyra   1.485500        3.877600
## 174 20089     MR1   KU KU Skyra   1.379700        3.769800
## 175 20091     MR1   KU KU Skyra   1.619900        3.956900
## 176 20091     MR2   KU KU Skyra   1.554600        3.957500
## 177 20093     MR2   KU KU Skyra   1.525400        4.123900
## 178 20093     MR1   KU KU Skyra   1.646300        4.279700
## 179 20096     MR2   KU KU Skyra   1.518600        3.833900
## 180 20096     MR1   KU KU Skyra   1.548200        3.882000
## 181 20099     MR2   KU KU Skyra   1.583200        3.973800
## 182 20099     MR1   KU KU Skyra   1.537400        3.959300
## 183 20101     MR2   KU KU Skyra   1.367000        3.965500
## 184 20101     MR1   KU KU Skyra   1.321100        4.078600
## 185 20104     MR2   KU KU Skyra   1.868300        3.873700
## 186 20104     MR1   KU KU Skyra   1.748100        3.794500
## 187 20108     MR1   KU KU Skyra   1.676100        3.862700
## 188 20108     MR2   KU KU Skyra   1.601800        3.867300
## 189 20110     MR1   KU KU Skyra   1.547300        3.929500
## 190 20110     MR2   KU KU Skyra   1.488500        4.040800
## 191 20116     MR1   KU KU Skyra   1.597800        4.311100
## 192 20116     MR2   KU KU Skyra   1.539300        4.417000
## 193 20118     MR1   KU KU Skyra   1.576900        3.916400
## 194 20118     MR2   KU KU Skyra   1.467400        4.020800
## 195 20120     MR2   KU KU Skyra   1.890900        4.197900
## 196 20120     MR1   KU KU Skyra   1.861600        4.177600
## 197 20121     MR1   KU KU Skyra   1.685500        4.202100
## 198 20121     MR2   KU KU Skyra   1.829400        4.245100
## 199 20122     MR1   KU KU Skyra   1.658600        3.889800
## 200 20122     MR2   KU KU Skyra   1.533900        3.956800
## 201 20123     MR2   KU KU Skyra   1.610600        3.986500
## 202 20123     MR1   KU KU Skyra   1.638900        3.967700
## 203 20132     MR2   KU KU Skyra   1.756800        3.953700
## 204 20132     MR1   KU KU Skyra   1.655300        3.978400
## 205 20133     MR1   KU KU Skyra   1.821000        4.183700
## 206 20133     MR2   KU KU Skyra   1.962100        4.209300
## 207 20138     MR2   KU KU Skyra   1.476000        4.185400
## 208 20138     MR1   KU KU Skyra   1.668800        4.203400
## 209 20140     MR2   KU KU Skyra   1.941500        4.008500
## 210 20140     MR1   KU KU Skyra   1.793100        3.948800
## 211 20142     MR1   KU KU Skyra   1.872300        4.110700
## 212 20142     MR2   KU KU Skyra   1.670500        4.326000
## 213 20145     MR2   KU KU Skyra   1.491000        4.064100
## 214 20145     MR1   KU KU Skyra   1.337900        4.099400
## 215 20146     MR2   KU KU Skyra   1.773800        4.099100
## 216 20146     MR1   KU KU Skyra   1.807200        3.950300
## 217 20161     MR2   KU KU Skyra   1.738900        3.999500
## 218 20161     MR1   KU KU Skyra   1.826900        3.921700
## 219 20162     MR2   KU KU Skyra   1.548100        3.990600
## 220 20162     MR1   KU KU Skyra   1.668400        3.884300
## 221 20165     MR1   KU KU Skyra   1.504800        3.963800
## 222 20165     MR2   KU KU Skyra   1.497100        3.904800
## 223 20171     MR1   KU KU Skyra   1.478100        3.889600
## 224 20171     MR2   KU KU Skyra   1.474600        3.999400
## 225 20175     MR2   KU KU Skyra   1.677502        4.324955
## 226 20175     MR1   KU KU Skyra   1.817300        4.249700
## 227 20181     MR2   KU KU Skyra   1.577757        3.913434
## 228 20181     MR1   KU KU Skyra   1.456500        4.152500
## 229 20188     MR1   KU KU Skyra   1.468700        4.004200
## 230 20188     MR2   KU KU Skyra   1.341200        4.076400
## 231 20217     MR1   KU KU Skyra   1.277700        3.840100
## 232 20217     MR2   KU KU Skyra   1.321800        3.826200
##     MPRAGE_snr_total MPRAGE_snrd_total N
## 121         10.65610          55.61740 1
## 122         11.08000          58.66040 1
## 123         11.10110          71.39930 1
## 124         11.34120          70.32050 1
## 125         10.66120          68.32890 1
## 126         10.59500          64.19540 1
## 127         10.92100          74.40690 1
## 128         10.80890          65.38940 1
## 129         10.53490          76.16950 1
## 130         10.61310          70.99170 1
## 131         10.77090          70.71890 1
## 132         11.01440          66.20960 1
## 133         10.62540          65.28600 1
## 134         10.60400          64.53050 1
## 135          9.72420          54.83180 1
## 136          9.74920          68.96910 1
## 137         10.91690          64.69370 1
## 138         10.52030          70.04690 1
## 139         10.06050          61.21590 1
## 140          9.92910          60.68200 1
## 141         10.75690          65.35840 1
## 142         11.04540          57.42990 1
## 143         11.00790          67.73960 1
## 144         10.87940          67.76470 1
## 145         11.30240          71.15800 1
## 146         10.85770          64.15920 1
## 147         11.07200          59.32700 1
## 148         11.26220          57.80620 1
## 149         10.38980          64.01470 1
## 150         10.32330          55.83700 1
## 151         10.84140          76.55860 1
## 152         10.51120          64.64450 1
## 153         10.28400          70.27000 1
## 154          9.39760          28.79250 1
## 155          9.83250          82.18640 1
## 156         10.15100          92.00340 1
## 157         10.44750          71.22090 1
## 158         10.58270          81.74980 1
## 159         10.67870          50.87220 1
## 160         10.50550          54.47550 1
## 161         10.29380          62.60690 1
## 162         10.49540          64.64990 1
## 163         11.26310          52.84280 1
## 164         11.01320          53.03600 1
## 165          9.93820          79.51520 1
## 166          9.57370          74.36350 1
## 167         10.68650          64.39860 1
## 168         10.23500          78.62310 1
## 169          9.85940          52.03350 1
## 170          9.94800          51.47350 1
## 171          9.56200          55.90160 1
## 172         10.09150          63.93620 1
## 173         10.15430          74.69850 1
## 174          9.48910          72.18060 1
## 175          9.48460          64.50950 1
## 176          9.33000          55.74950 1
## 177         10.66130          84.46520 1
## 178         11.29370          77.92720 1
## 179          9.77770          61.80480 1
## 180          9.71590          59.89520 1
## 181         10.44120          70.43370 1
## 182         10.16890          71.24250 1
## 183          9.98210          60.45130 1
## 184          9.87370          62.65850 1
## 185         10.70490          59.61080 1
## 186         10.23250          65.05050 1
## 187         10.09970          74.39450 1
## 188         10.12060          79.78960 1
## 189         10.01030          75.40460 1
## 190          9.79500          74.95000 1
## 191         11.14300          80.71330 1
## 192         10.58020          69.82350 1
## 193         10.32900          63.60830 1
## 194         10.01970          60.92130 1
## 195         10.28640          66.56420 1
## 196         10.50940          62.87640 1
## 197         10.56220          64.59950 1
## 198         10.95030          65.86060 1
## 199         10.65070          72.84200 1
## 200         10.60200          71.72380 1
## 201         10.76110          58.07410 1
## 202         10.80990          56.28820 1
## 203         10.41890          66.86840 1
## 204          9.72690          39.99110 1
## 205         10.30810          62.71030 1
## 206         10.74570          54.34460 1
## 207         10.71490          69.74890 1
## 208         11.21150          64.39170 1
## 209         10.92590          60.05250 1
## 210          9.97660          47.37780 1
## 211         11.16010          68.29940 1
## 212         10.69660          61.98890 1
## 213         11.15040          64.22470 1
## 214         10.76990          69.65030 1
## 215          9.55040          46.99350 1
## 216          9.60330          48.25200 1
## 217         10.21220          94.68070 1
## 218         10.50070          90.46430 1
## 219          9.70710          52.52760 1
## 220          9.99110          50.01460 1
## 221         10.91740          66.69300 1
## 222         10.51490          65.40190 1
## 223         10.69900          64.53990 1
## 224         10.77850          66.33390 1
## 225         10.56387          56.16384 1
## 226         11.08420          59.75650 1
## 227         10.00178          66.27772 1
## 228          9.92920          62.67400 1
## 229         10.90420          58.49940 1
## 230         10.41320          59.49420 1
## 231          9.57040          70.16240 1
## 232          9.94020          80.21860 1
# Mann-Whitney U test (nonparametric test)
KU_MPRAGE_cnr.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_Kansas_Skyra,
  x = Session,
  y = MPRAGE_cnr,
  xlab = "Session",
  ylab = "CNR",
  type = "np",
  conf.level = 0.99,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
KU_MPRAGE_cnr.RepeatedMs.plot

KU_MPRAGE_fwhm.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_Kansas_Skyra,
  x = Session,
  y = MPRAGE_fwhm_avg,
  xlab = "Session",
  ylab = "FWHM",
  type = "np",
  conf.level = 0.99,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
KU_MPRAGE_fwhm.RepeatedMs.plot

KU_MPRAGE_snr.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_Kansas_Skyra,
  x = Session,
  y = MPRAGE_snr_total,
  xlab = "Session",
  ylab = "SNR",
  type = "np",
  conf.level = 0.99,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
KU_MPRAGE_snr.RepeatedMs.plot

KU_MPRAGE_snrd.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_Kansas_Skyra,
  x = Session,
  y = MPRAGE_snrd_total,
  xlab = "Session",
  ylab = "SNRd",
  type = "np",
  pairwise.annotation = "p-value",
  outlier.tagging = TRUE,
    outlier.label = SubID,
  pairwise.comparisons = TRUE,
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
KU_MPRAGE_snrd.RepeatedMs.plot

# combining the individual plots into a single plot
ggstatsplot::combine_plots(
  KU_MPRAGE_cnr.RepeatedMs.plot, KU_MPRAGE_fwhm.RepeatedMs.plot, KU_MPRAGE_snr.RepeatedMs.plot, KU_MPRAGE_snrd.RepeatedMs.plot,
  nrow = 2,
  title.text = "Kansas Site Repeated Measures: \nMPRAGE IQMs Non-parametric Test",
  caption.text = "Method: Non-parametric test from `ggstatsplot` R package",
  title.size = 12,
  caption.size = 10
)

## Linear mixed-effects model fit by REML
##   Data: Completed.Repeated.df 
##   Log-restricted-likelihood: 74.01776
##   Fixed: MPRAGE_cnr ~ Scanner * Session 
##                     (Intercept)               ScannerNEU Prisma 
##                      1.61491250                      0.21201417 
##            ScannerPITT Prisma 1            ScannerPITT Prisma 2 
##                      0.07153496                     -0.14321250 
##                      SessionMR2    ScannerNEU Prisma:SessionMR2 
##                     -0.01245075                      0.01920408 
## ScannerPITT Prisma 1:SessionMR2 ScannerPITT Prisma 2:SessionMR2 
##                      0.04148784                      0.04665075 
## 
## Random effects:
##  Formula: ~1 | SubID
##         (Intercept)  Residual
## StdDev:   0.1621287 0.1231769
## 
## Number of Observations: 292
## Number of Groups: 146
##                 numDF denDF   F-value p-value
## (Intercept)         1   142 12320.900  <.0001
## Scanner             3   142     9.923  <.0001
## Session             1   142     0.354  0.5527
## Scanner:Session     3   142     0.552  0.6479
# Mann-Whitney U test (nonparametric test)
MPRAGE_cnr.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = Completed.Repeated.df,
  x = Session,
  y = MPRAGE_cnr,
  xlab = "Session",
  ylab = "MPRAGE_cnr",
  type = "np",
  conf.level = 0.99,
  title = "Non-parametric Test",
  package = "ggsci",
  palette = "uniform_startrek",
  ggtheme = ggthemes::theme_map(),
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
MPRAGE_cnr.RepeatedMs.plot

MPRAGE_fwhm_avg.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = Completed.Repeated.df,
  x = Session,
  y = MPRAGE_fwhm_avg,
  xlab = "Session",
  ylab = "MPRAGE_fwhm_avg",
  type = "np",
  conf.level = 0.99,
  title = "Non-parametric Test",
  package = "ggsci",
  palette = "uniform_startrek",
  ggtheme = ggthemes::theme_map(),
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
MPRAGE_fwhm_avg.RepeatedMs.plot

MPRAGE_snr_total.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = Completed.Repeated.df,
  x = Session,
  y = MPRAGE_snr_total,
  xlab = "Session",
  ylab = "MPRAGE_snr_total",
  type = "np",
  conf.level = 0.99,
  title = "Non-parametric Test",
  package = "ggsci",
  palette = "uniform_startrek",
  ggtheme = ggthemes::theme_map(),
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
MPRAGE_snr_total.RepeatedMs.plot

MPRAGE_snrd_total.RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = Completed.Repeated.df,
  x = Session,
  y = MPRAGE_snrd_total,
  xlab = "Session",
  ylab = "MPRAGE_snrd_total",
  type = "np",
  conf.level = 0.99,
  title = "Non-parametric Test",
  package = "ggsci",
  palette = "uniform_startrek",
  ggtheme = ggthemes::theme_map(),
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
MPRAGE_snrd_total.RepeatedMs.plot

Completed.Repeated.df$N<-1
BySession<-Completed.Repeated.df %>%
  group_by(Scanner, Session) %>%
  summarise( ScannerCount=sum(N), 
             meanCNR=mean(MPRAGE_cnr), sdCNR=sd(MPRAGE_cnr),
             meanFWHM=mean(MPRAGE_fwhm_avg), sdFWHM=sd(MPRAGE_fwhm_avg),
             meanSNR=mean(MPRAGE_snr_total), sdSNR=sd(MPRAGE_snr_total),
             meanSNRd=mean(MPRAGE_snrd_total), sdSNRd=sd(MPRAGE_snrd_total))
BySession
## # A tibble: 8 x 11
## # Groups:   Scanner [4]
##   Scanner Session ScannerCount meanCNR  sdCNR meanFWHM sdFWHM meanSNR
##   <fct>   <fct>          <dbl>   <dbl>  <dbl>    <dbl>  <dbl>   <dbl>
## 1 KU Sky… MR1               56    1.61  0.159     4.03  0.141   10.5 
## 2 KU Sky… MR2               56    1.60  0.174     4.06  0.137   10.4 
## 3 NEU Pr… MR1               30    1.83  0.250     4.12  0.136   10.6 
## 4 NEU Pr… MR2               30    1.83  0.277     4.16  0.153   10.4 
## 5 PITT P… MR1               59    1.69  0.174     4.14  0.144   10.1 
## 6 PITT P… MR2               59    1.72  0.224     4.16  0.154   10.2 
## 7 PITT P… MR1                1    1.47 NA         4.19 NA        9.41
## 8 PITT P… MR2                1    1.51 NA         4.26 NA        9.93
## # … with 3 more variables: sdSNR <dbl>, meanSNRd <dbl>, sdSNRd <dbl>
## Step 3
DATA_NEU_Prisma<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="NEU Prisma",]
DATA_Kansas_Skyra<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="KU Skyra",]
DATA_PITT_Prisma_1<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="PITT Prisma 1",]
DATA_PITT_Prisma_2<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="PITT Prisma 2",]


NU_MPRAGEsnr_RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_NEU_Prisma,
  x = Session,
  y = MPRAGE_snr_total,
  xlab = "Session",
  ylab = "MPRAGE_snr_total",
  type = "np",
  conf.level = 0.99,
  title = "Northeastern Repeated Measures Non-Parametric Test",
  package = "ggsci",
  palette = "uniform_startrek",
  ggtheme = ggthemes::theme_map(),
  ggstatsplot.layer = FALSE,
  messages = FALSE
)

NU_MPRAGEsnr_RepeatedMs.plot

KU_MPRAGEsnr_RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_Kansas_Skyra,
  x = Session,
  y = MPRAGE_snr_total,
  xlab = "Session",
  ylab = "MPRAGE_snr_total",
  type = "np",
  conf.level = 0.99,
  title = "Kansas Repeated Measures Non-Parametric Test",
  package = "ggsci",
  palette = "uniform_startrek",
  ggtheme = ggthemes::theme_map(),
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
KU_MPRAGEsnr_RepeatedMs.plot

Pitt1_MPRAGEsnr_RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_PITT_Prisma_1,
  x = Session,
  y = MPRAGE_snr_total,
  xlab = "Session",
  ylab = "MPRAGE_snr_total",
  type = "np",
  conf.level = 0.99,
  title = "Pitt Prisma 1 Repeated Measures Non-Parametric Test",
  package = "ggsci",
  palette = "uniform_startrek",
  ggtheme = ggthemes::theme_map(),
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
Pitt1_MPRAGEsnr_RepeatedMs.plot

Pitt2_MPRAGEsnr_RepeatedMs.plot<- ggstatsplot::ggwithinstats(
  data = DATA_PITT_Prisma_2,
  x = Session,
  y = MPRAGE_snr_total,
  xlab = "Session",
  ylab = "MPRAGE_snr_total",
  type = "np",
  conf.level = 0.99,
  title = "Pitt Prisma 2 Repeated Measures Non-Parametric Test",
  package = "ggsci",
  palette = "uniform_startrek",
  ggtheme = ggthemes::theme_map(),
  ggstatsplot.layer = FALSE,
  messages = FALSE
)
## Warning: cannot compute confidence interval when all observations are zero
## or tied
## Warning in stats::qt(p = 1 - (0.05/2), df = n - 1): NaNs produced

## Warning in stats::qt(p = 1 - (0.05/2), df = n - 1): NaNs produced
Pitt2_MPRAGEsnr_RepeatedMs.plot
## Warning in max(data$density): no non-missing arguments to max; returning -
## Inf

Two-way repeated measures ANOVA

Assumptions:

  • No missing values
  • Normality of distribution (use the Shapiro-Wilk),
  • Sphericity (e.g. equality of variance for all possible pairs of groups) in the experimental design.
  • Groups contain no outliers
## Warning in as_grob.default(plot): Cannot convert object of class list into
## a grob.

Remove variance from scanner (Scale IQMs by Scanner) and complete repeated measures anova within subjects

## Step 3
DATA_NEU_Prisma_Z<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="NEU Prisma",]
DATA_Kansas_Skyra_Z<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="KU Skyra",]
DATA_PITT_Prisma_1_Z<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="PITT Prisma 1",]
DATA_PITT_Prisma_2_Z<-Completed.Repeated.df[Completed.Repeated.df$Scanner=="PITT Prisma 2",]

DATA_NEU_Prisma_Z[,5:8]<-scale(DATA_NEU_Prisma_Z[,5:8])
DATA_Kansas_Skyra_Z[,5:8]<-scale(DATA_Kansas_Skyra_Z[,5:8])
DATA_PITT_Prisma_1_Z[,5:8]<-scale(DATA_PITT_Prisma_1_Z[,5:8])
DATA_PITT_Prisma_2_Z[,5:8]<-scale(DATA_PITT_Prisma_2_Z[,5:8])
## Put it all back together now!
Complete_SiteZ.df<-rbind.data.frame(DATA_NEU_Prisma_Z,DATA_Kansas_Skyra_Z, DATA_PITT_Prisma_1_Z,DATA_PITT_Prisma_2_Z)
Complete_SiteZ.df<-Complete_SiteZ.df[!is.na(Complete_SiteZ.df$SubID),]
Complete_SiteZ.df$Session<-as.factor(Complete_SiteZ.df$Session)
rm(DATA_Kansas_Skyra_Z, DATA_NEU_Prisma_Z, DATA_PITT_Prisma_1_Z, DATA_PITT_Prisma_2_Z)
results.lme.scanner_sess_ind <- lme(MPRAGE_cnr ~ Scanner + Session, random=~1|SubID, data=Completed.Repeated.df)
anova(results.lme.scanner_sess_ind)
##             numDF denDF   F-value p-value
## (Intercept)     1   145 12320.900  <.0001
## Scanner         3   142     9.923  <.0001
## Session         1   145     0.358  0.5508