Saving Control Limits

[See SHWNP1 in the SAS/QC Sample Library]You can save the control limits for an chart in a SAS data set; this enables you to apply the control limits to future data (see Reading Preestablished Control Limits) or modify the limits with a DATA step program.

The following statements read the number of nonconforming items per subgroup from the data set Circuits (see Creating np Charts from Count Data) and save the control limits displayed in Figure 15.53 in a data set named Cirlim:

proc shewhart data=Circuits;
   npchart Fail*Batch / subgroupn=500
                        outlimits=Cirlim
                        nochart;
run;

The OUTLIMITS= option names the data set containing the control limits, and the NOCHART option suppresses the display of the chart. The data set Cirlim is listed in Figure 15.57.

Figure 15.57 The Data Set Cirlim Containing Control Limit Information
Control Limits for the Number of Failing Circuits

_VAR_ _SUBGRP_ _TYPE_ _LIMITN_ _ALPHA_ _SIGMAS_ _P_ _LCLNP_ _NP_ _UCLNP_
Fail Batch ESTIMATE 500 .005040334 3 0.019467 0.46539 9.73333 19.0013

The data set Cirlim contains one observation with the limits for process Fail. The variables _LCLNP_ and _UCLNP_ contain the lower and upper control limits, and the variable _NP_ contains the central line. The variable _P_ contains the average proportion of nonconforming items. The value of _LIMITN_ is the nominal sample size associated with the control limits, and the value of _SIGMAS_ is the multiple of associated with the control limits. The variables _VAR_ and _SUBGRP_ are bookkeeping variables that save the process and subgroup-variable. The variable _TYPE_ is a bookkeeping variable that indicates whether the value of _P_ is an estimate or a standard value.

For more information, see OUTLIMITS= Data Set.

You can create an output data set containing both control limits and summary statistics with the OUTTABLE= option, as illustrated by the following statements:

proc shewhart data=Circuits;
   npchart Fail*Batch / subgroupn=500
                        outtable=Cirtable
                        nochart;
run;

The Cirtable data set contains one observation for each subgroup sample. The variables _SUBNP_ and _SUBN_ contain the subgroup numbers of nonconforming items and subgroup sample sizes, respectively. The variables _LCLNP_ and _UCLNP_ contain the lower and upper control limits, and the variable _NP_ contains the central line. The variables _VAR_ and Batch contain the process name and values of the subgroup-variable, respectively. For more information, see OUTTABLE= Data Set.

The data set Cirtable is listed in Figure 15.58.

Figure 15.58 The Data Set Cirtable
Number Nonconforming and Control Limit Information

_VAR_ Batch _SIGMAS_ _LIMITN_ _SUBN_ _LCLNP_ _SUBNP_ _NP_ _UCLNP_ _EXLIM_
Fail 1 3 500 500 0.46539 5 9.73333 19.0013  
Fail 2 3 500 500 0.46539 6 9.73333 19.0013  
Fail 3 3 500 500 0.46539 11 9.73333 19.0013  
Fail 4 3 500 500 0.46539 6 9.73333 19.0013  
Fail 5 3 500 500 0.46539 4 9.73333 19.0013  
Fail 6 3 500 500 0.46539 9 9.73333 19.0013  
Fail 7 3 500 500 0.46539 17 9.73333 19.0013  
Fail 8 3 500 500 0.46539 10 9.73333 19.0013  
Fail 9 3 500 500 0.46539 12 9.73333 19.0013  
Fail 10 3 500 500 0.46539 9 9.73333 19.0013  
Fail 11 3 500 500 0.46539 8 9.73333 19.0013  
Fail 12 3 500 500 0.46539 7 9.73333 19.0013  
Fail 13 3 500 500 0.46539 7 9.73333 19.0013  
Fail 14 3 500 500 0.46539 15 9.73333 19.0013  
Fail 15 3 500 500 0.46539 8 9.73333 19.0013  
Fail 16 3 500 500 0.46539 18 9.73333 19.0013  
Fail 17 3 500 500 0.46539 12 9.73333 19.0013  
Fail 18 3 500 500 0.46539 16 9.73333 19.0013  
Fail 19 3 500 500 0.46539 4 9.73333 19.0013  
Fail 20 3 500 500 0.46539 7 9.73333 19.0013  
Fail 21 3 500 500 0.46539 17 9.73333 19.0013  
Fail 22 3 500 500 0.46539 12 9.73333 19.0013  
Fail 23 3 500 500 0.46539 8 9.73333 19.0013  
Fail 24 3 500 500 0.46539 7 9.73333 19.0013  
Fail 25 3 500 500 0.46539 15 9.73333 19.0013  
Fail 26 3 500 500 0.46539 6 9.73333 19.0013  
Fail 27 3 500 500 0.46539 8 9.73333 19.0013  
Fail 28 3 500 500 0.46539 12 9.73333 19.0013  
Fail 29 3 500 500 0.46539 7 9.73333 19.0013  
Fail 30 3 500 500 0.46539 9 9.73333 19.0013  

An OUTTABLE= data set can be read later as a TABLE= data set. For example, the following statements read Cirtable and display an chart (not shown here) identical to the chart in Figure 15.53:

title 'np Chart for the Number of Failing Circuits';
proc shewhart table=Cirtable;
   npchart Fail*Batch;
run;

Because the SHEWHART procedure simply displays the information in a TABLE= data set, you can use TABLE= data sets to create specialized control charts (see Specialized Control Charts: SHEWHART Procedure). For more information, see TABLE= Data Set.