Notes
Notes - notes.io |
dm "clear log; clear output;";
options nofmterr symbolgen mprint mlogic validvarname=UPCASE;
%macro graph_max(mytable=,var=,flag=,paramcd=,t1=,t2=,t4=,f1=,f2=,f3=,f4=,text1=,out=,pt=,tx=);
**keep the required variables and calculate the proprotion for ALT and BILI;
proc datasets lib = work kill nolist ;
quit;
data lb;
set adam.adlb;
¶mcd.;
if saffl = 'Y';
if aval ne .;
if &flag. = "Y" ;
if avisit = "WORST POST BASELINE" ;
if dtype = 'HIGHEST';
if not missing(aval) and not missing(anrhi) then fold = AVAL/ANRHI;
keep usubjid paramcd aval anrhi TRT01A TRT01AN fold avisit dtype ;
run;
**Calculate maximum fold for each subject for each testcd;
proc sql;
create table mlb as select distinct usubjid, paramcd, max(fold) as mval, TRT01AN from lb
group by usubjid, paramcd
order by usubjid, paramcd;
quit;
proc sort data = mlb;
by usubjid TRT01AN;
run;
proc transpose data = mlb out = tmlb;
by usubjid TRT01AN;
var mval;
id paramcd;
run;
data tmlb1;
set tmlb;
if TRT01AN = 1 then trt = 'Omadacycline';
if TRT01AN = 2 then trt = 'Linezolid';
if TRT01AN = 3 then trt = 'Moxifloxacin';
if trt ne ' ';
run;
proc sort data = tmlb1 out=graphs.&out;
by trt;
run;
data annotate_dat;
length function color $8 text $50;
retain xsys ysys '2' hsys '3';
function='label'; color='black'; size=2.75; x=30; y=50; text='Hy''s Law range';output;
function='label'; color='black'; size=2.75; x=0.3; y=0.125; text='normal range';output;
function='label'; color='black'; size=2.75; x=30; y=0.125; text='Temple''s Corollary range';output;
function='label'; color='black'; size=2.75; x=0.3; y=50; text='hyperbilirubinemia';output;
function='move'; x=1; y=0.1; output;
function='draw'; color='grey'; line=1; size=.25; x=1; y=1;output;
function='move'; x=0.1; y=1; output;
function='draw'; color='grey'; line=1; size=.25; x=1; y=1;output;
run;
/* Define options, output location for the pdf and the size of the pdf output */
options orientation=landscape;
goptions reset=global;
ods listing close;
ods pdf file="&study_patho.GraphssourceOutput&pt..pdf" style=pearl ;
ods escapechar = '!';
goptions reset=all device=png cback=white htext=8pt htitle=10pt ftext='Simplex' ftitle='Simplex'
colors=(black) noborder xmax=15 in ymax=11 in hsize=9.0in vsize=6.5in horigin=1.0in vorigin=0.5in;
legend1 across=1 frame position=(top left inside) offset=(5 pct, -10 pct) order=('Omadacycline' 'Linezolid') label = ("") mode=protect;
legend2 across=1 frame position=(top left inside) offset=(5 pct, -10 pct) order=('Omadacycline' 'Moxifloxacin') label = ("") mode=protect;
/* Define symbols for the graph, sizes, axis labels. Graph plot. */
title1 h=1.3 j=center font=courier " ";
title2 j=left font='courier' h=9pt 'Paratek Pharmaceuticals,Inc.' ;
title3 j=left font='courier' h=9pt 'Omadacycline/PTK0796-ISS' j=right "Version: Draft";
title4 h=1.3 j=center font=courier " ";
title5 j=c h=10pt &T1.;
title6 j=c h=10pt &T2.;
title7 j=c h=10pt 'Safety Population';
title8 j=c h=10pt &T4.;
footnote1 j=l h=10pt &f1.;
footnote2 j=l h=10pt &f2.;
footnote3 j=l h=10pt &f3.;
footnote4 j=l h=10pt &f4.;
footnote5 j=l h=10pt ' ';
footnote6 h=10pt j=l "Generated from Figure 14.3.3.1.1.1.sas on &sysdate9. Date of data extraction:30JUN2017" j=r 'Page 1 of 1';
symbol1 color=black value=triangle width=1 line=1;
symbol2 color=black value=circle width=1 line=1;
axis1 value=(f=arial h=10pt)
label=(f='arial/bo' h=10pt "&TEXT1.") major=(h=10pt) minor=(h=7pt)
reflabel= (h=8pt f=arial'3X' position=bottom j=left)logbase=10 order=(.1 1 10 100);
axis2 value=(h=10pt)
label=(f='arial/bo' h=10pt a=90 justify=center "Maximum TBL (multiples of ULN)") major=(h=8pt) minor=(h=7pt)
reflabel= (h=8pt f=arial '2X' j=left) logbase=10 order=(.1 1 10 100);
%if &tx = lin %then %do;
proc gplot data= graphs.&out.;
plot bili*&var.=trt/legend=legend1 vaxis=axis2 haxis=axis1 vref=2 href=3 whref=2 WVREF=2 annotate=annotate_dat;
run;
%end;
%if &tx = max %then %do;
proc gplot data= graphs.&out.;
plot bili*&var.=trt/legend=legend2 vaxis=axis2 haxis=axis1 vref=2 href=3 whref=2 WVREF=2 annotate=annotate_dat;
run;
%end;
quit;
ods pdf close;
ods listing;
dm log 'log; file "&study_patho.GraphssourceLogs&mytable.&loglabel..log" replace' log;
%mend graph_max;
%graph_max(mytable=Figure_14_3_3_1_1_1,var=alt,flag=A3PLFL,paramcd=%nrstr(where paramcd in('ALT','BILI')),
t1='Figure 14.3.3.1.1.1',
t2='Maximum ALT versus Maximum TBL Assessed at Any Time Post-baseline, Expressed as Multiples of ULN',
t4='A3 ABSSSI Pooling Group (ABSSSI Phase 3 Studies)',
f1='Pooling group A3 includes: ABSI-1108, ABSI-16301.',
f2='ALT = Alanine aminotransferase, TBL = Total bilirubin, ULN = Upper Limit of Normal.',
f3='The maximal values for Bilirubin and ALT may not occur at the same timepoint.',
f4='Solid lines represent reference lines at 3xULN of ALT and 2xULN of TBL.',
text1=Maximum post-baseline ALT (multiples of ULN),out=F_14_3_3_1_1_1,pt = Figure 14.3.3.1.1.1,tx=lin);
/*Figure_14_3_3_1_1_2*/
%graph_max(mytable=Figure_14_3_3_1_1_2,var=ast,flag=A3PLFL,paramcd=%nrstr(where paramcd in('AST','BILI')),
t1='Figure 14.3.3.1.1.2',
t2='Maximum AST versus Maximum TBL Assessed at Any Time Post-baseline, Expressed as Multiples of ULN',
t4='A3 ABSSSI Pooling Group (ABSSSI Phase 3 Studies)',
f1='Pooling group A3 includes: ABSI-1108, ABSI-16301.',
f2='AST = Aspartate Aminotransferase, TBL = Total bilirubin, ULN = Upper Limit of Normal.',
f3='The maximal values for Bilirubin and AST may not occur at the same timepoint.',
f4='Solid lines represent reference lines at 3xULN of AST and 2xULN of TBL.',
text1=Maximum post-baseline AST (multiples of ULN),out=F_14_3_3_1_1_2,pt = Figure 14.3.3.1.1.2,tx=lin);
/*Figure_14_3_3_3_1_1*/
%graph_max(mytable=Figure_14_3_3_3_1_1,var=alt,flag=C3PLFL,paramcd=%nrstr(where paramcd in('ALT','BILI')),
t1='Figure 14.3.3.3.1.1',
t2='Maximum ALT versus Maximum TBL Assessed at Any Time Post-baseline, Expressed as Multiples of ULN',
t4='C3 CABP (Phase 3 study)',
f1='Pooling group C3 CABP includes: CABP-1200.',
f2='ALT = Alanine aminotransferase, TBL = Total bilirubin, ULN = Upper Limit of Normal.',
f3='The maximal values for Bilirubin and ALT may not occur at the same timepoint.',
f4='Solid lines represent reference lines at 3xULN of ALT and 2xULN of TBL.',
text1=Maximum post-baseline ALT (multiples of ULN),out=F_14_3_3_3_1_1,pt = Figure 14.3.3.3.1.1,tx=max);
/*Figure_14_3_3_3_1_2*/
%graph_max(mytable=Figure_14_3_3_3_1_2,var=ast,flag=C3PLFL,paramcd=%nrstr(where paramcd in('AST','BILI')),
t1='Figure 14.3.3.3.1.2',
t2='Maximum AsT versus Maximum TBL Assessed at Any Time Post-baseline, Expressed as Multiples of ULN',
t4='C3 CABP (Phase 3 study)',
f1='Pooling group C3 CABP includes: CABP-1200.',
f2='AST = Aspartate Aminotransferase, TBL = Total bilirubin, ULN = Upper Limit of Normal.',
f3='The maximal values for Bilirubin and AST may not occur at the same timepoint.',
f4='Solid lines represent reference lines at 3xULN of AST and 2xULN of TBL.',
text1=Maximum post-baseline AST (multiples of ULN),out=F_14_3_3_3_1_2,pt = Figure 14.3.3.3.1.2,tx=max);
|
Notes.io is a web-based application for taking notes. You can take your notes and share with others people. If you like taking long notes, notes.io is designed for you. To date, over 8,000,000,000 notes created and continuing...
With notes.io;
- * You can take a note from anywhere and any device with internet connection.
- * You can share the notes in social platforms (YouTube, Facebook, Twitter, instagram etc.).
- * You can quickly share your contents without website, blog and e-mail.
- * You don't need to create any Account to share a note. As you wish you can use quick, easy and best shortened notes with sms, websites, e-mail, or messaging services (WhatsApp, iMessage, Telegram, Signal).
- * Notes.io has fabulous infrastructure design for a short link and allows you to share the note as an easy and understandable link.
Fast: Notes.io is built for speed and performance. You can take a notes quickly and browse your archive.
Easy: Notes.io doesn’t require installation. Just write and share note!
Short: Notes.io’s url just 8 character. You’ll get shorten link of your note when you want to share. (Ex: notes.io/q )
Free: Notes.io works for 12 years and has been free since the day it was started.
You immediately create your first note and start sharing with the ones you wish. If you want to contact us, you can use the following communication channels;
Email: [email protected]
Twitter: http://twitter.com/notesio
Instagram: http://instagram.com/notes.io
Facebook: http://facebook.com/notesio
Regards;
Notes.io Team