Chapter 37 NPCHART Statement - Worcester Polytechnic … · Chapter 37 NPCHART Statement Overview...

41
Chapter 37 NPCHART Statement Chapter Table of Contents OVERVIEW ................................... 1263 GETTING STARTED .............................. 1264 Creating np Charts from Count Data ...................... 1264 Creating np Charts from Summary Data .................... 1266 Saving Proportions of Nonconforming Items .................. 1268 Saving Control Limits ............................. 1269 Reading Preestablished Control Limits ..................... 1271 SYNTAX ..................................... 1273 Summary of Options .............................. 1275 DETAILS ..................................... 1283 Constructing Charts for Number Nonconforming (np Charts) ......... 1283 Output Data Sets ................................ 1285 ODS Tables ................................... 1288 Input Data Sets ................................. 1288 Axis Labels ................................... 1291 Missing Values ................................. 1291 EXAMPLES ................................... 1292 Example 37.1 Applying Tests for Special Causes ............... 1292 Example 37.2 Specifying Standard Average Proportion ............ 1294 Example 37.3 Working with Unequal Subgroup Sample Sizes ........ 1295 Example 37.4 Specifying Control Limit Information ............. 1298 1261

Transcript of Chapter 37 NPCHART Statement - Worcester Polytechnic … · Chapter 37 NPCHART Statement Overview...

Chapter 37NPCHART Statement

Chapter Table of Contents

OVERVIEW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1263

GETTING STARTED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1264Creating np Charts from Count Data. . . . . . . . . . . . . . . . . . . . . .1264Creating np Charts from Summary Data . . . . . . . . . . . . . . . . . . . .1266Saving Proportions of Nonconforming Items . . . . . . . . . . . . . . . . . .1268Saving Control Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1269Reading Preestablished Control Limits. . . . . . . . . . . . . . . . . . . . .1271

SYNTAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1273Summary of Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1275

DETAILS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1283Constructing Charts for Number Nonconforming (np Charts) . . . . . . . . .1283Output Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1285ODS Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1288Input Data Sets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1288Axis Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1291Missing Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1291

EXAMPLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1292Example 37.1 Applying Tests for Special Causes . . . . . . . . . . . . . . .1292Example 37.2 Specifying Standard Average Proportion .. . . . . . . . . . .1294Example 37.3 Working with Unequal Subgroup Sample Sizes . . .. . . . . 1295Example 37.4 Specifying Control Limit Information . . . . . . . . . . . . .1298

1261

Part 9. The CAPABILITY Procedure

SAS OnlineDoc: Version 81262

Chapter 37NPCHART Statement

Overview

The NPCHART statement createsnp charts for the numbers of nonconforming (de-fective) items in subgroup samples.

You can use options in the NPCHART statement to

� compute control limits from the data based on a multiple of the standard errorof the numbers of nonconforming items or as probability limits

� tabulate subgroup sample sizes, numbers of nonconforming items, control lim-its, and other information

� save control limits in an output data set

� save subgroup sample sizes and proportions of nonconforming items in an out-put data set

� read preestablished control limits from a data set

� apply tests for special causes (also known as runs tests and Western Electricrules)

� specify a known (standard) proportion of nonconforming items for computingcontrol limits

� specify the data as counts, proportions, or percentages of nonconforming items

� display distinct sets of control limits for data from successive time phases

� add block legends and symbol markers to reveal stratification in process data

� superimpose stars at points to represent related multivariate factors

� clip extreme points to make the chart more readable

� display vertical and horizontal reference lines

� control axis values and labels

� control layout and appearance of the chart

1263

Part 9. The CAPABILITY Procedure

Getting Started

This section introduces the NPCHART statement with simple examples that illus-trate commonly used options. Complete syntax for the NPCHART statement is pre-sented in the “Syntax” section on page 1273, and advanced examples are given in the“Examples” section on page 1292.

Creating np Charts from Count Data

An electronics company manufactures circuits in batches of 500 and uses annp chartSee SHWNP1in the SAS/QCSample Library

to monitor the number of failing circuits. Thirty batches are examined, and the fail-ures in each batch are counted. The following statements create a SAS data set namedCIRCUITS,� which contains the failure counts:

data circuits;input batch fail @@;

datalines;1 5 2 6 3 11 4 6 5 46 9 7 17 8 10 9 12 10 9

11 8 12 7 13 7 14 15 15 816 18 17 12 18 16 19 4 20 721 17 22 12 23 8 24 7 25 1526 6 27 8 28 12 29 7 30 9;

A partial listing of CIRCUITS is shown in Figure 37.1.

Number of Failing Circuits

batch fail

1 52 63 114 65 4. .. .. .

Figure 37.1. The Data Set CIRCUITS

There is a single observation for each batch. The variable BATCH identifies thesubgroup sample and is referred to as thesubgroup-variable. The variable FAILcontains the number of nonconforming items in each subgroup sample and is referredto as theprocess variable(or processfor short).

The following statements create thenp chart shown in Figure 37.2:

�This data set is also used in the “Getting Started” section of Chapter 38, “PCHART Statement.”

SAS OnlineDoc: Version 81264

Chapter 37. Getting Started

title ’np Chart for the Number of Failing Circuits’;symbol v=dot;proc shewhart data=circuits;

npchart fail*batch / subgroupn=500;run;

This example illustrates the basic form of the NPCHART statement. After the key-word NPCHART, you specify theprocessto analyze (in this case, FAIL), followedby an asterisk and thesubgroup-variable(BATCH).

The input data set is specified with the DATA= option in the PROC SHEWHARTstatement. The SUBGROUPN= option specifies the number of items in each sub-group sample and is required with a DATA= input data set. The SUBGROUPN=option specifies one of the following:

� a constant subgroup sample size (in this case)� a variable in the input data set whose values provide the subgroup sample sizes

(see the next example)

Options such as SUBGROUPN= are specified after the slash (/) in the NPCHARTstatement. A complete list of options is presented in the “Syntax” section onpage 1273.

Figure 37.2. An np Chart for Circuit Failures

Each point on thenp chart represents the number of nonconforming items for a par-ticular subgroup. For instance, the value plotted for the first batch is5.

Since all the points fall within the control limits, it can be concluded that the processis in statistical control.

1265SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

By default, the control limits shown are 3� limits estimated from the data; the for-mulas for the limits are given on page 1284. You can also read control limits from aninput data set; see “Reading Preestablished Control Limits” on page 1271. For com-putational details, see “Constructing Charts for Number Nonconforming (np Charts)”on page 1283. For more details on reading raw data, see “DATA= Data Set” onpage 1288.

Creating np Charts from Summary Data

The previous example illustrates how you can createnp charts using raw data (countsSee SHWNP1in the SAS/QCSample Library

of nonconforming items). However, in many applications, the data are provided insummarized form as proportions or percentages of nonconforming items. This exam-ple illustrates how you can use the NPCHART statement with data of this type.

The following data set provides the data from the preceding example in summarizedform:

data cirprop;input batch pfailed @@;sampsize=500;

datalines;1 0.010 2 0.012 3 0.022 4 0.012 5 0.0086 0.018 7 0.034 8 0.020 9 0.024 10 0.018

11 0.016 12 0.014 13 0.014 14 0.030 15 0.01616 0.036 17 0.024 18 0.032 19 0.008 20 0.01421 0.034 22 0.024 23 0.016 24 0.014 25 0.03026 0.012 27 0.016 28 0.024 29 0.014 30 0.018;

A partial listing of CIRPROP is shown in Figure 37.3. The subgroups are still indexedby BATCH. The variable PFAILED contains the proportions of nonconforming items,and the variable SAMPSIZE contains the subgroup sample sizes.

Subgroup Proportions of Nonconforming Items

batch pfailed sizes

1 0.010 5002 0.012 5003 0.022 500. . .. . .. . .

Figure 37.3. The Data Set CIRPROP

The following statements create annp chart identical to the one in Figure 37.2:

title ’np Chart for the Number of Failing Circuits’;symbol v=dot;proc shewhart data=cirprop;

