SED navigation bar go to SED home page go to Dataplot home page go to NIST home page SED Home Page SED Staff SED Projects SED Products and Publications Search SED Pages
Dataplot Vol 1 Vol 2

TOLERANCE LIMITS

Name:
    TOLERANCE LIMITS
Type:
    Analysis Command
Purpose:
    Generates normal and non-parameteric tolerance intervals.
Description:
    Tolerance intervals calculate a confidence interval that contains a fixed percentage (or proportion) of the data. This is related to, but distinct from, the confidence interval for the mean.

    There are two numbers for the tolerance interval:

    1. The coverage probability is the fixed percentage of the data to be covered.
    2. The confidence level.

    Tolerance limits are given by

      \( \bar{X} \pm ks \)

    with \( \bar{X} \) and s denoting the sample mean and the sample standard deviation, respectively, and where k is determined so that one can state with (1-\( \alpha \))% confidence that at least \( \phi \)% of the data fall within the given limits. The values for k, assuming a normal distribution, have been numerically tabulated.

    This is commonly stated as something like "a 95% confidence interval for 90% coverage".

    Dataplot computes the tolerance interval for three confidence levels (90%, 95%, and 99%) and five coverage percentages (50.0, 75.0, 90.0, 95.0, 99.9).

    In addition, Dataplot computes non-parametric tolerance intervals. These may be preferred if the data are not adequately approximated by a normal distribution. In this case, the tables have been developed based on the smallest and largest data values in the sample.

Syntax 1:
    TOLERANCE LIMITS <y>             <SUBSET/EXCEPT/FOR qualification>
    where <y> is the response variable,
    and where the <SUBSET/EXCEPT/FOR qualification> is optional.

    This syntax generates both the normal and the non-parametric tolerance limits.

Syntax 2:
    <NORMAL/LOGNORMAL/BOXCOX> TOLERANCE LIMITS <y>
                            <SUBSET/EXCEPT/FOR qualification>
    where <y> is the response variable,
    and where the <SUBSET/EXCEPT/FOR qualification> is optional.

    This syntax generates only the normal tolerance limits.

    If the keyword LOGNORMAL is present, the log of the data will be taken, then the normal tolerance limits will be computed, and then the computed normal lower and upper limits will be exponentiated to obtain the lognormal tolerance limits.

    Similarly, if the keyword BOXCOX is present, a Box-Cox transformation to normality will be applied to the data before computing the normal tolerance limits. The computed lower and upper limits will then be transformed back to the original scale.

Syntax 3:
    NONPARAMETRIC TOLERANCE LIMITS <y>
                            <SUBSET/EXCEPT/FOR qualification>
    where <y> is the response variable,
    and where the <SUBSET/EXCEPT/FOR qualification> is optional.

    This syntax generates only the non-parametric tolerance limits.

Examples:
    TOLERANCE LIMITS Y1
    TOLERANCE LIMITS Y1 SUBSET TAG > 2
    NORMAL TOLERANCE LIMITS Y1 SUBSET TAG > 2
    NONPARAMETRIC TOLERANCE LIMITS Y1 SUBSET TAG > 2
Note:
    Two-sided tolerance limits are used when symmetric coverage intervals from the mean are desired.

    In reliability and lifetime applications, one-sided tolerance limits are more common. In these cases, we typically want coverage intervals that are greater than a given value (lower tolerance intervals) or smaller than a given value (upper tolerance intervals). These tolerance intervals are equivalent to one-sided confidence limits for percentiles of the specified distribution.

    Dataplot can compute one-sided (or two-sided) confidence limits for percentiles for a number of distributions commonly used in reliability applications. For example, to compute lower one-sided tolerance limits for the 2-parameter Weibull distribution, you can do the following

      set maximum likelihood percentiles default
      set distributional percentile lower
      weibull maximum likelihood y

      set maximum likelihood percentiles default
      set bootstrap distributional percentile lower
      bootstrap weibull maximum likelihood plot y

