Example 1 for PROC BGLIMM

/****************************************************************/
/*          S A S   S A M P L E   L I B R A R Y                 */
/*                                                              */
/*    NAME: bglmmex1                                            */
/*   TITLE: Example 1 for PROC BGLIMM                           */
/*    DESC: Normal regression with repeated measurements        */
/*     REF:                                                     */
/* PRODUCT: STAT                                                */
/*  SYSTEM: ALL                                                 */
/*    KEYS:                                                     */
/*   PROCS: BGLIMM                                              */
/*                                                              */
/* SUPPORT: Amy Shi                                             */
/****************************************************************/

data Fev;
   input Patient Baseval Drug$ Hour FEV;
   datalines;
   201        2.46      a        1     2.68
   201        2.46      a        2     2.76
   201        2.46      a        3     2.50
   201        2.46      a        4     2.30
   201        2.46      a        5     2.14
   201        2.46      a        6     2.40
   201        2.46      a        7     2.33
   202        3.50      a        3     2.93
   202        3.50      a        4     2.53
   202        3.50      a        5     3.04
   202        3.50      a        7     3.14
   202        3.50      a        8     2.62
   203        1.96      a        2     2.34
   203        1.96      a        3     2.29
   203        1.96      a        4     2.43
   203        1.96      a        5     2.06
   203        1.96      a        6     2.18
   203        1.96      a        7     2.28
   203        1.96      a        8     2.29
   204        3.44      a        1     4.08
   204        3.44      a        2     3.87
   204        3.44      a        3     3.79
   204        3.44      a        4     3.30
   204        3.44      a        5     3.80
   204        3.44      a        6     3.24
   204        3.44      a        7     2.98
   204        3.44      a        8     2.91
   205        2.80      a        1     4.09
   205        2.80      a        2     3.90
   205        2.80      a        3     3.54
   205        2.80      a        5     3.15
   205        2.80      a        6     3.23
   205        2.80      a        7     3.46
   205        2.80      a        8     3.27
   206        2.36      a        1     3.79
   206        2.36      a        2     3.97
   206        2.36      a        3     3.78
   206        2.36      a        4     3.69
   207        1.77      a        1     3.82
   207        1.77      a        2     3.44
   207        1.77      a        3     3.46
   207        1.77      a        4     3.02
   207        1.77      a        6     3.10
   207        1.77      a        7     2.79
   208        2.64      a        1     3.67
   208        2.64      a        2     3.47
   208        2.64      a        3     3.19
   208        2.64      a        5     2.85
   208        2.64      a        6     2.68
   208        2.64      a        7     2.60
   209        2.30      a        1     4.12
   209        2.30      a        3     3.57
   209        2.30      a        4     3.49
   209        2.30      a        5     3.64
   209        2.30      a        6     3.38
   209        2.30      a        8     3.72
   210        2.27      a        1     2.77
   210        2.27      a        2     2.77
   210        2.27      a        3     2.75
   210        2.27      a        4     2.75
   210        2.27      a        5     2.71
   210        2.27      a        6     2.75
   210        2.27      a        7     2.52
   210        2.27      a        8     2.60
   211        2.44      a        1     3.77
   211        2.44      a        2     3.73
   211        2.44      a        3     3.67
   211        2.44      a        4     3.56
   211        2.44      a        5     3.59
   211        2.44      a        7     3.32
   211        2.44      a        8     3.18
   212        2.04      a        1     2.00
   212        2.04      a        4     2.09
   212        2.04      a        5     2.08
   212        2.04      a        6     1.98
   212        2.04      a        7     1.70
   212        2.04      a        8     1.40
   214        2.77      a        1     3.36
   214        2.77      a        2     3.42
   214        2.77      a        3     3.28
   214        2.77      a        4     3.30
   214        2.77      a        5     3.31
   214        2.77      a        6     2.99
   214        2.77      a        8     3.08
   215        2.96      a        2     4.02
   215        2.96      a        3     3.38
   215        2.96      a        4     3.31
   215        2.96      a        5     3.46
   215        2.96      a        7     3.38
   215        2.96      a        8     3.35
   216        3.11      a        1     3.88
   216        3.11      a        2     3.92
   216        3.11      a        3     3.71
   216        3.11      a        4     3.59
   216        3.11      a        7     3.42
   216        3.11      a        8     3.63
   217        1.47      a        1     1.97
   217        1.47      a        4     1.45
   217        1.47      a        5     1.24
   218        2.73      a        1     2.91
   218        2.73      a        2     2.99
   218        2.73      a        3     2.87
   218        2.73      a        4     2.88
   218        2.73      a        5     2.84
   218        2.73      a        6     2.67
   219        3.25      a        1     3.59
   219        3.25      a        2     3.54
   219        3.25      a        6     3.05
   219        3.25      a        7     3.27
   219        3.25      a        8     2.96
   220        2.73      a        1     2.88
   220        2.73      a        6     2.58
   220        2.73      a        7     2.68
   220        2.73      a        8     2.42
   221        3.30      a        1     4.04
   221        3.30      a        2     3.94
   221        3.30      a        3     3.84
   221        3.30      a        4     3.99
   221        3.30      a        5     3.90
   221        3.30      a        6     3.89
   221        3.30      a        7     3.89
   221        3.30      a        8     2.98
   222        2.85      a        1     3.38
   222        2.85      a        2     3.42
   222        2.85      a        3     3.28
   222        2.85      a        4     2.94
   222        2.85      a        6     3.12
   222        2.85      a        7     2.98
   222        2.85      a        8     2.99
   223        2.72      a        1     4.49
   223        2.72      a        3     4.38
   223        2.72      a        4     4.36
   223        2.72      a        6     4.23
   223        2.72      a        7     3.83
   223        2.72      a        8     3.89
   224        3.68      a        3     4.16
   224        3.68      a        4     4.07
   224        3.68      a        5     3.87
   224        3.68      a        6     3.87
   224        3.68      a        7     3.85
   232        2.49      a        1     3.73
   232        2.49      a        3     3.16
   232        2.49      a        4     3.26
   232        2.49      a        6     2.77
   232        2.49      a        7     2.92
   201        2.30      c        1     3.41
   201        2.30      c        2     3.48
   201        2.30      c        3     3.41
   201        2.30      c        4     3.49
   201        2.30      c        6     3.20
   201        2.30      c        7     3.07
   202        2.91      c        1     3.92
   202        2.91      c        2     4.02
   202        2.91      c        3     4.04
   202        2.91      c        6     3.10
   202        2.91      c        7     2.70
   202        2.91      c        8     2.69
   203        2.08      c        1     2.52
   203        2.08      c        2     2.44
   203        2.08      c        3     2.27
   203        2.08      c        5     2.01
   203        2.08      c        7     2.34
   203        2.08      c        8     2.44
   204        3.02      c        2     4.30
   204        3.02      c        6     3.23
   204        3.02      c        7     2.46
   204        3.02      c        8     2.97
   205        3.26      c        2     4.58
   205        3.26      c        3     4.44
   205        3.26      c        4     4.04
   205        3.26      c        5     4.33
   205        3.26      c        6     3.87
   205        3.26      c        8     3.81
   206        2.29      c        2     4.37
   206        2.29      c        3     4.10
   206        2.29      c        5     3.84
   206        2.29      c        6     3.43
   206        2.29      c        7     3.79
   206        2.29      c        8     3.74
   207        1.96      c        1     3.00
   207        1.96      c        3     2.59
   207        1.96      c        4     2.42
   207        1.96      c        5     1.61
   207        1.96      c        6     1.83
   207        1.96      c        7     1.21
   207        1.96      c        8     1.50
   208        2.70      c        1     4.06
   208        2.70      c        2     3.98
   208        2.70      c        3     4.06
   208        2.70      c        4     3.93
   208        2.70      c        5     3.61
   209        2.50      c        2     4.06
   209        2.50      c        5     3.17
   210        2.35      c        1     2.83
   210        2.35      c        3     2.82
   210        2.35      c        4     2.79
   210        2.35      c        5     2.80
   210        2.35      c        7     2.64
   210        2.35      c        8     2.69
   211        2.34      c        1     4.06
   211        2.34      c        2     3.68
   211        2.34      c        3     3.59
   211        2.34      c        5     2.60
   211        2.34      c        7     2.22
   211        2.34      c        8     2.68
   212        2.20      c        3     2.57
   212        2.20      c        4     2.30
   212        2.20      c        6     1.90
   212        2.20      c        7     2.07
   212        2.20      c        8     1.76
   214        2.78      c        1     3.18
   214        2.78      c        3     3.11
   214        2.78      c        4     2.97
   214        2.78      c        6     3.27
   214        2.78      c        7     3.24
   215        3.43      c        1     4.39
   215        3.43      c        2     4.63
   215        3.43      c        3     4.19
   215        3.43      c        7     3.47
   215        3.43      c        8     3.22
   216        3.07      c        1     3.90
   216        3.07      c        3     4.09
   216        3.07      c        4     4.03
   216        3.07      c        6     3.56
   216        3.07      c        8     3.75
   217        1.21      c        2     2.19
   217        1.21      c        3     2.21
   217        1.21      c        4     2.09
   217        1.21      c        5     1.75
   217        1.21      c        6     1.72
   217        1.21      c        7     1.80
   218        2.60      c        1     3.19
   218        2.60      c        2     3.18
   218        2.60      c        3     3.15
   218        2.60      c        4     3.14
   218        2.60      c        5     3.08
   218        2.60      c        6     2.96
   218        2.60      c        7     2.97
   218        2.60      c        8     2.85
   219        2.61      c        1     3.54
   219        2.61      c        5     3.07
   219        2.61      c        7     2.47
   220        2.48      c        4     2.94
   220        2.48      c        5     2.69
   220        2.48      c        7     2.68
   220        2.48      c        8     2.70
   221        3.73      c        1     4.37
   221        3.73      c        2     4.20
   221        3.73      c        4     4.19
   221        3.73      c        6     3.86
   221        3.73      c        7     3.89
   222        2.54      c        1     3.26
   222        2.54      c        2     3.39
   222        2.54      c        3     3.27
   222        2.54      c        4     3.20
   222        2.54      c        5     3.32
   222        2.54      c        6     3.09
   222        2.54      c        7     3.25
   222        2.54      c        8     3.15
   223        2.83      c        1     4.72
   223        2.83      c        2     4.97
   223        2.83      c        3     4.99
   223        2.83      c        5     4.95
   223        2.83      c        6     4.82
   223        2.83      c        7     4.56
   223        2.83      c        8     4.49
   224        3.47      c        1     4.27
   224        3.47      c        2     4.50
   224        3.47      c        3     4.34
   224        3.47      c        4     4.00
   224        3.47      c        5     4.11
   224        3.47      c        8     3.77
   232        2.79      c        2     3.85
   232        2.79      c        3     4.27
   232        2.79      c        4     4.01
   232        2.79      c        6     3.14
   232        2.79      c        7     3.94
   201        2.14      p        1     2.36
   201        2.14      p        2     2.36
   201        2.14      p        3     2.28
   201        2.14      p        4     2.35
   201        2.14      p        5     2.31
   201        2.14      p        6     2.62
   202        3.37      p        2     3.02
   202        3.37      p        3     3.19
   202        3.37      p        4     2.98
   202        3.37      p        6     2.75
   202        3.37      p        7     2.70
   203        1.88      p        1     1.99
   203        1.88      p        2     1.62
   203        1.88      p        3     1.65
   203        1.88      p        4     1.68
   203        1.88      p        7     1.96
   203        1.88      p        8     1.30
   204        3.10      p        1     3.24
   204        3.10      p        2     3.37
   204        3.10      p        3     3.54
   204        3.10      p        4     3.31
   204        3.10      p        5     2.81
   204        3.10      p        6     3.58
   205        2.91      p        2     3.92
   205        2.91      p        3     3.69
   205        2.91      p        4     3.97
   205        2.91      p        5     3.94
   205        2.91      p        6     3.63
   205        2.91      p        7     2.92
   205        2.91      p        8     3.31
   206        2.29      p        1     3.04
   206        2.29      p        2     3.28
   206        2.29      p        3     3.17
   206        2.29      p        6     3.21
   206        2.29      p        8     2.82
   207        2.20      p        1     2.46
   207        2.20      p        2     3.22
   207        2.20      p        3     2.65
   207        2.20      p        4     3.02
   207        2.20      p        5     2.25
   207        2.20      p        7     2.37
   208        2.70      p        1     2.85
   208        2.70      p        2     2.81
   208        2.70      p        4     2.69
   208        2.70      p        5     2.18
   208        2.70      p        6     1.91
   209        2.25      p        1     3.45
   209        2.25      p        4     3.60
   209        2.25      p        5     2.83
   209        2.25      p        7     3.22
   209        2.25      p        8     3.13
   210        2.48      p        1     2.56
   210        2.48      p        2     2.52
   210        2.48      p        4     2.60
   210        2.48      p        5     2.68
   210        2.48      p        7     2.65
   210        2.48      p        8     2.61
   211        2.12      p        1     2.19
   211        2.12      p        2     2.44
   211        2.12      p        4     2.55
   211        2.12      p        5     2.93
   211        2.12      p        6     3.08
   211        2.12      p        8     3.06
   212        2.37      p        2     1.92
   212        2.37      p        3     1.75
   212        2.37      p        4     1.58
   212        2.37      p        5     1.51
   212        2.37      p        6     1.94
   212        2.37      p        7     1.84
   212        2.37      p        8     1.76
   214        2.73      p        2     3.08
   214        2.73      p        4     2.91
   214        2.73      p        5     2.71
   214        2.73      p        6     2.39
   214        2.73      p        7     2.42
   214        2.73      p        8     2.73
   215        3.15      p        4     2.39
   215        3.15      p        5     3.01
   215        3.15      p        8     3.14
   216        2.52      p        2     3.21
   216        2.52      p        3     3.17
   216        2.52      p        4     3.13
   216        2.52      p        8     3.35
   217        1.48      p        1     1.35
   217        1.48      p        2     1.15
   217        1.48      p        3     1.24
   217        1.48      p        4     1.32
   217        1.48      p        5     0.95
   217        1.48      p        7     1.04
   217        1.48      p        8     1.16
   218        2.52      p        1     2.61
   218        2.52      p        2     2.59
   218        2.52      p        3     2.77
   218        2.52      p        4     2.73
   218        2.52      p        5     2.70
   218        2.52      p        6     2.72
   218        2.52      p        7     2.71
   218        2.52      p        8     2.75
   219        2.90      p        1     2.91
   219        2.90      p        2     2.89
   219        2.90      p        4     2.74
   219        2.90      p        5     2.71
   219        2.90      p        6     2.86
   220        2.83      p        1     2.78
   220        2.83      p        2     2.89
   220        2.83      p        3     2.77
   220        2.83      p        4     2.77
   220        2.83      p        6     2.65
   220        2.83      p        7     2.84
   221        3.50      p        1     3.81
   221        3.50      p        4     3.90
   221        3.50      p        5     3.80
   221        3.50      p        6     3.78
   221        3.50      p        7     3.70
   221        3.50      p        8     3.61
   222        2.86      p        1     3.06
   222        2.86      p        2     2.95
   222        2.86      p        3     3.07
   222        2.86      p        5     2.67
   222        2.86      p        6     2.68
   222        2.86      p        8     2.89
   223        2.42      p        1     2.87
   223        2.42      p        2     3.08
   223        2.42      p        3     3.02
   223        2.42      p        4     3.14
   223        2.42      p        5     3.67
   223        2.42      p        7     3.55
   223        2.42      p        8     3.75
   224        3.66      p        1     3.98
   224        3.66      p        2     3.77
   224        3.66      p        3     3.65
   224        3.66      p        4     3.81
   224        3.66      p        6     3.89
   224        3.66      p        7     3.63
   232        2.88      p        1     3.04
   232        2.88      p        4     3.37
   232        2.88      p        5     2.69
   232        2.88      p        6     2.89