npchart pfailed*batch / subgroupn=sampsizedataunit =proportion;

label pfailed = ’Number of FAIL’;run;

SAS OnlineDoc: Version 81266

Chapter 37. Getting Started

The DATAUNIT= option specifies that the values of theprocess(PFAILED) are pro-portions of nonconforming items. By default, the values of theprocessare assumedto be counts of nonconforming items (see the previous example).

Alternatively, you can read the data set CIRPROP by specifying it as a HISTORY=data set in the PROC SHEWHART statement. A HISTORY= data set used with theNPCHART statement must contain the following variables:

� subgroup variable� subgroup proportion of nonconforming items variable� subgroup sample size variable

Furthermore, the names of the subgroup proportion and sample size variables mustbegin with theprocessname specified in the NPCHART statement and end with thespecial suffix charactersP andN , respectively.

To specify CIRPROP as a HISTORY= data set and FAIL as theprocess, you mustrename the variables PFAILED and SAMPSIZE to FAILP and FAILN, respectively.The following statements temporarily rename PFAILED and SAMPSIZE for the du-ration of the procedure step:

title ’np Chart for the Number of Failing Circuits’;proc shewhart history=cirprop lineprinter (rename=(pfailed =failp

sampsize=failn ));npchart fail*batch=’*’;

run;

The resultingnp chart is shown in Figure 37.4. Since the LINEPRINTER option isspecified in the PROC SHEWHART statement, line printer output is produced. Theasterisk specified in single quotes after thesubgroup-variableindicates the characterused to plot points. This character must follow an equal sign.

np Chart for the Number of Failing Circuits

3 Sigma LimitsFor n=500:

N -------------------------------------------------------------u 20 + |m |================================*============================| UCL = 19.0b | * ++ * * |e 15 + ++ * + + ++ ++ * |r | + + ++ + ++ + + + + |

| * + ++* + + + * + + * + + * | --f 10 +-----+-+----+---*--+-------+--+------+---+---+---+-+---+-+---| NP = 9.7o | + + * *+*+ + * + + *++ ++* + +*|r | +* * + *+* + * * * * |

5 + * + + ++ |f | * * |a | |i 0 +=============================================================| LCL = .5l +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30

Subgroup Index (batch)

Subgroup Sizes: * n=500

Figure 37.4. An np Chart for Circuit Failures

1267SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

In this example, it is more convenient to use CIRPROP as a DATA= data set thanas a HISTORY= data set. As illustrated in the next example, it is generally moreconvenient to use the HISTORY= option for input data sets that have been createdpreviously by the SHEWHART procedure as OUTHISTORY= data sets.

For more information, see “HISTORY= Data Set” on page 1289.

Saving Proportions of Nonconforming Items

In this example, the NPCHART statement is used to create a data set that can be readSee SHWNP1in the SAS/QCSample Library

later by the SHEWHART procedure (as in the preceding example). The followingstatements read the number of nonconforming items from the data set CIRCUITS(see page 1264) and create a summary data set named CIRHIST:

title ’Subgroup Proportions of Failing Circuits’;proc shewhart data=circuits;

npchart fail*batch / subgroupn = 500outhistory = cirhistnochart;

run;

The OUTHISTORY= option names the output data set, and the NOCHART optionsuppresses the display of the chart, which would be identical to the chart in Figure37.2. Figure 37.5 contains a partial listing of CIRHIST.

Subgroup Proportions of Failing Circuits

batch failP failN

1 0.010 5002 0.012 5003 0.022 5004 0.012 5005 0.008 500. . .. . .. . .

Figure 37.5. The Data Set CIRHISTThere are three variables in the data set CIRHIST.

� BATCH contains the subgroup index.� FAILP contains the subgroup proportion of nonconforming items.� FAILN contains the subgroup sample size.

Note that the variables containing the subgroup proportions of nonconforming itemsand subgroup sample sizes are named by adding the suffix charactersP andN to theprocessFAIL specified in the NPCHART statement. In other words, the variablenaming convention for OUTHISTORY= data sets is the same as that for HISTORY=data sets.

For more information, see “OUTHISTORY= Data Set” on page 1286.

SAS OnlineDoc: Version 81268

Chapter 37. Getting Started

Saving Control Limits

You can save the control limits for annp chart in a SAS data set; this enables you toSee SHWNP1in the SAS/QCSample Library

apply the control limits to future data (see “Reading Preestablished Control Limits”on page 1271) or modify the limits with a DATA step program.

The following statements read the number of nonconforming items per subgroupfrom the data set CIRCUITS (see page 1264) and save the control limits displayed inFigure 37.2 in a data set named CIRLIM:

title ’Control Limits for the Number of Failing Circuits’;proc shewhart data=circuits;

npchart fail*batch / subgroupn=500outlimits=cirlimnochart;

run;

The OUTLIMITS= option names the data set containing the control limits, and theNOCHART option suppresses the display of the chart. The data set CIRLIM is listedin Figure 37.6.

Control Limits for the Number of Failing Circuits

_ _ _S L _ S _ _U _ I A I L U

_ B T M L G C CV G Y I P M L _ LA R P T H A _ N N NR P E N A S P P P P_ _ _ _ _ _ _ _ _ _

fail batch ESTIMATE 500 .005040334 3 0.019467 0.46539 9.73333 19.0013

Figure 37.6. The Data Set CIRLIM Containing Control Limit Information

The data set CIRLIM contains one observation with the limits forprocessFAIL. Thevariables–LCLNP– and–UCLNP– contain the lower and upper control limits, andthe variable–NP– contains the central line. The variable–P– contains the averageproportion of nonconforming items. The value of–LIMITN – is the nominal samplesize associated with the control limits, and the value of–SIGMAS– is the multipleof � associated with the control limits. The variables–VAR– and–SUBGRP– arebookkeeping variables that save theprocessand subgroup-variable. The variable

–TYPE– is a bookkeeping variable that indicates whether the value of–P– is anestimate or a standard value.

For more information, see “OUTLIMITS= Data Set” on page 1285.

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

1269SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

title ’Number Nonconforming and Control Limit Information’;proc shewhart data=circuits;

npchart fail*batch / subgroupn=500outtable=cirtablenochart;

run;

The data set CIRTABLE is listed in Figure 37.7.

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.0013fail 2 3 500 500 0.46539 6 9.73333 19.0013fail 3 3 500 500 0.46539 11 9.73333 19.0013fail 4 3 500 500 0.46539 6 9.73333 19.0013fail 5 3 500 500 0.46539 4 9.73333 19.0013fail 6 3 500 500 0.46539 9 9.73333 19.0013fail 7 3 500 500 0.46539 17 9.73333 19.0013fail 8 3 500 500 0.46539 10 9.73333 19.0013fail 9 3 500 500 0.46539 12 9.73333 19.0013fail 10 3 500 500 0.46539 9 9.73333 19.0013fail 11 3 500 500 0.46539 8 9.73333 19.0013fail 12 3 500 500 0.46539 7 9.73333 19.0013fail 13 3 500 500 0.46539 7 9.73333 19.0013fail 14 3 500 500 0.46539 15 9.73333 19.0013fail 15 3 500 500 0.46539 8 9.73333 19.0013fail 16 3 500 500 0.46539 18 9.73333 19.0013fail 17 3 500 500 0.46539 12 9.73333 19.0013fail 18 3 500 500 0.46539 16 9.73333 19.0013fail 19 3 500 500 0.46539 4 9.73333 19.0013fail 20 3 500 500 0.46539 7 9.73333 19.0013fail 21 3 500 500 0.46539 17 9.73333 19.0013fail 22 3 500 500 0.46539 12 9.73333 19.0013fail 23 3 500 500 0.46539 8 9.73333 19.0013fail 24 3 500 500 0.46539 7 9.73333 19.0013fail 25 3 500 500 0.46539 15 9.73333 19.0013fail 26 3 500 500 0.46539 6 9.73333 19.0013fail 27 3 500 500 0.46539 8 9.73333 19.0013fail 28 3 500 500 0.46539 12 9.73333 19.0013fail 29 3 500 500 0.46539 7 9.73333 19.0013fail 30 3 500 500 0.46539 9 9.73333 19.0013

