Tutorials › High-Dimensional Genomic Data Analysis › ACAT-O for Omnibus Gene-Based Testing

Rare-Variant Burden and Variance-Component Tests · Tutorial 343 of 795

ACAT-O for Omnibus Gene-Based Testing

Learn to construct and interpret an ACAT-O omnibus p-value from multiple gene-based tests, including the assumptions and diagnostics that matter.

Advanced 10 min read

What You'll Learn

  • Define the ACAT-O statistic and its Cauchy-transformed p-values.
  • Derive the exact Cauchy combination result under independence.
  • Combine burden, SKAT, and related test p-values with prespecified weights.
  • Interpret the omnibus p-value without implying an effect direction or mechanism.
  • Recognize dependence, calibration, weighting, and numerical failure modes.

Why Combine Gene-Based Tests?

A gene or variant set can affect a phenotype through different patterns of variant effects. A burden test is most sensitive when effects tend to align in direction, while a variance-component test such as SKAT can detect heterogeneous effects. An adaptive test can also be informative when the best-fitting balance between these patterns is uncertain. A single test may therefore be poorly matched to the gene’s underlying effect pattern.

ACAT-O combines p-values from several such tests into one omnibus result. It does not average effect estimates, and it does not identify which test or genetic pattern is responsible for a small combined p-value. Its purpose is to provide a single test of the gene-level null while allowing evidence from different tests to contribute.

Definition: Suppose \(p_1,\ldots,p_K\) are p-values from \(K\) gene-based tests of the same gene-level null hypothesis. Choose prespecified weights \(w_k\geq 0\) with \(\sum_{k=1}^{K} w_k=1\). The ACAT-O statistic and its Cauchy-combination p-value are
$$ T=\sum_{k=1}^{K} w_k \tan\{\pi(0.5-p_k)\}, \qquad p_{\mathrm{ACAT-O}}=0.5-\frac{\arctan(T)}{\pi}. $$
The p-values are evidence against the null; the weights control the relative contribution of each test. A smaller \(p_{\mathrm{ACAT-O}}\) indicates stronger omnibus evidence against the gene-level null.

The component p-values must themselves be calibrated under their null hypotheses. For example, a burden p-value should reflect the burden test’s appropriate null distribution, and a SKAT p-value should reflect its score-statistic null distribution. In sparse binary-phenotype settings, calibration must account for the data conditions relevant to that test. ACAT-O combines p-values; it does not repair invalid or poorly calibrated inputs.

Why the Cauchy Transformation Works

The transformation \(Z=\tan\{\pi(0.5-P)\}\) maps a uniform p-value \(P\) to a standard Cauchy random variable. The transformation is large and positive for a very small p-value, zero when \(P=0.5\), and negative when \(P>0.5\). Thus, a highly significant component can contribute a large positive value without being diluted in the way it might be in some other combinations.

Justification under independence: If \(P\sim\mathrm{Uniform}(0,1)\), then \(U=\pi(0.5-P)\) is uniform on \((-\pi/2,\pi/2)\). Therefore
$$ P\{\tan(U)\leq z\} =P\{U\leq\arctan(z)\} =\frac{1}{2}+\frac{\arctan(z)}{\pi}, $$
which is the standard Cauchy distribution function. For independent standard Cauchy variables \(Z_k\), the characteristic function of \(Z_k\) is \(\exp(-|t|)\). Hence the characteristic function of their weighted sum is
$$ \prod_{k=1}^{K}\exp(-|w_k t|) =\exp\left(-|t|\sum_{k=1}^{K}w_k\right) =\exp(-|t|), $$
so \(T=\sum_k w_k Z_k\) is also standard Cauchy. Its upper-tail probability is \(0.5-\arctan(T)/\pi\), giving the stated combination formula.

The independence result explains the formula, but gene-based tests applied to the same individuals and variants are generally dependent. In practice, ACAT is used because the Cauchy combination often gives a useful approximation under dependence, especially in the small-p-value tail. It is not an exact finite-sample guarantee for every possible dependence structure. The validity of the component p-values remains essential, and strong dependence or unusual calibration can make the approximation less reliable.

