BookmarkSubscribeRSS Feed
kayeee_
Calcite | Level 5

Dear all,

I am struggling with drawing adjusted cumulative incidence curve in proc phreg.

While searching, I found a paper that mentioned using the following SAS macro called %CIFCOX. (https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3377442/)

But I couldn't find it on the web site.

If anyone knows a code or macro that can draw such graphs, could you please share it?

 

Many thanks in advance.

kayeee__0-1710831158943.png

 

5 REPLIES 5
ballardw
Super User

The paper in the link references a web page that is no longer active. Due to the age of the article, 2011, I would suggest that you provide us some example data in the form of a data step, dummy data is fine as long as it behaves like your actual data, and the code you are using for the analysis.

 

13 years is long enough to have gone through several updates to SAS and many of the updates have involved graphic options. So the macro may very well be duplicating what may be done easier these days.

 

Instructions here: https://communities.sas.com/t5/SAS-Communities-Library/How-to-create-a-data-step-version-of-your-dat... will show how to turn an existing SAS data set into data step code that can be pasted into a forum code box using the </> icon or attached as text to show exactly what you have and that we can test code against.

kayeee_
Calcite | Level 5

Thanks for your advice.

 

I also, found the macro of adjusted survival curve. and It has CIF and SREVERSE options to y-axis: 1-Survival.

But It is not possible to use in adjusted model.

https://communities.sas.com/t5/SAS-Communities-Library/Kaplan-Meier-Survival-Plotting-Macro-NEWSURV/...

 

 

Here is the sample data below:

 

proc format;
   value grpLabel 1='ALL' 2='AML low risk' 3='AML high risk';
run;
 
data BMT;
        input DIAGNOSIS Ftime Status Gender education@@;
        label Ftime="Days";
        format Diagnosis grpLabel.;
datalines;
1	2081	0	1	2	3	677	2	1	1
1	1496	0	1	0	3	168	2	0	2
1	1433	0	1	2	3	16	2	0	1
1	1330	0	1	2	3	625	1	0	0
1	226	0	0	1	3	273	1	1	0
1	1111	0	1	1	3	76	1	1	0
1	1182	0	0	2	3	363	2	1	2
1	418	2	1	2	1	1602	0	1	0
1	276	2	0	1	1	1462	0	0	2
1	609	1	1	1	1	1377	0	1	0
1	487	2	1	2	1	996	0	1	2
1	194	2	0	1	1	1199	0	1	2
1	526	2	1	0	1	530	0	1	2
1	129	1	0	2	1	1167	0	0	1
1	122	1	0	1	1	383	1	1	2
1	466	2	1	0	1	104	1	1	2
1	109	1	1	0	1	172	2	0	1
1	1	2	1	1	1	662	1	1	0
1	110	1	0	0	1	230	1	0	0
2	2569	0	1	2	1	122	2	1	0
2	2409	0	1	1	1	74	1	1	1
2	1857	0	0	1	1	86	2	1	1
2	1562	0	1	1	1	192	1	1	2
2	1363	0	1	0	1	55	1	0	0
2	860	0	0	2	1	107	2	1	2
2	2246	0	0	1	1	332	2	1	0
2	1799	0	1	0	2	2506	0	1	2
2	1674	0	1	0	2	2218	0	1	1
2	1527	0	0	0	2	1829	0	1	0
2	957	0	1	1	2	1470	0	1	1
2	847	0	1	2	2	1030	0	0	1
2	1850	0	0	2	2	1258	0	0	1
2	1535	0	0	0	2	1870	0	0	2
2	1384	0	0	0	2	1709	0	0	0
2	2204	2	0	0	2	1568	0	1	0
2	481	2	1	2	2	1324	0	1	1
2	641	2	1	1	2	932	0	0	0
2	288	2	1	0	2	848	0	1	2
2	79	2	0	1	2	1843	0	0	1
2	486	1	0	1	2	1447	0	0	0
2	272	1	0	1	2	414	2	1	0
2	381	1	0	2	2	1063	2	1	2
2	53	2	0	2	2	105	2	1	2
2	35	2	0	2	2	390	2	1	0
2	704	2	0	0	2	421	1	1	1
2	219	1	1	0	2	748	1	1	0
3	2640	0	1	2	2	48	2	0	2
3	2252	0	1	2	2	1074	2	1	1
3	2133	0	0	2	2	10	2	1	1
3	1631	0	1	1	2	80	2	0	0
3	1345	0	1	2	2	248	1	1	0
3	845	0	0	2	2	211	1	1	2
3	162	2	1	2	2	606	1	1	1
3	100	1	1	2	3	2430	0	1	1
3	47	1	1	0	3	2140	0	1	0
3	456	1	1	0	3	1238	0	1	2
3	318	2	0	2	3	2024	0	0	2
3	467	1	0	2	3	1136	0	1	2
3	390	1	1	1	3	422	1	0	2
3	105	2	1	2	3	84	1	0	1
3	164	2	0	0	3	2	2	1	1
3	120	1	0	1	3	242	1	1	1
3	64	1	0	1	3	268	1	0	2
3	74	2	0	0	3	32	1	1	2
3	157	1	0	1	3	47	1	1	1
3	48	1	0	0	3	183	2	0	0
3	63	2	1	2	3	115	1	0	1
3	113	1	0	1	3	93	1	0	2
3	80	2	1	0					

;
run;


proc phreg data=bmt;
class DIAGNOSIS(ref='1') Gender education;
Model Ftime*Status(0)=DIAGNOSIS Gender education; /*gender and education are covariates*/
run;

 

 

Ksharp
Super User

Check the example in Doc.

SAS Help Center: Nonparametric Analysis of Competing-Risks Data

 

proc lifetest data=sashelp.bmt   plots=cif ;
time T*Status(0)/eventcode=1; 
strata group;
run;

Ksharp_0-1710912317558.png

 

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 5 replies
  • 576 views
  • 2 likes
  • 4 in conversation