Figure 37.7. The Data Set CIRTABLE

This data set contains one observation for each subgroup sample. The variables

–SUBNP– and –SUBN– contain the subgroup numbers of nonconforming itemsand subgroup sample sizes, respectively. The variables–LCLNP– and–UCLNP–contain the lower and upper control limits, and the variable–NP– contains the cen-tral line. The variables–VAR– and BATCH contain theprocessname and values ofthesubgroup-variable, respectively. For more information, see “OUTTABLE= DataSet” on page 1286.

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

SAS OnlineDoc: Version 81270

Chapter 37. Getting Started

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 Chap-ter 49, “Specialized Control Charts”). For more information, see “TABLE= Data Set”on page 1290.

Reading Preestablished Control Limits

In the previous example, the OUTLIMITS= data set CIRLIM saved control limitsSee SHWNP1in the SAS/QCSample Library

computed from the data in CIRCUITS. This example shows how these limits can beapplied to new data provided in the following data set:

data circuit2;input batch fail @@;

datalines;31 12 32 9 33 16 34 935 3 36 8 37 20 38 439 8 40 6 41 12 42 1643 9 44 2 45 10 46 847 14 48 10 49 11 50 9;

The following statements create annp chart for the data in CIRCUIT2 using thecontrol limits in CIRLIM:

title ’np Chart for the Number of Failing Circuits’;symbol v=dot;proc shewhart data=circuit2 limits=cirlim;

npchart fail*batch / subgroupn=500;run;

The LIMITS= option in the PROC SHEWHART statement specifies the data set con-taining the control limits. By default,� this information is read from the first observa-tion in the LIMITS= data set for which

� the value of–VAR– matches theprocessname FAIL� the value of–SUBGRP– matches thesubgroup-variablename BATCH

The resultingnp chart is shown in Figure 37.8.

�In Release 6.09 and in earlier releases, it is also necessary to specify the READLIMITS option toread control limits from a LIMITS= data set.

1271SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

Figure 37.8. An np Chart for Second Set of Circuit Failures

The number of nonconforming items in the37th batch exceeds the upper control limit,signaling that the process is out of control.

In this example, the LIMITS= data set was created in a previous run of the SHE-WHART procedure. You can also create a LIMITS= data set with the DATA step; seeExample 37.4 on page 1298 for an example. See “LIMITS= Data Set” on page 1289for details concerning the variables that you must provide.

SAS OnlineDoc: Version 81272

Chapter 37. Syntax

Syntax

The basic syntax for the NPCHART statement is as follows:

NPCHART process*subgroup-variable;

The general form of this syntax is as follows:

NPCHART (processes)*subgroup-variable<(block-variables) >< =symbol-variablej =’character’ > < / options>;

You can use any number of NPCHART statements in the SHEWHART procedure.The components of the NPCHART statement are described as follows.

processprocesses

identify one or more processes to be analyzed. The specification ofprocessdependson the input data set specified in the PROC SHEWHART statement.

� If numbers of nonconforming items are read from a DATA= data set,processmust be the name of the variable containing the numbers. For an example, see“Creating np Charts from Count Data” on page 1264.

� If proportions of nonconforming items are read from a HISTORY= data set,processmust be the common prefix of the summary variables in the HIS-TORY= data set. For an example, see “Creating np Charts from SummaryData” on page 1266.

� If numbers of nonconforming items and control limits are read from a TABLE=data set,processmust be the value of the variable–VAR– in the TABLE= dataset. For an example, see “Saving Control Limits” on page 1269.

A processis required. If you specify more than one process, enclose the list in paren-theses. For example, the following statements request distinctnp charts for REJECTSand REWORKS:

proc shewhart data=measures;npchart (rejects reworks)*sample / subgroupn=100;

run;

Note that when data are read from a DATA= data set, the SUBGROUPN= option,which specifies subgroup sample sizes, is required.

subgroup-variableis the variable that identifies subgroups in the data. Thesubgroup-variableis re-quired. In the preceding NPCHART statement, SAMPLE is the subgroup variable.For details, see “Subgroup Variables” on page 1534.

1273SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

block-variablesare optional variables that group the data into blocks of consecutive subgroups. Theblocks are labeled in a legend, and eachblock-variableprovides one level of labels inthe legend. See “Displaying Stratification in Blocks of Observations” on page 1684for an example.

symbol-variableis an optional variable whose levels (unique values) determine the symbol marker orcharacter used to plot numbers of nonconforming items.

� If you produce a chart on a line printer, an ‘A’ is displayed for the points cor-responding to the first level of thesymbol-variable, a ‘B’ is displayed for thepoints corresponding to the second level, and so on.

� If you produce a chart on a graphics device, distinct symbol markers are dis-played for points corresponding to the various levels of thesymbol-variable.You can specify the symbol markers with SYMBOLn statements. See “Dis-playing Stratification in Levels of a Classification Variable” on page 1683 foran example.

characterspecifies a plotting character for charts produced on line printers. For example, thefollowing statements create annp chart using an asterisk (*) to plot the points:

proc shewhart data=values;npchart rejects*day=’*’ / subgroupn=100;

run;

optionsenhance the appearance of the chart, request additional analyses, save results in datasets, and so on. The “Summary of Options” section, which follows, lists all optionsby function. Chapter 46, “Dictionary of Options,” describes each option in detail.

SAS OnlineDoc: Version 81274

Chapter 37. Syntax

Summary of Options

The following tables list the NPCHART statement options by function. For completedescriptions, see Chapter 46, “Dictionary of Options.”

Table 37.1. Tabulation Options

TABLE creates a basic table of subgroup sample sizes, subgroup numbersof nonconforming items, and control limits

TABLEALL is equivalent to the options TABLE, TABLECENTRAL,TABLEID, TABLELEGEND, TABLEOUTLIM, andTABLETESTS

TABLECENTRAL augments basic table with values of central lines

TABLEID augments basic table with columns for ID variables

TABLELEGEND augments basic table with legend for tests for special causes

TABLEOUTLIM augments basic table with columns indicating control limitsexceeded

TABLETESTS augments basic table with a column indicating which tests for spe-cial causes are positive

Note that specifying (EXCEPTIONS) after a tabulation option creates a table forexceptional points only.

Table 37.2. Plot Layout Options

ALLN plots total number of nonconforming items for all subgroups

BILEVEL creates control charts using half-screens and half-pages

EXCHART creates control charts for aprocessonly when exceptions occur

INTERVAL=keyword specifies natural time interval between consecutive subgroup po-sitions when time, date, or datetime format is associated with anumeric subgroup variable

MAXPANELS=n specifies maximum number of pages or screens for chart

NMARKERS requests special markers for points corresponding to sample sizesnot equal to nominal sample size for fixed control limits

NOCHART suppresses creation of chart

NOFRAME suppresses frame for plot area

NOLEGEND suppresses legend for subgroup sample sizes

NPANELPOS=n specifies number of subgroup positions per panel on each chart

REPEAT repeats last subgroup position on panel as first subgroup positionof next panel

TOTPANELS=n specifies number of pages or screens to be used to display chart

ZEROSTD displaysnp chart regardless of whether�̂ = 0

1275SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

Table 37.3. Reference Line Options

CHREF=color specifies color for lines requested by the HREF= option

CVREF=color specifies color for lines requested by the VREF= option

HREF=valuesjSAS-data-set

specifies position of reference lines perpendicular to horizontalaxis

HREFCHAR=’character’ specifies line character for HREF= lines

HREFDATA=SAS-data-set

specifies position of reference lines perpendicular to horizontalaxis

HREFLABELS=’label1’...’labeln’

specifies labels for HREF= lines

HREFLABPOS=n specifies position of HREFLABELS= labels

LHREF=linetype specifies line type for HREF= lines

LVREF=linetype specifies line type for VREF= lines

