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]

st: Re: Individual risks scores using competing risks


From   Steve Samuels <[email protected]>
To   [email protected]
Subject   st: Re: Individual risks scores using competing risks
Date   Tue, 24 Sep 2013 16:08:41 -0400

Lucy sent a private email, and I pointed her to the Statalist FAQ on
private replies.


Here is my response:

I misunderstood your original request. You are looking for CIFs in
new patients. It is not necessary to use a formula.


After your -stcrreg- statement, then, e.g.

. stcurve, cif at(diseasecode==0 age==60) at1(diseasecode =1 age=60) outfile(myfile)


will give predicted CIFs at all _t in your data set. Pick out the value
for _t =5 by hand; if there is none, linearly interpolate, if necessary (-ipolate-).

You did not answer my question about what you intend to do with these
risk scores. Just be aware, that the predicted CIFs assume that the
distributions of all competing events, not just that of interest, will
be the same in the new and old populations. 


You say that what I advised and what you did gave different results, but
since you show neither code nor results (see Statalist FAQ 3.3), I can't
comment. In any case, the current advice supersedes what I wrote before.


Steve



On Sep 23, 2013, at 9:09 AM, Lucy wrote:

Hello Steve,

Thank you very much for your help with Stata.
Hopefully you won't mind me asking another question, I still am not sure what the command you have shown me gives.

I have done the analysis the way you have explained using the command;

stcurve, cif outfile(myfile)

Which gives me a CIF value for each person which seems to depend on their time of event/censoring. 
However if I try to look at the CIFs for each group of people these values change, and I'm not sure why. In my model I have a binary     variable named diseasecode, if I enter the command;

stcurve, cif at1(diseasecode=0) at2(diseasecode=1) outfile(myfile)

Then I get two different CIF values for each person. Neither of these values match the values found for the CIFs using your command.     However if your command is for a person with null coefficients then these should surely match the first set of CIF estimates?

Do you have an idea about where this difference might be coming from?

Also I still don't think these values are the ones I am looking for. I do not wish to find everyone's individual CIF, but am rather looking for the CIF of a patient who has null variables (in this case diseasecode is 0 and age is 60) at 5 years so that I can use this in the formula:

CIF(t|X) = 1 - exp( - exp(X * beta^t. H0(t) )

To develop a prediction rule that can be used to give patients their 5 year risk of having an event in the presence of competing risks.

Your formula states;

CIF(t|x) = 1 - (1 -CIF(t|0))^exp(xbeta)

so using this I should be able to predict the Patients risk based on their baseline CIF, however the results that come from the command;

stcurve, cif outfile(myfile)

seem to give a CIF that depends on how long the patient survives without an event, something that is unknown at time 0. Do you know if it is possible to generate a value that will predict this?

Many thanks for your help,
Best wishes,
Lucy

​ Miss Lucy Riley
Research Assistant.
Health Service Research Unit,
Keele University,
Keele,
Staffordshire. 
ST5 5BG.
Email: [email protected]
Phone: 01782 733772





*
*   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