Process capability indices
S = capability(data,specs)
S = capability(data,specs) estimates capability
indices for measurements in
data given the specifications
data can be either
a vector or a matrix of measurements. If
a matrix, indices are computed for the columns.
be either a two-element vector of the form
lower and upper specification limits, or (if
a matrix) a two-row matrix with the same number of columns as
If there is no lower bound, use
-Inf as the first
specs. If there is no upper bound, use
the second element of
S is a structure with the following
mu— Sample mean
sigma— Sample standard deviation
P— Estimated probability of being within limits
Pl— Estimated probability of being below
Pu— Estimated probability of being above
Indices are computed under the assumption that data values are independent samples from a normal population with constant mean and variance.
Indices divide a “specification width” (between specification limits) by a “process width” (between control limits). Higher ratios indicate a process with fewer measurements outside of specification.
Compute Capability Indices
Simulate a sample from a process with a mean of 3 and a standard deviation of 0.005.
rng default; % for reproducibility data = normrnd(3,0.005,100,1);
Compute capability indices if the process has an upper specification limit of 3.01 and a lower specification limit of 2.99.
S = capability(data,[2.99 3.01])
S = struct with fields: mu: 3.0006 sigma: 0.0058 P: 0.9129 Pl: 0.0339 Pu: 0.0532 Cp: 0.5735 Cpl: 0.6088 Cpu: 0.5382 Cpk: 0.5382
Visualize the specification and process widths.
capaplot(data,[2.99 3.01]); grid on
 Montgomery, D. Introduction to Statistical Quality Control. Hoboken, NJ: John Wiley & Sons, 1991, pp. 369–374.
Introduced in R2006b