Difference between revisions of "Exposure-response function"

From Testiwiki
Jump to: navigation, search
(updated but not ready)
(Calculations)
 
(36 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{variable|moderator=Jouni}}
+
{{method|moderator=Jouni}}
 
[[Category:Exposure-response functions]]
 
[[Category:Exposure-response functions]]
 
[[Category:Glossary term]]<section begin=glossary />
 
[[Category:Glossary term]]<section begin=glossary />
Line 19: Line 19:
  
 
An ERF is a mathematical construct describing the relationship between a response and an exposure. In the general form, it is described as a probability.
 
An ERF is a mathematical construct describing the relationship between a response and an exposure. In the general form, it is described as a probability.
 +
 +
<rcode embed=0 label="Show data">
 +
 +
library(OpasnetUtils)
 +
#library(plyr)
 +
 +
objects.latest("Op_en2031", "initiate")
 +
oprint(summary(EvalOutput(ERF)))
 +
 +
</rcode>
  
 
==Rationale==
 
==Rationale==
 +
 +
=== Equations ===
  
 
By nature, a response to an agent occurs at individual level (with some exceptions such as agents affecting [[herd immunity]]). Thus, the individual response should be the basic unit for ERF. If individual variation is of no interest, a population ERF can simply be expressed as the average of individual ERFs.
 
By nature, a response to an agent occurs at individual level (with some exceptions such as agents affecting [[herd immunity]]). Thus, the individual response should be the basic unit for ERF. If individual variation is of no interest, a population ERF can simply be expressed as the average of individual ERFs.
  
===Example===
+
There are several different functions that may be used. These are defined here. In all equations, these variables are used:
 +
* RR: the relative risk for unit exposure difference. Note that &beta; = ln(RR).
 +
* E: exposure level of the individual
 +
* B: background exposure level that is considered negligible or lowest achievable. Exposures below B are not considered.
 +
* T: threshold exposure level below which no impact will occur
 +
* RR' is the relative risk for the actual exposure
 +
* I<sub>max</sub> is the maximal relative impact
 +
* ED<sub>50</sub> is the dose that causes 50 % of the maximal impact.
 +
NOTE! ED<sub>50</sub> parameter is given in the Threshold column, and I<sub>max</sub> parameter is given in the ERF or Result column.
 +
 
 +
 
 +
'''Approaches relative to background disease risk
 +
 
 +
;Relative risk (RR): describes the relative risk compared with a reference exposure. The actual number of cases is calculated with the equation below. (E > T) is 1 if E is greater than T and 0 otherwise.
 +
 
 +
<math>RR' = (e^{ln(RR) (E - max(B, T))} - 1) (E > T) + 1 </math>
 +
 
 +
; Relative Hill: Relative Hill means an ERF function derived from Hill's plot:
 +
 
 +
:<math>RR' = \frac{E \times I_{max}}{E + ED_{50}}</math>
 +
 
 +
 
 +
'''Approaches independent of disease risk
 +
 
 +
; Exposure-response slope (ERS): A linear relationship where ERS defines the slope of the exposure-response line. Typically the intercept is assumed to be 0. Response metric MUST be defined as it varies from one case to another.
 +
 
 +
<math>I = ERS \times E</math>
 +
 
 +
; Cancer slope factor (CSF): A linear relationship between constant lifetime exposure (typically in units mg/kg/d) and lifetime probability of cancer.
 +
 
 +
<math>P(I) = CSF \times E</math>
  
An example of how exposure-response functions -table should be filled. Original page: [[Concentration-response to PM2.5]]
 
  
<t2b index="Disease,Response metric,Exposure route,Exposure metric,Exposure unit,Threshold,ERF parameter,Observation" locations="ERF,Description" unit=" relative increase of mortality per µg/m3">
+
; Step function: Assumes that exposure at certain range is not a hazard, while exposure outside that range is. Threshold and ERF parameters are used to give the lower and upper ends of the range, respectively. The Step function includes tolerable daily intake (TDI), recommended daily intake (RDI), acceptable daily intake (ADI), no-observed-adverse-effect level (NOAEL) and related, often administrative limits. The value is TRUE (or 1) if exposure fails to meet the recommendation and FALSE (or 0) otherwise.
Cardiopulmonary|Mortality|Inhalation|Annual average outdoor concentration|µq/m3|0|Relative increase|0.0128|Dockery et al. 1993 and Pope et al. 2002:0.0128 (-0.0036-0.0375)
 
Lung cancer|Mortality|Inhalation|Annual average outdoor concentration|µq/m3|0|Relative increase|0.0150|Dockery et al. 1993 and Pope et al. 2002:0.0150 (-0.0350-0.0728)
 
