30 March 2021 GC, R code to plot beeswarm
library("readxl")
library('data.table')
library("beeswarm")
read_usage <- function(path_in) {
dt <- read_excel(path_in)
dt <- dt[ -c(1, 3)]
names(dt)[2] <- 'BCD'
names(dt)[3] <- 'CROS'
dt <- na.omit(dt)
return(dt)
}
path1 <- '/media/guido/LACIE/Cingle_Guido/Master/Headband/Usage_BCD_CROS.xlsx'
usage <- read_usage(path1)
usage
New names: * `` -> ...1
Study_ID | BCD | CROS |
---|---|---|
<dbl> | <dbl> | <dbl> |
3 | 0.4 | 4.9 |
4 | 1.0 | 2.0 |
5 | 1.4 | 2.3 |
7 | 3.2 | 4.4 |
8 | 0.7 | 13.1 |
9 | 4.0 | 7.6 |
10 | 3.7 | 8.9 |
11 | 0.2 | 12.7 |
12 | 0.3 | 1.1 |
13 | 0.2 | 5.8 |
14 | 3.3 | 8.5 |
15 | 0.1 | 1.2 |
16 | 5.6 | 5.1 |
17 | 0.6 | 0.5 |
18 | 0.3 | 2.4 |
20 | 4.1 | 10.7 |
23 | 0.3 | 11.5 |
24 | 0.1 | 9.5 |
25 | 0.1 | 12.2 |
26 | 0.5 | 13.5 |
27 | 1.8 | 2.8 |
28 | 0.3 | 9.8 |
29 | 3.3 | 1.8 |
30 | 0.2 | 4.9 |
31 | 5.2 | 8.3 |
32 | 8.4 | 0.2 |
33 | 0.1 | 1.2 |
34 | 0.4 | 1.8 |
35 | 0.6 | 3.3 |
36 | 0.3 | 0.2 |
⋮ | ⋮ | ⋮ |
53 | 1.0 | 6.7 |
54 | 4.6 | 10.8 |
55 | 3.3 | 3.4 |
56 | 11.9 | 6.2 |
57 | 0.2 | 0.3 |
58 | 3.1 | 2.3 |
59 | 4.2 | 2.2 |
60 | 1.1 | 4.6 |
61 | 0.2 | 3.2 |
62 | 1.2 | 3.6 |
64 | 4.8 | 11.3 |
65 | 4.3 | 9.7 |
67 | 0.2 | 5.2 |
68 | 1.8 | 7.2 |
69 | 0.1 | 11.3 |
70 | 2.3 | 8.6 |
71 | 4.1 | 11.7 |
72 | 1.0 | 3.2 |
73 | 0.8 | 3.3 |
74 | 3.5 | 3.3 |
75 | 5.8 | 10.8 |
76 | 3.0 | 1.7 |
77 | 7.1 | 11.4 |
78 | 0.4 | 9.5 |
79 | 0.1 | 10.4 |
81 | 3.9 | 10.5 |
82 | 0.6 | 13.9 |
83 | 0.3 | 4.8 |
84 | 1.1 | 12.0 |
85 | 0.0 | 5.3 |
usage_long <- melt(setDT(usage), id.vars = c('Study_ID'),
value.name = 'Average_Daily_Use', variable.name = 'Device')
usage_long
Study_ID | Device | Average_Daily_Use |
---|---|---|
<dbl> | <fct> | <dbl> |
3 | BCD | 0.4 |
4 | BCD | 1.0 |
5 | BCD | 1.4 |
7 | BCD | 3.2 |
8 | BCD | 0.7 |
9 | BCD | 4.0 |
10 | BCD | 3.7 |
11 | BCD | 0.2 |
12 | BCD | 0.3 |
13 | BCD | 0.2 |
14 | BCD | 3.3 |
15 | BCD | 0.1 |
16 | BCD | 5.6 |
17 | BCD | 0.6 |
18 | BCD | 0.3 |
20 | BCD | 4.1 |
23 | BCD | 0.3 |
24 | BCD | 0.1 |
25 | BCD | 0.1 |
26 | BCD | 0.5 |
27 | BCD | 1.8 |
28 | BCD | 0.3 |
29 | BCD | 3.3 |
30 | BCD | 0.2 |
31 | BCD | 5.2 |
32 | BCD | 8.4 |
33 | BCD | 0.1 |
34 | BCD | 0.4 |
35 | BCD | 0.6 |
36 | BCD | 0.3 |
⋮ | ⋮ | ⋮ |
53 | CROS | 6.7 |
54 | CROS | 10.8 |
55 | CROS | 3.4 |
56 | CROS | 6.2 |
57 | CROS | 0.3 |
58 | CROS | 2.3 |
59 | CROS | 2.2 |
60 | CROS | 4.6 |
61 | CROS | 3.2 |
62 | CROS | 3.6 |
64 | CROS | 11.3 |
65 | CROS | 9.7 |
67 | CROS | 5.2 |
68 | CROS | 7.2 |
69 | CROS | 11.3 |
70 | CROS | 8.6 |
71 | CROS | 11.7 |
72 | CROS | 3.2 |
73 | CROS | 3.3 |
74 | CROS | 3.3 |
75 | CROS | 10.8 |
76 | CROS | 1.7 |
77 | CROS | 11.4 |
78 | CROS | 9.5 |
79 | CROS | 10.4 |
81 | CROS | 10.5 |
82 | CROS | 13.9 |
83 | CROS | 4.8 |
84 | CROS | 12.0 |
85 | CROS | 5.3 |
clm = colnames(usage)
sp = clm[-1]
ttl = "Average daily use of BCD versus CROS"
ttl = ""
ColorBlind3 <- c("#E69F00", "#56B4E9", "#009E73")
p <- boxplot(Average_Daily_Use ~ Device, data = usage_long, outline = FALSE,
ylab = "Average Daily Use [hours]",
xlab = "", cex.lab=1.4, main = ttl,
ylim=c(0, 14))
b <- beeswarm(Average_Daily_Use ~ Device, data = usage_long, pch = 16, col = ColorBlind3, add = TRUE)
l <- legend("topleft", legend = sp, title = "Device", pch = 16, col = ColorBlind3, cex = 1.1)
tiff("/home/guido/R/cingle/figures/BCDvsCROS_usage.tiff", units="in", width=7, height=7, res=300)
p <- boxplot(Average_Daily_Use ~ Device, data = usage_long, outline = FALSE,
ylab = "Average Daily Use [hours]",
xlab = "", cex.lab=1.4, main = ttl,
ylim=c(0, 14))
b <- beeswarm(Average_Daily_Use ~ Device, data = usage_long, pch = 16, col = ColorBlind3, add = TRUE)
l <- legend("topleft", legend = sp, title = "Device", pch = 16, col = ColorBlind3, cex = 1.1)
dev.off()