Example 13.2 Creating Two-Way Comparative Pareto Charts

[See PARETO9 in the SAS/QC Sample Library]During the manufacture of a MOS capacitor, different cleaning processes were used by two manufacturing systems operating in parallel. Process A used a standard cleaning solution, while Process B used a different cleaning mixture that contained less particulate matter. The failure causes observed with each process for five consecutive days were recorded and saved in a SAS data set called Failure4.

data Failure4;
   length Process $ 9 Cause $ 16;
   label  Cause   = 'Cause of Failure';
   input  Process & $ Day & $ Cause & $ Counts;
   datalines;
Process A   March 1   Contamination    15
Process A   March 1   Corrosion         2
Process A   March 1   Doping            1
Process A   March 1   Metallization     2
Process A   March 1   Miscellaneous     3
Process A   March 1   Oxide Defect      8
Process A   March 1   Silicon Defect    1
Process A   March 2   Contamination    16
Process A   March 2   Corrosion         3
Process A   March 2   Doping            1
Process A   March 2   Metallization     3
Process A   March 2   Miscellaneous     1
Process A   March 2   Oxide Defect      9
Process A   March 2   Silicon Defect    2
Process A   March 3   Contamination    20
Process A   March 3   Corrosion         1
Process A   March 3   Doping            1
Process A   March 3   Metallization     0
Process A   March 3   Miscellaneous     3
Process A   March 3   Oxide Defect      7
Process A   March 3   Silicon Defect    2
Process A   March 4   Contamination    12
Process A   March 4   Corrosion         1
Process A   March 4   Doping            1
Process A   March 4   Metallization     0
Process A   March 4   Miscellaneous     0
Process A   March 4   Oxide Defect     10
Process A   March 4   Silicon Defect    1
Process A   March 5   Contamination    23
Process A   March 5   Corrosion         1
Process A   March 5   Doping            1
Process A   March 5   Metallization     0
Process A   March 5   Miscellaneous     1
Process A   March 5   Oxide Defect      8
Process A   March 5   Silicon Defect    2
Process B   March 1   Contamination     8
Process B   March 1   Corrosion         2
Process B   March 1   Doping            1
Process B   March 1   Metallization     4
Process B   March 1   Miscellaneous     2
Process B   March 1   Oxide Defect     10
Process B   March 1   Silicon Defect    3
Process B   March 2   Contamination     9
Process B   March 2   Corrosion         0
Process B   March 2   Doping            1
Process B   March 2   Metallization     2
Process B   March 2   Miscellaneous     4
Process B   March 2   Oxide Defect      9
Process B   March 2   Silicon Defect    2
Process B   March 3   Contamination     4
Process B   March 3   Corrosion         1
Process B   March 3   Doping            1
Process B   March 3   Metallization     0
Process B   March 3   Miscellaneous     0
Process B   March 3   Oxide Defect     10
Process B   March 3   Silicon Defect    1
Process B   March 4   Contamination     2
Process B   March 4   Corrosion         2
Process B   March 4   Doping            1
Process B   March 4   Metallization     0
Process B   March 4   Miscellaneous     3
Process B   March 4   Oxide Defect      7
Process B   March 4   Silicon Defect    1
Process B   March 5   Contamination     1
Process B   March 5   Corrosion         3
Process B   March 5   Doping            1
Process B   March 5   Metallization     0
Process B   March 5   Miscellaneous     1
Process B   March 5   Oxide Defect      8
Process B   March 5   Silicon Defect    2
;

In addition to the process variable Cause, there are two classification variables in this data set: Process and Day. The variable Counts is a frequency variable.

This example creates a series of displays that progressively use more of the classification information.

Basic Pareto Chart

The first display, created with the following statements, analyzes the process variable without taking into account the classification variables.

ods graphics off;
title 'Pareto Analysis of Capacitor Failures';
proc pareto data=Failure4;
   vbar Cause / freq        = Counts
                last        = 'Miscellaneous'
                scale       = count
                anchor      = bl
                nlegend;
