/* PROC IML CODE It produces: 1. Letter value display 2. Plot for determining the power transformation for symmetry */ OPTIONS LS=80 PS=45; PROC IML; START LETVAL; /* DATA IS IN X, M IS THE NUMBER OF LETTER VALUES*/ M = 6; N = NROW(X); /* SORT X */ A = X; X[RANK(X),]= A ; /* SET THE TABLE OF LETTER VALUES */ LV = REPEAT(0,M,6); /* D IS THE LENGTH OF THE SUBSAMPLE FOR THE LV */ D = N; DO I=1 TO M; IF(D > 0) THEN DO; /* SORT THE RIGHT SUBSET */ B = X[1:D,]; * A = B; * B[RANK(B),]=A; /* SORT THE LEFT SUBSET */ C = X[(N-D+1):N,]; * A = C; * C[RANK(C),]=A; /* THE MEDIANS*/ DD = INT((D+1)/2); IF( D = (2*DD -1)) THEN DO; LV[I,1] = B[DD]; LV[I,3] = C[DD]; END; ELSE DO; LV[I,1] = (B[DD]+B[DD+1])/2; LV[I,3] = (C[DD]+C[DD+1])/2; END; /*CALCULATE THE MID VALUES*/ LV[I, 2] = (LV[I, 1] + LV[I, 3])/2; /*CALCULATE THE SPREAD*/ LV[I, 4] = LV[I, 3] - LV[I, 1]; LV[I, 5] = LV[I, 2] - LV[1, 1] ; LV[I, 6] = ((LV[I, 1] - LV[1, 1])**2 + (LV[I, 3] - LV[1, 1])**2)/ 4/LV[1, 1]; D = DD; END; END; FINISH; /*DEFINE X*/ k1={918,130,185,37,1127,74}; k2={3051,269,81,4573,53,324}; k3={308,236,41,33,28,66}; k4={562,494,886,30,34,698}; k5={30,31,31,37,46,33}; k6={36,85,83,2277,35,39}; XY = REPEAT(0,3,2); X = k3; run letval; RN = {"M" "F" "E" "D" "C"} ; CN = {"LOWER" "MID" "UPPER" "SPREAD" "X" "Y"}; PRINT LV[ ROWNAME=RN COLNAME=CN]; run; LV[2:M,5] = LOG(LV[2:M,5]); LV[2:M,6] = LOG(LV[2:M,6]); Z1=lv[,5]; Z2=lv[,6]; call gstart; run gxyplot(z1 , z2); run; QUIT; data plank; do kind=1 to 3; do net=1 to 2; do i = 1 to 5; input count @; output; end; end; end; datalines; 918 130 185 37 1127 74 3051 269 81 4573 53 324 308 236 41 33 28 66 562 494 886 30 34 698 30 31 31 37 46 33 36 85 83 2277 35 39 ; run;