PROC CAPABILITY and General Statements

Input Data Sets

DATA= Data Set

The DATA= data set contains a set of variables that represent measurements from a process. The CAPABILITY procedure must have a DATA= data set. If you do not specify one with the DATA= option in the PROC CAPABILITY statement, the procedure uses the last data set created.

SPEC= Data Set

The SPEC= option in the PROC CAPABILITY statement identifies a SPEC= data set, which contains specification limits. This option is an alternative to using the SPEC statement. If you use both the SPEC= option and a SPEC statement, the SPEC= option is ignored. The SPEC= option is especially useful when:

  • the number of variables is large

  • the same specification limits are referred to in more than one analysis

  • a BY statement is used

  • batch processing is used

The following variables are read from a SPEC= data set:

Variable

Description

_LSL_

lower specification limit

_TARGET_

target value

_USL_

upper specification limit

_VAR_

name of the variable

You may omit either _LSL_ or _USL_ but not both. _TARGET_ is optional. If the SPEC= data set contains both _LSL_ and _USL_, you can assign missing values to _LSL_ or _USL_ to indicate one-sided specifications. You can assign missing values to _TARGET_ when the variable does not use a target value. _LSL_, _USL_, and _TARGET_ must be numeric variables. _VAR_ must be a character variable.

You can include the following optional variables in a SPEC= data set to control the appearance of specification limits on charts:

Variable

Description

_CLEFT_

color used to fill area left of LSL (histograms only)

_CLSL_

color of LSL line

_CRIGHT_

color used to fill area right of USL (histograms only)

_CTARGET_

color of target line

_CUSL_

color of USL line

_LLSL_

line type of LSL line

_LSLSYM_

character used for LSL line in line printer plots

_LTARGET_

line type of target line

_LUSL_

line type of USL line

_PLEFT_

pattern type used to fill area left of LSL (histograms only)

_PRIGHT_

pattern type used to fill area right of USL (histograms only)

_TARGETSYM_

character used for target in line printer plots

_USLSYM_

character used for USL line in line printer plots

_WLSL_

width of LSL line

_WTARGET_

width of target line

_WUSL_

width of USL line

If you are using the HISTOGRAM statement to create "clickable" histograms in HTML, you can also provide the following variables in a SPEC= data set:

Variable

Description

_LOURL_

URL associated with area to left of lower specification limit

_HIURL_

URL associated with area to right of upper specification limit

_URL_

URL associated with area between specification limits

These are character variables whose values are Uniform Resource Locators (URLs) linked to areas on a histogram. When you view the ODS HTML output with a browser, you can click on an area, and the browser will bring up the page specified by the corresponding URL.

If you use a BY statement, the SPEC= data set must also contain the BY variables. The SPEC= data set must be sorted in the same order as the DATA= data set. Within a BY group, specification limits for each variable plotted are read from the first observation where _VAR_ matches the variable name.

See the section Examples: CAPABILITY Procedure for an example of reading specification limits from a SPEC= data set.

ANNOTATE= Data Sets

In the CAPABILITY procedure, you can add features to traditional graphics plots by specifying ANNOTATE= data sets either in the PROC CAPABILITY statement or in individual plot statements. Depending on where you specify an ANNOTATE= data set, however, the information is used for all plots or only for plots produced by a given statement.

Information contained in the ANNOTATE= data set specified in the PROC CAPABILITY statement is used for all plots produced in a given PROC step; this is a "global" ANNOTATE= data set. By using this global data set, you can keep information common to all plots in one data set.

Information contained in the ANNOTATE= data set specified in a plot statement is used for plots produced by that statement; this is a "local" ANNOTATE= data set. By using this data set, you can add statement-specific features to plots. For example, you can add different features to plots produced by the HISTOGRAM and QQPLOT statements by specifying an ANNOTATE= data set in each plot statement.

In addition, you can specify an ANNOTATE= data set in the PROC CAPABILITY statement and in plot statements. This enables you to add some features to all plots (those given in the data set specified in the PROC statement) and also add statement-specific features to plots (those given in the data set specified in the plot statement).

For complete details on the structure and content of Annotate type data sets, see SAS/GRAPH documentation.