Other causes|Mortality|Inhalation|Annual average outdoor concentration|µq/m3|0|Relative increase|0.0008|Dockery et al. 1993 and Pope et al. 2002:0.0008 (-0.0232-0.0252)
 
All causes|Mortality|Inhalation|Annual average outdoor concentration|µq/m3|0|Relative increase|0.0091|Dockery et al. 1993 and Pope et al. 2002:0.0091 (-0.0019-0.0289)
 
</t2b>
 
  
 
=== Pages with standardised ERF tables ===
 
=== Pages with standardised ERF tables ===
Line 41: Line 77:
 
The tables can contain the following columns (obligatory columns are in bold):
 
The tables can contain the following columns (obligatory columns are in bold):
 
* Obs (automatic)
 
* Obs (automatic)
* '''Exposure.agent (index)
+
* '''Exposure agent (index)
* '''Disease (index)
+
* '''Response (index)
 
* Population (index)
 
* Population (index)
 
* Age (index)
 
* Age (index)
 
* Sex (index)
 
* Sex (index)
* '''Response.metric (index)
+
* '''Exposure (index)
* '''ERF.Parameter (index)
 
 
* '''Exposure unit (index)
 
* '''Exposure unit (index)
* '''Exposure route (index)
+
* '''ER function (index)
 
* '''Exposure metric (index)
 
* '''Exposure metric (index)
* Threshold (result; if omitted, assumed to be 0)
+
* '''Scaling (index)
* '''Result (result; may also be named as ERF)
+
* '''Observation (hidden), containing two locations:
 +
** '''Threshold
 +
** '''ERF
 +
* '''Result
 
* Description (description, there may be any number of description columns because they are not stored in the database)
 
* Description (description, there may be any number of description columns because they are not stored in the database)
  
<t2b name="Standardised ERF tables" index="Page name,Ident" obs="Code name" desc="Description">
+
'''Note!''' Spaces in column names will be replaced with "_" to avoid problems in the code.
ERF of several environmental pollutions|Op_en5827|initiate|Contains ERFs for radon, PM2.5, noise, chlorinated byproducts in drinking water, arsenic, dampness in buildings, formaldehyde, fluoride, ozone, lead, dioxin, quartz dust, asbestos.
+
 
</t2b>
+
{| {{prettytable}}
 +
|+'''Standardised ERF tables that have been combined on this page.
 +
!Page ||Ident||Code name||Description
 +
|----
 +
|[[ERFs of environmental pollutants]]
 +
|Op_en5827
 +
|initiate
 +
|Contains ERFs for radon, PM2.5, noise, chlorinated byproducts in drinking water, arsenic, dampness in buildings, formaldehyde, fluoride, ozone, lead, dioxin, quartz dust, asbestos.
 +
|----
 +
|[[ERF of omega-3 fatty acids]]
 +
|Op_en5830
 +
|initiate
 +
|Contains ERFs for Omega3 fatty acids.
 +
|----
 +
|[[ERF of methylmercury]]
 +
|Op_en5825
 +
|initiate
 +
|Contains ERFs for MeHg.
 +
|----
 +
|[[ERF of dioxin]]
 +
|Op_en5823
 +
|initiate
 +
|Contains ERFs for dioxin TEQ.
 +
|----
 +
|[[ERFs of vitamins]]
 +
|Op_en6866
 +
|initiate
 +
|Contains ERF for vitamin D.
 +
|}
 +
 
 +
=== Calculations ===
 +
 
 +
<rcode embed=1 name="initiate" label="Initiate ERF and threshold (for developers only)">
 +
# This is code Op_en2031/initiate on page [[Exposure-response function]]
 +
 
 +
library(OpasnetUtils)
 +
 
 +
ERF <- Ovariable(
 +
  "ERF",
 +
  dependencies = data.frame(Name = c(
 +
  "ERF_env", # [[ERF of environmental pollutants]]
 +
  "ERF_omega3", # [[ERF_of_omega-3_fatty_acids]]
 +
  "ERF_mehg", # [[ERF_of_methylmercury]]
 +
  "ERF_diox", # [[ERF_of_dioxin]]
 +
  "ERF_vit", # [[ERF_of_dioxin]]
 +
  "ERFchoice" # an ovariable for choosing case-specific Responses, Exposure_units or ER_functions
 +
  ), Ident = c(
 +
  "Op_en5827/initiate",
 +
  "Op_en5830/initiate",
 +
  "Op_en5825/initiate",
 +
  "Op_en5823/initiate",
 +
  "Op_en6866/initiate",
 +
  "Op_en2301/ERFchoice"
 +
  )),
 +
  formula = function(...) {
 +
 
 +
  out <- OpasnetUtils::combine(
 +
    ERF_env,
 +
    ERF_omega3,
 +
    ERF_mehg,
 +
    ERF_diox,
 +
    ERF_vit
 +
  )
 +
  out@output$Age[is.na(out@output$Age)] <- ""
 +
  out@marginal[colnames(out@output) == "Exposure_unit"] <- FALSE
 +
  out@output <- fillna(out@output, marginals = "Iter") # To make sure that deterministic ERFs work properly.
 +
  out <- unkeep(out * ERFchoice, cols=c("ERFchoiceSource", "ERFchoiceResult")) #technical nuisance removed
 +
 
 +
  return(out)                       
 +
  }
 +
)
 +
 
 +
