I'm trying to use GeMTC (a package for Bayesian Network Meta Analysis) for an analysis that mixes contrast-based data (Hazard Ratio;HR) with arm-based data (event counts). The documentation specifies that this is possible, but requires the standard error of the log-hazard in the baseline arm for mutli-arm trials.
Relative effect data. A data frame defining the arms of each study, containing the columns ‘study’ and ‘treatment’, where ‘treatment’ must refer to an existing treatment ID if treatments were specified. The column ‘diff’ specifies the mean difference between the current arm and the baseline arm; set ‘diff=NA’ for the baseline arm. The column ‘std.err’ specifies the standard error of the mean difference (for non-baseline arms). For trials with more than two arms, specify the standard error of the mean of the baseline arm in ‘std.err’, as this determines
the covariance of the differences"
(from the mtc.network manual)
Unfortunately, this data is not available. However, a paper by Woods et.al. specifies that it is possible to compute/approximate.
The variance for a log hazard ratio is the sum of the variances for the individual log hazards. Standard errors of the log hazards for each trial arm can therefore be estimated by solving simultaneous equations based on the standard errors for the set of log-hazard ratios. For example:
\begin{equation}
se_b = \sqrt{((se^2_{k_1,b} + se^2_{k_2,b} – se^2_{k_1,k_2} )/2)}
\end{equation}Where $se^2_{i,j}$ is the variance of the log hazard ratio comparing arm $i$ to arm $j$ and $se_i$ is the standard error of the log hazard for arm $i$.
The standard errors of the log hazards for the other treatment arms are then estimated as:
\begin{equation}
se_k=\sqrt{se^2_{k,b} – se^2_b}
\end{equation}
The paper then goes on outlining how to compute $se_{k_1,k_2}$ in formula 9.
In order to estimate standard errors of the log hazards for each treatment, we required estimates of the uncertainty associated with four treatment contrasts. In some cases this data may not be available and thus the methods presented in equations 7 and 8 may not be feasible. For example, hazard ratios and associated measures of uncertainty may only be available for each active treatment relative to a single common comparator (e.g. placebo) as is commonly reported in the published literature.
However I am at a loss on how to apply these formulas correctly in GeMTC.
Replicating the data from Woods I have the following code:
data.ab <- read.table(textConnection('
study treatment responders sampleSize
01 Salmeterol 1 229
01 Placebo 1 227
02 Fluticasone 4 374
02 Salmeterol 3 372
02 SFC 2 358
02 Placebo 7 361
03 Salmeterol 1 554
03 Placebo 2 270'), header=T)
data.re <- read.table(textConnection('
study treatment diff std.err
04 Placebo NA NA
04 Fluticasone -0.276 0.203
05 Placebo NA 0.066
05 SFC -0.209 0.098
05 Salmeterol -0.154 0.096
05 Fluticasone 0.055 0.092
'), header=T)
network <- mtc.network(data.ab=data.ab, data.re=data.re)
model <- mtc.model(network, link="cloglog", likelihood="binom", linearModel="fixed")
mtc.run(model) -> results
forest(relative.effect(results, t1="Placebo"))
I used their value from Table 3 (0.66) as the value for the log-hazard standard error of Placebo. The results are similar. But, I cannot compute this value in the general case of > 2-arm studies when data comes in as Table 2.
Best Answer
For brevity, let me refer to the treatments in the TORCH trial as A (Placebo), B (SFC), C (Salmeterol), and D (Fluticasone). Let me call $d_{AB}$ the effect of B with A as the base, i.e. the first row of data for the TORCH trial. The basic relationship between the relative effects is given by:
$$d_{BC} = d_{AC} - d_{AB}$$
$$Var(d_{BC}) = Var(d_{AC}) + Var(d_{AB}) - 2 Cov(d_{AB}, d_{AC})$$
Because $Var(d_{AB}) = Var(y_A) + Var(y_B)$ etc., we get that $Cov(d_{AB}, d_{AC}) = Var(y_A)$, where $y_A$ is the log-hazard of $A$ (see e.g. the NICE DSU TSD 2, page 37, or the paper by Franchini et al..
Hence the table defines the following constraints that should allow you to work out $Var(y_A)$ and hence $SE(y_A)$:
$$ Var(d_{BC}) = Var(d_{AC}) + Var(d_{AB}) - 2 Var(y_A) $$
$$ Var(d_{BD}) = Var(d_{AD}) + Var(d_{AB}) - 2 Var(y_A) $$
So there is no need to approximate, you should be able to get an exact answer and even cross-check it.
I get 0.0664 and 0.0665, respectively, for the standard error in the baseline arm.