This is the story of trying to estimate a QALE10. A QALE10 is the quality adjusted life expectancy that a person will accrue over the next 10 years. We made Bayesian based estimates using WinBUGS14 and I've included the doodles below.

We had access to 10 years of data on a cohort from Wisconsin (the infamous Beaver Dam cohort). This dataset includes a quality of life measure at 4 time points as well as mortality data. The participants were all aged 45 or older at the beginning of the study.

We can think of a QALE10 much like a 10 year life expectancy. When we talk about pure life expectancy, we would say that a person of [some given characteristics] is expected to live x many more years. However, we could constrain the life expectancy measure to the next 10 years and say how many of the next 10 years a person of [the given characteristics] is expected to live. This number will always be less than 10 because some people in that group will die in the next 10 years. This number is the LE (life expectancy) and we estimate it using Weibull survival regression.

We then add the QA (quality adjustment) to this life expectancy. We do this by estimating the expected quality of life for different times over the next 10 years for [the given characteristics] and itegrating with the Weibull survival. We approximate the integration by estimating time points in excel, creating a piecewise linear curve, and measuring the area under the curve. The quality adjustement we use is the SF-6D, a single preference based summary score from the SF-36. Because this score is bounded at 0 and 1, we took the logit of the SF-6D and presumed the logit has a normal distribution.

The characteristics we wanted to use were age, sex, and categorical self rated health (SRH). Categorical self rated health is how a person places themselves when they're asked "In general, would you say your health is Excellent, Very Good, Good, Fair, or Poor?" We would only use the baseline responses to predict the current and future SF-6D scores. This would enable us to predict a person's QALE10 based on their age, sex, and SRH.

The first step was to estimate the Weibull survival function. In this doodle, t is the time to death and is measured in months. The mortality data was complete through 150 months after baseline, so the censorship (t.cen) was at 150 months. We also put baseline age in as months. Or original model included all 5 SRH categories, but looking at the survival curves from that model showed a clustering of groups; Excellent and Very Good had overlapping curves and so did Fair and Poor. For parsimony, we collapsed the number of SRH groups down and used those groups for the rest of the analyses. The groups are SRP (self ratings Fair and Poor), SRG (self rating Good), and SRE (self rating Very Good or Excellent). Because we use dummy variables, you will only see SRP and SRG in the doodles while SRE is included in the base case/constants.

The Weibull survival function was fairly straightforward and we are quite comfortable with using the results. It would be preferable to inform our priors with cohorts from the Berkeley Life Tables, but we have not yet taken this extra step.

The more complex problem we have been struggling with is how to model the quality adjustment. We have now been through multiple iterations of the model searching for the best one:

Model 1. The first model was put together by my advisor, Dennis Fryback. We called this model an autoregressive model, but it was actually only partially a moving averages model. This model oversimplified in many ways. Basically, we used baseline age, sex, and SRH to estimate SF-6D scores at baseline. We then used baseline age, sex, SRH, and SF-6D score to estimate the SF-6D score at the next data collection point, about 2 years later. We then used baseline age, sex, SRH, and year 2 SF-6D score to estimate the SF-6D score at the next data collection point, around year 8. We did the same thing again, using the year 8 score to estimate the year 10 score. The primary problems with this model were that it does not take into account the actual time between measurements and did not include subject error terms. We were, however, quite pleased to have a working model and presented our results at the 2004 ISOQOL Methods Symposium. The slides from that talk are here.

Model 2. After abandoning the quest to estimate the QALE10 for about a year, we picked it up again hoping to substantially clean up the model for another presentation and possible publication. Denny tried to find a way to estimate the SF-6D score using a Beta distribution, which was ultimately unsuccessful. I tried to address some of the issues we knew about from the previous model and was only partially successful. I did not include actual time between observations, but I did create a model that has a moving average. My addition to Denny's model was basically that the difference between the predicted and observed scores at a time point would be used to estimate the next time point instead of the observed score. It is a small improvement, but does not really allow for correlated individual error. This model was running, so it was presented at the 2005 IHEA 5th world conference. I am willing to send copies of this presentation, if you would like to see it.

Model 3. After IHEA, we tried to step back and reformulate our quality adjustment model to include actual time between observations (in months) and an individual error term. We did ourselves a favor and actually enlisted a statistics professor down the hall, Ron Gangnon, who was both incredibly patient and incredibly clarifying. The resulting model was a huge improvement and much simpler than estimating each time point. This model takes baseline age, sex, and SRH as well as the time since baseline to predict the SF-6D logit. It allows for repeated observations per subject, with an individual error term. It took me a long time to figure out how to enter data because WinBUGS does not like missing data (designated NA) in independent variables. Because all missing independent data was also at an observation with missing dependent data, I simply replace missing independent data with nonsense (zeros). I also ran the model with this data replaced with 100 and got the same parameter estimates, so I am comfortable assuming WinBUGS simply ignores the nonsense data. I always prefer to input data in rectangular form.

Model 4. It turned out that I had misinterpretted some of Ron's comments and I had managed to catch myself when I considered breaking the time into a piecewise linear function based on time in different age brackets instead of a single line. I wondered why I wasn't doing the same thing with age, if I think the slope is different at different ages. I went to talk to Denny and we developed an even more complex model. This new model broke age into time within each age bracket (piecewise linear) for each observation. It also uses sex separately. We wanted to include baseline SRH, but also to allow the effect of baseline SRH to attenuate the farther it is from an observation.

Model 5. It turns out we were on the right track, but not going far enough. What Ron originally meant was to think of both the SF-6D score and SRH as estimates of true underlying quality of life. This true underlying quantity would be a function of age, sex, and individual error. This allows us to use all the data from all time points. We currently have this model written, but it keeps going to "trap" because we are trying to impliment a bernoulli chain for the categorical SRH because dcat will not take missing data. I will be updating when it is stable and running. This update may take a while as I just gave birth to my first child!



Creative Commons License
This page and all associated documents are licensed under a Creative Commons License.
Learn more about the Creative Commons here.