threshold <- Ovariable(
 +
  "threshold",
 +
  dependencies = data.frame(Name = c(
 +
    "threshold_env", # [[ERF of environmental pollutants]]
 +
    "threshold_omega3", # [[ERF_of_omega-3_fatty_acids]]
 +
    "threshold_mehg", # [[ERF_of_methylmercury]]
 +
    "threshold_diox", # [[ERF_of_dioxin]]
 +
    "threshold_vit" # [[ERFs of vitamins]]
 +
  ), Ident = c(
 +
    "Op_en5827/initiate",
 +
    "Op_en5830/initiate",
 +
    "Op_en5825/initiate",
 +
    "Op_en5823/initiate",
 +
    "Op_en6866/initiate"
 +
  )),
 +
  formula = function(...) {
 +
   
 +
    out <- OpasnetUtils::combine(
 +
      threshold_env,
 +
      threshold_omega3,
 +
      threshold_mehg,
 +
      threshold_diox,
 +
      threshold_vit
 +
    )
 +
    out@output$Age[is.na(out@output$Age)] <- ""
 +
   
 +
    return(out)                       
 +
  }
 +
)
 +
 
 +
objects.store(ERF, threshold)
 +
cat("Ovariables ERF, threshold stored. Page: Op_en2031, code: initiate.\n")
 +
</rcode>
 +
 
 +
<rcode name="ERFchoice" label="Initiate ERFchoice (for developers only)">
 +
# This is code Op_en2031/ERFchoice on page [[Exposure-response function]]
 +
 
 +
library(OpasnetUtils)
 +
 
 +
ERFchoice <- 1
 +
 
 +
objects.store(ERFchoice)
 +
cat("Object ERFchoice stored.\n")
 +
</rcode>
  
 
=== Technical issues ===
 
=== Technical issues ===
Line 63: Line 216:
 
* In [[Opasnet]], the use of term Exposure-response function (ERF) is recommended. The pages about ERFs should be named: "ERF of <agent> on <endpoint> in <population>."
 
* In [[Opasnet]], the use of term Exposure-response function (ERF) is recommended. The pages about ERFs should be named: "ERF of <agent> on <endpoint> in <population>."
 
* ERFs are typically [[variable]]s, and they should be categorised to [[:Category:Exposure-response functions]]
 
* ERFs are typically [[variable]]s, and they should be categorised to [[:Category:Exposure-response functions]]
* In the [[definition]] of a variable, an ERF data is described as a t2b table under subheading [[Data]]. The actual ovariable that is used in models is defined in an "initiate" code under subheading Calculations.  
+
* In the [[definition]] of a variable, an ERF data is described as a t2b table under subheading [[Data]]. The actual ovariable that is used in models is defined in an "initiate" code under subheading Calculations.
  
 
==See also==
 
==See also==

Latest revision as of 12:46, 8 June 2017

<section begin=glossary />
Exposure-response function (ERF) (or exposure-response relationship) is the relationship between the exposure of a given organism, system, or (sub)population to an agent in a specific pattern during a given time and the magnitude of a continuously graded effect to that organism, system, or (sub)population.
This term has several related terms that may have slightly different meaning. Effect and response are interchangeable words. Also the word function is used instead of relationship. In Opasnet, we use the term exposure-response function (or ERF) as the generic term for different kinds of relationships. Often the exposure metric is more specifically defined in an alternative term. Two common examples:
Concentration-effect relationship
Relationship between the exposure, expressed in concentration, of a given organism, system, or (sub)population to an agent in a specific pattern during a given time and the magnitude of a continuously graded effect to that organism, system, or (sub)population. The concentration is measured at a defined site. [1]
Dose-response relationship
Relationship between the amount of an agent administered to, taken up by, or absorbed by an organism, system, or (sub)population and the change developed in that organism, system,or (sub)population in reaction to the agent. [1]<section end=glossary />

Question

What is such a representation for ERF that it fulfills the following criteria?

  • It is widely applicable to all kinds of agents, exposures, and responses.
  • A single ERF is widely applicable, within its domain, to different situations and populations.
  • It is mathematically clear so that impact calculations can be operationalised based on it.

