In some safety and efficacy studies, it is of interest to determine if an increase in the dose yields an increase (or decrease) in the response. The statistical analysis for such a situation is called a dose-response or trend analysis. We want to see a trend here, not just a difference in groups. Typically, patients in a dose-response study are randomized to K + 1 treatment groups (a placebo dose and K increasing doses of the drug). The response variables of interest may be binary, ordinal, or continuous (in some circumstances, the response variable may be a time-to-event variable). In some instances, trend tests can be sensitive and reveal a mild trend where pair-wise comparisons would not be able to find significant differences and not be as helpful.
For the sake of illustration, suppose that the response is continuous and that we want to determine if there is a trend in the K + 1 population means.
A one-sided hypothesis testing framework for investigating an increasing trend is
\(H_0 \colon {\mu_0 = \mu_1 = \dots = \mu_K}\) versus
\(H_1 \colon {\mu_0 ≤ \mu_1 ≤ \dots ≤ \mu_K}\) with at least one strict inequality}
A one-sided hypothesis testing framework for investigating a decreasing trend is
\(H_0 \colon {\mu_0 = \mu_1 = \dots = \mu_K}\) versus
\(H_1 \colon {\mu_0 ≥ \mu_1 ≥ \dots ≥ \mu_K}\) with at least one strict inequality}
A two-sided hypothesis testing framework for investigating a trend is
\(H_0 \colon {\mu_0 = \mu_1 = \dots = \mu_K}\) versus
\(H_1 \colon {\mu_0 ≤ \mu_1 ≤ \dots ≤ \mu_K or \mu_0 ≥ \mu_1 ≥ \dots ≥ \mu_K}\) with at least one strict inequality}
More than likely we would use one of the one-sided tests as you probably have a hunch about the effect that will result.
For a continuous response, an appropriate test is the Jonckheere-Terptsra (JT) trend test that was developed in the 1950s. The JT trend test is based on a sum of Mann-Whitney-Wilcoxon tests :
\(JT=\sum_{k=0}^{K-1}\sum_{k'=1}^{K}MWW_{kk'}\)
where \(MWW,_kk´\) is the Mann-Whitney-Wilcoxon test for comparing group k to group \(k´, 0 ≤ k < k´ ≤ K\). Essentially, each of the pairs of groups is compared against one another and then summed up. In this way this test looks for trends.
If \(Y_ki , I = 1, \dots , n_k \), denote the observations from group k, and \(Y_k'i', i´ = 1, \dots , n_k'\) , denote the observations from group \(k´\), then
\(MWW_{kk'}=\sum_{i=1}^{n_k}\sum_{i'=1}^{n_k'}sign(Y_{k'i'}-Y_{ki}\)
Note that each MWW should be constructed in a consistent manner. For example, when comparing an observation from a lower dose group versus an observation higher dose group, take the difference of the latter minus the former.
As an example of how the JT statistic is constructed, suppose there are four dose groups in a study (placebo, low dose, mid-dose, and high dose). Then the JT trend test is the sum of six Mann-Whitney-Wilcoxon test statistics:
{placebo vs. low dose} +
{placebo vs. mid dose} +
{placebo vs. high dose} +
{low dose vs. mid dose} +
{low dose vs. high dose} +
{mid dose vs. high dose}Values of the statistic JT near-zero support
\(H_0 \colon {\mu_0 = \mu_1 = \dots = \mu_K}\) - they are equal
Large positive values of the statistic JT support
\(H_1 \colon {\mu_0 ≤ \mu_1 ≤ \dots ≤ \mu_K}\) with at least one strict inequality} - a increasing trend
Large negative values of the statistics JT support
\(H_1 \colon {\mu_0 ≥ \mu_1 ≥ \dots ≥ \mu_K}\) with at least one strict inequality}- a decreasing trend
The JT trend test actually is testing hypotheses about population medians, but if the underlying probability distribution is symmetric, the population mean and the population median are equal to one another. The JT trend test is available in PROC FREQ of SAS.
The parametric version of the JT trend test, based on the assumption of normal data, is to substitute the difference between sample means for the Mann-Whitney-Wilcoxon statistics. The numerator for the parametric test is as follows:
\(\sum_{k=0}^{K-1}\sum_{k'=k+1}^{K}(\bar{Y}_{k'}-\bar{Y}_{k})\)
Next, we assume that the \(K + 1\) groups have a homogeneous population variance, \(\sigma^2\) . The population variance is estimated by the pooled sample variance, \(s^2\) , and it has d degrees of freedom:
\(s^2=\frac{1}{d}\sum_{k=0}^{K}\sum_{i=1}^{n_k}(Y_{ki}-\bar{Y}_{k})^2, d=\sum_{k=0}^{K}(n_k-1)\)
Letting \(c_k = 2k - K, k = 0, 1, \dots , K\), the numerator reduces to:
\(\sum_{k=0}^{K}c_k \bar{Y}_{k}\)
Then the trend statistic is:
\(T=\left( \sum_{k=0}^{K}c_k \bar{Y}_{k} \right)/\left( \sqrt{s^2 \sum_{k=0}^{K}\dfrac{c_{k}^{2}}{n_{k}^{2}}} \right)\)
For example, if \(K = 3\) (placebo, low dose, mid dose, and high dose), then \(c_0 = -3, c_1 = -1, c_2 = 1, c_3 = 3\). Notice, however, that if there are an odd number of groups, then the middle group has a coefficient of zero. For example, with \(K = 2\) (placebo, low dose, and high dose) \(c_0 = - 1, c_1 = 0, c_2 = 1\). This is not ideal and there are better trend tests than JT and T for continuous data.
To use the actual dose values (denoted as \(d_0, d_1, \dots , d_K\)) in the parametric test, set \(c_k = d_k - \text{mean}(d_0, d_1, \dots , d_K), k = 0, 1, \dots , K\).
The T trend statistic can be constructed by using the CONTRAST statement in SAS PROC GLM.
The JT trend test works well for binary and ordinal data, as well as being available for continuous data.
Another trend test for binary data is the Cochran-Armitage (CA) trend test. The difference between the JT and CA trend tests is that for the latter test, the actual dose levels can be specified. In other words, instead of designating the dose levels as low, mid, or high, the actual numerical dose levels can be used in the CA trend test, such as 20 mg, 60, 180 mg.
The CA trend test, however, can yield unusual results if there is unequal spacing among the dose levels. If the dose levels are equally spaced and the sample sizes are equal (\(n_0 = n_1 = ... = n_K\)), then the JT and CA trend tests yield exactly the same results. Each of these parameters needs to be taken into account to make sure you are applying the best test for your data.
Example
Constructing trend tests Section
This SAS example illustrates how to construct trend tests.
***********************************************************************
* This is a program that illustrates the use of PROC FREQ and PROC *
* GLM in SAS for performing trend tests. *
***********************************************************************;
proc format;
value groupfmt 0='Placebo' 1='20 mg' 2='60 mg' 3='180 mg';
value reactfmt 0='F' 1='S';
run;
data contin;
input group subject response;
cards;
0 01 27
0 02 28
0 03 27
0 04 31
0 05 34
0 06 32
1 01 31
1 02 35
1 03 34
1 04 32
1 05 31
1 06 33
2 01 32
2 02 33
2 03 30
2 04 34
2 05 37
2 06 36
3 01 40
3 02 39
3 03 41
3 04 38
3 05 42
3 06 43
;
run;
proc glm data=contin;
class group;
model response=group;
contrast 'Trend Test' group -1.5 -0.5 0.5 1.5;
title "Parametric Trend Test for Continuous Data";
run;
proc freq data=contin;
tables group*response/jt;
title "Jonckheere-Terpstra Trend Test for Continuous Data";
run;
data binary;
set contin;
if group=0 then dose=0;
if group=1 then dose=20;
if group=2 then dose=60;
if group=3 then dose=180;
if response<32 then react=0;
if response>=32 then react=1;
format react reactfmt.;
run;
proc freq data=binary;
tables react*group/jt trend;
exact jt trend;
title "Jonckheere-Terpstra and Cochran-Armitage Trend Tests for Binary Data";
title2 "Ordinal Scores";
run;
proc freq data=binary;
tables react*dose/jt trend;
exact jt trend;
title "Jonckheere-Terpstra and Cochran-Armitage Trend Tests for Binary Data";
title2 "Dose Scores";
run;