NOBYREF specifies that reference line information in a data set applies uni-formly to charts created for all BY groups

VREF=valuesjSAS-data-set

specifies position of reference lines perpendicular to vertical axis

VREFCHAR=’character’ specifies line character for VREF= lines

VREFLABELS=’label1’...’labeln’

specifies labels for VREF= lines

VREFLABPOS=n specifies position of VREFLABELS= labels

Table 37.4. Options for Specifying Tests for Special Causes

NO3SIGMACHECK allows tests to be applied with control limits other than3� limits

TESTS=value-listjcustomized-pattern-list

specifies tests for special causes

TEST2RUN=n specifies length of pattern for Test 2

TEST3RUN=n specifies length of pattern for Test 3

TESTACROSS applies tests acrossphaseboundaries

TESTLABEL=’label’ j(variable)jkeyword

provides labels for points where test is positive

TESTLABELn=’ label’ specifies label fornth test for special causes

TESTNMETHOD=STANDARDIZE

applies tests to standardized chart statistics

TESTOVERLAP performs tests on overlapping patterns of points

ZONELABELS adds labels A, B, and C to zone lines

ZONES adds lines delineating zones A, B, and C

ZONEVALPOS=n specifies position of ZONEVALUES labels

ZONEVALUES labels zone lines with their values

SAS OnlineDoc: Version 81276

Chapter 37. Syntax

Table 37.5. Graphical Options for Displaying Tests for Special Causes

CTESTS=colorjtest-color-list

specifies color for labels indicating points where test is positive

CZONES=color specifies color for lines and labels delineating zones A, B, and C

LABELFONT=font specifies software font for labels at points where test is positive(alias for the TESTFONT= option)

LABELHEIGHT=value specifies height of labels at points where test is positive (alias forthe TESTHEIGHT= option)

LTESTS=linetype specifies type of line connecting points where test is positive

LZONES=linetype specifies line type for lines delineating zones A, B, and C

TESTFONT=font specifies software font for labels at points where test is positive

TESTHEIGHT=value specifies height of labels at points where test is positive

Table 37.6. Line Printer Options for Displaying Tests for Special Causes

TESTCHAR=’character’ specifies character for line segments that connect any sequenceof points for which a test for special causes is positive

ZONECHAR=’character’ specifies character for lines that delineate zones for tests for spe-cial causes

Table 37.7. Clipping Options

CCLIP=color specifies color for plot symbol for clipped points

CLIPCHAR=’character’ specifies plot character for clipped points

CLIPFACTOR=value determines extent to which extreme points are clipped

CLIPLEGEND=’string’ specifies text for clipping legend

CLIPLEGPOS=keyword specifies position of clipping legend

CLIPSUBCHAR=’character’

specifies substitution character for CLIPLEGEND= text

CLIPSYMBOL=symbol specifies plot symbol for clipped points

CLIPSYMBOLHT=value specifies symbol marker height for clipped points

Table 37.8. Block Variable Legend Options

BLOCKLABELPOS=keyword

specifies position of label forblock-variablelegend

BLOCKLABTYPE=njkeyword

specifies text size ofblock-variablelegend

BLOCKPOS=n specifies vertical position ofblock-variablelegend

BLOCKREP repeats identical consecutive labels inblock-variablelegend

CBLOCKLAB=color specifies color for filling background inblock-variablelegend

CBLOCKVAR=variablej(variables)

specifies one or more variables whose values are colors for fillingbackground ofblock-variablelegend

1277SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

Table 37.9. Axis and Axis Label Options

CAXIS=color specifies color for axis lines and tick marks

CFRAME=colorj(color-list)

specifies fill colors for frame for plot area

CTEXT=color specifies color for tick mark values and axis labels

HAXIS=valuesjAXISn specifies major tick mark values for horizontal axis

HEIGHT=value specifies height of axis label and axis legend text

HMINOR=n specifies number of minor tick marks between major tick markson horizontal axis

HOFFSET=value specifies length of offset at both ends of horizontal axis

INTSTART=value specifies first major tick mark value for numeric horizontal axis

NOHLABEL suppresses label for horizontal axis

NOTICKREP specifies that only the first occurrence of repeated, adjacent sub-group values is to be labeled on horizontal axis

NOTRUNC suppresses vertical axis truncation at zero applied by default

NOVANGLE requests vertical axis labels that are strung out vertically

SKIPHLABELS=n specifies thinning factor for tick mark labels on horizontal axis

TURNHLABELS requests horizontal axis labels that are strung out vertically

VAXIS=valuesjAXISn specifies major tick mark values for vertical axis

VMINOR=n specifies number of minor tick marks between major tick markson vertical axis

VOFFSET=value specifies length of offset at both ends of vertical axis

VZERO forces origin to be included in vertical axis for primary chart

VZERO2 forces origin to be included in vertical axis for secondary chart

WAXIS=n specifies width of axis lines

Table 37.10. Grid Options

ENDGRID adds grid after last plotted point

GRID adds grid to control chart

LENDGRID=linetype specifies line type for grid requested with the ENDGRID option

LGRID=linetype specifies line type for grid requested with the GRID option

WGRID=n specifies width of grid lines

SAS OnlineDoc: Version 81278

Chapter 37. Syntax

Table 37.11. Options for Specifying Control Limits

ALPHA=value requests probability limits for control charts

LIMITN= njVARYING specifies either nominal sample size for fixed control limits orvarying limits

NOREADLIMITS computes control limits for eachprocessfrom the data rather thanfrom a LIMITS= data set (Release 6.10 and later releases)

READALPHA reads–ALPHA– instead of–SIGMAS– from a LIMITS= dataset

READINDEXES=ALLj’ label1’...’ labeln’

reads multiple sets of control limits for eachprocessfrom a LIM-ITS= data set

READLIMITS reads single set of control limits for eachprocessfrom a LIM-ITS= data set (Release 6.09 and earlier releases)

SIGMAS=k specifies width of control limits in terms of multiplek of standarderror of plotted number of nonconforming items

Table 37.12. Options for Displaying Control Limits

CINFILL=color specifies color for area inside control limits

CLIMITS=color specifies color of control limits, central line, and related labels

LCLLABEL=’ label’ specifies label for lower control limit

LIMLABSUBCHAR=’character’

specifies a substitution character for labels provided as quotedstrings; the character is replaced with the value of the controllimit

LLIMITS= linetype specifies line type for control limits

NDECIMAL=n specifies number of digits to right of decimal place in defaultlabels for control limits and central line

NOCTL suppresses display of central line

NOLCL suppresses display of lower control limit

NOLIMITLABEL suppresses labels for control limits and central line

NOLIMITS suppresses display of control limits

NOLIMITSFRAME suppresses default frame around control limit information whenmultiple sets of control limits are read from a LIMITS= data set

NOLIMITSLEGEND suppresses legend for control limits

NOLIMIT0 suppresses display of lower control limit if it is 0

NOLIMIT1 suppresses display of upper control limit if it is equal to subgroupsample size

NOUCL suppresses display of upper control limit

NPSYMBOL=’string’ jkeyword

specifies label for central line

UCLLABEL=’ string’ specifies label for upper control limit

WLIMITS=n specifies width for control limits and central line

1279SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

Table 37.13. Phase Options

CPHASEBOX=color specifies color for box enclosing all plotted points for a phase

CPHASEBOX-CONNECT=color

specifies color for line segments connecting adjacent enclosingboxes

CPHASEBOXFILL=color specifies fill color for box enclosing all plotted points for a phase

CPHASELEG=color specifies text color forphaselegend

CPHASEBOX--CONNECT=color

specifies color for line segments connecting adjacent enclosingboxes

NOPHASEFRAME suppresses default frame forphaselegend

OUTPHASE=’string’ specifies value of–PHASE– in the OUTHISTORY= data set

PHASEBREAK disconnects last point in aphasefrom first point in nextphase

PHASELABTYPE=valuejkeyword

specifies text size ofphaselegend

PHASELEGEND displaysphaselabels in a legend across top of chart

