'Adjusted cox regression graph
I would like to make an adjusted cox regression analysis survival curve like this one but adjusted for baseline measurements of sex, age, trop, egfr, dm, and smoke. The graph must be stratified according quartile of delta_mon3_baseline_to_m1.
Here are the code to get this univariate curve:
quantile <- df$delta_mon3_baseline_to_m1
fit <- survfit(Surv(mace_months_date_vs_date_sample, mace) ~ findInterval(quantile, quantile(quantile, na.rm = TRUE)[-5]), data = df)
custom_theme <- function(){
theme_survminer() %+replace%
theme(
legend.background = element_rect(fill = "white", color = "black"),
plot.title=element_text(hjust=0.9)
)
}
ggsurvplot(fit,
pval = FALSE,
ggtheme = custom_theme(),
censor = FALSE,
legend = c(0.5, 0.2),
legend.title = "Mon3, P=0.02",
legend.labs = c("Quartile 1", "Quartile 2", "Quartile 3", "Quartile 4"),
xlab = "Follow-up (months)",
font.x = c(size = 15),
ylab = "Survival from MACE",
font.y = c(size = 15),
break.y.by = 0.2,
axes.offset = FALSE,
palette = c("blue", "dark red", "green", "orange"))
Here are my data:
ID age sex mace mace_months_date_vs_date_sample trop egfr dm smoke delta_mon3_baseline_to_m1
1 121 NA 1 0 43 21876 87 0 0 -83.2
2 13 53 1 0 69 1970 87 1 1 -60.4
3 192 59 1 0 44 871 90 1 0 -52.2
4 120 71 1 1 5 7860 58 1 0 -46.1
5 54 59 1 0 71 1500 81 1 1 -45.0
6 68 58 1 0 62 NA 90 0 1 -36.2
7 41 57 0 0 73 320 79 0 1 -34.0
8 23 54 1 0 72 8450 55 0 1 -33.5
9 16 57 1 0 73 180 99 0 1 -30.6
10 45 51 0 0 73 3710 65 0 1 -28.5
11 216 69 1 0 47 1730 51 0 1 -27.1
12 61 48 1 0 76 4470 90 0 1 -26.4
13 24 47 1 0 77 2390 90 0 1 -25.5
14 136 49 1 0 61 262 90 0 1 -25.3
15 14 74 1 1 6 7120 78 0 0 -20.5
16 88 65 1 0 47 16720 58 1 0 -15.7
17 87 48 1 0 46 1247 90 0 1 -13.8
18 33 59 1 0 69 2260 79 0 1 -13.4
19 182 35 1 0 44 NA 56 0 1 -8.97
20 93 44 1 0 43 NA 62 0 1 -8.61
21 154 65 1 0 46 54592 86 0 0 -7.73
22 94 56 1 0 45 1241 61 0 1 -6.43
23 116 66 0 1 16 2413 84 1 1 -5.33
24 145 41 0 0 62 NA 63 0 0 -5.03
25 44 52 1 1 30 2600 56 1 0 -4.53
26 228 55 1 1 8 45649 63 0 0 -3.49
27 76 52 1 0 48 NA 90 0 0 0.407
28 63 67 1 1 15 NA 90 0 0 2.77
29 59 61 1 0 79 160 85 0 1 3.37
30 42 38 1 0 69 1800 69 0 1 4.49
31 219 65 1 0 62 843 64 0 0 7.30
32 47 62 1 0 69 1420 85 0 0 8.13
33 56 43 1 0 70 1360 90 1 0 9.43
34 175 61 0 0 46 NA 67 1 1 10.6
35 164 75 0 0 62 1470 45 0 1 11.1
36 181 56 1 0 45 372 90 0 0 12.7
37 234 37 1 0 55 844 78 0 0 13.0
38 146 75 1 1 21 1454 65 1 1 14.5
39 28 76 1 0 71 40 90 1 1 15.4
40 242 68 0 1 41 50000 69 0 1 15.5
41 52 49 1 0 74 1740 71 0 1 19.3
42 71 59 1 0 45 11450 90 0 0 19.4
43 67 52 1 0 46 769 90 0 1 19.7
44 187 59 1 0 45 2234 59 0 0 21.4
45 128 59 1 0 50 349 54 0 1 22.0
46 27 28 1 0 71 6440 90 0 1 23.3
47 151 63 0 0 62 250 60 0 1 23.4
48 215 62 0 0 43 3654 68 0 0 26.5
49 132 57 1 1 4 8421 86 0 0 26.7
50 21 46 1 0 75 3600 87 0 1 27.4
51 173 48 1 1 1 NA 42 0 1 29.6
52 124 65 0 1 4 5204 73 1 1 29.7
53 119 41 1 0 63 440 90 0 0 31.9
54 224 60 1 1 17 NA 85 0 0 34.9
55 29 73 0 0 77 NA 51 0 0 39.5
56 49 54 1 1 28 NA 76 1 0 64.7
57 140 77 1 1 3 40273 63 1 1 66.8
58 221 66 1 0 45 90 90 0 0 70.4
59 172 50 1 1 2 9352 86 0 1 72.1
60 115 51 0 0 50 2177 68 0 1 73.0
61 12 57 1 0 71 6020 88 0 1 84.1
62 103 81 1 1 1 10014 71 0 0 95.7
63 223 63 1 0 46 4281 90 0 0 NA
64 32 66 1 0 73 1710 90 1 0 NA
65 50 54 1 0 70 15300 90 0 1 NA
66 57 58 1 0 74 5010 68 0 1 NA
67 20 56 1 1 5 NA 75 0 1 NA
68 17 44 1 0 77 840 71 0 0 NA
69 79 68 1 0 45 776 90 0 0 NA
70 35 47 1 0 77 NA 83 0 0 NA
71 22 46 1 0 77 5330 88 0 1 NA
72 26 66 1 0 77 500 51 0 0 NA
73 25 54 1 0 73 1080 87 0 0 NA
74 31 47 0 0 72 6490 77 1 1 NA
75 15 65 1 1 43 6300 49 1 0 NA
76 43 59 0 0 74 2100 84 0 1 NA
77 36 64 1 1 5 15940 52 0 1 NA
78 30 73 0 0 68 3340 48 1 1 NA
79 39 54 1 0 74 990 77 0 0 NA
80 60 72 1 0 76 470 62 0 0 NA
81 55 47 1 0 70 NA 90 0 1 NA
82 37 81 1 0 74 NA 99 1 1 NA
83 19 66 1 0 78 9320 59 0 0 NA
84 139 39 0 0 58 NA 90 0 1 NA
85 38 55 1 0 78 3930 90 1 0 NA
86 18 56 1 0 69 6390 90 0 1 NA
87 58 36 1 0 76 NA 78 1 1 NA
88 73 61 1 0 44 11 90 0 0 NA
89 194 64 1 1 15 11135 68 0 1 NA
90 106 48 1 0 46 5256 63 0 1 NA
91 193 63 1 0 46 1753 81 0 0 NA
92 148 78 1 1 7 NA 76 1 1 NA
93 156 79 1 1 8 NA 61 1 0 NA
94 203 51 0 0 62 50 75 0 1 NA
95 100 74 1 1 16 8903 84 0 0 NA
96 81 52 1 0 47 3598 90 0 1 NA
97 190 73 0 1 19 2483 90 1 0 NA
98 206 82 0 0 61 NA 48 0 0 NA
99 233 58 1 0 46 NA 90 0 1 NA
100 189 72 0 1 1 NA 77 0 1 NA
101 105 63 1 1 4 1557 68 0 1 NA
102 220 67 1 0 48 5247 90 0 1 NA
103 85 72 0 1 61 24 64 0 1 NA
104 11 51 1 0 43 2993 90 0 1 NA
105 205 68 1 0 46 3624 90 1 1 NA
106 131 41 1 0 61 751 61 0 1 NA
107 1 66 1 0 44 NA 84 1 1 NA
108 225 69 1 0 48 NA 80 1 1 NA
109 183 60 1 1 1 24160 69 0 1 NA
110 213 66 1 1 5 NA 58 0 0 NA
111 7 71 1 0 43 NA 65 0 1 NA
112 147 45 1 0 43 5687 86 1 1 NA
113 134 81 0 0 46 1911 86 0 0 NA
114 86 52 1 0 58 NA 46 0 1 NA
115 69 67 1 1 3 NA 56 0 0 NA
116 212 58 1 0 55 1855 90 0 0 NA
117 199 63 0 1 27 9951 46 0 1 NA
118 75 47 1 1 1 13374 87 0 0 NA
119 137 63 0 0 47 2107 84 1 1 NA
120 191 67 1 1 19 4927 68 0 0 NA
121 245 62 1 1 11 83 67 0 1 NA
122 111 72 1 1 1 2380 72 0 0 NA
123 153 75 0 1 1 663 35 0 0 NA
124 112 46 1 1 1 NA 86 0 1 NA
125 89 73 1 1 2 NA 74 0 0 NA
126 243 57 1 0 48 NA 78 1 1 NA
127 109 75 1 0 62 NA 67 0 1 NA
128 165 68 0 0 61 NA 90 0 1 NA
129 95 68 1 1 23 NA 90 0 0 NA
130 231 73 1 1 1 NA 90 0 1 NA
131 5 51 1 0 55 1627 76 0 0 NA
132 168 59 1 1 19 NA 90 1 1 NA
133 159 59 1 0 48 1211 86 0 0 NA
134 6 60 1 1 1 5654 63 0 1 NA
135 179 54 1 0 43 NA 63 0 0 NA
136 77 62 1 0 47 NA 53 0 0 NA
137 155 64 1 1 1 10000 90 0 0 NA
138 171 48 1 0 46 NA 90 0 0 NA
139 174 73 1 1 11 NA 75 1 1 NA
140 84 79 1 0 46 NA 64 0 0 NA
141 102 58 1 0 48 2956 69 0 0 NA
142 207 46 0 0 46 67927 68 0 1 NA
143 230 75 1 1 32 NA 52 1 0 NA
144 138 63 0 0 50 63 49 0 1 NA
145 188 68 1 0 61 NA 90 0 1 NA
146 241 60 1 0 62 4790 65 1 1 NA
147 72 54 1 0 48 NA 86 0 1 NA
148 235 78 0 1 46 NA 42 1 0 NA
149 211 54 1 0 55 3569 63 0 1 NA
150 127 46 0 0 62 961 90 0 1 NA
151 237 49 0 0 55 6581 90 0 1 NA
152 70 67 1 0 43 253 73 1 0 NA
153 210 79 0 0 61 2888 75 0 0 NA
154 110 54 0 0 47 33017 66 0 0 NA
155 133 47 1 0 59 1675 64 0 0 NA
156 2 51 1 0 50 438 90 0 1 NA
157 218 66 1 1 10 15543 35 0 0 NA
158 180 61 1 0 55 6212 90 0 1 NA
159 229 64 0 0 63 6694 82 1 1 NA
160 65 79 0 0 55 NA 90 1 1 NA
161 130 73 1 0 48 1945 84 0 0 NA
162 96 51 0 1 31 3004 61 0 1 NA
163 226 52 1 1 32 3789 90 0 1 NA
164 152 52 1 0 48 NA 86 0 0 NA
165 197 76 0 0 55 2844 51 0 0 NA
166 178 75 0 0 62 950 52 0 1 NA
167 141 56 1 0 59 123 69 1 1 NA
168 195 76 1 1 53 6630 54 1 0 NA
169 92 54 1 0 48 3220 90 0 1 NA
170 162 82 0 0 48 2040 75 1 0 NA
171 201 62 1 0 62 NA 85 0 1 NA
172 217 57 0 0 59 6672 72 0 1 NA
173 222 53 1 1 4 1480 90 0 1 NA
174 208 42 1 1 4 6979 80 0 1 NA
175 104 63 0 1 25 NA 54 0 1 NA
176 160 37 1 0 59 1411 58 0 1 NA
177 66 66 1 0 48 5711 90 0 0 NA
178 74 46 1 0 60 NA 89 0 1 NA
179 185 76 1 1 43 2340 72 0 0 NA
180 177 39 1 0 58 NA 90 0 1 NA
181 123 51 1 0 49 57 84 0 1 NA
182 184 80 1 1 1 NA 33 1 1 NA
183 204 69 1 1 8 33 74 0 1 NA
184 227 76 1 1 1 5110 36 1 1 NA
185 125 48 1 0 63 NA 56 0 1 NA
186 83 65 1 0 51 2797 61 0 0 NA
187 8 59 1 0 55 1035 63 0 1 NA
188 143 76 1 0 47 2840 77 0 1 NA
189 9 57 0 0 49 251 84 0 1 NA
190 3 66 0 0 55 7671 85 0 0 NA
191 117 69 0 0 49 6155 90 0 1 NA
192 10 68 1 0 55 4299 90 1 1 NA
193 198 72 1 1 13 NA 51 1 0 NA
194 244 62 0 0 60 846 90 0 1 NA
195 108 56 1 1 2 2339 90 0 1 NA
196 34 51 1 1 13 400 68 1 0 NA
197 214 60 1 1 3 86115 90 0 1 NA
198 4 71 1 1 25 27 52 0 0 NA
199 97 68 1 1 7 87355 90 1 0 NA
200 200 77 1 0 62 NA 48 1 0 NA
201 113 28 1 0 62 8669 90 0 1 NA
202 80 62 1 0 60 NA 82 0 0 NA
203 166 51 1 1 10 NA 86 0 1 NA
204 98 61 1 0 61 NA 67 0 0 NA
205 238 56 1 0 45 1258 90 0 1 NA
206 239 72 1 1 3 3000 76 1 1 NA
207 114 79 0 1 11 NA 14 1 1 NA
208 167 62 1 0 51 137 63 0 0 NA
209 64 68 0 0 47 3866 59 1 1 NA
210 157 68 0 1 1 NA 82 0 0 NA
211 90 49 1 0 46 1312 90 0 0 NA
212 149 75 0 0 63 NA 39 1 1 NA
213 129 64 1 0 60 NA 77 0 1 NA
214 170 48 0 0 43 NA 90 0 0 NA
215 91 51 1 0 62 NA 78 2 1 NA
216 135 68 1 0 58 NA 74 1 1 NA
217 122 68 1 0 61 2103 54 0 1 NA
218 240 70 0 1 1 1586 36 0 0 NA
219 99 73 1 1 2 601 58 0 1 NA
220 236 54 1 1 46 1472 69 0 1 NA
221 144 47 1 1 1 1692 NA 0 1 NA
222 53 79 1 1 13 NA 53 1 0 NA
223 176 40 0 0 54 2102 90 0 1 NA
224 107 52 1 0 48 6452 90 0 1 NA
225 232 58 1 0 54 NA 90 0 0 NA
226 163 69 1 0 45 NA 88 0 0 NA
227 142 61 1 0 45 1244 90 0 0 NA
228 118 44 1 1 31 2051 90 0 1 NA
229 126 57 1 0 48 1007 90 0 0 NA
230 158 55 1 0 42 NA 90 0 0 NA
231 186 43 1 0 49 NA 90 0 1 NA
232 82 61 1 0 43 NA 63 0 0 NA
233 78 44 1 0 61 1726 87 0 0 NA
234 48 77 1 1 1 3400 48 0 0 NA
235 62 35 1 1 31 2143 90 0 0 NA
236 209 74 0 1 1 NA 55 1 0 NA
237 196 72 0 0 63 236 70 NA NA NA
238 46 60 1 1 11 3930 65 1 0 NA
239 150 44 1 0 47 31026 90 1 0 NA
240 161 53 1 1 39 NA NA 0 1 NA
241 169 61 1 1 7 NA 90 0 0 NA
242 101 NA 1 0 42 NA 90 0 0 NA
243 202 80 1 1 1 NA 72 0 0 NA
244 51 73 0 1 1 5280 66 0 0 NA
245 40 72 1 1 1 1230 55 0 1 NA
with this code:
df$quantile <- findInterval(quantile, quantile(quantile, na.rm = TRUE)[-5])
df$surv <- Surv(df$mace_months_date_vs_date_sample, df$mace)
mod <- coxph(surv ~ strata(quantile) + dm + age + sex + trop + egfr + smoke,
data = df)
ggsurvplot(survfit(mod, data = df),
pval = FALSE,
ggtheme = custom_theme(),
censor = FALSE,
legend = c(0.5, 0.2),
legend.title = "Mon3, P=0.02",
legend.labs = c("Quartile 1", "Quartile 2", "Quartile 3", "Quartile 4"),
xlab = "Follow-up (months)",
font.x = c(size = 15),
ylab = "Survival from MACE",
font.y = c(size = 15),
break.y.by = 0.2,
axes.offset = FALSE,
palette = c("blue", "dark red", "green", "orange"))
Thank you very much for your help.
Solution 1:[1]
With the full data set, we can now plot the coxph model like this:
df$quantile <- findInterval(quantile, quantile(quantile, na.rm = TRUE)[-5])
df$surv <- Surv(df$mace_months_date_vs_date_sample, df$mace)
mod <- coxph(surv ~ strata(quantile) + dm + age + sex + trop + egfr + smoke,
data = df)
ggsurvplot(survfit(mod, data = df),
pval = FALSE,
ggtheme = custom_theme(),
censor = FALSE,
legend = c(0.5, 0.2),
legend.title = "Mon3, P=0.02",
legend.labs = c("Quartile 1", "Quartile 2", "Quartile 3", "Quartile 4"),
xlab = "Follow-up (months)",
font.x = c(size = 15),
ylab = "Survival from MACE",
font.y = c(size = 15),
break.y.by = 0.2,
axes.offset = FALSE,
palette = c("blue", "dark red", "green", "orange"))
FULLY REPRODUCIBLE SCRIPT
library(survival)
library(ggplot2)
library(survminer)
df <- structure(list(ID = c(121L, 13L, 192L, 120L, 54L, 68L, 41L, 23L,
16L, 45L, 216L, 61L, 24L, 136L, 14L, 88L, 87L, 33L, 182L, 93L,
154L, 94L, 116L, 145L, 44L, 228L, 76L, 63L, 59L, 42L, 219L, 47L,
56L, 175L, 164L, 181L, 234L, 146L, 28L, 242L, 52L, 71L, 67L,
187L, 128L, 27L, 151L, 215L, 132L, 21L, 173L, 124L, 119L, 224L,
29L, 49L, 140L, 221L, 172L, 115L, 12L, 103L, 223L, 32L, 50L,
57L, 20L, 17L, 79L, 35L, 22L, 26L, 25L, 31L, 15L, 43L, 36L, 30L,
39L, 60L, 55L, 37L, 19L, 139L, 38L, 18L, 58L, 73L, 194L, 106L,
193L, 148L, 156L, 203L, 100L, 81L, 190L, 206L, 233L, 189L, 105L,
220L, 85L, 11L, 205L, 131L, 1L, 225L, 183L, 213L, 7L, 147L, 134L,
86L, 69L, 212L, 199L, 75L, 137L, 191L, 245L, 111L, 153L, 112L,
89L, 243L, 109L, 165L, 95L, 231L, 5L, 168L, 159L, 6L, 179L, 77L,
155L, 171L, 174L, 84L, 102L, 207L, 230L, 138L, 188L, 241L, 72L,
235L, 211L, 127L, 237L, 70L, 210L, 110L, 133L, 2L, 218L, 180L,
229L, 65L, 130L, 96L, 226L, 152L, 197L, 178L, 141L, 195L, 92L,
162L, 201L, 217L, 222L, 208L, 104L, 160L, 66L, 74L, 185L, 177L,
123L, 184L, 204L, 227L, 125L, 83L, 8L, 143L, 9L, 3L, 117L, 10L,
198L, 244L, 108L, 34L, 214L, 4L, 97L, 200L, 113L, 80L, 166L,
98L, 238L, 239L, 114L, 167L, 64L, 157L, 90L, 149L, 129L, 170L,
91L, 135L, 122L, 240L, 99L, 236L, 144L, 53L, 176L, 107L, 232L,
163L, 142L, 118L, 126L, 158L, 186L, 82L, 78L, 48L, 62L, 209L,
196L, 46L, 150L, 161L, 169L, 101L, 202L, 51L, 40L), age = c(NA,
53L, 59L, 71L, 59L, 58L, 57L, 54L, 57L, 51L, 69L, 48L, 47L, 49L,
74L, 65L, 48L, 59L, 35L, 44L, 65L, 56L, 66L, 41L, 52L, 55L, 52L,
67L, 61L, 38L, 65L, 62L, 43L, 61L, 75L, 56L, 37L, 75L, 76L, 68L,
49L, 59L, 52L, 59L, 59L, 28L, 63L, 62L, 57L, 46L, 48L, 65L, 41L,
60L, 73L, 54L, 77L, 66L, 50L, 51L, 57L, 81L, 63L, 66L, 54L, 58L,
56L, 44L, 68L, 47L, 46L, 66L, 54L, 47L, 65L, 59L, 64L, 73L, 54L,
72L, 47L, 81L, 66L, 39L, 55L, 56L, 36L, 61L, 64L, 48L, 63L, 78L,
79L, 51L, 74L, 52L, 73L, 82L, 58L, 72L, 63L, 67L, 72L, 51L, 68L,
41L, 66L, 69L, 60L, 66L, 71L, 45L, 81L, 52L, 67L, 58L, 63L, 47L,
63L, 67L, 62L, 72L, 75L, 46L, 73L, 57L, 75L, 68L, 68L, 73L, 51L,
59L, 59L, 60L, 54L, 62L, 64L, 48L, 73L, 79L, 58L, 46L, 75L, 63L,
68L, 60L, 54L, 78L, 54L, 46L, 49L, 67L, 79L, 54L, 47L, 51L, 66L,
61L, 64L, 79L, 73L, 51L, 52L, 52L, 76L, 75L, 56L, 76L, 54L, 82L,
62L, 57L, 53L, 42L, 63L, 37L, 66L, 46L, 76L, 39L, 51L, 80L, 69L,
76L, 48L, 65L, 59L, 76L, 57L, 66L, 69L, 68L, 72L, 62L, 56L, 51L,
60L, 71L, 68L, 77L, 28L, 62L, 51L, 61L, 56L, 72L, 79L, 62L, 68L,
68L, 49L, 75L, 64L, 48L, 51L, 68L, 68L, 70L, 73L, 54L, 47L, 79L,
40L, 52L, 58L, 69L, 61L, 44L, 57L, 55L, 43L, 61L, 44L, 77L, 35L,
74L, 72L, 60L, 44L, 53L, 61L, NA, 80L, 73L, 72L), sex = c(1L,
1L, 1L, 1L, 1L, 1L, 0L, 1L, 1L, 0L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 0L, 0L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
0L, 0L, 1L, 1L, 1L, 1L, 0L, 1L, 1L, 1L, 1L, 1L, 1L, 0L, 0L, 1L,
1L, 1L, 0L, 1L, 1L, 0L, 1L, 1L, 1L, 1L, 0L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 0L, 1L, 0L, 1L, 0L, 1L, 1L, 1L,
1L, 1L, 0L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 0L, 1L, 1L, 0L,
0L, 1L, 0L, 1L, 1L, 0L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 0L,
1L, 1L, 1L, 0L, 1L, 0L, 1L, 1L, 1L, 0L, 1L, 1L, 1L, 1L, 0L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 0L, 1L, 0L, 1L,
1L, 1L, 0L, 1L, 0L, 0L, 1L, 0L, 0L, 1L, 1L, 1L, 1L, 0L, 0L, 1L,
0L, 1L, 1L, 0L, 0L, 1L, 1L, 1L, 0L, 1L, 0L, 1L, 1L, 0L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 0L, 0L, 0L, 1L, 1L,
0L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 0L, 1L, 0L,
0L, 1L, 0L, 1L, 0L, 1L, 1L, 1L, 0L, 1L, 1L, 1L, 1L, 0L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 0L, 0L, 1L, 1L, 1L, 1L,
1L, 1L, 0L, 1L), mace = c(0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L,
1L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 0L,
0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 1L, 0L, 1L, 0L, 1L, 1L,
0L, 1L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L,
0L, 1L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L,
0L, 0L, 1L, 1L, 0L, 1L, 0L, 1L, 0L, 0L, 1L, 1L, 0L, 1L, 0L, 0L,
0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 1L, 0L, 1L, 1L,
1L, 1L, 1L, 1L, 0L, 0L, 0L, 1L, 1L, 0L, 1L, 0L, 1L, 0L, 0L, 1L,
0L, 1L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 1L, 0L,
0L, 0L, 0L, 1L, 1L, 1L, 0L, 0L, 0L, 1L, 0L, 0L, 1L, 1L, 1L, 0L,
0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 1L, 1L, 1L, 1L, 0L, 0L,
0L, 1L, 0L, 0L, 1L, 1L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L,
1L, 1L, 1L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L,
1L, 1L, 1L, 0L, 1L, 0L, 1L, 1L, 0L, 1L, 1L, 1L),
mace_months_date_vs_date_sample = c(43L,
69L, 44L, 5L, 71L, 62L, 73L, 72L, 73L, 73L, 47L, 76L, 77L, 61L,
6L, 47L, 46L, 69L, 44L, 43L, 46L, 45L, 16L, 62L, 30L, 8L, 48L,
15L, 79L, 69L, 62L, 69L, 70L, 46L, 62L, 45L, 55L, 21L, 71L, 41L,
74L, 45L, 46L, 45L, 50L, 71L, 62L, 43L, 4L, 75L, 1L, 4L, 63L,
17L, 77L, 28L, 3L, 45L, 2L, 50L, 71L, 1L, 46L, 73L, 70L, 74L,
5L, 77L, 45L, 77L, 77L, 77L, 73L, 72L, 43L, 74L, 5L, 68L, 74L,
76L, 70L, 74L, 78L, 58L, 78L, 69L, 76L, 44L, 15L, 46L, 46L, 7L,
8L, 62L, 16L, 47L, 19L, 61L, 46L, 1L, 4L, 48L, 61L, 43L, 46L,
61L, 44L, 48L, 1L, 5L, 43L, 43L, 46L, 58L, 3L, 55L, 27L, 1L,
47L, 19L, 11L, 1L, 1L, 1L, 2L, 48L, 62L, 61L, 23L, 1L, 55L, 19L,
48L, 1L, 43L, 47L, 1L, 46L, 11L, 46L, 48L, 46L, 32L, 50L, 61L,
62L, 48L, 46L, 55L, 62L, 55L, 43L, 61L, 47L, 59L, 50L, 10L, 55L,
63L, 55L, 48L, 31L, 32L, 48L, 55L, 62L, 59L, 53L, 48L, 48L, 62L,
59L, 4L, 4L, 25L, 59L, 48L, 60L, 43L, 58L, 49L, 1L, 8L, 1L, 63L,
51L, 55L, 47L, 49L, 55L, 49L, 55L, 13L, 60L, 2L, 13L, 3L, 25L,
7L, 62L, 62L, 60L, 10L, 61L, 45L, 3L, 11L, 51L, 47L, 1L, 46L,
63L, 60L, 43L, 62L, 58L, 61L, 1L, 2L, 46L, 1L, 13L, 54L, 48L,
54L, 45L, 45L, 31L, 48L, 42L, 49L, 43L, 61L, 1L, 31L, 1L, 63L,
11L, 47L, 39L, 7L, 42L, 1L, 1L, 1L), trop = c(21876L, 1970L,
871L, 7860L, 1500L, NA, 320L, 8450L, 180L, 3710L, 1730L, 4470L,
2390L, 262L, 7120L, 16720L, 1247L, 2260L, NA, NA, 54592L, 1241L,
2413L, NA, 2600L, 45649L, NA, NA, 160L, 1800L, 843L, 1420L, 1360L,
NA, 1470L, 372L, 844L, 1454L, 40L, 50000L, 1740L, 11450L, 769L,
2234L, 349L, 6440L, 250L, 3654L, 8421L, 3600L, NA, 5204L, 440L,
NA, NA, NA, 40273L, 90L, 9352L, 2177L, 6020L, 10014L, 4281L,
1710L, 15300L, 5010L, NA, 840L, 776L, NA, 5330L, 500L, 1080L,
6490L, 6300L, 2100L, 15940L, 3340L, 990L, 470L, NA, NA, 9320L,
NA, 3930L, 6390L, NA, 11L, 11135L, 5256L, 1753L, NA, NA, 50L,
8903L, 3598L, 2483L, NA, NA, NA, 1557L, 5247L, 24L, 2993L, 3624L,
751L, NA, NA, 24160L, NA, NA, 5687L, 1911L, NA, NA, 1855L, 9951L,
13374L, 2107L, 4927L, 83L, 2380L, 663L, NA, NA, NA, NA, NA, NA,
NA, 1627L, NA, 1211L, 5654L, NA, NA, 10000L, NA, NA, NA, 2956L,
67927L, NA, 63L, NA, 4790L, NA, NA, 3569L, 961L, 6581L, 253L,
2888L, 33017L, 1675L, 438L, 15543L, 6212L, 6694L, NA, 1945L,
3004L, 3789L, NA, 2844L, 950L, 123L, 6630L, 3220L, 2040L, NA,
6672L, 1480L, 6979L, NA, 1411L, 5711L, NA, 2340L, NA, 57L, NA,
33L, 5110L, NA, 2797L, 1035L, 2840L, 251L, 7671L, 6155L, 4299L,
NA, 846L, 2339L, 400L, 86115L, 27L, 87355L, NA, 8669L, NA, NA,
NA, 1258L, 3000L, NA, 137L, 3866L, NA, 1312L, NA, NA, NA, NA,
NA, 2103L, 1586L, 601L, 1472L, 1692L, NA, 2102L, 6452L, NA, NA,
1244L, 2051L, 1007L, NA, NA, NA, 1726L, 3400L, 2143L, NA, 236L,
3930L, 31026L, NA, NA, NA, NA, 5280L, 1230L), egfr = c(87L, 87L,
90L, 58L, 81L, 90L, 79L, 55L, 99L, 65L, 51L, 90L, 90L, 90L, 78L,
58L, 90L, 79L, 56L, 62L, 86L, 61L, 84L, 63L, 56L, 63L, 90L, 90L,
85L, 69L, 64L, 85L, 90L, 67L, 45L, 90L, 78L, 65L, 90L, 69L, 71L,
90L, 90L, 59L, 54L, 90L, 60L, 68L, 86L, 87L, 42L, 73L, 90L, 85L,
51L, 76L, 63L, 90L, 86L, 68L, 88L, 71L, 90L, 90L, 90L, 68L, 75L,
71L, 90L, 83L, 88L, 51L, 87L, 77L, 49L, 84L, 52L, 48L, 77L, 62L,
90L, 99L, 59L, 90L, 90L, 90L, 78L, 90L, 68L, 63L, 81L, 76L, 61L,
75L, 84L, 90L, 90L, 48L, 90L, 77L, 68L, 90L, 64L, 90L, 90L, 61L,
84L, 80L, 69L, 58L, 65L, 86L, 86L, 46L, 56L, 90L, 46L, 87L, 84L,
68L, 67L, 72L, 35L, 86L, 74L, 78L, 67L, 90L, 90L, 90L, 76L, 90L,
86L, 63L, 63L, 53L, 90L, 90L, 75L, 64L, 69L, 68L, 52L, 49L, 90L,
65L, 86L, 42L, 63L, 90L, 90L, 73L, 75L, 66L, 64L, 90L, 35L, 90L,
82L, 90L, 84L, 61L, 90L, 86L, 51L, 52L, 69L, 54L, 90L, 75L, 85L,
72L, 90L, 80L, 54L, 58L, 90L, 89L, 72L, 90L, 84L, 33L, 74L, 36L,
56L, 61L, 63L, 77L, 84L, 85L, 90L, 90L, 51L, 90L, 90L, 68L, 90L,
52L, 90L, 48L, 90L, 82L, 86L, 67L, 90L, 76L, 14L, 63L, 59L, 82L,
90L, 39L, 77L, 90L, 78L, 74L, 54L, 36L, 58L, 69L, NA, 53L, 90L,
90L, 90L, 88L, 90L, 90L, 90L, 90L, 90L, 63L, 87L, 48L, 90L, 55L,
70L, 65L, 90L, NA, 90L, 90L, 72L, 66L, 55L), dm = c(0L, 1L, 1L,
1L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L,
0L, 0L, 0L, 1L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 0L,
0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L,
1L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L,
0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 1L, 0L, 0L, 0L, 1L, 0L,
0L, 1L, 0L, 1L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 1L, 0L, 0L,
0L, 0L, 0L, 0L, 0L, 1L, 0L, 1L, 1L, 0L, 0L, 0L, 1L, 0L, 0L, 0L,
0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L,
1L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 1L, 0L, 0L, 1L, 0L,
1L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 0L,
0L, 0L, 0L, 1L, 1L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L,
0L, 0L, 1L, 0L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 0L,
1L, 0L, 0L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 0L, 1L, 0L, 0L,
1L, 0L, 0L, 2L, 1L, 0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, NA, 1L, 1L, 0L, 0L, 0L, 0L,
0L, 0L), smoke = c(0L, 1L, 0L, 0L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 0L, 0L, 1L, 1L, 1L, 1L, 0L, 1L, 1L, 0L, 0L, 0L, 0L,
0L, 1L, 1L, 0L, 0L, 0L, 1L, 1L, 0L, 0L, 1L, 1L, 1L, 1L, 0L, 1L,
0L, 1L, 1L, 1L, 0L, 0L, 1L, 1L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 1L,
1L, 1L, 0L, 0L, 0L, 1L, 1L, 1L, 0L, 0L, 0L, 1L, 0L, 0L, 1L, 0L,
1L, 1L, 1L, 0L, 0L, 1L, 1L, 0L, 1L, 0L, 1L, 1L, 0L, 1L, 1L, 0L,
1L, 0L, 1L, 0L, 1L, 0L, 0L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 0L, 1L, 1L, 0L, 1L, 0L, 0L, 1L, 0L, 1L, 0L, 1L, 0L, 0L,
1L, 0L, 1L, 1L, 1L, 0L, 1L, 0L, 1L, 0L, 1L, 0L, 0L, 0L, 0L, 1L,
0L, 0L, 1L, 0L, 1L, 1L, 1L, 1L, 0L, 1L, 1L, 1L, 0L, 0L, 0L, 0L,
1L, 0L, 1L, 1L, 1L, 0L, 1L, 1L, 0L, 0L, 1L, 1L, 0L, 1L, 0L, 1L,
1L, 1L, 1L, 1L, 1L, 0L, 1L, 0L, 1L, 1L, 1L, 1L, 1L, 1L, 0L, 1L,
1L, 1L, 0L, 1L, 1L, 0L, 1L, 1L, 0L, 1L, 0L, 0L, 0L, 1L, 0L, 1L,
0L, 1L, 1L, 1L, 0L, 1L, 0L, 0L, 1L, 1L, 0L, 1L, 1L, 1L, 0L, 1L,
1L, 1L, 0L, 1L, 1L, 0L, 0L, 0L, 1L, 0L, 0L, 1L, 0L, 0L, 0L, 0L,
0L, NA, 0L, 0L, 1L, 0L, 0L, 0L, 0L, 1L), delta_mon3_baseline_to_m1 = c(-83.2,
-60.4, -52.2, -46.1, -45, -36.2, -34, -33.5, -30.6, -28.5, -27.1,
-26.4, -25.5, -25.3, -20.5, -15.7, -13.8, -13.4, -8.97, -8.61,
-7.73, -6.43, -5.33, -5.03, -4.53, -3.49, 0.407, 2.77, 3.37,
4.49, 7.3, 8.13, 9.43, 10.6, 11.1, 12.7, 13, 14.5, 15.4, 15.5,
19.3, 19.4, 19.7, 21.4, 22, 23.3, 23.4, 26.5, 26.7, 27.4, 29.6,
29.7, 31.9, 34.9, 39.5, 64.7, 66.8, 70.4, 72.1, 73, 84.1, 95.7,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA)), class = "data.frame", row.names = c("1",
"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13",
"14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24",
"25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35",
"36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46",
"47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57",
"58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68",
"69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79",
"80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90",
"91", "92", "93", "94", "95", "96", "97", "98", "99", "100",
"101", "102", "103", "104", "105", "106", "107", "108", "109",
"110", "111", "112", "113", "114", "115", "116", "117", "118",
"119", "120", "121", "122", "123", "124", "125", "126", "127",
"128", "129", "130", "131", "132", "133", "134", "135", "136",
"137", "138", "139", "140", "141", "142", "143", "144", "145",
"146", "147", "148", "149", "150", "151", "152", "153", "154",
"155", "156", "157", "158", "159", "160", "161", "162", "163",
"164", "165", "166", "167", "168", "169", "170", "171", "172",
"173", "174", "175", "176", "177", "178", "179", "180", "181",
"182", "183", "184", "185", "186", "187", "188", "189", "190",
"191", "192", "193", "194", "195", "196", "197", "198", "199",
"200", "201", "202", "203", "204", "205", "206", "207", "208",
"209", "210", "211", "212", "213", "214", "215", "216", "217",
"218", "219", "220", "221", "222", "223", "224", "225", "226",
"227", "228", "229", "230", "231", "232", "233", "234", "235",
"236", "237", "238", "239", "240", "241", "242", "243", "244",
"245"))
quantile <- df$delta_mon3_baseline_to_m1
df$quantile <- findInterval(quantile, quantile(quantile, na.rm = TRUE)[-5])
df$surv <- Surv(df$mace_months_date_vs_date_sample, df$mace)
mod <- coxph(surv ~ strata(quantile) + dm + age + sex + trop + egfr + smoke,
data = df)
custom_theme <- function(){
theme_survminer() %+replace%
theme(
legend.background = element_rect(fill = "white", color = "black"),
plot.title=element_text(hjust=0.9)
)
}
ggsurvplot(survfit(mod, data = df),
pval = FALSE,
ggtheme = custom_theme(),
censor = FALSE,
legend = c(0.5, 0.2),
legend.title = "Mon3, P=0.02",
legend.labs = c("Quartile 1", "Quartile 2", "Quartile 3", "Quartile 4"),
xlab = "Follow-up (months)",
font.x = c(size = 15),
ylab = "Survival from MACE",
font.y = c(size = 15),
break.y.by = 0.2,
axes.offset = FALSE,
palette = c("blue", "dark red", "green", "orange"))
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 |



