90 likes | 242 Views
Control Your Life(test). George Hage Associate Director of Statistical Programming OSI Pharmaceuticals. OSI. Mid-sized Biotech Focused on the development of targeted therapies to treat cancer. Our marketed compound is a cytostatic agent vs. cytotoxic.
E N D
Control Your Life(test) George Hage Associate Director of Statistical Programming OSI Pharmaceuticals
OSI • Mid-sized Biotech • Focused on the development of targeted therapies to treat cancer. • Our marketed compound is a cytostatic agent vs. cytotoxic. • Primary endpoint is generally survival, progression free survival, or time to progression vs. response rate. • Most often used statistical procedure is time-to-event analysis
With ODS Why Develop a Macro? • ODS does produce better graphics straight out of the LIFETEST procedure • But we needed even more control to normalize plots and we needed a macro that was relatively easy to use for those who do not know SAS intimately
Graphics: Need as much flexibility as we could program • Multiple lines per plot • Ability to export plotted data • Legends • Axes control • Title/Footnote • Device control • Censoring • As well as control over PROC LIFETEST
Disclaimers • I am an old programmer and use old programming techniques…I am sure there are other ways of programming this • With flexibility comes many macro variables to define. I tried to default as many as I thought practical. • This was programmed for our shop, thus probably is not as robust as it can be.
Macro Variables dsn Dataset used for lifetest (mandatory) filenm Path and filename for the desired output (mandatory) xlsnm Path and filename for the desired XLS file device Printer device (default - CGMOF971) vr Time to Event variable (mandatory) cens Time to Event Censor variable (mandatory) strat Stratification variable (mandatory) stratfmt Optional Stratification variable format anno Annotate dataset name titl Title of graph titl2 Title2 of graph t_ht Title font size in points
Macro Variables (continued) ctitle Title color (default Black) foot Footer of graph (default Test Footer) foot2 Footer2 of graph (default Test Footer) prntcens Y/N toggle to plot censors (default Y) font Font for all labels/titles/footers/axes (default Swiss) x_min Minimum value for X axis (default - 0) x_max Maximum value for X axis (default - 30) x_by Major divisions of X axis (default - 6) x_dec Number of decimal places for X labels (default - 0) x_lngth Length in inches of X axis (default - 8) x_lbl Label of X axis (default - Survival (months)) x_ht X axis label font ht in points (default - 14)
Macro Variables (continued) x_val_ht X axis value height (default -10) x_off X axis offset (default - 0) y_min Minimum value for Y axis (default - 0) y_max Maximum value for Y axis (default – 1) y_by Major divisions of Y axis (default - .1) y_dec Number of decimal places for Y labels (default – 1) y_lngth Length in inches of Y axis (default – 8) y_lbl Label of Y axis (default - Kaplan-Meier~Estimate) y_ht Y axis label font ht in points (default – 14) y_val_ht Y axis value height (default – 10) y_off Y axis offset (default – 0) axiscol All axis color (default – Black)
Macro Variables (continued) linecoll Line one color (default – Black) linecol2 Line two color (default – Red) linecol3 Line three color (default Purple) linecol4 Line four color (default Orange) linecol5 Line five color (default Green) linecol6 Line six color (default Blue) lwidth Line width, sets for all lines on the plot (default – 4) legend Y/N toggle to include legend (default – Y) border Y/N toggle to place border around plot (default – N)