PHASELIMITS labels control limits for each phase, provided they are constantwithin that phase

PHASEMEANSYMBOL=symbol

specifies symbol marker for average of values within a phase

PHASEREF delineatesphaseswith vertical reference lines

READPHASES= ALLj’ label1’...’ labeln’

specifiesphasesto be read from an input data set

Table 37.14. Standard Value Options

P0=value specifies known (standard) valuep0 for proportion of noncon-forming items

TYPE=keyword identifies whether parameters are estimates or standard valuesand specifies value of–TYPE– in the OUTLIMITS= data set

Table 37.15. Options for Interactive Control Charts

HTML=(variable) specifies a variable whose values are URLs to be associatedwith subgroups

HTML–LEGEND=(variable)

specifies a variable whose values are URLs to be associatedwith symbols in the symbol legend

TESTURLS=SAS-data-set associates URLs with tests for special causes

WEBOUT=SAS-data-set creates an OUTTABLE= data set with additional graphics co-ordinate data

SAS OnlineDoc: Version 81280

Chapter 37. Syntax

Table 37.16. Input Data Set Options

DATAUNIT= keyword specifies that input values are proportions or percentages (ratherthan counts) of nonconforming items

MISSBREAK specifies that observations with missing values are not to beprocessed

SUBGROUPN=njvariable

specifies subgroup sample sizes as constant numbern or as val-ues ofvariable in a DATA= data set

Table 37.17. Output Data Set Options

OUTHISTORY=SAS-data-set

creates output data set containing subgroup proportions of non-conforming items and subgroup sample sizes

OUTINDEX=’string’ specifies value of the variable–INDEX– in the OUTLIMITS=data set

OUTLIMITS=SAS-data-set

creates output data set containing control limits

OUTTABLE=SAS-data-set

creates output data set containing subgroup numbers of noncon-forming items, subgroup sample sizes, and control limits

Table 37.18. Options for Plotting and Labeling Points

ALLLABEL=VALUE j(variable)

labels every point

CCONNECT=color specifies color for line segments that connect points on chart

CFRAMELAB=color specifies fill color for frame around labeled points

CNEEDLES=color specifies color for needles that connect points to central line

CONNECTCHAR=’character’

specifies character used to form line segments that connect pointson chart

COUT=color specifies color for portions of line segments that connect pointsoutside control limits

COUTFILL=color specifies color for shading areas between the connected pointsand control limits outside the limits

NEEDLES connects points to central line with vertical needles

NOCONNECT suppresses line segments that connect points on chart

OUTLABEL=VALUE j(variable)

labels points outside control limits

SYMBOLCHARS=’characters’

specifies characters indicatingsymbol-variable

SYMBOLLEGEND=NONEjname

specifies LEGEND statement for levels ofsymbol-variable

SYMBOLORDER=keyword

specifies order in which symbols are assigned for levels ofsymbol-variable

TURNALL jTURNOUT turns point labels so that they are strung out vertically

1281SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

Table 37.19. Graphical Enhancement Options

ANNOTATE=SAS-data-set

specifies annotate data set that adds features to chart

DESCRIPTION=’string’ specifies string that appears in the description field of the PROCGREPLAY master menu

FONT=font specifies software font for labels and legends on charts

NAME=’ string’ specifies name that appears in the name field of the PROC GRE-PLAY master menu

PAGENUM=’string’ specifies the form of the label used in pagination

PAGENUMPOS=keyword

specifies the position of the page number requested with the PA-GENUM= option

Table 37.20. Star Options

CSTARCIRCLES=color specifies color for circles specified by the STARCIRCLES=option

CSTARFILL=colorj(variable)

specifies color for filling stars

CSTAROUT=color specifies outline color for stars exceeding inner or outer circles

CSTARS=colorj (variable) specifies color for outlines of stars

LSTARCIRCLES=linetypes

specifies line types for STARCIRCLES= circles

LSTARS=linetypej(variable)

specifies line types for outlines of stars requested with theSTARVERTICES= option

STARBDRADIUS=value specifies radius of outer bound circle for vertices of stars

STARCIRCLES=value-list specifies reference circles for stars

STARINRADIUS=value specifies inner radius of stars

STARLABEL=keyword specifies vertices to be labeled

STARLEGEND=keyword specifies style of legend for star vertices

STARLEGENDLAB=’label’

specifies label for STARLEGEND= legend

STAROUTRADIUS=value specifies outer radius of stars

STARSPEC=valuejSAS-data-set

specifies method used to standardize vertex variables

STARSTART=value specifies angle for first vertex

STARTYPE=keyword specifies graphical style of star

STARVERTICES=variablej(variables)

superimposes star at each point on chart

WSTARCIRCLES=n specifies width of circles requested by the STARCIRCLES=option

WSTARS=n specifies width of stars requested by the STARVERTICES=option

SAS OnlineDoc: Version 81282

Chapter 37. Details

Details

Constructing Charts for Number Nonconforming (np Charts)

The following notation is used in this section:

p expected proportion of nonconforming items produced by the process

pi proportion of nonconforming items in theith subgroup

Xi number of nonconforming items in theith subgroup

ni number of items in theith subgroup

�p average proportion of nonconforming items taken across subgroups:

�p =n1p1 + � � �+ nNpNn1 + � � �+ nN

=X1 + � � �+XN

n1 + � � �+ nN

N number of subgroups

IT (�; �) incomplete beta function:

IT (�; �) = (�(�+ �)=�(�)�(�))

Z T

0

t��1(1� t)��1dt

for 0 < T < 1, � > 0, and� > 0, where�(�) is the gamma function

Plotted PointsEach point on annp chart represents the observed number (Xi) of nonconformingitems in a subgroup. For example, suppose the first subgroup (see Figure 37.9) con-tains 12 items, of which three are nonconforming. The point plotted for the firstsubgroup isX1 = 3.

conforming

nonconforming

1 2

2

2

1

1

n = 12 n = 16

X = 3p = 0.25

X = 2p = 0.125

Figure 37.9. Proportions Versus Counts

1283SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

Note that ap chart displays the proportion of nonconforming itemspi. You can usethe PCHART statement to createp charts; see Chapter 38, “PCHART Statement.”

Central LineBy default, the central line on annp chart indicates an estimate fornip, which iscomputed asni�p. If you specify a known value (p0) for p, the central line indicatesthe value ofnip0. Note that the central line varies withni.

Control LimitsYou can compute the limits in the following ways:

� as a specified multiple (k) of the standard error ofXi above and below thecentral line. The default limits are computed withk = 3 (these are referred toas3� limits).

� as probability limits defined in terms of�, a specified probability thatXi ex-ceeds the limits

The lower and upper control limits, LCL and UCL respectively, are computed as

LCL = max�ni�p� k

pni�p(1� �p) ; 0

UCL = min�ni�p+ k

pni�p(1� �p) ; ni

A lower probability limit forXi can be determined using the fact that

PfXi < LCLg = 1� PfXi � LCLg= 1� I�p(LCL; ni + 1� LCL)= I1��p(ni + 1� LCL;LCL)

Refer to Johnson, Kotz, and Kemp (1992). This assumes that the process is in statis-tical control and thatXi is binomially distributed. The lower probability limit LCLis then calculated by setting

I1��p(ni + 1� LCL;LCL) = �=2

and solving for LCL. Similarly, the upper probability limit forXi can be determinedusing the fact that

PfXi > UCLg = PfXi > UCLg= I�p(UCL; ni + 1� UCL)

The upper probability limit UCL is then calculated by setting

I�p(UCL; ni + 1� UCL) = �=2

and solving for UCL. The probability limits are asymmetric about the central line.Note that both the control limits and probability limits vary withni.

SAS OnlineDoc: Version 81284

Chapter 37. Details

You can specify parameters for the limits as follows:

� Specify k with the SIGMAS= option or with the variable–SIGMAS– in aLIMITS= data set.

� Specify� with the ALPHA= option or with the variable–ALPHA– in a LIM-ITS= data set.

