Let \(\texttt{status}\) \((i = 1,2)\) and \(\texttt{age}\) \((j = 1,...,m)\) be factors, and let \(\texttt{y}\) store the entries in the contingency table. Also, let \(\texttt{agen}\) be a quantitative or numeric variable containing the same numbers as \(\texttt{age}\). This model can be fitted in \(R\) by the command \[ \texttt{glm(y} \sim \texttt{status} + \texttt{age} + \texttt{status:agen}, \texttt{poisson}) \] with parameters \(\alpha_i, \ \beta_j\) and \(\gamma_i,~ i = 1, 2; ~ j = 1,\ldots,m\). The aliasing constraints are \(\alpha_1 = 0,~ \beta_1 = 0\) and \(\gamma_1 = 0\) (since the effects of \(\gamma_{1 j}\) can be absorbed into \(\mu\) and the \(\beta_j\)’s).
Conditioning on \(y_{+j}\), we see that the probability function of \(y_{1j}\) is given by \[\begin{align*} P(y_{1j} = k | y_{+j} = n) & = P(y_{1j} = k~\mbox{and} ~ y_{2j} = n-k | y_{+j} = n)\\ = & \frac{ e^{ -\lambda_{ij} } (\lambda_{ij} )^k e^{-\lambda_{2j}} (\lambda_{2j} )^{n-k} / (k! (n-k) !)} {e^{-\lambda_{+j}} (\lambda_{+j})^n / n!}\\ = & \begin{pmatrix} n\\ k \end{pmatrix} \pi^k_j (1 - \pi_j)^{n-k},~~ 0 \leq k \leq n \end{align*}\] where \(\pi_j = \lambda_{1j} / \lambda_{+j}\). That is \(y_{1j} \sim B(y_{+j}, \pi_j)\), where \[\begin{align*} \operatorname{logit} \pi_j = \log \lambda_{1j} - \log \lambda_{2j} &= \alpha_1 - \alpha_2 + (\gamma_1 - \gamma_2) j\\ &= -\alpha_2 - \gamma_2 j. \end{align*}\] Further, the \(\{y_{ij}, ~ j = 1,\ldots,m\) given \(y_{+j}, ~ j = 1,\ldots,m\}\) are independent. Thus the binomial data follow a logistic regression with intercept \(-\alpha_2\) and slope \(-\gamma_2\), which are the identifiable parameters.
Equation (6.4) states that: \[ y_{++} = e^{\hat{\mu}} \left(\sum_i e^{\hat{\alpha}_i}\right) \left(\sum_j e^{\hat{\beta}_j}\right). \] and Equation (6.6) that: \[ y_{+j} = e^{\widehat{\mu}} e^{\widehat{\beta}_j} \left(\sum_i e^{\widehat{\alpha}_i}\right). \] Taking the second divided by the first, after cancellations, yields the required result.