Skip to content

eveskew/RVFutures

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Interepidemic Rift Valley fever in a changing world

This repository contains code, data, and figures that support:

Eskew, E.A., E. Clancey, D. Singh, S. Situma, L. Nyakarahuka, M. K. Njenga, and S. L. Nuismer. In press. Interepidemic Rift Valley fever in East Africa: The recent risk landscape and projected impacts of global change. Proceedings of the Royal Society B.


Predictor Variables

Models of interepidemic Rift Valley fever (RVF) relied on a suite of spatially-explicit predictor variables. All predictors were processed to a resolution of 2.5 arcminutes, but here we provide details about the sourcing and native resolution of all predictors:

  • Hydrology

    • Lake data from HydroLAKES (shapefile of lakes globally)

    • River data from HydroRIVERS (shapefile of rivers globally)

  • Soils

    • Multiple variables from SoilGrids (250 m resolution [~8 arcsecond resolution])
  • Topography

  • Disease detection

  • Livestock density

  • Human population density

  • Precipitation and temperature

    • Historical weather data from WorldClim (downscaled CRU-TS-4.09 data at 2.5 arcminute resolution)

    • Historical climate data from WorldClim (2.5 arcminute resolution)

    • Projected climate data from WorldClim (downscaled output from various CMIP6 climate models at 2.5 arcminute resolution)


Project Workflow

To help explain the project scripts, the overall workflow is as follows:

Gather predictor variables

  • get_SoilGrids_data.R programmatically downloads the soil predictor data. All other predictor data were manually downloaded from the online resources described above.

Process predictor variables

  • process_all_predictors.R processes all predictor data into rasters of 2.5 arcminute resolution. This script calls the various process_*_data.R scripts that each handle a certain type of predictor data. Note that these scripts do need to be called in the order prescribed by process_all_predictors.R so that intermediate files are available, as needed.

  • generate_predictor_flat_files.R takes the 2.5 arcminute raster predictor files and generates flat CSV files describing the predictor data for each grid cell across the study region. Predictor data in this format are necessary for downstream modeling. Note that these flat predictor files are generated for both historical and future climate conditions.

Prepare data for modeling

Modeling of interepidemic RVF

  • fit_model.R fits and saves an XGBoost model of the disease outbreak and background data. These objects are saved in the data/saved_objects subdirectory.

Model post-processing and validation

  • model_postprocessing.R uses the saved XGBoost model objects to generate ROC curve, variable importance, and partial dependence plots. Also calculates the cutoff value that maximizes the true skill statistic (TSS) for use in downstream analyses.

  • generate_prediction_rasters.R uses the saved XGBoost model objects to generate prediction rasters showing the relative likelihood of RVF across the study region. These prediction rasters are generated for all months of the calendar year using predictor data describing historical climate (1970-2000), historical weather (2008-2022), and future climate conditions. Summary data written to prediction_raster_summary.csv.

  • model_validation.R estimates grid cell-level RVFV force of infection (FOI) and combines these estimates with RVF relative likelihood values from the prediction rasters to validate our model's predictive ability. Also generates the accompanying figure. Data written to serology_data_for_validation.csv.

  • calculate_pop_at_risk.R combines predicted RVF relative likelihood values from the prediction rasters with estimates of future human population density to calculate the future population at risk. Estimates written to human_pop_at_risk.csv.

Plotting

  • plot_outbreak_data.R generates figures showing the distribution of observed interepidemic RVF outbreak events.

  • plot_background_points.R generates a single figure showing the background points used in XGBoost modeling.

  • plot_main.R is the project's primary plotting script.

  • plot_deltas.R generates monthly-level figures showing change over time in precipitation and temperature variables as well as model-based predictions.

  • plot_gif.R generates a GIF of monthly predictions from 2008-2022.

About

Modeling global change impacts on Rift Valley fever

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages