Bookmark and Share

Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: st: Calculating standard deviations used to approximate beta distributions


From   Austin Nichols <[email protected]>
To   "[email protected]" <[email protected]>
Subject   Re: st: Calculating standard deviations used to approximate beta distributions
Date   Sat, 1 Mar 2014 08:38:45 -0500

Emily McPherson <[email protected]>
I'm not sure what you are after here, but for any values `t' and `u'
you want to substitute, you can calculate directly by substituting for
your gamma and lambda:

nlcom 1-(exp(([ln_p]_cons*((`t'-`u')^(exp(_cons))))-([ln_p]_cons*(`t'^(exp(_cons))))))

On Fri, Feb 28, 2014 at 2:49 PM, Emily McPherson <[email protected]> wrote:
> Hello all, my name is Emily McPherson. I'm a health economist at the Canadian Centre for Applied Research in Cancer Control.
>
> My question relates to calculating the standard deviation (SD) of transition probabilities derived from coefficients estimated through Weibull regression in Stata.
>
> The transition probabilities are being used to model disease progression of leukemia patients over 40 cycles of 90 days (about 10 years). I need the SDs of the probabilities (which change over the run of the Markov model) to create beta distributions whose parameters can be approximated using the corresponding Markov cycle probability and its SD. These distributions are then used to do Probabilistic sensitivity analysis, i.e., they are substituted for the simple probabilities (one for each cycle) and random draws from them can evaluate the robustness of the model's cost-effectiveness results.
>
> Anyway, using time to event survival data, I've used regression analysis to estimate coefficients that can be plugged into an equation to generate transition probabilities. For example...
>
>
> . streg, nohr dist(weibull)
>
>         failure _d:  event
>    analysis time _t:  time
>
> Fitting constant-only model:
>
> Iteration 0:   log likelihood = -171.82384
> Iteration 1:   log likelihood = -158.78902
> Iteration 2:   log likelihood = -158.64499
> Iteration 3:   log likelihood = -158.64497
> Iteration 4:   log likelihood = -158.64497
>
> Fitting full model:
> Iteration 0:   log likelihood = -158.64497
>
> Weibull regression -- log relative-hazard form
>
> No. of subjects =           93                     Number of obs   =        93
> No. of failures =           62
> Time at risk    =        60250
>                                                    LR chi2(0)      =     -0.00
> Log likelihood  =   -158.64497                     Prob > chi2     =         .
>
> ------------------------------------------------------------------------------
>           _t |      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
> -------------+----------------------------------------------------------------
>        _cons |  -4.307123   .4483219    -9.61   0.000    -5.185818   -3.428429
> -------------+----------------------------------------------------------------
>        /ln_p |  -.4638212   .1020754    -4.54   0.000    -.6638854    -.263757
> -------------+----------------------------------------------------------------
>            p |    .628876   .0641928                      .5148471    .7681602
>          1/p |   1.590139   .1623141                      1.301812    1.942324
>
>
> We then create the probabilities with an equation () that uses p and _cons as well as t for time (i.e., Markov cycle number) and u for cycle length (usually a year, mine is 90 days since I'm working with leukemia patients who are very likely to have an event, i.e., relapse or die).
>
> So where lambda = p, gamma = (exp(_cons))
>
> gen result = (exp((lambda*((t-u)^ (gamma)))-(lambda*(t^(gamma)))))
>
> gen transitions = 1-result
>
> Turning to the variability, I first calculate the standard errors for the coefficients
>
>
> . nlcom (exp(_b[_cons])) (exp(_b[/ln_p]))
>
>        _nl_1:  exp(_b[_cons])
>        _nl_2:  exp(_b[/ln_p])
>
> ------------------------------------------------------------------------------
>           _t |      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
> -------------+----------------------------------------------------------------
>        _nl_1 |   .0116539   .0044932     2.59   0.009     .0028474    .0204604
>        _nl_2 |   .6153864    .054186    11.36   0.000     .5091838     .721589
>
>
> But what I'm really after is the standard errors on the transitions values, e.g.,
>
> nlcom (_b[transitions])
>
> But this doesn't work. Any feedback on how to get closer to this idea would be much appreciated. Thanks in advance!
>
> Emily

*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/faqs/resources/statalist-faq/
*   http://www.ats.ucla.edu/stat/stata/


© Copyright 1996–2018 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   Site index