% -*- texinfo -*- % @deftypefn {Function File} {[@var{q}, @var{Asq}, @var{info}] = } = @ % anderson_darling_test (@var{x}, @var{distribution}) % % Test the hypothesis that @var{x} is selected from the given distribution % using the Anderson-Darling test. If the returned @var{q} is small, reject % the hypothesis at the @var{q}*100% level. % % The Anderson-Darling @math{@var{A}^2} statistic is calculated as follows: % % @example % @iftex % A^2_n = -n - \sum_{i=1}^n (2i-1)/n log(z_i (1-z_{n-i+1})) % @end iftex % @ifnottex % n % A^2_n = -n - SUM (2i-1)/n log(@math{z_i} (1 - @math{z_@{n-i+1@}})) % i=1 % @end ifnottex % @end example % % where @math{z_i} is the ordered position of the @var{x}'s in the CDF of the % distribution. Unlike the Kolmogorov-Smirnov statistic, the % Anderson-Darling statistic is sensitive to the tails of the % distribution. % % The @var{distribution} argument must be a either @t{'uniform'}, @t{'normal'}, % or @t{'exponential'}. % % For @t{'normal'}' and @t{"exponential"} distributions, estimate the % distribution parameters from the data, convert the values % to CDF values, and compare the result to tabluated critical % values. This includes an correction for small @var{n} which % works well enough for @var{n} >= 8, but less so from smaller @var{n}. The % returned @code{info.Asq_corrected} contains the adjusted statistic. % % For @t{'uniform'}, assume the values are uniformly distributed % in (0,1), compute @math{@var{A}^2} and return the corresponding @math{p}-value from % @code{1-anderson_darling_cdf(A^2,n)}. % % If you are selecting from a known distribution, convert your % values into CDF values for the distribution and use @t{'uniform'}. % Do not use @t{'uniform'} if the distribution parameters are estimated % from the data itself, as this sharply biases the @math{A^2} statistic % toward smaller values. % % [1] Stephens, MA; (1986), 'Tests based on EDF statistics', in % D'Agostino, RB; Stephens, MA; (eds.) Goodness-of-fit Techinques. % New York: Dekker. % % @seealso{anderson_darling_cdf} % @end deftypefn