Learn R Programming

qcc (version 2.6)

ewma: EWMA chart

Description

Create an object of class 'ewma.qcc' to compute and draw an Exponential Weighted Moving Average (EWMA) chart for statistical quality control.

Usage

ewma(data, sizes, center, std.dev, lambda = 0.2, nsigmas = 3, data.name, labels, newdata, newsizes, newlabels, plot = TRUE, ...)
"print"(x, ...)
"summary"(object, digits = getOption("digits"), ...)
"plot"(x, add.stats = TRUE, chart.all = TRUE, label.limits = c("LCL", "UCL"), title, xlab, ylab, ylim, axes.las = 0, digits = getOption("digits"), restore.par = TRUE, ...)

Arguments

data
a data frame, a matrix or a vector containing observed data for the variable to chart. Each row of a data frame or a matrix, and each value of a vector, refers to a sample or ''rationale group''.
sizes
a value or a vector of values specifying the sample sizes associated with each group. If not provided the sample sizes are obtained counting the non-NA elements of each row of a data frame or a matrix; sample sizes are set all equal to one if data is a vector.
center
a value specifying the center of group statistics or target.
std.dev
a value or an available method specifying the within-group standard deviation(s) of the process. Several methods are available for estimating the standard deviation. See sd.xbar and sd.xbar.one for, respectively, the grouped data case and the individual observations case.
lambda
the smoothing parameter $0
nsigmas
a numeric value specifying the number of sigmas to use for computing control limits.
data.name
a string specifying the name of the variable which appears on the plots. If not provided is taken from the object given as data.
labels
a character vector of labels for each group.
newdata
a data frame, matrix or vector, as for the data argument, providing further data to plot but not included in the computations.
newsizes
a vector as for the sizes argument providing further data sizes to plot but not included in the computations.
newlabels
a character vector of labels for each new group defined in the argument newdata.
plot
logical. If TRUE an EWMA chart is plotted.
add.stats
a logical value indicating whether statistics and other information should be printed at the bottom of the chart.
chart.all
a logical value indicating whether both statistics for data and for newdata (if given) should be plotted.
label.limits
a character vector specifying the labels for control limits.
title
a string giving the label for the main title.
xlab
a string giving the label for the x-axis.
ylab
a string giving the label for the y-axis.
ylim
a numeric vector specifying the limits for the y-axis.
axes.las
numeric in {0,1,2,3} specifying the style of axis labels. See help(par).
digits
the number of significant digits to use.
restore.par
a logical value indicating whether the previous par settings must be restored. If you need to add points, lines, etc. to a control chart set this to FALSE.
object
an object of class 'ewma.qcc'.
x
an object of class 'ewma.qcc'.
...
additional arguments to be passed to the generic function.

Value

Details

EWMA chart smooths a series of data based on a moving average with weights which decay exponentially. Useful to detect small and permanent variation on the mean of the process.

References

Mason, R.L. and Young, J.C. (2002) Multivariate Statistical Process Control with Industrial Applications, SIAM. Montgomery, D.C. (2005) Introduction to Statistical Quality Control, 5th ed. New York: John Wiley & Sons. Ryan, T. P. (2000), Statistical Methods for Quality Improvement, 2nd ed. New York: John Wiley & Sons, Inc. Scrucca, L. (2004). qcc: an R package for quality control charting and statistical process control. R News 4/1, 11-17. Wetherill, G.B. and Brown, D.W. (1991) Statistical Process Control. New York: Chapman & Hall.

See Also

qcc, ewmaSmooth, cusum

Examples

Run this code
##
## Grouped-data
##
data(pistonrings)
attach(pistonrings)
diameter <- qcc.groups(diameter, sample)

q <- ewma(diameter[1:25,], lambda=0.2, nsigmas=3)
summary(q)

q <-  ewma(diameter[1:25,], lambda=0.2, nsigmas=2.7, newdata=diameter[26:40,], plot = FALSE) 
summary(q)
plot(q)

##
## Individual observations
##
x <- c(33.75, 33.05, 34, 33.81, 33.46, 34.02, 33.68, 33.27, 33.49, 33.20,
       33.62, 33.00, 33.54, 33.12, 33.84) # viscosity data (Montgomery, pag. 242)
q <-  ewma(x, lambda=0.2, nsigmas=2.7)
summary(q)

Run the code above in your browser using DataLab