The two-sample t-test is the standard frequentist parametric procedure when the variate in each condition is continuous and when the data are normally distributed with the same population variance in each condition. It is not likely that the assumptions of the parametric analysis are strictly valid, so it is prudent to have some nonparametric procedures as alternatives. The median test and the Mann-Whitney U-test are two frequentist nonparametric procedures that are the conventional alternatives to the two-sample-t test.
The essential idea underlying the median test is to categorize all the scores so as to form a 2 × 2 table of frequencies. One classification (e.g., the rows) is based on the observation being above the combined median versus being at or below the median. The other classification (e.g. the columns) is based on the observation being from the experimental group (denoted as the E group) or being from the control group (denoted as the C group). In contrast to the median test, the Mann-Whitney test is based on U-statistics. The UE statistic is the number of times an E-labelled score is larger than a C-labelled score, whereas the UC statistic is the number of times the C variate is larger than the E variate. Because the U statistics are based on more fine-grained information than the median test, the median test is generally less powerful relative to the Mann-Whitney procedure. Yet, for precisely that reason, the median test has an appeal for some investigators: if a median test can detect differences between the two conditions, then it is convincing that those conditions are different.
In the DFBA
package, the Bayesian counterpart to the
median test is given by the dfba_median_test()
function.
This vignette on the dfba_median_test()
contains discussion
of the beta distribution, the binomial model, and Bayes factors; for
more on those topics see the dfba_binomial()
and
dfba_beta_bayes_factor()
vignettes.
Given nE continuous scores from group E and nC scores from group C, the display below helps to define the frequencies associated with the median test where the rows of the 2 × 2 table are organized in relation to the combined median.
$$ \begin{array}{c|cc|c} & E \hskip 1mm & C\hskip 1mm & \\ \hline above\,\,median & n_E^{above} & n_C^{above} & n_E^{above} + n_C^{above}\\ & & &\\ at\,\,or\,\,below\,\,median & n_E^{below} & n_C^{below} & n_E^{below} + n_C^{below}\\ \hline & & &\\ & n_E & n_C & n_E+n_C \end{array} $$
The frequentist median test examines, with a χ2 statistic, the sharp
null hypothesis that the proportion of responses above the combined
median is the same for both the E and C groups (Siegel & Castellan,
1988). Chechile (2020) provided an alternative Bayesian analysis for
this procedure. Rather than focusing the median test on an assessment of
a point-null hypothesis, the Bayesian approach involves estimating a
population parameter associated with an above-median response being from
the E group. The frequencies
in row 1 (above-median frequencies) are binomial frequencies in
terms of the group origin (i.e., E versus C). From a Bayesian perspective, a
population-level ϕ parameter
can be defined for the proportion of E values that are above the combined
sample median. Similarly, the frequencies for the scores at or below the
combined sample median can also be examined; in that case, the
corresponding population proportion in the E condition must be 1 − ϕ. Thus, it is sufficient only
to examine the above-median frequencies to make an inference
about the ϕ parameter. Thus
the Bayesian form of the median test reduces to the binomial model, so
the prior and posterior distributions for the population ϕ parameter belong to the beta
family of distributions. The default prior for the
dfba_median_test()
function is the uniform distribution,
i.e, a0 = b0 = 1.
The posterior shape parameters for ϕ are a = a0 + nEabove
and b = b0 + nCabove.1
Because the number of scores in groups E and C might be very different, it is important to examine the ϕ parameter relative to an expected base-rate value. For example, suppose that there are nE = 90 observed values from the E condition and nC = 10 observed values for the C condition. Given that there are nine times more E scores than C scores in the sample, the assessment of the ϕ parameter should be to see if it is greater than .9. If there were no difference whatsoever between the E and C conditions in this hypothetical example, then about 90 percent or less of the above-median values would be expected from the E condition. If the posterior ϕ parameter were substantially greater than the group E sample base rate, then that would provide support for the hypothesis that group E has larger representation of the above-median responses in the population than does the C group.
dfba_median_test()
FunctionThere are four arguments for the dfba_median_test()
function: E
, C
, a0
, and
b0
. The E
and C
arguments are
required vectors of continuous values for the data in the two
independent conditions. The a0
and b0
arguments are the shape parameters for the prior beta distribution; each
have default values of 1
. Note: the default values
a0 = 1
and b0 = 1
– resulting in a beta
distribution with α = β = 1 – represent the
uniform distribution.
Given two groups of data:
Group 1 | Group 2 |
---|---|
12.90, 10.84, 22.67, 10.64, 10.67, 10.79, 13.55, 10.95, 12.19, 12.76, 10.89, 11.02, 14.27, 13.98, 11.52, 13.49, 11.22, 15.07, 15.74, 19.00 | 4.63, 58.64, 5.07, 4.66, 4.13, 3.92, 3.39, 3.57, 3.56, 3.39 |
group1 <- c(12.90, 10.84, 22.67, 10.64, 10.67, 10.79, 13.55, 10.95, 12.19, 12.76, 10.89, 11.02, 14.27, 13.98, 11.52, 13.49, 11.22, 15.07, 15.74, 19.00)
group2 <- c(4.63, 58.64, 5.07, 4.66, 4.13, 3.92, 3.39, 3.57, 3.56, 3.39)
dfba_median_test(E = group1,
C = group2)
#> Descriptive Statistics
#> ========================
#> Observed frequencies:
#> E C
#> 20 10
#> Overall median:
#> 10.985
#> Frequencies above the median:
#> E C
#> 14 1
#> Frequencies at or below the median:
#> E C
#> 6 9
#>
#> Bayesian Analyses
#> ========================
#> Base rates for E and C responses:
#> E C
#> 0.666667 0.3333333
#> Analysis of above-median response rates for E and C:
#> Posterior beta shape parameter for the phi parameter
#> a_post b_post
#> 15 2
#> Prior probability of exceeding base rate:
#> E C
#> 0.333333 0.6666667
#> Posterior probability of exceeding base rate:
#> E C
#> 0.986298 0.01370195
#> Bayes factor BF10 E > E_baserate:
#> 143.9646
#> Bayes factor BF10 C > C_baserate
#> 0.006946151
The function computes the combined median of the scores, and it forms the 2 × 2 median-test table. The function also shows the base rates for E and C responses, which in this example are $\frac{2}{3}$ for E and $\frac{1}{3}$ for C because there are twice as many observations for the E group. The function also computes the Bayes factor for the interval alternative hypothesis $H_1: \phi > \frac{2}{3}$ where ϕ is the population proportion of the above median scores that are from the E group. Since this value is large (i.e., 143.9646), the data have increased the belief in the hypothesis that the group E group has a greater representation of the above-median scores than would be expected from its base rate of $\frac{2}{3}$. The function also provides a corresponding Bayes factor for the hypothesis that 1 − ϕ exceeds the C group base rate of $\frac{1}{3}$. This value is the reciprocal of the other Bayes factor (i.e., $\frac{1}{143.9646}=.006946$), so the data have decreased the belief that the above-median scores are above the C group base rate.
The dfba_median_test()
function does not compute a point
Bayes factor, and it does not have a specialized plotting function.
However, if the user desires that type of information, there are simple
DFBA
commands that can be used instead. For example,
entering nEabove
and nCabove
from the
dfba_median_test()
results as arguments in the
dfba_binomial()
function can produce estimates of the
posterior mean, median, and mode for the ϕ parameter…
median_test_results<-dfba_median_test(E = group1,
C = group2)
dfba_binomial(median_test_results$nEabove,
median_test_results$nCabove)
#> Prior and Posterior Beta Shape Parameters:
#> ========================
#> Prior Beta Shape Parameters
#> a0 b0
#> 1 1
#> Posterior Beta Shape Parameters:
#> a_post b_post
#> 15 2
#> Estimates of the Binomial Population Rate Parameter
#> ========================
#> Posterior Mean
#> 0.8823529
#> Posterior Median
#> 0.897297
#> Posterior Mode
#> 0.9333333
#> 95% Equal-tail interval limits:
#> Lower Limit Upper Limit
#> 0.697679 0.9844864
#> 95% Highest-density interval limits:
#> Lower Limit Upper Limit
#> 0.734172 0.9962847
#>
#>
…and can produce a display of the prior and posterior distributions
using the plot()
method:
Given that the modal estimate for the example data is $\frac{14}{15}$, suppose an analyst wants to
see the point Bayes factor for the point $\phi=\frac{14}{15}$. Using the
a.post
, and b.post
outputs from
dfba_median_test()
output as arguments in the
dfba_beta_bayes_factor()
function:
dfba_beta_bayes_factor(a_post = median_test_results$a_post,
b_post = median_test_results$b_post,
method = "point",
H0 = 14/15)
#> Bayes Factor for Point Estimates
#> ========================
#> Point Null Hypothesis
#> 0.9333333
#> Shape Parameters for Prior Beta Distribution
#> a0 b0
#> 1 1
#> Shape Parameters for Posterior Beta Distribution
#> a_post b_post
#> 15 2
#> Prior Probability Density for Null Hypothesis
#> 1
#> Posterior Probability Density for Null Hypothesis
#> 6.090246
#> Bayes Factor Estimate for the Alternative over the Null Hypothesis
#> 0.164197
#> Bayes Factor Estimate for the Null over the Alternative Hypothesis
#> 6.090246
This command results in finding the point Bayes factor of 6.090246. Thus, the posterior probability
density at the null point has increased by more than a factor of 6 from prior probability density. Yet the
probability for any point is still zero. See the vignette on the
dfba_beta_bayes_factor()
for more theoretical information
about the interpretation of point Bayes factors.
Finally, suppose one performed a parametric two-sample t-test for the above data
(i.e., t.test(group1, group2, paired=FALSE)
). The
resulting t-test would not be
significant (p = .5167). Why
does the t-test fail to detect
an effect whereas the Bayesian distribution-free median test finds a
reliable difference between the two conditions? The answer to this
question is that the data contains an outlier. The second value for the
C group is unusually large.
This single score decreases the difference between the means of the
groups, and it increases the standard error. Thus this single score has
an enormous influence on the parametric t-test. The Bayesian median test is
simple, but it is not influenced by outlier scores (i.e., it is
robust). The example thus illustrates the utility for a simple
distribution-free Bayesian alternative to the two-sample t-test. Had the
dfba_mann_whitney()
function been employed for the above
data, it too would have detected a difference between the conditions
with a large Bayes factor value.
Chechile, R. A. (2020). Bayesian Statistics for Experimental Scientists: A General Introduction Using Distribution-Free Methods. Cambridge, MA: MIT Press.
Siegel, S., and Castellan N. J. (1988). Nonparametric Statistics for the Behavioral Sciences. New York: McGraw-Hill.
To prevent confusion between the prior and posterior
shape parameters, the dfba_median_test()
function uses the
variable names a0
and b0
to refer to a0 and b0 and
a_post
and b_post
to refer to the posterior
a and b, respectively↩︎