Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down at the end of May, and its replacement, statalist.org is already up and running.


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

Re: st: adjusting hazard ratios in st cox using offset


From   Nick Cox <njcoxstata@gmail.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: adjusting hazard ratios in st cox using offset
Date   Wed, 17 Oct 2012 23:31:06 +0100

Also check out -groups- from SSC.

Nick

On Wed, Oct 17, 2012 at 11:27 PM, Steve Samuels <sjsamuels@gmail.com> wrote:
> I'll just add that a model with only "main effects" of the other
> procedures is difficult to interpret and probably badly fitting. With
> enough data, you could fit some two-way interactions. But I would
> investigate first how many different combinations of procedures you do
> have and form groups based on those. One way to start is.
>
> ******************************************************* egen combos =
> group(proc_a proc_b proc_c proc_d proc_e)
> *******************************************************
>
> You might find, for example, that two of the procedures commonly or
> rarely occur together.
>
> Steve
>
> /*You have an interesting problem, but your proposal is flawed. Consider
> the following simplified table for two procedures:
>
>         |        proc_b
>    proc_a |         0          1 |     Total
> -----------+----------------------+----------
>         0 |         .          5 |         5
>         1 |         5          6 |        11
> -----------+----------------------+----------
>     Total |         5         11 |        16
> You would like your model results to look like this:
> proc_A     1.0
> proc_B     ?
>
> But this is impossible: with three groups you need two indicator
> variables. Here is an example.
>
> You have to define what you mean by "effect of proc_B adjusted for
> proc_A." My suggestion would be to partition the data into two groups,
> those with procedure A and those without procedure A.
>
> Steve
>
> ***********Code Begins*********************
> capture program drop _all
> clear
> input proc_a proc_b
> 1 0
> 1 1
> 0 1
> 0 1
> 0 1
> 1 0
> 1 1
> 1 0
> 1 1
> 0 1
> 0 1
> 1 1
> 1 1
> 1 0
> 1 1
> 1 0
> end
> // define 3 groups
> gen g10 = proc_a==1 & proc_b==0
> gen g01 = proc_a==0 & proc_b==1
> gen g11 = proc_a==1 & proc_b==1
> set seed 5503211
> gen stime = max(_n + 5*runiform(),1)
>
> stset stime
> stcox  g10 g01 g11, nohr nolog  //3 indicators "g11" dropped
> stcox proc_a proc_b, nohr nolog  // 2 indicators
> stcox proc_b if proc_a==1, nohr nolog
> // the following doesn't work with only 2 procedures
> stcox proc_b if proc_a==0, nohr nolog
> ************************************************
>> On Oct 16, 2012, at 12:31 AM, Will Schairer wrote:
>>
>> Hi all,
>>
>> I have a dataset of procedures multiple follow-up events with an outcome of
>> a complication. There are a few procedures, proc_A, proc_B, proc_C, proc_D,
>> proc_E, which are all 0 -no- or 1 -yes-.
>>
>> I'm trying to create an stcox model where the hazard ratios are in
>> reference to one of the procedures. Normally it would be fine just to set
>> "proc" = 1,2,3,4, or 5, and use the i.proc. However, in this data there can
>> be multiple procedures occurring in each visit, so I can't set just one
>> variable like stcox i.proc
>>
>> So, I have:
>> var           HR
>> age
>> gender
>> proc_A     0.7
>> proc_B     1.2
>> proc_C     3.4
>> proc_D     3.2
>> proc_E     2.5
>>
>> and I'd like to have:
>> var         HR
>> age
>> gender
>> proc_A     1.0
>> proc_B     ?
>> proc_C     ?
>> proc_D     ?
>> proc_E     ?
>>
>> so that the ?'s are relative to proc_A = 1.0.
>>
>> ok so my question is, can I use -stcox- age gender B C D E, offset(A) as a
>> way to normalize the other procedures to A? I have not found a good
>> detailed resource on offset, but my understanding is that it is an exposure
>> adjustment, so in a sense I'd be adjusting for exposure to proc A with HR =
>> 1.0. Or, is there another way to do this?
>>
> *
> *   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/
*
*   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–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index