� Specify a constant nominal sample sizeni � n for the control limits with theLIMITN= option or with the variable–LIMITN – in a LIMITS= data set.

� Specifyp0 with the P0= option or with the variable–P– in the LIMITS= dataset.

Output Data Sets

OUTLIMITS= Data SetThe OUTLIMITS= data set saves control limits and control limit parameters. Thefollowing variables can be saved:

Table 37.21. OUTLIMITS= Data Set

Variable Description

–ALPHA– probability (�) of exceeding limits

–INDEX– optional identifier for the control limits specified with theOUTINDEX= option

–LCLNP– lower control limit for number of nonconforming items

–LIMITN – sample size associated with the control limits

–NP– average number of nonconforming items (ni�p or nip0)

–P– average proportion of nonconforming items (�p or p0)

–SIGMAS– multiple (k) of standard error ofXi

–SUBGRP– subgroup-variablespecified in the NPCHART statement

–TYPE– type (standard or estimate) of–NP––UCLNP– upper control limit for number of nonconforming items

–VAR– processspecified in the NPCHART statement

Notes:

1. If the control limits vary with subgroup sample size, the special missing valueV is assigned to the variables–LIMITN –, –LCLNP–, –UCLNP–, –NP–, and

–SIGMAS–.

2. If the limits are defined in terms of a multiplek of the standard error ofXi,the value of–ALPHA– is computed as� = PfXi < –LCLNP–g+ PfXi >

–UCLNP–g, using the incomplete beta function.

3. If the limits are probability limits, the value of–SIGMAS– is computed ask = (–UCLNP– � –NP–)=

p–NP–(1� –NP–)=–LIMITN –. If –LIMITN –

has the special missing valueV, this value is assigned to–SIGMAS–.

4. Optional BY variables are saved in the OUTLIMITS= data set.

1285SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

The OUTLIMITS= data set contains one observation for eachprocessspecified in theNPCHART statement. For an example, see “Saving Control Limits” on page 1269.

OUTHISTORY= Data SetThe OUTHISTORY= data set saves subgroup summary statistics. The followingvariables are saved:

� thesubgroup-variable

� the subgroup proportion of nonconforming items variable named by thepro-cesssuffixed withP

� a subgroup sample size variable named by theprocesssuffixed withN

Given aprocessname that contains eight characters, the procedure first shortens thename to its first four characters and its last three characters, and then it adds thesuffix. For example, the procedure shortens theprocessREJECTED to REJETEDbefore adding the suffix.

Subgroup summary variables are created for eachprocessspecified in the NPCHARTstatement. For example, consider the following statements:

proc shewhart data=input;npchart (rework rejected)*batch / outhistory=summary

subgroupn =30;run;

The data set SUMMARY contains variables named BATCH, REWORKP,REWORKN, REJETEDP, and REJETEDN.

Additionally, the following variables, if specified, are included:

� BY variables� block-variables� symbol-variable� ID variables� –PHASE– (if the OUTPHASE= option is specified)

For an example of an OUTHISTORY= data set, see “Saving Proportions of Noncon-forming Items” on page 1268.

OUTTABLE= Data SetThe OUTTABLE= data set saves subgroup summary statistics, control limits, andrelated information. The following variables are saved:

SAS OnlineDoc: Version 81286

Chapter 37. Details

Variable Description

–ALPHA– probability (�) of exceeding control limits

–EXLIM – control limit exceeded onnp chart

–LCLNP– lower control limit for number of nonconforming items

–LIMITN – nominal sample size associated with the control limits

–SIGMAS– multiple (k) of the standard error ofXi associated with the control limitssubgroup values of the subgroup variable

–SUBNP– subgroup number of nonconforming items

–SUBN– subgroup sample size

–TESTS– tests for special causes signaled onnp chart

–UCLNP– upper control limit for number of nonconforming items

–VAR– processspecified in the NPCHART statement

In addition, the following variables, if specified, are included:� BY variables� block-variables� symbol-variable� ID variables� –PHASE– (if the READPHASES= option is specified)

Notes:

1. Either the variable–ALPHA– or the variable–SIGMAS– is saved dependingon how the control limits are defined (with the ALPHA= or SIGMAS= options,respectively, or with the corresponding variables in a LIMITS= data set).

2. The variable–TESTS– is saved if you specify the TESTS= option. Thekth

character of a value of–TESTS– is k if Testk is positive at that subgroup. Forexample, if you request the first four tests (the tests appropriate fornp charts)and Tests 2 and 4 are positive for a given subgroup, the value of–TESTS– hasa 2 for the second character, a 4 for the fourth character, and blanks for theother six characters.

3. The variables–VAR–, –EXLIM –, and–TESTS– are character variables oflength 8. The variable–PHASE– is a character variable of length 16. All othervariables are numeric.

For an example, see “Saving Control Limits” on page 1269.

1287SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

ODS Tables

The following table summarizes the ODS tables that you can request with theNPCHART statement.

Table 37.22. ODS Tables Produced with the NPCHART Statement

Table Name Description OptionsNPCHART np chart summary statistics TABLE, TABLEALL, TABLEC,

TABLEID, TABLELEG,TABLEOUT, TABLETESTS

Tests descriptions of tests forspecial causes requestedwith the TESTS= option forwhich at least one positivesignal is found

TABLEALL, TABLELEG

Input Data Sets

DATA= Data SetYou can read raw data (counts of nonconforming items) from a DATA= data set spec-ified in the PROC SHEWHART statement. Eachprocessspecified in the NPCHARTstatement must be a SAS variable in the DATA= data set. This variable providescounts for subgroup samples indexed by the values of thesubgroup-variable. Thesubgroup-variable, which is specified in the NPCHART statement, must also be aSAS variable in the DATA= data set. Each observation in a DATA= data set mustcontain a count for eachprocessand a value for thesubgroup-variable. The dataset must contain one observation for each subgroup. Note that you can specify theDATAUNIT= option in the NPCHART statement to read proportions or percentagesof nonconforming items instead of counts. Other variables that can be read from aDATA= data set include

� –PHASE– (if the READPHASES= option is specified)� block-variables� symbol-variable� BY variables� ID variables

When you use a DATA= data set with the NPCHART statement, the SUBGROUPN=option (which specifies the subgroup sample size) is required. By default, the SHE-WHART procedure reads all of the observations in a DATA= data set. However, ifthe data set includes the variable–PHASE–, you can read selected groups of ob-servations (referred to asphases) by specifying the READPHASES= option (for anexample, see “Displaying Stratification in Phases” on page 1689).

For an example of a DATA= data set, see “Creating np Charts from Count Data” onpage 1264.

SAS OnlineDoc: Version 81288

Chapter 37. Details

LIMITS= Data SetYou can read preestablished control limits (or parameters from which the control lim-its can be calculated) from a LIMITS= data set specified in the PROC SHEWHARTstatement. For example, the following statements read control limit information fromthe data set CONLIMS:�

proc shewhart data=info limits=conlims;npchart rejects*batch / subgroupn=100;

run;

The LIMITS= data set can be an OUTLIMITS= data set that was created in a previ-ous run of the SHEWHART procedure. Such data sets always contain the variablesrequired for a LIMITS= data set. The LIMITS= data set can also be created directlyusing a DATA step. When you create a LIMITS= data set, you must provide one ofthe following:

� the variables–LCLNP–, –NP–, and –UCLNP–, which specify the controllimits directly

� the variable–P–, which is used to calculate the control limits according to theequations on page 1284

In addition, note the following:

� The variables–VAR– and–SUBGRP– are required. These must be charactervariables of length 8.

� The variable–INDEX– is required if you specify the READINDEX= option;this must be a character variable of length 16.

� The variables–LIMITN –, –SIGMAS– (or –ALPHA–), and–TYPE– are op-tional, but they are recommended to maintain a complete set of control limitinformation. The variable–TYPE– must be a character variable of length 8;valid values areESTIMATEandSTANDARD.

� BY variables are required if specified with a BY statement.

For an example, see “Reading Preestablished Control Limits” on page 1271.

