`import "github.com/spatialmodel/inmap/epi"`

Package epi holds a collection of functions for calculating the health impacts of air pollution.

This example calculates mortalities caused by ambient PM2.5 concentrations.

Code:

var ( // I represents currently observed deaths per 100,000 // people in this region. I = 800.0 // p represents number of people in different locations // in the region. p = []float64{100000, 80000, 700000, 90000} // z represents PM2.5 concentrations in μg/m³ in locations // corresponding to p. z = []float64{12, 26, 11, 2, 9} ) // This is how we can calculate total deaths caused by air pollution // using a regional underlying incidence rate. io := IoRegional(p, z, NasariACS, I/100000) var totalDeaths float64 for i, pi := range p { totalDeaths += Outcome(pi, z[i], io, NasariACS) } fmt.Printf("total deaths using regional underlying incidence: %.0f\n", totalDeaths) // This is how we can calculate additional deaths caused by doubling // air pollution: var doubleDeaths float64 for i, pi := range p { doubleDeaths += Outcome(pi, z[i]*2, io, NasariACS) - Outcome(pi, z[i], io, NasariACS) } fmt.Printf("additional deaths caused by doubling air pollution: %.0f\n", doubleDeaths) // This is how we can calculate lives saved by halving air pollution: var halfDeaths float64 for i, pi := range p { halfDeaths += Outcome(pi, z[i]/2, io, NasariACS) - Outcome(pi, z[i], io, NasariACS) } fmt.Printf("lives saved by halving air pollution: %.0f\n", -1*halfDeaths) // Sometimes it is not practical to calculate regional underlying // incidence. This is how we can calculate total deaths caused by air pollution // using a location-specific underlying incidence rate. totalDeaths = 0 for i, pi := range p { totalDeaths += Outcome(pi, z[i], Io(z[i], NasariACS, I/100000), NasariACS) } fmt.Printf("total deaths using local underlying incidence: %.0f\n", totalDeaths) // This is how we can calculate additional deaths caused by doubling // air pollution using a local underlying incidence rate: doubleDeaths = 0 for i, pi := range p { io := Io(z[i], NasariACS, I/100000) doubleDeaths += Outcome(pi, z[i]*2, io, NasariACS) - Outcome(pi, z[i], io, NasariACS) } fmt.Printf("additional deaths caused by doubling air pollution (local underlying incidence): %.0f\n", doubleDeaths)

Output:

total deaths using regional underlying incidence: 672 additional deaths caused by doubling air pollution: 403 lives saved by halving air pollution: 389 total deaths using local underlying incidence: 665 additional deaths caused by doubling air pollution (local underlying incidence): 401

- Variables
- func Io(z float64, hr HRer, I float64) float64
- func IoRegional(p, z []float64, hr HRer, I float64) float64
- func Outcome(p, z, Io float64, hr HRer) float64
- type Cox
- type HRer
- type Nasari

Krewski2009 is a Cox proportional-hazards model from the study:

Krewski, D., Jerrett, M., Burnett, R. T., Ma, R., Hughes, E., Shi, Y., … Thun, M. J. (2009). Extended Follow-Up and Spatial Analysis of the American Cancer Society Study Linking Particulate Air Pollution and Mortality. Retrieved from http://www.ncbi.nlm.nih.gov/pubmed/19627030

This function is from Table 11 of the study and does not account for ecologic covariates.

Krewski2009Ecologic is a Cox proportional-hazards model from the study:

Krewski, D., Jerrett, M., Burnett, R. T., Ma, R., Hughes, E., Shi, Y., … Thun, M. J. (2009). Extended Follow-Up and Spatial Analysis of the American Cancer Society Study Linking Particulate Air Pollution and Mortality. Retrieved from http://www.ncbi.nlm.nih.gov/pubmed/19627030

This function is from Table 11 of the study and does not account for ecologic covariates.

Lepeule2012 is a Cox proportional-hazards model from the study:

Lepeule, J., Laden, F., Dockery, D., & Schwartz, J. (2012). Chronic exposure to fine particles and mortality: An extended follow-up of the Harvard six cities study from 1974 to 2009. Environmental Health Perspectives, 120(7), 965–970. http://doi.org/10.1289/ehp.1104660

❖

var NasariACS = Nasari{ Gamma: 0.0478, Delta: 6.94, Lambda: 3.37, F: func(z float64) float64 { return math.Log(z + 1) }, Label: "NasariACS", }

NasariACS is an exposure-response model fit to the American Cancer Society Cancer Prevention II cohort all causes of death from fine particulate matter.

Io returns the underlying incidence rate where the reported incidence rate is I, concentration is z, and hr specifies the hazard ratio as a function of z. When possible, IoRegional should be used instead of this function.

IoRegional returns the underlying regional average incidence rate for a region where the reported incidence rate is I, individual locations within the region have population p and concentration z, and hr specifies the hazard ratio as a function of z, as presented in Equations 2 and 3 of:

Apte JS, Marshall JD, Cohen AJ, Brauer M (2015) Addressing Global Mortality from Ambient PM2.5. Environmental Science and Technology 49(13):8057–8066.

Outcome returns the number of incidences occuring in population p when exposed to concentration z given underlying incidence rate Io and hazard relationship hr(z), as presented in Equation 2 of:

Apte JS, Marshall JD, Cohen AJ, Brauer M (2015) Addressing Global Mortality from Ambient PM2.5. Environmental Science and Technology 49(13):8057–8066.

❖

type Cox struct { // Beta is the model coefficient Beta float64 // Threshold is the concentration below which health effects are assumed // to be zero. Threshold float64 // Label is the name of the function. Label string }

Cox implements a Cox proportional hazards model.

HR calculates the hazard ratio caused by concentration z.

Name returns the label for this function.

HRer is an interface for any type that can calculate the hazard ratio caused by concentration z.

❖

type Nasari struct { // Gamma, Delta, and Lambda are parameters fit using linear regression. Gamma, Delta, Lambda float64 // F is the concentration transformation function. F func(z float64) float64 // Label is the name of the function. Label string }

Nasari implements a class of simple approximations to the exposure response models described in:

Nasari M, Szyszkowicz M, Chen H, Crouse D, Turner MC, Jerrett M, Pope CA III, Hubbell B, Fann N, Cohen A, Gapstur SM, Diver WR, Forouzanfar MH, Kim S-Y, Olives C, Krewski D, Burnett RT. (2015). A Class of Non-Linear Exposure-Response Models Suitable for Health Impact Assessment Applicable to Large Cohort Studies of Ambient Air Pollution. Air Quality, Atmosphere, and Health: DOI: 10.1007/s11869-016-0398-z.

HR calculates the hazard ratio caused by concentration z.

Name returns the label for this function.

Package epi imports 2 packages (graph) and is imported by 2 packages. Updated 2018-08-17. Refresh now. Tools for package owners.