When you specify the NORMAL option in the PROC UNIVARIATE statement or you request a fitted parametric distribution in the HISTOGRAM statement, the procedure computes goodnessoffit tests for the null hypothesis that the values of the analysis variable are a random sample from the specified theoretical distribution. See Example 4.22.
When you specify the NORMAL option, these tests, which are summarized in the output table labeled "Tests for Normality," include the following:
ShapiroWilk test
KolmogorovSmirnov test
AndersonDarling test
Cramér–von Mises test
The KolmogorovSmirnov D statistic, the AndersonDarling statistic, and the Cramér–von Mises statistic are based on the empirical distribution function (EDF). However, some EDF tests are not supported when certain combinations of the parameters of a specified distribution are estimated. See Table 4.31 for a list of the EDF tests available. You determine whether to reject the null hypothesis by examining the pvalue that is associated with a goodnessoffit statistic. When the pvalue is less than the predetermined critical value (), you reject the null hypothesis and conclude that the data did not come from the specified distribution.
If you want to test the normality assumptions for analysis of variance methods, beware of using a statistical test for normality alone. A test’s ability to reject the null hypothesis (known as the power of the test) increases with the sample size. As the sample size becomes larger, increasingly smaller departures from normality can be detected. Because small deviations from normality do not severely affect the validity of analysis of variance tests, it is important to examine other statistics and plots to make a final assessment of normality. The skewness and kurtosis measures and the plots that are provided by the PLOTS option, the HISTOGRAM statement, the PROBPLOT statement, and the QQPLOT statement can be very helpful. For small sample sizes, power is low for detecting larger departures from normality that may be important. To increase the test’s ability to detect such deviations, you may want to declare significance at higher levels, such as 0.15 or 0.20, rather than the oftenused 0.05 level. Again, consulting plots and additional statistics can help you assess the severity of the deviations from normality.
If the sample size is less than or equal to 2000 and you specify the NORMAL option, PROC UNIVARIATE computes the ShapiroWilk statistic, W (also denoted as to emphasize its dependence on the sample size n). The W statistic is the ratio of the best estimator of the variance (based on the square of a linear combination of the order statistics) to the usual corrected sum of squares estimator of the variance (Shapiro and Wilk, 1965). When n is greater than three, the coefficients to compute the linear combination of the order statistics are approximated by the method of Royston (1992). The statistic W is always greater than zero and less than or equal to one .
Small values of W lead to the rejection of the null hypothesis of normality. The distribution of W is highly skewed. Seemingly large values of W (such as 0.90) may be considered small and lead you to reject the null hypothesis. The method for computing the pvalue (the probability of obtaining a W statistic less than or equal to the observed value) depends on n. For n = 3, the probability distribution of W is known and is used to determine the pvalue. For , a normalizing transformation is computed:
The values of , , and are functions of n obtained from simulation results. Large values of indicate departure from normality, and because the statistic has an approximately standard normal distribution, this distribution is used to determine the pvalues for .
When you fit a parametric distribution, PROC UNIVARIATE provides a series of goodnessoffit tests based on the empirical distribution function (EDF). The EDF tests offer advantages over traditional chisquare goodnessoffit test, including improved power and invariance with respect to the histogram midpoints. For a thorough discussion, refer to D’Agostino and Stephens (1986).
The empirical distribution function is defined for a set of n independent observations with a common distribution function . Denote the observations ordered from smallest to largest as . The empirical distribution function, , is defined as
Note that is a step function that takes a step of height at each observation. This function estimates the distribution function . At any value x, is the proportion of observations less than or equal to x, while is the probability of an observation less than or equal to x. EDF statistics measure the discrepancy between and .
The computational formulas for the EDF statistics make use of the probability integral transformation . If is the distribution function of X, the random variable U is uniformly distributed between 0 and 1.
Given n observations , the values are computed by applying the transformation, as discussed in the next three sections.
PROC UNIVARIATE provides three EDF tests:
KolmogorovSmirnov
AndersonDarling
Cramér–von Mises
The following sections provide formal definitions of these EDF statistics.
The KolmogorovSmirnov statistic (D) is defined as
The KolmogorovSmirnov statistic belongs to the supremum class of EDF statistics. This class of statistics is based on the largest vertical difference between and .
The KolmogorovSmirnov statistic is computed as the maximum of and , where is the largest vertical distance between the EDF and the distribution function when the EDF is greater than the distribution function, and is the largest vertical distance when the EDF is less than the distribution function.
PROC UNIVARIATE uses a modified Kolmogorov D statistic to test the data against a normal distribution with mean and variance equal to the sample mean and variance.
The AndersonDarling statistic and the Cramér–von Mises statistic belong to the quadratic class of EDF statistics. This class of statistics is based on the squared difference . Quadratic statistics have the following general form:
The function weights the squared difference .
The AndersonDarling statistic () is defined as
Here the weight function is .
The AndersonDarling statistic is computed as
The Cramér–von Mises statistic () is defined as
Here the weight function is .
The Cramér–von Mises statistic is computed as
Once the EDF test statistics are computed, PROC UNIVARIATE computes the associated probability values (pvalues).
For the Gumbel, inverse Gaussian, generalized Pareto, and Rayleigh distributions, PROC UNIVARIATE computes associated probability values (pvalues) by resampling from the estimated distribution. By default 500 EDF test statistics are computed and then compared to the EDF test statistic for the specified (fitted) distribution. The number of samples can be controlled by setting EDFNSAMPLES=n. For example, to request Gumbel distribution GoodnessofFit test pvalues based on 5000 simulations, use the following statement:
proc univariate data=test; histogram / gumbel(edfnsamples=5000); run;
For the beta, exponential, gamma, lognormal, normal, power function, and Weibull distributions the UNIVARIATE procedure uses internal tables of probability levels similar to those given by D’Agostino and Stephens (1986). If the value is between two probability levels, then linear interpolation is used to estimate the probability value.
The probability value depends upon the parameters that are known and the parameters that are estimated for the distribution. Table 4.31 summarizes different combinations fitted for which EDF tests are available.
Table 4.31: Availability of EDF Tests
Distribution 
Parameters 
Tests Available 


Threshold 
Scale 
Shape 

beta 
known 
known 
known 
all 
known 
known 
unknown 
all 

exponential 
known, 
known 
all 

known 
unknown 
all 

unknown 
known 
all 

unknown 
unknown 
all 

gamma 
known 
known 
known 
all 
known 
unknown 
known 
all 

known 
known 
unknown 
all 

known 
unknown 
unknown 
all 

unknown 
known 
known 
all 

unknown 
unknown 
known 
all 

unknown 
known 
unknown 
all 

unknown 
unknown 
unknown 
all 

lognormal 
known 
known 
known 
all 
known 
known 
unknown 
and 

known 
unknown 
known 
and 

known 
unknown 
unknown 
all 

unknown 
known 
known 
all 

unknown 
known 
unknown 
all 

unknown 
unknown 
known 
all 

unknown 
unknown 
unknown 
all 

normal 
known 
known 
all 

known 
unknown 
and 

unknown 
known 
and 

unknown 
unknown 
all 

power function 
known 
known 
known 
all 
known 
known 
unknown 
all 

Weibull 
known 
known 
known 
all 
known 
unknown 
c known 
and 

known 
known 
c unknown 
and 

known 
unknown 
c unknown 
and 

unknown 
known 
known 
all 

unknown 
unknown 
known 
all 

unknown 
known 
unknown 
all 

unknown 
unknown 
unknown 
all 