;

data SixPatients;
   set Fev;
   if 206 <= Patient <= 211 then output;
run;

proc sgpanel data=SixPatients noautolegend;
   panelby Drug / columns=3;
   rowaxis label = "FEV";
   scatter x=Hour y=Fev / group=Patient;
   series x=Hour y=Fev / group=Patient;
run;

proc bglimm data=Fev nmc=50000 nbi=2000 seed=44672057
      outpost=Fev_mod1 ;
   class Drug Patient Hour;
   model FEV = BaseVal Drug;
   random int / subject=Hour covprior=uniform(lower=0,upper=2);
   random int / subject=Patient;
run;

proc bglimm data=Fev nmc=10000 seed=44672057
      outpost=Fev_mod2;
   class Drug Patient Hour;
   model FEV = BaseVal Drug Hour;
   random int / subject=Patient;
   estimate "A vs B" Drug 1 -1;
run;

proc bglimm data=Fev nmc=10000 seed=44672057
      outpost=Fev_mod4;
   class Drug Patient Hour;
   model FEV = BaseVal Drug Hour;
   random int / subject=Patient;
   repeated Hour / subject=Patient(Drug) type=un r rcorr;
run;

ods output rcorr=rcorr r=rcov;
proc bglimm data=Fev nmc=10000 seed=44672057
      outpost=Fev_mod4;
   class Drug Patient Hour;
   model FEV = BaseVal Drug Hour;
   random int / subject=Patient;
   repeated hour / subject=Patient(Drug) type=un r rcorr;