Note:
    The following statistics are also supported:

      LET A = NORMAL TOLERANCE K FACTOR Y
      LET A = NORMAL TOLERANCE ONE SIDED K FACTOR Y

      LET A = NORMAL TOLERANCE LOWER LIMIT Y
      LET A = NORMAL TOLERANCE UPPER LIMIT Y
      LET A = NORMAL TOLERANCE ONE SIDED LOWER LIMIT Y
      LET A = NORMAL TOLERANCE ONE SIDED UPPER LIMIT Y

      The above commands are for the raw data case (i.e., a a single response variable).

      LET A = SUMMARY NORMAL TOLERANCE K FACTOR MEAN SD N
      LET A = SUMMARY NORMAL TOLERANCE ONE SIDED K FACTOR MEAN SD N

      LET A = SUMMARY NORMAL TOLERANCE LOWER LIMIT MEAN SD N
      LET A = SUMMARY NORMAL TOLERANCE UPPER LIMIT MEAN SD N
      LET A = SUMMARY NORMAL TOLERANCE ONE SIDED LOWER LIMIT ...
                              MEAN SD N
      LET A = SUMMARY NORMAL TOLERANCE ONE SIDED UPPER LIMIT ...
                              MEAN SD N

      The above commands are for the summary data case. The three arguments can be either parameters or variables. If a variable rather than a parameter is given, the first element of the variable is extracted. The three values denote the mean, standard deviation, and sample size of the original data.

    To specify the coverage and confidence, enter the commands

      LET ALPHA = <value>
      LET GAMMA = <value>

    where ALPHA specifies the confidence level and GAMMA specifies the coverage level. The defaults values are 0.95 for both the confidence and the coverage.

    In addition to the above LET command, built-in statistics are supported for about 20+ different commands (enter HELP STATISTICS for details).

Note:
    A number of approaches have been proposed for computing the k factor for tolerance limits.

    For two-sided intervals, the Wald-Wolfowitz method provides the basic approach. However, this method is computationally expensive. Weisberg and Beatty (1960) published tables based on this method. Gardiner and Hull (1966) proposed an approximation that replaced an integration with algebraic formulas. Howe (1969) proposed a simpler approximation for the tolerance limits that is considered to be more accurate than the Weisberg and Beatty method. Guenther (1977) proposed a correction term for Howe's method.

    Howe's approximation is

      \( k_2 = z_{(1+\gamma)/2} \sqrt{\frac{\nu \left(1 + \frac{1}{N}\right) }{\chi^2_{1-\alpha,\nu}}} \)

    where

      \( z \) = the normal percent point function
      \( \gamma \) = the coverage factor
      \( \alpha \) = the confidence factor
      \( \chi^2 \) = the chi-square percent point function
      \( \nu \) = the degrees of freedom

    The degrees of freedom parameter is N - 1 by default. However, if the standard deviation is based on historical data rather than the current data set, then an independent value for the degrees of freedom may be given. In Dataplot, you can specify the degrees of freedom by entering the command

      SET TOLERANCE LIMITS DEGREES OF FREEDOM <value>

    If this command is not given, N - 1 will be used.

    The Guenther correction is

      \( k_2^{*} = wk_2 \)

    where

      \( w = \sqrt{ 1 + \frac{N -3 - \chi^2_{N-1,1 - \alpha} } {2(N+1)^2}} \)

    The details for the Gardinar method can be found in the Gardiner paper.

    Dataplot supports both the Gardiner method and the Howe method. The default for the 2018/05 version is the Howe method. Prior versions use the Gardiner method.

    To specify the method in Dataplot, enter the command

      SET TOLERANCE LIMIT METHOD <HOWE/GARDINER>

      BEATTY and WALD AND WOLFOWITZ can be used as synonyms for GARDINER.

    To specify whether the Guenther correction will be applied to Howe's method, enter the command

      SET GUENTHER CORRECTION <ON/OFF>

    The default is OFF.

    Dataplot supports two methods for one-sided intervals.

    The first method uses the formula

      \( k_1 = \frac{ t_{\alpha, \, N-1, \, \delta} }{ \sqrt{N} } \)

    where t is the non-central t distribution with non-centrality parameter

      \( \delta = z_{\gamma} \sqrt{N} \)

    The non-central t distribution can lose accuracy as N gets large. The second method only uses the percent point function for the normal distribution and has the formula

      \( k_1 = \frac{ z_{\gamma} + \sqrt{z_{\gamma}^2 - ab}} {a} \)

    where

      \( a = 1 - \frac{z_{\alpha}^2}{2(N-1)} \)

      \( b = z_{\gamma}^2 - \frac{ z_{\alpha}^2}{N} \)

    To specify the one-sided method, enter

      SET TOLERANCE LIMIT ONE SIDED METHOD ...
                  <NONCENTRAL T/NORMAL/DEFAULT>

    The default is to use the non-central t based approximation for N ≤ 100 and to use the normal based approximation for N > 100.

Default:
    None
Synonyms:
    None
