Note: See u Chart Examples in the SAS/QC Sample Library.
You can save the control limits for a u 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 defect counts from the data set Fabric
(see Creating u Charts from Defect Count Data) and save the control limits displayed in Figure 18.87 in a data set named Fablim
:
proc shewhart data=Fabric; uchart Defects*Roll / subgroupn = 30 outlimits = Fablim nochart; run;
The SUBGROUPN=
option specifies the number of inspection units in each subgroup sample. The OUTLIMITS=
option names the data set containing the control limits, and the NOCHART
option suppresses the display of the chart. The data set Fablim
is listed in Figure 18.88.
Figure 18.88: The Data Set Fablim
Containing Control Limit Information
The data set Fablim
contains one observation with the limits for process Defects
. The variables _LCLU_
and _UCLU_
contain the lower and upper control limits, and the variable _U_
contains the central line. 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 _U_
is an estimate or standard value. For more information, see OUTLIMITS= Data Set.
Alternatively, you can use the OUTTABLE= option to create an output data set that saves both the control limits and the subgroup statistics, as illustrated by the following statements:
proc shewhart data=Fabric; uchart Defects*Roll / subgroupn = 30 outtable = Fabtab nochart; run;
The data set Fabtab
is listed in Figure 18.89.
Figure 18.89: The Data Set Fabtab
Number of Defects Per Square Meter and Control Limits |
_VAR_ | Roll | _SIGMAS_ | _LIMITN_ | _SUBN_ | _LCLU_ | _SUBU_ | _U_ | _UCLU_ | _EXLIM_ |
---|---|---|---|---|---|---|---|---|---|
Defects | 1 | 3 | 30 | 30 | .001671271 | 0.40000 | 0.30333 | 0.60500 | |
Defects | 2 | 3 | 30 | 30 | .001671271 | 0.36667 | 0.30333 | 0.60500 | |
Defects | 3 | 3 | 30 | 30 | .001671271 | 0.30000 | 0.30333 | 0.60500 | |
Defects | 4 | 3 | 30 | 30 | .001671271 | 0.50000 | 0.30333 | 0.60500 | |
Defects | 5 | 3 | 30 | 30 | .001671271 | 0.23333 | 0.30333 | 0.60500 | |
Defects | 6 | 3 | 30 | 30 | .001671271 | 0.20000 | 0.30333 | 0.60500 | |
Defects | 7 | 3 | 30 | 30 | .001671271 | 0.16667 | 0.30333 | 0.60500 | |
Defects | 8 | 3 | 30 | 30 | .001671271 | 0.33333 | 0.30333 | 0.60500 | |
Defects | 9 | 3 | 30 | 30 | .001671271 | 0.26667 | 0.30333 | 0.60500 | |
Defects | 10 | 3 | 30 | 30 | .001671271 | 0.26667 | 0.30333 | 0.60500 | |
Defects | 11 | 3 | 30 | 30 | .001671271 | 0.46667 | 0.30333 | 0.60500 | |
Defects | 12 | 3 | 30 | 30 | .001671271 | 0.16667 | 0.30333 | 0.60500 | |
Defects | 13 | 3 | 30 | 30 | .001671271 | 0.30000 | 0.30333 | 0.60500 | |
Defects | 14 | 3 | 30 | 30 | .001671271 | 0.43333 | 0.30333 | 0.60500 | |
Defects | 15 | 3 | 30 | 30 | .001671271 | 0.23333 | 0.30333 | 0.60500 | |
Defects | 16 | 3 | 30 | 30 | .001671271 | 0.16667 | 0.30333 | 0.60500 | |
Defects | 17 | 3 | 30 | 30 | .001671271 | 0.26667 | 0.30333 | 0.60500 | |
Defects | 18 | 3 | 30 | 30 | .001671271 | 0.36667 | 0.30333 | 0.60500 | |
Defects | 19 | 3 | 30 | 30 | .001671271 | 0.23333 | 0.30333 | 0.60500 | |
Defects | 20 | 3 | 30 | 30 | .001671271 | 0.40000 | 0.30333 | 0.60500 |
This data set contains one observation for each subgroup sample. The variables _SUBU_
and _SUBN_
contain the number of nonconformities per unit in each subgroup and the number of inspection units per subgroup. The variables
_LCLU_
and _UCLU_
contain the lower and upper control limits, and the variable _U_
contains the central line. The variables _VAR_
and Roll
contain the process name and values of the subgroup-variable, respectively. For more information, see OUTTABLE= Data Set.
An OUTTABLE= data set can be read later as a TABLE=
data set by the SHEWHART procedure. For example, the following statements read Fabtab
and display a u chart (not shown here) identical to the chart in Figure 18.87:
title 'u Chart for Fabric Defects'; proc shewhart table=Fabtab; uchart Defects*Roll / subgroupn=30; 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.