HISTORY= Data SetYou can read subgroup summary statistics from a HISTORY= data set specified in thePROC SHEWHART statement. This allows you to reuse OUTHISTORY= data setsthat have been created in previous runs of the SHEWHART procedure or to createyour own HISTORY= data set.

A HISTORY= data set used with the NPCHART statement must contain� thesubgroup-variable� a subgroup proportion of nonconforming items variable for eachprocess� a subgroup sample size variable for eachprocess

�In Release 6.09 and in earlier releases, it is necessary to specify the READLIMITS option.

1289SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

The names of the proportion sample size variables must be theprocessname concate-nated with the special suffix charactersP andN , respectively.

For example, consider the following statements:

proc shewhart history=summary;npchart ( rework rejected)*batch / subgroupn=50;

run;

The data set SUMMARY must include the variables BATCH, REWORKP,REWORKN, REJETEDP, and REJETEDN.

Note that if you specify aprocessname that contains eight characters, the names ofthe summary variables must be formed from the first four characters and the last threecharacters of theprocessname, suffixed with the appropriate character.

Other variables that can be read from a HISTORY= data set include

� –PHASE– (if the READPHASES= option is specified)� block-variables� symbol-variable� BY variables� ID variables

By default, the SHEWHART procedure reads all of the observations in a HISTORY=data set. However, if the data set includes the variable–PHASE–, you can readselected groups of observations (referred to asphases) by specifying the READ-PHASES= option (see “Displaying Stratification in Phases” on page 1689 for anexample).

For an example of a HISTORY= data set, see “Creating np Charts from SummaryData” on page 1266.

TABLE= Data SetYou can read summary statistics and control limits from a TABLE= data set specifiedin the PROC SHEWHART statement. This enables you to reuse an OUTTABLE=data set created in a previous run of the SHEWHART procedure. Because the SHE-WHART procedure simply displays the information read from a TABLE= data set,you can use TABLE= data sets to create specialized control charts. Examples areprovided in Chapter 49, “Specialized Control Charts.”

The following table lists the variables required in a TABLE= data set used with theNPCHART statement:

Table 37.23. Variables Required in a TABLE= Data Set

Variable Description

–LCLNP– lower control limit for number of nonconforming items

–LIMITN – nominal sample size associated with the control limits

–NP– average number of nonconforming itemssubgroup-variable values of thesubgroup-variable

–SUBN– subgroup sample size

–SUBNP– subgroup number of nonconforming items

–UCLNP– upper control limit for number of nonconforming items

SAS OnlineDoc: Version 81290

Chapter 37. Details

Other variables that can be read from a TABLE= data set include� block-variables

� symbol-variable

� BY variables

� ID variables

� –PHASE– (if the READPHASES= option is specified). This variable must bea character variable of length 16.

� –TESTS– (if the TESTS= option is specified). This variable is used to flagtests for special causes and must be a character variable of length 8.

� –VAR–. This variable is required if more than oneprocessis specified or if thedata set contains information for more than oneprocess. This variable must bea character variable of length 8.

For an example of a TABLE= data set, see “Saving Control Limits” on page 1269.

Axis Labels

You can specify axis labels by assigning labels to particular variables in the input dataset, as summarized in the following table:

Axis Input Data Set VariableHorizontal all subgroup-variableVertical DATA= processVertical HISTORY= subgroup number nonconforming variableVertical TABLE= –SUBNP–

For an example, see “Labeling Axes” on page 1719.

Missing Values

An observation read from a DATA=, HISTORY=, or TABLE= data set is not analyzedif the value of the subgroup variable is missing. For a particular process variable, anobservation read from a DATA= data set is not analyzed if the value of the processvariable is missing. For a particular process variable, an observation read from a HIS-TORY= or TABLE= data set is not analyzed if the values of any of the correspondingsummary variables are missing.

1291SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

Examples

This section provides advanced examples of the NPCHART statement.

Example 37.1. Applying Tests for Special Causes

This example shows how you can apply tests for special causes to makenp chartsSee SHWNP2in the SAS/QCSample Library

more sensitive to special causes of variation. The following statements create aSAS data set named CIRCUIT3, which contains the number of failing circuits for20 batches from the circuit manufacturing process introduced in the “Creating npCharts from Count Data” section on page 1264:

data circuit3;input batch fail @@;

datalines;1 12 2 21 3 16 4 95 3 6 4 7 6 8 99 11 10 13 11 12 12 7

13 2 14 14 15 9 16 817 14 18 10 19 11 20 9;

The following statements create thenp chart, apply several tests to the chart, andtabulate the results:

title1 ’np Chart for the Number of Failing Circuits’;title2 ’Tests=1 to 4’;symbol v=dot;proc shewhart data=circuit3;

npchart fail*batch / subgroupn=500tests =1 to 4ltests =20zonelabelstableteststablelegend;

run;

The chart is shown in Output 37.1.1, and the printed output is shown in Output 37.1.2.The TESTS= option requests Tests 1, 2, 3, and 4, which are described in Chap-ter 48, “Tests for Special Causes.” The TABLETESTS option requests a table ofcounts of nonconforming items and control limits, with a column indicating whichsubgroups tested positive for special causes. The TABLELEGEND option adds alegend describing the tests.

The ZONELABELS option displays zone lines and zone labels on the chart. Thezones are used to define the tests. The LTESTS= option specifies the line type usedto connect the points in a pattern for a test that is signaled.

Output 37.1.1 and Output 37.1.2 indicate that Test 1 is positive at batch 2 and Test 3is positive at batch 10.

SAS OnlineDoc: Version 81292

Chapter 37. Examples

Output 37.1.1. Tests for Special Causes Displayed on np Chart

Output 37.1.2. Tabular Form of np Chart

np Chart for the Number of Failing CircuitsTests=1 to 4

np Chart Summary for fail

Subgroup -3 Sigma Limits with n=500 for Number- SpecialSample Lower Subgroup Upper Tests

batch Size Limit Number Limit Signaled

1 500 0.60851449 12.000000 19.3914862 500 0.60851449 21.000000 19.391486 13 500 0.60851449 16.000000 19.3914864 500 0.60851449 9.000000 19.3914865 500 0.60851449 3.000000 19.3914866 500 0.60851449 4.000000 19.3914867 500 0.60851449 6.000000 19.3914868 500 0.60851449 9.000000 19.3914869 500 0.60851449 11.000000 19.391486

10 500 0.60851449 13.000000 19.391486 311 500 0.60851449 12.000000 19.39148612 500 0.60851449 7.000000 19.39148613 500 0.60851449 2.000000 19.39148614 500 0.60851449 14.000000 19.39148615 500 0.60851449 9.000000 19.39148616 500 0.60851449 8.000000 19.39148617 500 0.60851449 14.000000 19.39148618 500 0.60851449 10.000000 19.39148619 500 0.60851449 11.000000 19.39148620 500 0.60851449 9.000000 19.391486

Test Descriptions

Test 1 One point beyond Zone A (outside control limits)Test 3 Six points in a row steadily increasing or decreasing

1293SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

Example 37.2. Specifying Standard Average Proportion

In some situations, a standard (known) value (p0) is available for the expected propor-See SHWNP3in the SAS/QCSample Library

tion of nonconforming items, based on extensive testing or previous sampling. Thisexample illustrates how you can specifyp0 to create annp chart.

An np chart is used to monitor the number of failing circuits in the data set CIR-CUITS, which is introduced on page 1264. The expected proportion of failing cir-cuits is known to bep0 = 0:02. The following statements create annp chart, shownin Output 37.2.1, usingp0 to compute the control limits:

title1 ’np Chart for Failing Circuits’;title2 ’Using Data in CIRCUITS and Standard Value P0=0.02’;symbol v=none w=3;proc shewhart data=circuits;

npchart fail*batch / subgroupn = 500p0 = 0.02npsymbol = np0nolegendneedles;

label batch =’Batch Number’fail =’Fraction Failing’;

run;

Output 37.2.1. An np Chart with Standard Value of p0