Related Commands: Reference:
    Wilks (1941), "Determination of Sample Sizes for Setting Tolerance Limits", Annals of Mathematical Statistics, Vol. 12, No. 1, pp. 91-96.

    Weisberg and Beatty (1960), "Tables of Tolerance-Limit Factors for Normal Distributions", Technometrics, Vol. 2, pp. 483-500.

    Gardiner and Hull (1966), "An Approximation to Two-Sided Tolerance Limits for Normal Populations", Technometrics, Vol. 8, No. 1, pp. 115-122.

    Howe (1969), "Two-Sided Tolerance Limits for Normal Populations - Some Improvements", Journal of the American Statistical Association, Vol. 64, pp. 610-620.

    Guenther (1977), "Sampling Inspection in Statistical Quality Control", Griffin's Statistical Monographs, Number 37, London.

    Natrella (1966), "Experimental Statistics: NBS Handbook 91", National Institute of Standards and Technology (formerly National Bureau of Standards), pp. 2-13 - 2-15.

    Hahn and Meeker (1991), "Statistical Intervals: A Guide for Practitioners", Wiley.

Applications:
    Quality Control, Reliability
Implementation Date:
    1998/12
    2006/3: Allow only the normal or only the non-parametric limits to be generated
    2014/06: Support for LOGNORMAL and BOXCOX tolerance limits
    2018/05: Support for Howe method and Guenther correction for two-sided limits
    2018/05: Support for normal based approximation for one-sided limits
    2018/05: Some tweaks to the output format
Program:
     
    SKIP 25
    READ ZARR13.DAT Y
    SET WRITE DECIMALS 4
    TOLERANCE LIMITS Y
        
    The following output is generated:
                 Two-Sided Normal Tolerance Limits:
                           (XBAR +/- K*S)
      
     Howe Method
     Response Variable: Y
      
     Summary Statistics:
      
     Number of Observations:                  195
     Degrees of Freedom:                      194
     Sample Mean:                             9.2615
     Sample Standard Deviation:               0.0228
      
      
      
     Coverage = 90%
     ---------------------------------------------------------
       Confidence              k          Lower          Upper
        Value (%)         Factor          Limit          Limit
     ---------------------------------------------------------
             50.0         1.6519         9.2238         9.2991
             75.0         1.7102         9.2225         9.3004
             90.0         1.7657         9.2212         9.3017
             95.0         1.8003         9.2204         9.3025
             99.0         1.8683         9.2189         9.3040
             99.9         1.9498         9.2170         9.3059
      
      
     Coverage = 95%
     ---------------------------------------------------------
       Confidence              k          Lower          Upper
        Value (%)         Factor          Limit          Limit
     ---------------------------------------------------------
             50.0         1.9684         9.2166         9.3063
             75.0         2.0378         9.2150         9.3079
             90.0         2.1039         9.2135         9.3094
             95.0         2.1452         9.2126         9.3103
             99.0         2.2263         9.2107         9.3122
             99.9         2.3233         9.2085         9.3144
      
      
     Coverage = 99%
     ---------------------------------------------------------
       Confidence              k          Lower          Upper
        Value (%)         Factor          Limit          Limit
     ---------------------------------------------------------
             50.0         2.5869         9.2025         9.3204
             75.0         2.6782         9.2004         9.3225
             90.0         2.7650         9.1984         9.3245
             95.0         2.8192         9.1972         9.3257
             99.0         2.9258         9.1948         9.3281
             99.9         3.0533         9.1919         9.3310
      
      
                 Two-Sided Distribution-Free Tolerance Limits
      
     Response Variable: Y
      
     Summary Statistics:
     Number of Observations:                  195
     Sample Mean:                             9.2615
     Sample Standard Deviation:               0.0228
      
      
      
                 Involving X(3) =    9.207325         Involving X(N-2) =    9.310506
      
     ---------------------------
       Confidence       Coverage
        Value (%)      Value (%)
     ---------------------------
           100.00          50.00
           100.00          75.00
            99.99          90.00
            92.80          95.00
            36.18          97.50
             1.43          99.00
             0.05          99.50
             0.00          99.90
             0.00          99.95
             0.00          99.99
      
      
                 Involving X(2) =    9.206343         Involving X(N-1) =    9.320067
      
     ---------------------------
       Confidence       Coverage
        Value (%)      Value (%)
     ---------------------------
           100.00          50.00
           100.00          75.00
           100.00          90.00
            98.91          95.00
            72.05          97.50
            13.30          99.00
             1.72          99.50
             0.01          99.90
             0.00          99.95
             0.00          99.99
      
      
                 Involving X(1) =    9.196848         Involving X(N) =    9.327973
      
     ---------------------------
       Confidence       Coverage
        Value (%)      Value (%)
     ---------------------------
           100.00          50.00
           100.00          75.00
           100.00          90.00
            99.95          95.00
            95.69          97.50
            58.16          99.00
            25.50          99.50
             1.66          99.90
             0.44          99.95
             0.02          99.99
      
        
Date created: 06/05/2001
Last updated: 12/11/2023

Please email comments on this WWW page to alan.heckert@nist.gov.