Construct close contact from mobile tracking data. For users coming from makselab's Project COVID19 K-core tracker
(https://github.com/makselab/COVID19) Please refer to the "running for research" section.
Deployment code for calculation pipeline as backend of an actual app.
Pipeline of detecting and generating close contact network. Requires deployment of Elasticsearch and Airflow
To running for research on 'COVID19 K-core tracker'. Please download staging
folder only. And following the below.
- Install Elasticsearch ver. >= 7.6 (https://www.elastic.co/)
- Install necessary packages by
pip install requirements.txt
- Download the data and extract any folder.
- Edit
config_params.yaml
to set parameters of generating network. Set "track.person" field to "levels" and modify the location of files and temp/output folder accordingly. See the comments for details. - Edit
config_status.yaml
to make sure the time in "grandata" field is later the the "last run". cd staging/
and in staging folder, runpython src/data_ingest.py
. This step automatically ingest the raw data into elasticsearch.- Run
python research/level_expansion.py
to generate close contact network. You can setting up how many chuncks you are going to expand by modifying themax_chunk
variable in it. The I/O file/folder and paramter is controled by theconfig_params.yaml
.