run;

The chart, shown in Output 13.2.1, indicates that contamination is the most frequently occurring problem.

Output 13.2.1 Pareto Analysis without Classification Variables
Pareto Analysis without Classification Variables

The color and pattern for the bars are specified with the CBARS= and PBARS= options. The pattern M5X45 is a particular type of crosshatching (refer to SAS/GRAPH: Reference for a pattern selection guide). If you specify a color but not a pattern, the bars are filled with a solid color.

The option ANCHOR=BL anchors the cumulative percent curve at the bottom left (BL) of the first bar. The NLEGEND option adds a sample size legend.

One-Way Comparative Pareto Chart for Process

The following statements specify Process as a classification variable to create the comparative Pareto chart displayed in Output 13.2.2:


ods graphics on;
proc pareto data=Failure4;
   vbar Cause / class       = Process
                freq        = Counts
                last        = 'Miscellaneous'
                scale       = count
                catleglabel = 'Failure Causes:'
                nohlabel
                nocurve
                nlegend;
run;

The ODS GRAPHICS ON statement specified before the PROC PARETO statement enables ODS Graphics, so the Pareto chart is created using ODS Graphics instead of traditional graphics.

Output 13.2.2 One-Way Comparative Pareto Analysis with CLASSProcess
One-Way Comparative Pareto Analysis with CLASS=Process

Each cell corresponds to a level of the CLASS= variable (Process). By default, the cells are arranged from top to bottom in alphabetical order of the formatted values of Process, and the key cell is the top cell. The main difference in the two cells is a drop in contamination using Process B.

The CATLEGLABEL= option specifies the category legend label Failure Causes:. The NOHLABEL option suppresses the horizontal axis labels. The NOCURVE option suppresses the cumulative percent curve.

One-way Comparative Pareto Chart for Day

The following statements specify Day as a classification variable:

ods graphics off;
title 'Pareto Analysis by Day';
proc pareto data=Failure4;
   vbar Cause / class       = Day
                freq        = Counts
                last        = 'Miscellaneous'
                scale       = count
                catleglabel = 'Failure Causes:'
                intertile   = 1.0
                nrows       = 1
                ncols       = 5
                vref        = 5 10 15 20
                nohlabel
                nocurve
                nlegend;
run;

The NROWS= and NCOLS= options display the cells in a side-by-side arrangement. The VREF= and LVREF= options add reference lines. The chart is displayed in Output 13.2.3.

Output 13.2.3 One-Way Comparative Pareto Analysis with CLASSDay
One-Way Comparative Pareto Analysis with CLASS=Day

By default, the key cell is the leftmost cell. There were no failures due to Metallization starting on March 3 (in fact, process controls to reduce this problem were introduced on this day).

Two-way Comparative Pareto Chart for Process and Day

The following statements specify both Process and Day as CLASS= variables to create a two-way comparative Pareto chart:

goptions vsize=4.25 in htext=2.8 pct htitle=3.2 pct;
title 'Pareto Analysis by Process and Day';
proc pareto data=Failure4;
   vbar Cause / class       = ( Process Day )
                freq        = Counts
                nrows       = 2
                ncols       = 5
                last        = 'Miscellaneous'
                scale       = count
                catleglabel = 'Failure Causes:'
                intertile   = 1.0
                nohlabel
                nocurve
                nlegend;
run;

The chart is displayed in Output 13.2.4.

Output 13.2.4 Two-Way Comparative Pareto Analysis for Process and Day
Two-Way Comparative Pareto Analysis for Process and Day

The cells are arranged in a matrix whose rows correspond to levels of the first CLASS= variable (Process) and whose columns correspond to levels of the second CLASS= variable (Day). The dimensions of the matrix are specified with the NROWS= and NCOLS= options. The key cell is in the upper left corner.

The chart reveals continuous improvement with Process B.