generated from opensafely/research-template
-
Notifications
You must be signed in to change notification settings - Fork 1
/
plot_by_coded.R
169 lines (142 loc) · 7.63 KB
/
plot_by_coded.R
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
library("dplyr")
library("tidyverse")
library("lubridate")
rm(list=ls())
setwd(here::here("output"))
df1 <- read_csv("mon_stratified_broad.csv")
df2 <- read_csv("mon_stratified_repeat.csv")
df1_overall_sameday <- df1 %>% group_by(monPlot,sameday_ab) %>% summarise(
numOutcome = sum(numOutcome),
numEligible = sum(numEligible)
) %>% mutate (value = numOutcome/numEligible)
df1_overall_sameday$value <- round(df1_overall_sameday$value,digits = 3)
df1_overall_sameday$numOutcome <- plyr::round_any(df1_overall_sameday$numOutcome, 5)
df1_overall_sameday$numEligible <- plyr::round_any(df1_overall_sameday$numEligible, 5)
df1_overall_sameday$sameday_ab <- ifelse(df1_overall_sameday$sameday_ab==1,"with infection","without infection")
plot_sameday <- ggplot(df1_overall_sameday, aes(x=monPlot, y=value ,group=sameday_ab,color=sameday_ab))+
annotate(geom = "rect", xmin = as.Date("2021-01-01"),xmax = as.Date("2021-04-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
annotate(geom = "rect", xmin = as.Date("2020-11-01"),xmax = as.Date("2020-12-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
annotate(geom = "rect", xmin = as.Date("2020-03-01"),xmax = as.Date("2020-06-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
geom_line(aes(linetype=sameday_ab))+
geom_point(aes(shape=sameday_ab))+
theme(legend.position = "right",legend.title =element_blank())+
labs(
fill = "",
title = "",
y = "",
x=""
)+
scale_y_continuous(labels = scales::percent,breaks=seq(0, 0.1, by = 0.005))+
theme(axis.text.x=element_text(angle=60,hjust=1))+
scale_shape_manual(values = c(rep(1:9))) +
scale_color_manual(values = c("coral2","deeppink3","darkred","darkviolet","brown3","goldenrod2","blue3","green3","forestgreen"))+
scale_x_date(date_labels = "%Y", date_breaks = "1 year")
plot_sameday
ggsave(
plot= plot_sameday,
filename="broad_all_group.jpeg", path=here::here("output"),
)
write_csv(df1_overall_sameday, here::here("output", "broad_all_group_table.csv"))
rm(plot_sameday,df1_overall_sameday)
### Incidental group
df1_Incidental_sameday <- df1 %>% filter(incidental == 1) %>%
group_by(monPlot,sameday_ab) %>% summarise(
numOutcome = sum(numOutcome),
numEligible = sum(numEligible)
) %>% mutate (value = numOutcome/numEligible)
df1_Incidental_sameday$value <- round(df1_Incidental_sameday$value,digits = 3)
df1_Incidental_sameday$numOutcome <- plyr::round_any(df1_Incidental_sameday$numOutcome, 5)
df1_Incidental_sameday$numEligible <- plyr::round_any(df1_Incidental_sameday$numEligible, 5)
df1_Incidental_sameday$sameday_ab <- ifelse(df1_Incidental_sameday$sameday_ab==1,"with infection","without infection")
plot_sameday <- ggplot(df1_Incidental_sameday, aes(x=monPlot, y=value ,group=sameday_ab,color=sameday_ab))+
annotate(geom = "rect", xmin = as.Date("2021-01-01"),xmax = as.Date("2021-04-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
annotate(geom = "rect", xmin = as.Date("2020-11-01"),xmax = as.Date("2020-12-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
annotate(geom = "rect", xmin = as.Date("2020-03-01"),xmax = as.Date("2020-06-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
geom_line(aes(linetype=sameday_ab))+
geom_point(aes(shape=sameday_ab))+
theme(legend.position = "right",legend.title =element_blank())+
labs(
fill = "",
title = "",
y = "",
x=""
)+
scale_y_continuous(labels = scales::percent,breaks=seq(0, 0.1, by = 0.005))+
theme(axis.text.x=element_text(angle=60,hjust=1))+
scale_shape_manual(values = c(rep(1:9))) +
scale_color_manual(values = c("coral2","deeppink3","darkred","darkviolet","brown3","goldenrod2","blue3","green3","forestgreen"))+
scale_x_date(date_labels = "%Y", date_breaks = "1 year")
plot_sameday
ggsave(
plot= plot_sameday,
filename="broad_incidental_group.jpeg", path=here::here("output"),
)
write_csv(df1_Incidental_sameday, here::here("output", "broad_incidental_group_table.csv"))
rm(plot_sameday,df1_Incidental_sameday)
df2_overall_sameday <- df2 %>% group_by(monPlot,sameday_ab) %>% summarise(
numOutcome = sum(numOutcome),
numEligible = sum(numEligible)
) %>% mutate (value = numOutcome/numEligible)
df2_overall_sameday$value <- round(df2_overall_sameday$value,digits = 3)
df2_overall_sameday$numOutcome <- plyr::round_any(df2_overall_sameday$numOutcome, 5)
df2_overall_sameday$numEligible <- plyr::round_any(df2_overall_sameday$numEligible, 5)
df2_overall_sameday$sameday_ab <- ifelse(df2_overall_sameday$sameday_ab==1,"with infection","without infection")
plot_sameday <- ggplot(df2_overall_sameday, aes(x=monPlot, y=value ,group=sameday_ab,color=sameday_ab))+
annotate(geom = "rect", xmin = as.Date("2021-01-01"),xmax = as.Date("2021-04-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
annotate(geom = "rect", xmin = as.Date("2020-11-01"),xmax = as.Date("2020-12-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
annotate(geom = "rect", xmin = as.Date("2020-03-01"),xmax = as.Date("2020-06-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
geom_line(aes(linetype=sameday_ab))+
geom_point(aes(shape=sameday_ab))+
theme(legend.position = "right",legend.title =element_blank())+
labs(
fill = "",
title = "",
y = "",
x=""
)+
scale_y_continuous(labels = scales::percent,breaks=seq(0, 1, by = 0.05))+
theme(axis.text.x=element_text(angle=60,hjust=1))+
scale_shape_manual(values = c(rep(1:9))) +
scale_color_manual(values = c("coral2","deeppink3","darkred","darkviolet","brown3","goldenrod2","blue3","green3","forestgreen"))+
scale_x_date(date_labels = "%Y", date_breaks = "1 year")
plot_sameday
ggsave(
plot= plot_sameday,
filename="repeat_all_group.jpeg", path=here::here("output"),
)
write_csv(df2_overall_sameday, here::here("output", "repeat_all_group_table.csv"))
rm(plot_sameday,df2_overall_sameday)
### Incidental group
df2_Incidental_sameday <- df2 %>% filter(incidental == 1) %>%
group_by(monPlot,sameday_ab) %>% summarise(
numOutcome = sum(numOutcome),
numEligible = sum(numEligible)
) %>% mutate (value = numOutcome/numEligible)
df2_Incidental_sameday$value <- round(df2_Incidental_sameday$value,digits = 3)
df2_Incidental_sameday$numOutcome <- plyr::round_any(df2_Incidental_sameday$numOutcome, 5)
df2_Incidental_sameday$numEligible <- plyr::round_any(df2_Incidental_sameday$numEligible, 5)
df2_Incidental_sameday$sameday_ab <- ifelse(df2_Incidental_sameday$sameday_ab==1,"with infection","without infection")
plot_sameday <- ggplot(df2_Incidental_sameday, aes(x=monPlot, y=value ,group=sameday_ab,color=sameday_ab))+
annotate(geom = "rect", xmin = as.Date("2021-01-01"),xmax = as.Date("2021-04-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
annotate(geom = "rect", xmin = as.Date("2020-11-01"),xmax = as.Date("2020-12-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
annotate(geom = "rect", xmin = as.Date("2020-03-01"),xmax = as.Date("2020-06-01"),ymin = -Inf, ymax = Inf,fill="grey80", alpha=0.5)+
geom_line(aes(linetype=sameday_ab))+
geom_point(aes(shape=sameday_ab))+
theme(legend.position = "right",legend.title =element_blank())+
labs(
fill = "",
title = "",
y = "",
x=""
)+
scale_y_continuous(labels = scales::percent,breaks=seq(0, 1, by = 0.01))+
theme(axis.text.x=element_text(angle=60,hjust=1))+
scale_shape_manual(values = c(rep(1:9))) +
scale_color_manual(values = c("coral2","deeppink3","darkred","darkviolet","brown3","goldenrod2","blue3","green3","forestgreen"))+
scale_x_date(date_labels = "%Y", date_breaks = "1 year")
plot_sameday
ggsave(
plot= plot_sameday,
filename="repeat_incidental_group.jpeg", path=here::here("output"),
)
write_csv(df2_Incidental_sameday, here::here("output", "repeat_incidental_group_table.csv"))