The CAPABILITY Procedure |
[See CPCPMK in the SAS/QC Sample Library]In recent years, a number of process capability indices that have been proposed in the research literature are gradually being introduced in applications. As shown in this example, you can compute such indices in the DATA step after using the OUTPUT statement in the CAPABILITY procedure to save various summary statistics.
Hardness measurements (in scaled units) for 50 titanium samples are saved as values of the variable Hardness in the following SAS data set:
data Titanium; label Hardness = 'Hardness Measurement'; input Hardness @@; datalines; 1.38 1.49 1.43 1.60 1.59 1.34 1.44 1.64 1.83 1.57 1.45 1.74 1.61 1.39 1.63 1.73 1.61 1.35 1.51 1.47 1.46 1.41 1.56 1.40 1.58 1.43 1.53 1.53 1.58 1.62 1.58 1.46 1.26 1.57 1.41 1.53 1.36 1.63 1.36 1.66 1.49 1.55 1.67 1.41 1.39 1.75 1.37 1.36 1.86 1.49 ;
The target value for hardness is 1.6, and the lower and upper specification limits are 0.8 and 2.4, respectively. The samples are produced by an in-control process, and the measurements are assumed to be normally distributed.
The following statements use the OUTPUT statement to save various descriptive statistics and an estimate of the index in a data set named Indices:
proc capability data=Titanium noprint; var Hardness; specs lsl=0.8 target=1.6 usl=2.4; output out=Indices n = n mean = avg std = std var = var lsl = lsl target = t usl = usl pnormal = pnormal cpm = cpm ; run;
In addition to , you want to report an estimate for the index , which is defined as follows:
where , , and and are the mean and standard deviation of the normal distribution. Refer to Section 3.6 of Kotz and Johnson (1993). A natural estimator for is
The following statements compute this estimate:
data Indices; set Indices; d = 0.5*( USL - LSL ); m = 0.5*( USL + LSL ); num = d - abs( avg - m ); den = 3 * sqrt( (n-1)*var/n + (avg-t)*(avg-t) ); cpmk = num/den; run;
title "Capability Analysis of Titanium Hardness"; proc print data=Indices noobs; var n avg std lsl t usl cpm cpmk pnormal; run;
The results are listed in Output 5.17.1.
Note that the -value for the Kolmogorov-Smirnov test of normality is 0.27693, indicating that the assumption of normality is justified.
The following statements also compute an estimate of the index by using the SPECIALINDICES option:
proc capability data=Titanium specialindices; var Hardness; specs lsl=0.8 target=1.6 usl=2.4; run;
Process Capability Indices | |||
---|---|---|---|
Index | Value | 95% Confidence Limits | |
Cp | 2.005745 | 1.609575 | 2.401129 |
CPL | 1.808179 | 1.438675 | 2.175864 |
CPU | 2.203311 | 1.757916 | 2.646912 |
Cpk | 1.808179 | 1.438454 | 2.177904 |
Cpm | 1.725446 | 1.410047 | 2.066027 |
Copyright © SAS Institute, Inc. All Rights Reserved.