Calculating and Interpreting the Combined Result

Worked Example: Combining Burden and SKAT Evidence

Suppose a hypothetical gene has a burden-test p-value of \(0.020\) and a SKAT p-value of \(0.200\). Give each test weight \(0.50\). Assume both p-values are valid for the same gene-level null and use the ACAT dependence approximation for this illustration.

The Cauchy transforms are approximately \(\tan\{\pi(0.5-0.020)\}=15.8945\) and \(\tan\{\pi(0.5-0.200)\}=1.3764\). Therefore

$$ T=0.50(15.8945)+0.50(1.3764)=8.63545. $$

The combined p-value is

$$ p_{\mathrm{ACAT-O}}=0.5-\frac{\arctan(8.63545)}{\pi} \approx 0.0367. $$

The omnibus result is statistically significant at a prespecified level of \(0.05\), if that is the applicable threshold. It is not significant at \(0.01\). The result does not establish that the burden model is correct, nor does it give a probability that the null is true. It indicates evidence against the gene-level null from the combined tests.

Worked Example: Adding an Adaptive Test

Consider hypothetical p-values \(0.10\) for a burden test, \(0.50\) for SKAT, and \(0.25\) for an adaptive burden-variance test. Let their prespecified weights be \(0.50\), \(0.30\), and \(0.20\). These tests are assumed to address the same gene-level null, with calibrated component p-values.

The transformed values are \(\tan(0.4\pi)\approx3.0777\), \(\tan(0)=0\), and \(\tan(0.25\pi)=1\). The weighted statistic is

$$ T=0.50(3.0777)+0.30(0)+0.20(1)=1.7389. $$

Thus

$$ p_{\mathrm{ACAT-O}}=0.5-\frac{\arctan(1.7389)}{\pi}\approx0.166. $$

The combined p-value is smaller than the component values \(0.25\) and \(0.50\), but larger than \(0.10\). It is not below \(0.05\), so this calculation does not provide evidence against the null at that level. A combination need not be more significant than the smallest input p-value.

For large positive \(T\), a useful numerical approximation is \(p_{\mathrm{ACAT-O}}\approx1/(\pi T)\). It follows from \(0.5-\arctan(T)/\pi=\arctan(1/T)/\pi\) when \(T>0\), and \(\arctan(x)\approx x\) for small \(x\). The exact expression should be used when feasible, especially when \(T\) is not large.

Worked Example: Checking the Small-P Approximation

Suppose a hypothetical combination gives \(T=10\). The exact upper-tail formula can be written as

$$ p_{\mathrm{ACAT-O}}=\frac{\arctan(1/10)}{\pi} =\frac{\arctan(0.1)}{\pi} \approx\frac{0.09967}{3.14159} \approx0.0317. $$

The large-\(T\) approximation gives \(1/(\pi T)=1/(10\pi)\approx0.0318\). The two agree closely here, but the approximation is not a substitute for the exact formula when the statistic is moderate or negative.

Weights, Dependence, and Diagnostics

Weights should reflect the planned testing strategy, not be chosen after inspecting which choice gives the smallest combined p-value. Equal weights are a transparent default when the component tests are comparably relevant. Unequal weights can emphasize a test expected to be informative for the scientific setting, but any weight choice should be specified in advance or otherwise handled by a valid selection procedure. Weights must be nonnegative and sum to one; multiplying all weights by the same positive constant does not change the result if they are then normalized to sum to one.

Before interpreting an ACAT-O result, check the inputs and the construction:

  • Confirm that every component p-value tests the same gene-level null in a compatible analysis population and phenotype setting.
  • Check that each p-value uses an appropriate null calibration, including any sparse-data correction required by its component test.
  • Verify that weights are nonnegative, sum to one, and were chosen without unaccounted outcome-driven selection.
  • Check that the combined result is not being presented as an effect estimate, effect direction, or proof of a particular genetic architecture.
  • Inspect numerical handling of p-values extremely close to zero or one. The tangent can overflow at the endpoints, so use adequate numerical precision and do not silently replace a computed zero with an arbitrary small value.

