Study
Lim CY, Bohn MK, Lippi G, Ferrari M, Loh TP, Yuen K, Adeli K, Horvath AR Staff Rostering, Split Team Arrangement, Social Distancing (Physical Distancing) and Use of Personal Protective Equipment to Minimize Risk of Workplace Transmission During the COVID-19 Pandemic: A Simulation Study. Clinical Biochemistry 86:15-22 (2020). https://doi.org/10.1016/j.clinbiochem.2020.09.003.
This is a discrete-event simulation modelling the transmission of COVID-19 in laboratory. It examines the proportion of staff infected in scenarios varying the: number of shifts per day; number of staff per shift; overall staff pool; shift patterns; secondary attack rate of the virus; introduction of protective measures (social distancing and personal protective equipment). The model is created using Python.
Images from the original study on this page are soruced from Lim et al. (2020)
Computational reproducibility
Successfully reproduced 9 out of 9 (100%) of items from the scope in 12h 27m (31.1%).
Required troubleshooting:
- Tables - convert to
.csv
and long format
- Environment - identify appropriate versions and create environment file
- Model run time - add parallel processing to help reduce it
- Set up model so scenarios can be run programmatically - as function inputs rather than hard-coded values in the model script
- Adding parameters and scenarios - modifying existing parameters, switching hard-coded parameters to function inputs, or modifying code (e.g. adding conditional logic to skip or change what code is run)
- Create figures - from scratch as no code provided
0 |
7 |
1.0 |
5.0 |
2 |
1 |
0.20 |
1 |
7 |
1.0 |
5.0 |
2 |
3 |
0.20 |
2 |
7 |
1.0 |
5.0 |
2 |
7 |
0.30 |
3 |
7 |
1.0 |
5.0 |
2 |
14 |
0.40 |
4 |
7 |
1.0 |
5.0 |
2 |
21 |
0.30 |
5 |
7 |
1.0 |
5.0 |
4 |
1 |
0.10 |
6 |
7 |
1.0 |
5.0 |
4 |
3 |
0.10 |
7 |
7 |
1.0 |
5.0 |
4 |
7 |
0.20 |
8 |
7 |
1.0 |
5.0 |
4 |
14 |
0.20 |
9 |
7 |
1.0 |
5.0 |
4 |
21 |
0.15 |
'Preview of reproduction'
0 |
7 |
1 |
5 |
2 |
1 |
0.20 |
12 |
7 |
1 |
5 |
2 |
3 |
0.20 |
24 |
7 |
1 |
5 |
2 |
7 |
0.40 |
36 |
7 |
1 |
5 |
2 |
14 |
0.30 |
48 |
7 |
1 |
5 |
2 |
21 |
0.30 |
60 |
7 |
1 |
5 |
4 |
1 |
0.05 |
72 |
7 |
1 |
5 |
4 |
3 |
0.10 |
84 |
7 |
1 |
5 |
4 |
7 |
0.15 |
96 |
7 |
1 |
5 |
4 |
14 |
0.15 |
108 |
7 |
1 |
5 |
4 |
21 |
0.15 |
'Absolute differences in proportion infected between tables'
count 420.000000
mean 0.008405
std 0.017549
min 0.000000
25% 0.000000
50% 0.000000
75% 0.010000
max 0.100000
Name: diff, dtype: float64
0 |
7 |
1.0 |
5.0 |
2 |
1 |
0.10 |
1 |
7 |
1.0 |
5.0 |
2 |
3 |
0.10 |
2 |
7 |
1.0 |
5.0 |
2 |
7 |
0.20 |
3 |
7 |
1.0 |
5.0 |
2 |
14 |
0.10 |
4 |
7 |
1.0 |
5.0 |
2 |
21 |
0.20 |
5 |
7 |
1.0 |
5.0 |
4 |
1 |
0.05 |
6 |
7 |
1.0 |
5.0 |
4 |
3 |
0.05 |
7 |
7 |
1.0 |
5.0 |
4 |
7 |
0.10 |
8 |
7 |
1.0 |
5.0 |
4 |
14 |
0.05 |
9 |
7 |
1.0 |
5.0 |
4 |
21 |
0.05 |
'Preview of reproduction'
0 |
7 |
1 |
5 |
2 |
1 |
0.10 |
12 |
7 |
1 |
5 |
2 |
3 |
0.10 |
24 |
7 |
1 |
5 |
2 |
7 |
0.10 |
36 |
7 |
1 |
5 |
2 |
14 |
0.10 |
48 |
7 |
1 |
5 |
2 |
21 |
0.10 |
60 |
7 |
1 |
5 |
4 |
1 |
0.05 |
72 |
7 |
1 |
5 |
4 |
3 |
0.05 |
84 |
7 |
1 |
5 |
4 |
7 |
0.05 |
96 |
7 |
1 |
5 |
4 |
14 |
0.05 |
108 |
7 |
1 |
5 |
4 |
21 |
0.05 |
'Absolute differences in proportion infected between tables'
count 420.000000
mean 0.009905
std 0.017464
min 0.000000
25% 0.000000
50% 0.000000
75% 0.010000
max 0.100000
Name: diff, dtype: float64
0 |
7 |
1.0 |
5.0 |
2 |
1 |
0.40 |
1 |
7 |
1.0 |
5.0 |
2 |
3 |
0.30 |
2 |
7 |
1.0 |
5.0 |
2 |
7 |
0.50 |
3 |
7 |
1.0 |
5.0 |
2 |
14 |
0.50 |
4 |
7 |
1.0 |
5.0 |
2 |
21 |
0.50 |
5 |
7 |
1.0 |
5.0 |
4 |
1 |
0.10 |
6 |
7 |
1.0 |
5.0 |
4 |
3 |
0.20 |
7 |
7 |
1.0 |
5.0 |
4 |
7 |
0.25 |
8 |
7 |
1.0 |
5.0 |
4 |
14 |
0.25 |
9 |
7 |
1.0 |
5.0 |
4 |
21 |
0.25 |
'Preview of reproduction'
0 |
7 |
1 |
5 |
2 |
1 |
0.40 |
12 |
7 |
1 |
5 |
2 |
3 |
0.40 |
24 |
7 |
1 |
5 |
2 |
7 |
0.50 |
36 |
7 |
1 |
5 |
2 |
14 |
0.50 |
48 |
7 |
1 |
5 |
2 |
21 |
0.50 |
60 |
7 |
1 |
5 |
4 |
1 |
0.10 |
72 |
7 |
1 |
5 |
4 |
3 |
0.17 |
84 |
7 |
1 |
5 |
4 |
7 |
0.25 |
96 |
7 |
1 |
5 |
4 |
14 |
0.25 |
108 |
7 |
1 |
5 |
4 |
21 |
0.25 |
'Absolute differences in proportion infected between tables'
count 420.000000
mean 0.004762
std 0.012765
min 0.000000
25% 0.000000
50% 0.000000
75% 0.000000
max 0.120000
Name: diff, dtype: float64
0 |
7 |
1.0 |
5.0 |
2 |
1 |
0.25 |
1 |
7 |
1.0 |
5.0 |
2 |
3 |
0.30 |
2 |
7 |
1.0 |
5.0 |
2 |
7 |
0.30 |
3 |
7 |
1.0 |
5.0 |
2 |
14 |
0.30 |
4 |
7 |
1.0 |
5.0 |
2 |
21 |
0.40 |
5 |
7 |
1.0 |
5.0 |
4 |
1 |
0.10 |
6 |
7 |
1.0 |
5.0 |
4 |
3 |
0.10 |
7 |
7 |
1.0 |
5.0 |
4 |
7 |
0.15 |
8 |
7 |
1.0 |
5.0 |
4 |
14 |
0.15 |
9 |
7 |
1.0 |
5.0 |
4 |
21 |
0.15 |
'Preview of reproduction'
0 |
7 |
1 |
5 |
2 |
1 |
0.20 |
4 |
7 |
1 |
5 |
2 |
3 |
0.30 |
8 |
7 |
1 |
5 |
2 |
7 |
0.30 |
12 |
7 |
1 |
5 |
2 |
14 |
0.40 |
16 |
7 |
1 |
5 |
2 |
21 |
0.30 |
20 |
7 |
1 |
5 |
4 |
1 |
0.05 |
24 |
7 |
1 |
5 |
4 |
3 |
0.10 |
28 |
7 |
1 |
5 |
4 |
7 |
0.15 |
32 |
7 |
1 |
5 |
4 |
14 |
0.15 |
36 |
7 |
1 |
5 |
4 |
21 |
0.15 |
'Absolute differences in proportion infected between tables'
count 180.000000
mean 0.012056
std 0.022614
min 0.000000
25% 0.000000
50% 0.000000
75% 0.020000
max 0.100000
Name: diff, dtype: float64
0 |
Gloves |
1.0 |
5.0 |
2 |
1 |
0.20 |
1 |
Gloves |
1.0 |
5.0 |
2 |
3 |
0.20 |
2 |
Gloves |
1.0 |
5.0 |
2 |
7 |
0.20 |
3 |
Gloves |
1.0 |
5.0 |
2 |
14 |
0.30 |
4 |
Gloves |
1.0 |
5.0 |
2 |
21 |
0.30 |
5 |
Gloves |
1.0 |
5.0 |
4 |
1 |
0.05 |
6 |
Gloves |
1.0 |
5.0 |
4 |
3 |
0.05 |
7 |
Gloves |
1.0 |
5.0 |
4 |
7 |
0.10 |
8 |
Gloves |
1.0 |
5.0 |
4 |
14 |
0.15 |
9 |
Gloves |
1.0 |
5.0 |
4 |
21 |
0.15 |
'Preview of reproduction'
180 |
Gloves |
1 |
5 |
2 |
1 |
0.20 |
192 |
Gloves |
1 |
5 |
2 |
3 |
0.20 |
204 |
Gloves |
1 |
5 |
2 |
7 |
0.20 |
216 |
Gloves |
1 |
5 |
2 |
14 |
0.30 |
228 |
Gloves |
1 |
5 |
2 |
21 |
0.30 |
240 |
Gloves |
1 |
5 |
4 |
1 |
0.05 |
252 |
Gloves |
1 |
5 |
4 |
3 |
0.05 |
264 |
Gloves |
1 |
5 |
4 |
7 |
0.10 |
276 |
Gloves |
1 |
5 |
4 |
14 |
0.15 |
288 |
Gloves |
1 |
5 |
4 |
21 |
0.15 |
'Absolute differences in proportion infected between tables'
count 700.000000
mean 0.006214
std 0.011161
min 0.000000
25% 0.000000
50% 0.000000
75% 0.010000
max 0.050000
Name: diff, dtype: float64
Evaluation against guidelines
Context: The original study repository was evaluated against criteria from journal badges relating to how open and reproducible the model is and against guidance for sharing artefacts from the STARS framework. The original study article and supplementary materials (excluding code) were evaluated against reporting guidelines for DES models: STRESS-DES, and guidelines adapted from ISPOR-SDM.
References
Lim, Chun Yee, Mary Kathryn Bohn, Giuseppe Lippi, Maurizio Ferrari, Tze Ping Loh, Kwok-Yung Yuen, Khosrow Adeli, and Andrea Rita Horvath. 2020.
“Staff Rostering, Split Team Arrangement, Social Distancing (Physical Distancing) and Use of Personal Protective Equipment to Minimize Risk of Workplace Transmission During the COVID-19 Pandemic: A Simulation Study.” Clinical Biochemistry 86 (December): 15–22.
https://doi.org/10.1016/j.clinbiochem.2020.09.003.