Answer

An ERF is a mathematical construct describing the relationship between a response and an exposure. In the general form, it is described as a probability.

+ Show code

Rationale

Equations

By nature, a response to an agent occurs at individual level (with some exceptions such as agents affecting herd immunity). Thus, the individual response should be the basic unit for ERF. If individual variation is of no interest, a population ERF can simply be expressed as the average of individual ERFs.

There are several different functions that may be used. These are defined here. In all equations, these variables are used:

  • RR: the relative risk for unit exposure difference. Note that β = ln(RR).
  • E: exposure level of the individual
  • B: background exposure level that is considered negligible or lowest achievable. Exposures below B are not considered.
  • T: threshold exposure level below which no impact will occur
  • RR' is the relative risk for the actual exposure
  • Imax is the maximal relative impact
  • ED50 is the dose that causes 50 % of the maximal impact.

NOTE! ED50 parameter is given in the Threshold column, and Imax parameter is given in the ERF or Result column.


Approaches relative to background disease risk

Relative risk (RR)
describes the relative risk compared with a reference exposure. The actual number of cases is calculated with the equation below. (E > T) is 1 if E is greater than T and 0 otherwise.

Failed to parse (Missing <code>texvc</code> executable. Please see math/README to configure.): RR' = (e^{ln(RR) (E - max(B, T))} - 1) (E > T) + 1

Relative Hill
Relative Hill means an ERF function derived from Hill's plot:
Failed to parse (Missing <code>texvc</code> executable. Please see math/README to configure.): RR' = \frac{E \times I_{max}}{E + ED_{50}}


Approaches independent of disease risk

Exposure-response slope (ERS)
A linear relationship where ERS defines the slope of the exposure-response line. Typically the intercept is assumed to be 0. Response metric MUST be defined as it varies from one case to another.

Failed to parse (Missing <code>texvc</code> executable. Please see math/README to configure.): I = ERS \times E

Cancer slope factor (CSF)
A linear relationship between constant lifetime exposure (typically in units mg/kg/d) and lifetime probability of cancer.

Failed to parse (Missing <code>texvc</code> executable. Please see math/README to configure.): P(I) = CSF \times E


Step function
Assumes that exposure at certain range is not a hazard, while exposure outside that range is. Threshold and ERF parameters are used to give the lower and upper ends of the range, respectively. The Step function includes tolerable daily intake (TDI), recommended daily intake (RDI), acceptable daily intake (ADI), no-observed-adverse-effect level (NOAEL) and related, often administrative limits. The value is TRUE (or 1) if exposure fails to meet the recommendation and FALSE (or 0) otherwise.

Pages with standardised ERF tables

If a page has a standardised ERF data table (see an example above), the data can be automatically read and used by an R code and combined with other ERF tables. Therefore it is preferable to use the standard format. It makes modelling much easier and also enables an easy way to add more endpoints to assessments, if there are interesting exposures and available ERF tables.

The tables can contain the following columns (obligatory columns are in bold):

  • Obs (automatic)
  • Exposure agent (index)
  • Response (index)
  • Population (index)
  • Age (index)
  • Sex (index)
  • Exposure (index)
  • Exposure unit (index)
  • ER function (index)
  • Exposure metric (index)
  • Scaling (index)
  • Observation (hidden), containing two locations:
    • Threshold
    • ERF
  • Result
  • Description (description, there may be any number of description columns because they are not stored in the database)

Note! Spaces in column names will be replaced with "_" to avoid problems in the code.

Standardised ERF tables that have been combined on this page.
Page Ident Code name Description
ERFs of environmental pollutants Op_en5827 initiate Contains ERFs for radon, PM2.5, noise, chlorinated byproducts in drinking water, arsenic, dampness in buildings, formaldehyde, fluoride, ozone, lead, dioxin, quartz dust, asbestos.
ERF of omega-3 fatty acids Op_en5830 initiate Contains ERFs for Omega3 fatty acids.
ERF of methylmercury Op_en5825 initiate Contains ERFs for MeHg.
ERF of dioxin Op_en5823 initiate Contains ERFs for dioxin TEQ.
ERFs of vitamins Op_en6866 initiate Contains ERF for vitamin D.

Calculations

+ Show code

+ Show code

Technical issues

  • In Opasnet, the use of term Exposure-response function (ERF) is recommended. The pages about ERFs should be named: "ERF of <agent> on <endpoint> in <population>."
  • ERFs are typically variables, and they should be categorised to Category:Exposure-response functions
  • In the definition of a variable, an ERF data is described as a t2b table under subheading Data. The actual ovariable that is used in models is defined in an "initiate" code under subheading Calculations.

See also

References