Arte SheetsLearn. Try. Understand.

Statistical & Psychometrics

Breslow-Day / Woolf Homogeneity of Odds Ratios Test (Effect Modification Q)

Test whether stratified log-odds ratios share a common true effect BEFORE pooling Mantel-Haenszel or Woolf estimates using Q = Σ w_i * (y_i - y_bar)^2 against χ²(k - 1).

Never pool Mantel-Haenszel odds ratios when effect modification reverses risk across strata!

Stratified epidemiology distinguishes CONFOUNDING (stratum odds ratios are homogeneous and should be pooled) from EFFECT MODIFICATION / INTERACTION (treatment helps young patients y_1 > 0 but harms older patients y_3 < 0—making a single pooled OR clinically misleading)! Norman E. Breslow and Nicholas E. Day (Statistical Methods in Cancer Research, 1980) and Barnet Woolf (1955) test homogeneity via weighted squared log-OR deviations Q = SUM(w_i * (y_i - y_bar)^2) on k - 1 degrees of freedom (critical χ^2_{2, 0.05} = 5.9915 for k = 3 strata)!

Audit three hospital age strata with log-ORs y = [1.10, 1.05, 0.95] and inverse-variance weights w = [4.5, 5.2, 4.3]: Q = 0.0512 << 5.9915 confirms homogeneity (safe to pool!). Flip Stratum 3 to opposite-sign y_3 = -0.45: Q jumps to 6.9183 > 5.9915—flagging statistically significant effect modification (p < 0.05, report stratum-specific ORs separately)!

3-Stratum Log-OR Profile (df = 2, Cutoff 5.9915)Homogeneity Statistic QEpidemiological Decision
y = [1.10, 1.05, 0.95] (Consistent Direction)Q = 0.0512 (< 5.9915)Homogeneous Odds Ratios — Safe to Pool OR
y = [1.10, 1.05, -0.45] (Qualitative Interaction)Q = 6.9183 (>= 5.9915)Significant Effect Modification — Do Not Pool!
Non-Positive Weight w_i <= 0"Invalid Stratum Weights"Precision Guard

Stratified Log-Odds Homogeneity Chi-Square Statistic Q (df = k - 1)

Computes Σ w_i * (y_i - y_bar)^2 across stratum log-odds ratios B2:B4 and inverse-variance weights C2:C4, where pooled log-OR y_bar = SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4).

=IF(MIN(C2:C4) <= 0, "Invalid Stratum Weights", ROUND(C2 * ((B2 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2) + C3 * ((B3 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2) + C4 * ((B4 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2), 4))

5%-Level Homogeneity vs. Effect-Modification Decision Rule (df = 2)

Compares Q against the exact 2-df chi-square α = 0.05 critical threshold 5.9915.

=IF(MIN(C2:C4) <= 0, "Invalid Stratum Weights", IF(C2 * ((B2 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2) + C3 * ((B3 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2) + C4 * ((B4 - (SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4))) ^ 2) >= 5.9915, "Significant Effect Modification (p < 0.05 — Report Strata Separately)", "Homogeneous Odds Ratios (Safe to Pool)"))

Try the example

Use the original values or change them to test your understanding.

Further reading