Hi @Rick_SAS sorry for not doing the same earlier here is the simulated data step; options msglevel=i; options nocenter; options formchar= "|----|+|---+=|-/\<>*"; options linesize=200 pagesize=100; options mprint; options source source2; options compress=yes; libname this "."; /* Current directory - used for storing temporary datasets to be used across programs */ %let gl_outputstem=%scan(%sysfunc(getoption(sysin)),-2,%str(./\)); %let gl_outputstem=&gl_outputstem.-dt-%sysfunc(putn(%sysfunc(date()),e8601da.)); ods noproctitle; options orientation=portrait papersize=A4; ods graphics on / width=18cm height=22cm ANTIALIASMAX=1000 border=no /* IMAGEFMT=EMF */; /* size for portrait */ *options orientation=landscape papersize=A4; *ods graphics on / width=25cm height=12cm ANTIALIASMAX=1000 border=no /* IMAGEFMT=EMF */; /* size for landscape */ footnote "DRAFT, CONFIDENTIAL - %scan(%sysfunc(getoption(sysin)),-2,%str(./\))"; ods pdf file="&gl_outputstem..pdf" style=pearl; ods pdf exclude all; options linesize=180; data parameter_scenarios; parameter_scenario_no=0; parameter_scenario_no+1; N_subject= 50; N_simul= 500; mu1= 2.97; mu2= 2.97; mu1= 2.3; mu2= 2.3; /* The square root of the variance */ sigma11= (3.11 - 2.97) / 1.96 * sqrt(22); /* page 4 in Bernardo, 2016 - around 0.34 */ sigma22= sigma11; /* Assuming independence between subjects measurements, so no parameter correlation */ /* This is to simple, but will have to do for now. Better: simulate person parameters period 1 and period 2 with correlation between period 1 and 2. Add variation for each measurement. Use Cholevsky decomposition of variance matrix to simulate 2-dim normal distributed data. */ output; parameter_scenario_no+1; mu2= 2.00; output; run; proc print data=parameter_scenarios; run; data simul; if _n_=1 then do; call streaminit( 22021561 ); end; set parameter_scenarios; do simul_seqno=1 to N_simul; do subjidn=1 to N_subject; do PeriodN=1 to 2; do visitn=PeriodN*100+1 to PeriodN*100+21; if periodN=1 then do; aval= RAND('NORMAL', mu1, sigma11 ) ; end; else do; aval= RAND('NORMAL', mu2, sigma22 ) ; end; keep parameter_scenario_no; keep simul_seqno; keep subjidn; keep PeriodN; keep visitn; keep aval; output; end; end; end; end; run; data selected_at_w_1_3_6; set simul; by parameter_scenario_no simul_seqno subjidn PeriodN visitn; where (periodN=1 and visitn in (%eval(101+3), %eval(101+10), %eval(101+20))) or (periodN=2 and visitn in (%eval(201+3), %eval(201+10), %eval(201+20))); IsPeriod2= (periodN=2); Succes_limit=2; /* <-- change here MJA 2018-04-27 */ aval01= aval>= Succes_limit; run; Any Help in this regards will be very kind of you!!
... View more