If a component p-value is exactly zero because of numerical underflow, the transformed statistic is not meaningfully calculated by ordinary floating-point arithmetic. Use higher precision or report an appropriately justified upper bound for the p-value. If a p-value is exactly one, its transform is formally negative infinite; such endpoint values also require careful handling rather than blind substitution. Any truncation or regularization should be documented because it can affect the result.

How ACAT-O Differs From Other Omnibus Strategies

ApproachHow it combines evidencePractical distinction
ACAT-OWeighted sum of Cauchy transforms of component p-valuesCan combine different gene-based tests; the small-p tail can be driven by one strong component.
Calibrated minimum-p approachUses the smallest component p-value and calibrates its null distributionFocuses directly on the best component; calibration must account for the dependence among tests.
Bonferroni adjustmentMultiplies the smallest p-value by the number of tests, capped at oneSimple and conservative under dependence, but may lose power when tests are correlated.
Fisher combinationSums transformed log p-valuesCan gain evidence from several moderately small p-values; its usual reference distribution relies on independence unless dependence is accommodated.

These procedures answer related but not identical questions about how evidence is pooled. ACAT-O is useful when a gene-level signal may appear strongly in one of several complementary tests, but the omnibus result does not reveal which component drove it. A calibrated minimum-p method instead emphasizes the best observed component and must account for the search across components. Neither method removes the need to calibrate the underlying tests or to account for testing many genes in the broader analysis.

Common Mistakes and Limitations

  • Treating the combined p-value as an effect estimate. It has no units and gives neither the size nor direction of a genetic effect. Report relevant component estimates separately when those are part of the analysis.
  • Assuming all component tests are independent. They are often correlated because they use overlapping variants and the same participants. Independence explains an exact result, but dependence motivates interpreting ACAT’s reference p-value as an approximation whose quality depends on calibration and conditions.
  • Choosing weights after seeing the results. Selecting weights to favor the smallest observed p-value adds a search step. Prespecify weights or use a procedure that accounts for that selection.
  • Assuming the omnibus result identifies the genetic architecture. A small value can arise from strong evidence in one component or contributions from several. It does not distinguish these explanations by itself.
  • Interpreting a non-small result as evidence of no association. A large combined p-value is not proof of the null; limited power, imperfect calibration, or a mismatch between tests and the effect pattern may contribute.
Key takeaway: ACAT-O maps calibrated component p-values to Cauchy variables, combines them using prespecified nonnegative weights, and converts the sum back to an omnibus p-value. Its strength is flexible evidence combination; its interpretation remains a test of the gene-level null, not an estimate of effect or a diagnosis of mechanism.

Check Your Understanding

Answer each question, then compare your reasoning with the solutions.

  1. What does a Cauchy-transformed component p-value contribute when its p-value is \(0.5\)?
  2. With two equally weighted tests having p-values \(0.10\) and \(0.50\), calculate \(T\) and the ACAT p-value approximately. Use \(\tan(0.4\pi)\approx3.0777\).
  3. Why does the independence derivation not establish exact calibration under arbitrary dependence?
  4. Can a small ACAT-O p-value establish that the burden model, rather than SKAT, is the correct model? Why or why not?
  5. Name two checks to make before reporting an ACAT-O result.

Solutions. (1) It contributes \(\tan\{(0.5-0.5)\pi\}=0\). (2) \(T=0.5(3.0777)+0.5(0)=1.53885\). Thus \(p=0.5-\arctan(1.53885)/\pi\approx0.183\). (3) The exact stable-Cauchy argument uses independent transformed variables; dependence changes the distribution of their weighted sum, so the tail calibration is an approximation rather than a universal exact result. (4) No. The omnibus value combines evidence and does not identify which component or effect pattern generated it. (5) Examples include verifying component calibration, confirming that all tests target the same null, checking prespecified normalized weights, and checking endpoint or underflow handling.

Clinical Biostats