Home Economics
|
|
|||||
Analyzing the Age-Related Macular Degeneration DatasetThe bivariate mixed-effects (hierarchical) approach After the Surrogate package and the ARMD dataset are loaded in memory (see Section 13.1), the following commands can be used to evaluate whether the change in visual acuity after 24 weeks (coded as Diff24 in the ARMD dataset) is an appropriate surrogate for the change in visual acuity after 52 weeks (coded as Diff52) using the full and the reduced bivariate mixed-effects (hierarchical) approaches (for details see Chapter 4): # Fit full bivariate mixed-effects model > BimixedContCont(Dataset = ARMD, Surr = Diff24, True = Diff52, Treat = Treat, Trial.ID = Center, Pat.ID = Id, Model = "Full") # Fit reduced bivariate mixed-effects model > BimixedContCont(Dataset = ARMD, Surr = Diff24, True = Diff52, Treat = Treat, Trial.ID = Center, Pat.ID = Id, Model = "Reduced") When these commands are run, error messages are given that indicate that the (full and reduced) bivariate mixed-effects models failed to converge. For example, R gives the following error messages when the reduced hierarchical model is fitted: Error in lme.formula(outcome ~ -1 + as.factor(endpoint):Treat + as.factor(endpoint), : nlminb problem, convergence error code = 1 message = singular convergence (7) As was noted in Section 4.3, such model convergence issues often occur when the hierarchical modeling approach is used in real-life datasets. When such problems occur, the simplified modeling strategies (detailed in 4.3) can be used. This is illustrated below. The bivariate fixed-effects approach The function BifixedContCont() uses a two-stage approach to evaluate surrogacy. In Stage 1, the bivariate model (4.10) is fitted, and in Stage 2, the trial-specific treatment effects on T are regressed on the trial-specific treatment effects on S (when a reduced model is fitted) or on the trial-specific intercepts and treatment effects on S (when a full model is fitted). In Stage 2, a weighted or unweighted model can be fitted. Thus, four different bivariate fixed-effect models can be fitted, i.e., a full weighted, full unweighted, reduced weighted, and reduced unweighted bivariate fixed-effect model. By means of illustration, a reduced weighted bivariate fixed-effects model is used here. Such a model can be specified by using the arguments Weighted = TRUE and Model = "Reduced" in the function call: > ARMD_Bifixed_Fit <- BifixedContCont(Dataset = ARMD, Surr = Diff24, True = Diff52, Treat = Treat, Trial.ID = Center, Pat.ID = Id, Model = "Reduced", Weighted = TRUE) The fitted object ARMD_Bifixed_Fit (of class Bif ixedContCont) is placed in the R workspace and can subsequently be examined. For example, the summary () function can be applied to the fitted object ARMD_Bifixed_Fit to explore the results: > summary(ARMD_Bifixed_Fit) # Generated output: Function call: BifixedContCont(Dataset = ARMD, Surr = Diff24, True = Diff52, Treat = Treat, Trial.ID = Center, Pat.ID = Id, Model = "Reduced", Weighted = TRUE) # Data summary and descriptives Total number of trials: 36 Total number of patients: 181 M(SD) patients per trial: 5.0278 (2.9129) [min: 2; max: 18] Total number of patients in experimental treatment group: 84 Total number of patients in control treatment group: 97 Mean surrogate and true endpoint values in each treatment group: Control.Treatment Experimental.treatment Surrogate -6.0309 -7.8095 True endpoint -11.7423 -14.6548 Var surrogate and true endpoint values in each treatment group: Control.Treatment Experimental.treatment Surrogate 188.9261 132.6380 True endpoint 264.7975 231.7709 Correlations between the true and surrogate endpoints in the control (r_T0S0) and the experimental treatment groups (r_T1S1): Estimate Standard Error CI lower limit CI upper limit r_T0S0 0.7693 0.0478 0.7022 0.8228 r_T1S1 0.7118 0.0525 0.6315 0.7770 # Meta-analytic results summary R2 Trial Standard Error CI lower limit CI upper limit 0.6585 0.0965 0.4695 0.8476 R2 Indiv Standard Error CI lower limit CI upper limit 0.5318 0.0512 0.4315 0.6321 R Trial Standard Error CI lower limit CI upper limit 0.8115 0.1002 0.6585 0.9001 R Indiv Standard Error CI lower limit CI upper limit 0.7293 0.0511 0.5270 0.8533 The first part of the output shows descriptives like the number of trials in the data, the number of patients per treatment condition, and the correlations between S and T in both treatment conditions. The second part of the output is of main interest, as it provides the estimates of Rrial and R2ndiv, their standard errors, and their (1 — a)% confidence intervals. As can be seen, R2rial = 0.6585 with 95% confidence interval [0.4695; 0.8476], and R2ndiv = 0.5318 with 95% confidence interval [0.4315; 0.6321] (see also Table 4.2). To depict the results graphically, the plot() function can be applied to the fitted object ARMD_Bifixed_Fit. # Plot of trial-level surrogacy > plot(ARMD_Bifixed_Fit, Trial.Level = TRUE, Indiv.Level = FALSE) # Generated output: The R Package Surrogate 223 ![]() # Plot of individual-level surrogacy > plot(ARMD_Bifixed_Fit, Trial.Level = FALSE, Indiv.Level = TRUE) # Generated output: ![]() The trial-level plot (first plot in the output) shows the estimated trial-specific (here: center-specific) treatment effects on T = visual acuity after 52 weeks (i.e., Pi) against the estimated trial-specific (center-specific) treatment effects on S = visual acuity after 24 weeks (i.e., ai). By default, the sizes of the circles that depict вг, аг are proportional to number of patients in the trials (centers). When circles of the same size are desired for all trials (centers) irrespective of their sample size, the option Weighted=FALSE can be used in the plot() function call. The individual-level plot (second plot in the output) shows the trial- and treatment-corrected residuals for T (i.e., eTij) against the trial- and treatment-corrected residuals for S (i.e., eSij). Overall, the results (surrogacy metrics and plots) lead to the conclusion that, at the level of the trial (center), the treatment effect on T = visual acuity after 52 weeks can be predicted with moderate accuracy based on the treatment effect on S = visual acuity after 24 weeks (moderate Rtrial estimates). At the level of the individual patients, the accuracy by which T = visual acuity after 52 weeks can be predicted based on S = visual acuity after 24 weeks is moderate as well (moderate .R2ndiv estimates). Examining the components of a fitted object of class BifixedContCont() The summary() function can be applied to a fitted object of class BifixedContCont to obtain a summary of the most relevant results (see previous paragraph). The different components of a fitted object can also be examined in more detail. When the function names() is applied to the fitted object, an overview of the components that can be accessed is provided: > names(ARMD_Bifixed_Fit) # Generated output: [1] "Data.Analyze" "Obs.Per.Trial" "Results.Stage.1" [4] "Residuals.Stage.1" "Results.Stage.2" "Trial.R2" [7] "Indiv.R2" "Trial.R" "Indiv.R" [10] "Cor.Endpoints" "D.Equiv" "Sigma" [13] "Call" These components contain the following information:
These components can be accessed using the [Name_Fitted_Object] $ [Component JJame] command. For example, the trial- specific intercepts and treatment effects on S and T can be obtained using the following command: # Request trial-specific results for first 5 trials (centers) > ARMD_Bifixed_Fit$Results.Stage.1[1:5,] # Generated output: Trial Obs.per.trial Treatment.S Treatment.T
The output shows that, for example, in the first trial (center) (coded as Trial ID = 13395 in the ARMD dataset) there were 2 patients and the estimated treatment effects on S and T in this center equaled a1 = 1.5 and = -5.5, respectively. As another example, the results of the Stage 2 analysis can be obtained by the command: # Request Stage 2 model results > ARMD_Bifixed_Fit$Results.Stage . 2 # Generated output: Call: lm(formula = Treatment.T ~ Treatment.S, data = Results.Stage.1, weights = Results.Stage.1$Obs.per.trial) Coefficients: (Intercept) Treatment.S -0.4467 1.1252 Thus, when the Stage 2 model вг = A0 + ец + ег is fitted based on the Stage 1 results, it is obtained that A0 = -0.4467 and Ai = 1.1252. As noted above, ARMD_Bif ixed_Fit$Results. Stage. 2 is a fitted object of class lm and thus it can be explored in a straightforward way using the available functions for this class. For example, diagnostic plots of model fit (e.g., a normal Q-Q plot) can be obtained by applying the plot() function, or more details regarding the fitted model (e.g., the standard errors of the parameter estimates) can be obtained by using the summary() function. By means of illustration, the summary() function is applied here: > summary(ARMD_Bifixed_Fit$Results.Stage.2) # Generated output: Call: lm(formula = Treatment.T ~ Treatment.S, data = Results.Stage.1, weights = Results.Stage.1$Obs.per.trial) Weighted Residuals: Min 1Q Median 3Q Max -29.485 -8.913 1.746 6.538 18.591 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) -0.4467 0.7666 -0.583 0.564 Treatment.S 1.1252 0.1390 8.098 1.92e-09 *** Signif. codes: 0 '***' 0.001 '**' 0.01 0.05 '.' 0.1 ' ' 1 Residual standard error: 10.18 on 34 degrees of freedom Multiple R-squared: 0.6585,Adjusted R-squared: 0.6485 F-statistic: 65.57 on 1 and 34 DF, p-value: 1.925e-09 Notice that the Multiple R-squared: 0.6585 component toward the end of the output corresponds to the estimated Rrial. The expected treatment effect on T in a new trial The main motivation to evaluate a candidate surrogate endpoint is to be able to predict the treatment effect on T based on the estimated treatment effect on S in a new trial i = 0. For example, suppose that a new clinical trial is conducted using the same treatments as the ones that were used in the ARMD trial in a similar patient population. In this new trial, visual acuity is only measured after 24 weeks but not after 52 weeks. Interest is in the prediction of the expected treatment effect on visual acuity after 52 weeks, based on the treatment effect on visual acuity after 24 weeks. Suppose that So = — 1, i.e., the estimated treatment effect on visual acuity after 24 weeks in the new trial, equals —1. Based on this estimate and using the results of the bivariate weighted reduced fixed-effects model that was fitted above, the expected treatment effect on T, i.e., E (в + b0 | a0 = —1), can be obtained using the following commands: # Compute expected treatment effect on T in new trial # i = 0 where alpha_0 = -1 > ExpTreatT <- Pred.TrialT.ContCont(ARMD_Bifixed_Fit, alpha_0 = -1) The results can be explored by applying the summary() and plot() functions to the fitted ExpTreatT object: # Request summary of the results: > summary(ExpTreatT) # Generated output: Function call: Pred.TrialT.ContCont(Object = Reduced_Weighted, alpha_0 = -1) Results: Expected treatment effect (variance) on T (beta_0) = -1.9324 (25.1379) 95% CI: [-11.7592; 7.8944] # Plot the results > plot(ExpTreatT) # Generated output: ![]() The plot shows the trial-specific treatment effects on T and S that were obtained in the ARMD dataset using the weighted reduced bivariate fixed-effects model (gray circles), the expected treatment effect on T in the hypothetical new trial i = 0 (black circle), and the 95% confidence interval around the expected treatment effect on T in the new trial (black dashed line). The output of the summary () function shows that the expected treatment effect on T given So = —1 equals E (p + b0 | a0 = —1) = -1.9324, with 95% confidence interval [—11.7592; 7.8944]. The confidence interval around the expected treatment effect on T is thus wide, as could be expected given the fact that the trial-level surrogacy coefficient was moderate (i.e., i?2rial = 0.6585). The univariate mixed- and fixed-effects approaches Similar to what was the case with the BifixedContCont() function, the functions UnimixedContCont() and UnifixedContCont() use a two-stage approach to assess surrogacy. In Stage 1, two univariate mixed- or fixed-effects models are fitted. In Stage 2, the trial-specific treatment effects on T are regressed on the trial-specific treatment effects on S (when a reduced model is fitted) or on both the trial-specific intercepts and treatment effects on S (when a full model is fitted). In Stage 2, one can opt again for a weighted or an unweighted analysis. For example, suppose that we want to use a reduced weighted univariate mixed-effects model to evaluate surrogacy in the ARMD dataset. Such a model can be specified by the following command: # Fit the model > ARMD_Unimixed_Fit <- UnimixedContCont(Dataset = ARMD, Surr = Diff24, True = Diff52, Treat = Treat, Trial.ID = Center, Pat.ID = Id, Model = "Reduced", Weighted = TRUE) Similar to what was done above, the output can be examined by applying the summary() and plot() functions or by directly accessing components in the fitted object ARMD_Unimixed_Fit using the ARMD_Unimixed_Fit$ [Name.Component] command. |
<< | CONTENTS | >> |
---|
Related topics |