The chart indicates that the process is in control. The P0= option specifiesp0. TheNPSYMBOL= option specifies a label for the central line indicating that the linerepresents a standard value. The NEEDLES option connects points to the centralline with vertical needles. The NOLEGEND option suppresses the default legend forsubgroup sample sizes. Labels for the vertical and horizontal axes are provided with

SAS OnlineDoc: Version 81294

Chapter 37. Examples

the LABEL statement. For details concerning axis labeling, see “Axis Labels” onpage 1291.

Alternatively, you can specifyp0 using the variable–P– in a LIMITS= data set, asfollows:

data climits;length _var_ _subgrp_ _type_ $8;_p_ = 0.02;_subgrp_ = ’batch’;_var_ = ’fail’;_type_ = ’STANDARD’;_limitn_ = 500;

proc shewhart data=circuits limits=climits;npchart fail*batch / subgroupn = 500

npsymbol = np0nolegendneedles;

label batch =’Batch Number’fail =’Fraction Failing’;

run;

The bookkeeping variable–TYPE– indicates that–P– has a standard value. Thechart produced by these statements is identical to the chart in Output 37.2.1.

Example 37.3. Working with Unequal Subgroup Sample Sizes

The following statements create a SAS data set named BATTERY, which containsSee SHWNP4in the SAS/QCSample Library

the number of alkaline batteries per lot failing an acceptance test. The number ofbatteries tested in each lot varies but is approximately 150.

data battery;length lot $3;input lot nfailed sampsize @@;;label nfailed =’Number Failed’

lot =’Lot Identifier’sampsize=’Number Sampled’;

datalines;AE3 6 151 AE4 5 142 AE9 6 145BR3 9 149 BR7 3 150 BR8 0 156BR9 4 150 DB1 9 158 DB2 4 152DB3 0 162 DB5 9 140 DB6 7 161DS4 6 154 DS6 1 144 DS8 5 154JG1 3 151 MC3 8 148 MC4 2 143MK6 4 150 MM1 4 147 MM2 0 150RT5 2 154 RT9 8 149 SP1 3 160SP3 9 153;

The variable NFAILED contains the number of battery failures, the variable LOTcontains the lot number, and the variable SAMPSIZE contains the lot sample size.The following statements request annp chart for this data:

1295SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

title ’Number of Battery Failures’;symbol v=dot w=1;proc shewhart data=battery;

npchart nfailed*lot / subgroupn=sampsizeoutlimits=batlimturnhlabels;

run;

The chart is shown in Output 37.3.1, and the OUTLIMITS= data set BATLIM is listedin Output 37.3.2.

Output 37.3.1. An np Chart with Varying Subgroup Sample Sizes

Note that the upper control limit and central line on thenp chart vary with the sub-group sample size. The lower control limit is truncated at zero. The sample sizelegend indicates the minimum and maximum subgroup sample sizes.

Output 37.3.2. The Control Limits Data Set BATLIM

Control Limits for Battery Failures

_ _ _S L _ S _ _U _ I A I L U

_ B T M L G C CV G Y I P M L _ LA R P T H A _ N N NR P E N A S P P P P_ _ _ _ _ _ _ _ _ _

nfailed lot ESTIMATE V V 3 0.031010 V V V

The variables in BATLIM whose values vary with subgroup sample size are assignedthe special missing valueV.

SAS OnlineDoc: Version 81296

Chapter 37. Examples

The SHEWHART procedure provides various options for working with unequal sub-group sample sizes. For example, you can use the LIMITN= option to specify a fixed(nominal) sample size for computing the control limits, as illustrated by the followingstatements:

title ’Number of Battery Failures’;proc shewhart data=battery;

npchart nfailed*lot / subgroupn = sampsizelimitn = 150alln;

run;

The ALLN option specifies that all points (regardless of subgroup sample size) are tobe displayed. By default, only points for subgroups whose sample size matches theLIMITN= value are displayed. The chart is shown in Output 37.3.3.

Output 37.3.3. Control Limits Based on Fixed Subgroup Sample Size

All the points are inside the control limits, indicating that the process is in statisticalcontrol. Since there is relatively little variation in the sample sizes, the control limitsin Output 37.3.3 provide a close approximation to the exact control limits in Out-put 37.3.1, and the same conclusions can be drawn from both charts. In general, youshould be careful when interpreting charts that use a nominal sample size to computecontrol limits, since these limits are only approximate when the sample sizes vary.

1297SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

Example 37.4. Specifying Control Limit Information

This example shows how to use the DATA step to create LIMITS= data sets for useSee SHWNP5in the SAS/QCSample Library

with the NPCHART statement. The variables–VAR– and–SUBGRP– are required.These variables must be character variables of length 8, and their values must matchtheprocessandsubgroup-variablespecified in the NPCHART statement. In addition,you must provide one of the following:

� the variables–LCLNP–, –NP–, and–UCLNP–� the variable–P–

The following DATA step creates a data set named CLIMITS1, which provides acomplete set of control limits for annp chart:

data climits1;length _var_ _subgrp_ _type_ $8;_var_ = ’fail’;_subgrp_ = ’batch’;_limitn_ = 500;_type_ = ’STANDARD’;_lclnp_ = 0;_np_ = 10;_uclnp_ = 20;

run;

The following statements read the control limits� from the data set CLIMITS1 andapply them to the count data in the data set CIRCUITS, which is introduced onpage 1264:

title ’Specifying Control Limit Information’;symbol v=dot;proc shewhart data=circuits limits=climits1;

npchart fail*batch / subgroupn=500;run;

The chart is shown in Output 37.4.1.

�In Release 6.09 and in earlier releases, you must also specify the READLIMITS option.

SAS OnlineDoc: Version 81298

Chapter 37. Examples

Output 37.4.1. Control Limit Information Read from CLIMITS1

The following DATA step creates a data set named CLIMITS2, which provides avalue for the expected proportion of nonconforming items (–P–). This parameter isthen used to compute the control limits for the data in CIRCUITS according to theequations on page 1284.

data climits2;length _var_ _subgrp_ _type_ $8;_var_ = ’fail’;_subgrp_ = ’batch’;_limitn_ = 500;_type_ = ’STANDARD’;_p_ = .02;

run;

proc shewhart data=circuits limits=climits2;npchart fail*batch / subgroupn=500;

run;

The chart is shown in Output 37.4.2. Note that the control limits are not the same asthose shown in Output 37.4.1.

1299SAS OnlineDoc: Version 8

Part 9. The CAPABILITY Procedure

Output 37.4.2. Control Limit Information Read from CLIMITS2

SAS OnlineDoc: Version 81300

The correct bibliographic citation for this manual is as follows: SAS Institute Inc.,SAS/QC ® User’s Guide, Version 8, Cary, NC: SAS Institute Inc., 1999. 1994 pp.

SAS/QC® User’s Guide, Version 8Copyright © 1999 SAS Institute Inc., Cary, NC, USA.ISBN 1–58025–493–4All rights reserved. Printed in the United States of America. No part of this publicationmay be reproduced, stored in a retrieval system, or transmitted, by any form or by anymeans, electronic, mechanical, photocopying, or otherwise, without the prior writtenpermission of the publisher, SAS Institute Inc.U.S. Government Restricted Rights Notice. Use, duplication, or disclosure of thesoftware by the government is subject to restrictions as set forth in FAR 52.227–19Commercial Computer Software-Restricted Rights (June 1987).SAS Institute Inc., SAS Campus Drive, Cary, North Carolina 27513.1st printing, October 1999SAS® and all other SAS Institute Inc. product or service names are registered trademarksor trademarks of SAS Institute in the USA and other countries.® indicates USAregistration.IBM®, ACF/VTAM®, AIX®, APPN®, MVS/ESA®, OS/2®, OS/390®, VM/ESA®, and VTAM®

are registered trademarks or trademarks of International Business Machines Corporation.® indicates USA registration.Other brand and product names are registered trademarks or trademarks of theirrespective companies.The Institute is a private company devoted to the support and further development of itssoftware and related services.