run;

data r;
   set rcorr;
   array col[8] col_:;
   X = Row;
   do Y = 1 to 8;
      corr = col[Y];
      output;
   end;
   keep X Y corr;
   run;

data c;
   set rcov;
   array col[8] col_:;
   X = Row;
   do Y = 1 to 8;
      cov = col[Y];
      output;
   end;
   keep cov;
   run;

data a;
   merge r c;
   run;

proc template;
   define statgraph heatmaps;
      begingraph / subpixel=on;
      entrytitle "Correlation Matrices";
      layout overlay /
         xaxisopts=(label='Hour'
                    discreteopts=(tickvaluefitpolicy=thin))
         yaxisopts=(label='Hour'
                    discreteopts=(tickvaluefitpolicy=thin)
                    reverse=true)
         aspectRatio=1;
      heatMapParm x=x y=y colorResponse=corr / xGap=1px yGap=1px
         colormodel=threecolorramp name='heat2';
      continuouslegend 'heat' / orient=vertical location=outside halign=right;
      endlayout;
      endgraph;
      end;
   run;

proc sgrender data=a template=heatmaps;
run;

data Pred;
   input Patient BaseVal Drug$ Hour FEV;
   datalines;
   1   2.46   a    1  .
   1   2.46   a    2  .
   1   2.46   a    3  .
   1   2.46   a    4  .
   1   2.46   a    5  .
   1   2.46   a    6  .
   1   2.46   a    7  .
   1   2.46   a    8  .
   1   2.46   c    1  .
   1   2.46   c    2  .
   1   2.46   c    3  .
   1   2.46   c    4  .
   1   2.46   c    5  .
   1   2.46   c    6  .
   1   2.46   c    7  .
   1   2.46   c    8  .
   1   2.46   p    1  .
   1   2.46   p    2  .
   1   2.46   p    3  .
   1   2.46   p    4  .
   1   2.46   p    5  .
   1   2.46   p    6  .
   1   2.46   p    7  .
   1   2.46   p    8  .
;

data Combined;
   set Fev Pred;
run;

proc bglimm data=Combined nmc=10000 seed=44672057
      outpost=Fev_mod4_pred;
   class Drug Patient Hour;
   model FEV = BaseVal Drug|Hour;
   random int / subject=Patient;
   repeated Hour / subject=Patient(Drug) type=un;
run;

%sumint(data=Fev_mod4_pred, var=FEV_:, print=NO, out=pred_si)

data Comb_pred;
   merge Pred Pred_si;
   run;

proc sgpanel data=Comb_pred noautolegend;
   panelby Drug / columns=3 ;
   rowaxis label = "FEV";
   scatter x=Hour y=mean / group=Patient;
   series x=Hour y=mean / group=Patient;
run;