ansari.exact.RdPerforms the Ansari-Bradley two-sample test for a difference in scale parameters for possibly tied observations.
# Default S3 method
ansari.exact(x, y, alternative = c("two.sided", "less", "greater"),
exact = NULL, conf.int = FALSE, conf.level = 0.95, ...)
# S3 method for class 'formula'
ansari.exact(formula, data, subset, na.action, ...)numeric vector of data values.
numeric vector of data values.
indicates the alternative hypothesis and must be
one of "two.sided", "greater" or "less". You
can specify just the initial letter.
a logical indicating whether an exact p-value should be computed.
a logical,indicating whether a confidence interval should be computed.
confidence level of the interval.
a formula of the form lhs ~ rhs where lhs
is a numeric variable giving the data values and rhs a factor
with two levels giving the corresponding groups.
an optional data frame containing the variables in the model formula.
an optional vector specifying a subset of observations to be used.
a function which indicates what should happen when
the data contain NAs. Defaults to
getOption("na.action").
further arguments to be passed to or from methods.
Suppose that x and y are independent samples from
distributions with densities \(f((t-m)/s)/s\) and \(f(t-m)\),
respectively, where \(m\) is an unknown nuisance parameter and
\(s\), the ratio of scales, is the parameter of interest. The
Ansari-Bradley test is used for testing the null that \(s\) equals
1, the two-sided alternative being that \(s \ne 1\) (the
distributions differ only in variance), and the one-sided alternatives
being \(s > 1\) (the distribution underlying x has a larger
variance, "greater") or \(s < 1\) ("less").
By default (if exact is not specified), an exact p-value is
computed if both samples contain less than 50 finite values.
Otherwise, a normal approximation is used.
Optionally, a nonparametric confidence interval and an estimator for \(s\) are computed. If exact p-values are available, an exact confidence interval is obtained by the algorithm described in Bauer (1972), and the Hodges-Lehmann estimator is employed. Otherwise, the returned confidence interval and point estimate are based on normal approximations.
A list with class "htest" containing the following components:
the value of the Ansari-Bradley test statistic.
the p-value of the test.
the ratio of scales \(s\) under the null, 1.
a character string describing the alternative hypothesis.
the string "Ansari-Bradley test".
a character string giving the names of the data.
a confidence interval for the scale parameter.
(Only present if argument conf.int = TRUE.)
an estimate of the ratio of scales.
(Only present if argument conf.int = TRUE.)
To compare results of the Ansari-Bradley test to those of the F test to compare two variances (under the assumption of normality), observe that \(s\) is the ratio of scales and hence \(s^2\) is the ratio of variances (provided they exist), whereas for the F test the ratio of variances itself is the parameter of interest. In particular, confidence intervals are for \(s\) in the Ansari-Bradley test but for \(s^2\) in the F test.
Myles Hollander & Douglas A. Wolfe (1973), Nonparametric statistical inference. New York: John Wiley & Sons. Pages 83–92.
David F. Bauer (1972), Constructing confidence sets using rank statistics. Journal of the American Statistical Association 67, 687–690.
fligner.test for a rank-based (nonparametric)
\(k\)-sample test for homogeneity of variances;
mood.test for another rank-based two-sample test for a
difference in scale parameters;
var.test and bartlett.test for parametric
tests for the homogeneity in variance.
## Hollander & Wolfe (1973, p. 86f):
## Serum iron determination using Hyland control sera
ramsay <- c(111, 107, 100, 99, 102, 106, 109, 108, 104, 99,
101, 96, 97, 102, 107, 113, 116, 113, 110, 98)
jung.parekh <- c(107, 108, 106, 98, 105, 103, 110, 105, 104,
100, 96, 108, 103, 104, 114, 114, 113, 108, 106, 99)
ansari.test(ramsay, jung.parekh)
#> Warning: cannot compute exact p-value with ties
#>
#> Ansari-Bradley test
#>
#> data: ramsay and jung.parekh
#> AB = 185.5, p-value = 0.1815
#> alternative hypothesis: true ratio of scales is not equal to 1
#>
ansari.exact(ramsay, jung.parekh)
#>
#> Ansari-Bradley test
#>
#> data: ramsay and jung.parekh
#> AB = 185.5, p-value = 0.1881
#> alternative hypothesis: true ratio of scales is not equal to 1
#>
ansari.exact(rnorm(20), rnorm(20, 0, 2), conf.int = TRUE)
#>
#> Ansari-Bradley test
#>
#> data: rnorm(20) and rnorm(20, 0, 2)
#> AB = 221, p-value = 0.5735
#> alternative hypothesis: true ratio of scales is not equal to 1
#> 95 percent confidence interval:
#> 0.3174553 2.7580286
#> sample estimates:
#> ratio of scales
#> 0.7818354
#>