*Load Datasets; PROC IMPORT datafile='/home/.../alarm_df1.csv' dbms=csv out=alarm_df1 replace; getnames=yes; guessingrows=1000; PROC IMPORT datafile='/home/.../alarm_df2.csv' dbms=csv out=alarm_df2 replace; getnames=yes; guessingrows=1000; PROC IMPORT datafile='/home/.../bed_df1.csv' dbms=csv out=bed_df1 replace; getnames=yes; guessingrows=1000; PROC IMPORT datafile='/home/.../bed_df2.csv' dbms=csv out=bed_df2 replace; getnames=yes; guessingrows=1000; *Exercise 1: Pre/post test; *1.1: No control; PROC PRINT data=alarm_df1; PROC PRINT data=alarm_df2; PROC SGPLOT data=alarm_df1; where alarm="New_Alarm"; vbox snooze / category=time; PROC TTEST data=alarm_df2; where alarm="New_Alarm"; paired snooze_pre*snooze_post; *1.2: Control; PROC SGPLOT data=alarm_df2; vbox snooze_diff /category=alarm; PROC TTEST data=alarm_df2; class alarm; var snooze_diff; PROC SGPLOT data=alarm_df1 noautolegend; series x=time y=snooze / group=ID; *Exercise 2: Repeated-measures ANOVA; *2.1: Month alone; PROC PRINT data=bed_df1; PROC SGPLOT data=bed_df1; vbox sleep /category=month; PROC GLIMMIX data=bed_df1; class month; model sleep=month/s; PROC GLIMMIX data=bed_df1; class month ID; model sleep=month/s; random ID; lsmeans month/ cl; ods output LSMeans=lsm1; PROC SGPLOT data=lsm1; vbarparm category=month response=Estimate/ limitlower=Lower limitupper=Upper; *2.2: Month and Treatment; PROC SGPLOT data=bed_df1; vbox sleep/category=month group=treat; PROC GLIMMIX data=bed_df1; class month treat; model sleep=month|treat/s; PROC GLIMMIX data=bed_df1; class month treat ID; model sleep=month|treat/s; random ID; lsmeans month*treat/ cl; ods output LSMeans=lsm2; PROC SGPLOT data=lsm2; vbarparm category=month response=Estimate/group=treat groupdisplay=cluster limitlower=Lower limitupper=Upper; *Exercise 3: Mixed Models; *3.1: Month alone; PROC PRINT data=bed_df2; PROC SGPLOT data=bed_df2; scatter x=month y=sleep; PROC GLIMMIX data=bed_df2; model sleep=month/s; output out=pred1 pred lcl ucl; PROC SGPLOT data=pred1; band x=month lower=lcl upper=ucl/ transparency=0.25; scatter y=sleep x=month; series y=Pred x=month; PROC GLIMMIX data=bed_df2; class ID; model sleep=month/s; random ID; *3.2: Month and Brand; PROC GLIMMIX data=bed_df2; class brand ID; model sleep=month|brand/s; PROC GLIMMIX data=bed_df2; class brand ID; model sleep=month|brand/s; random ID;