/*exercise for mean, CI and mean substitution, mean recovery. Theodore Walls, URI Oct 14, 2008*/ data rantimes; seed1 = 12983; do i=1 to 200; y = rannor(seed1); output; end; id = i; stop; *file 'c:\1datalap\grants\rantimes.dat'; *drop i; run; quit; proc print data = rantimes (obs=200); var y i; run; proc univariate data = rantimes; var y; run; proc capability data = rantimes; var y; histogram y; run; proc ttest data = rantimes; var y; run; /*-0.22 -0.07 0.0796*/ PROC EXPORT DATA= WORK.RANTIMES OUTFILE= "C:\1dataLap\Learning\PSY533x\rantimes1.csv" DBMS=CSV REPLACE; RUN; proc sort data = rantimes; by i; run; data rantimesx; set rantimes; /*ways to number data*/ count + 1; by id; if first.id then count = 1; /*or*/ case =_N_; /*generate a conditional do statement for numbering in sets of 10*/ count1 + 1; if count1 = 10 then do; output; count1 = 0; end; else output; run; data x; set rantimes; case = _N_; run; proc print data = rantimesx; run; data rantimesx1; set rantimesx; /*delete 10% of cases*/ if count1 = 10 then y = .; run; /*-0.229 -0.068 0.0933*/ proc print data = rantimesx1; var y; run; proc univariate data = rantimesx1; var y; run; proc ttest data = rantimesx1; var y; run; data rantimesx2; set rantimesx1; /*Put cases back as means from first database*/ if count1 = 10 then y = -.07; run; proc univariate data = rantimesx2;; var y; run; proc ttest data = rantimesx2; var y; run; proc corr; var y y1; run; /* -0.213 -0.068 0.0768*/