|
|
Rivi 1: |
Rivi 1: |
| {{edistymisluokitus|edistyminen = Täysluonnos}}
| | #REDIRECT[[Väestön kohdekohtainen ympäristöperäisen haitta-ainealtistumisen arviointi]] |
| {{metodi|moderator=Virpi Kollanus}}
| |
| | |
| ==Kysymys==
| |
| | |
| Kuinka arvioidaan kohdekohtaisesti väestön ympäristöperäinen altistuminen haitta-aineelle sekä altistumisesta aiheutuva terveysriski?
| |
| | |
| ==Vastaus==
| |
| | |
| <rcode label="Arvioinnin tulos"
| |
| variables="
| |
| name:Chemical.substance|default:'Nikkeli'|description:Arvioinnin kohteena oleva haitta-aine (kirjoitusmuoto: 'Haitta-aine')|
| |
| name:Assessment.area|default:'Harjavallan terästehtaan lähimmät asuinalueet'|description:Arvioinninn kohteena oleva alue (kirjoitusmuoto: 'Alue')|
| |
| name:C.air.outdoor|default:0.024|description:Ulkoilma (µg/m3)|category:Haitta-aineen ympäristöpitoisuudet arvioinnin kohteena olevalla alueella|
| |
| name:C.air.indoor|default:0.024|description:Sisäilma (µg/m3)|
| |
| name:C.dw|default:0.001|description:Juomavesi (mg/l)|
| |
| name:C.soil|default:345|description:Maaperä (mg/kg)|
| |
| name:C.lfc|default:0.7|description:Paikalliset vihannekset (mg/kg tuorepainoa)|
| |
| name:C.tfc|default:0.8|description:Paikalliset juurekset (mg/kg tuorepainoa)|
| |
| name:C.berries|default:0.8|description:Paikalliset marjat (mg/kg tuorepainoa)|
| |
| name:C.fish|default:NA|description:Paikallinen kala (mg/kg tuorepainoa)|
| |
| name:C.meat|default:NA|description:Paikallinen liha (mg/kg tuorepainoa)|
| |
| name:C.dairy|default:NA|description:Paikalliset maitotuotteet (mg/kg tuorepainoa)|
| |
| name:C.bw|default:0.001|description:Peseytymiseen käytetty vesi (mg/l)|
| |
| name:C.sw|default:0.002|description:Pintavesi (uinti) (mg/l)|
| |
| name:Background.intake.adult|default:2.6|description:Taustasaanti, aikuinen (µg/kg/vrk)|category:Haitta-aineen päivittäinen taustasaanti muusta kuin arvioinnin kohteena olevasta ympäristöstä|
| |
| name:Background.intake.child|default:2.6|description:Taustasaanti, lapsi (µg/kg/vrk)|
| |
| name:HEQC.air.outdoor|default:0.02|description:Ulkoilma (µg/m3)|category: Haitta-aineen ympäristöpitoisuuksille määritetyt terveysperusteiset viitearvot|
| |
| name:HEQC.air.indoor|default:NA|description:Sisäilma (µg/m3)|
| |
| name:HEQC.dw|default:0.02|description:Juomavesi (mg/l)|
| |
| name:HEQC.soil|default:1190|description:Maaperä (mg/kg)|
| |
| name:HEQC.lfc|default:NA|description:Vihannekset (mg/kg tuorepainoa)|
| |
| name:HEQC.tfc|default:NA|description:Juurekset (mg/kg tuorepainoa)|
| |
| name:HEQC.berries|default:NA|description:Marjat (mg/kg tuorepainoa)|
| |
| name:HEQC.fish|default:NA|description:Kala (mg/kg tuorepainoa)|
| |
| name:HEQC.meat|default:NA|description:Liha (mg/kg tuorepainoa)|
| |
| name:HEQC.dairy|default:NA|description:Maitotuotteet (mg/kg tuorepainoa)|
| |
| name:HEQC.sw|default:NA|description:Pintavesi (mg/l)|
| |
| name:TDI|default:50|description:Haitta-aineen turvallisen päivittäisen saannin viitearvo (µg/kg/vrk)|category:Terveysriskinarvioinnissa käytetyt haitta-aineen toksisuuden viitearvot|
| |
| name:TCA|default:0.05|description:Haitta-aineen turvallisen päivittäisen hengitystiealtistumisen viitearvo (µg/m3)|
| |
| name:NOAEL.ing|default:2200|description:Haitta-aineen päivittäisen saannin NOAEL/LOAEL-arvo (µg/kg/vrk)|
| |
| name:NOAEC.inh|default:56|description:Haitta-aineen päivittäisen hengitystiealtistumisen NOAEC/LOAEC-arvo (µg/kg/vrk)|
| |
| name:Cancer.unit.risk.intake|default:NA|description:Haitta-aineen elinikäisen päivittäisen saannin yksikkösyöpäriski (per µg/kg/vrk)|
| |
| name:Cancer.unit.risk.inhalation|default:0.00038|description:Haitta-aineen elinikäisen päivittäisen hengitystiealtistumisen yksikkösyöpäriski (per µg/m3)|
| |
| name:Population|default:10000|description:Altistuvan väestön määrä|category: Muut tarvittavat muuttujat|
| |
| name:Abs.skin.soil|default:0.01|description:Iholta imeytyvä haitta-aineen osuus maaperäkontaktin yhteydessä (tulee olla välillä 0-1)|
| |
| name:Kp|default:0.0002|description:Ihon läpäisykerroin haitta-aineelle vesikontaktin yhteydessä (cm/h)
| |
| ">
| |
| | |
| library(OpasnetUtils)
| |
| | |
| objects.latest("Op_fi2814","alustus")
| |
| | |
| ###########Tuloslaskenta
| |
| | |
| data <- tidy(opbase.data("Op_fi2814"), direction = "wide")
| |
| | |
| ### Määritellään ulkoiset parametrit Altistumislaskennan taulukon muokkaamista varten. | |
| col.common <- "Ikä"
| |
| col.result <- "Result"
| |
| col.condition <- "Lyhenne"
| |
| | |
| ####Arvioinnissa käytettyjen lähtötietojen printtaus
| |
| | |
| cat("Arvioinnin kohteena oleva haitta-aine \n")
| |
| | |
| Chemical.substance
| |
| | |
| cat("Arvioinnin kohteena oleva alue \n")
| |
| | |
| Assessment.area
| |
| | |
| cat("Altistumisen arvioinnin perusteena käytetyt ympäristön haitta-ainepitoisuudet \n")
| |
| | |
| Environmental.concentration <- data.frame(
| |
| Väliaine=c("Ulkoilma","Sisäilma","Juomavesi","Maaperä","Paikalliset vihannekset","Paikalliset juurekset","Paikalliset marjat","Paikallinen kala", "Paikallinen liha", "Paikalliset maitotuotteet", "Pesuvesi", "Pintavesi"),
| |
| Yksikkö=c("µg/m3", "µg/m3", "mg/l", "mg/kg", "mg/kg tuorepainoa", "mg/kg tuorepainoa", "mg/kg tuorepainoa", "mg/kg tuorepainoa", "mg/kg tuorepainoa", "mg/kg tuorepainoa", "mg/l", "mg/l"),
| |
| Pitoisuus=c(C.air.outdoor, C.air.indoor, C.dw, C.soil, C.lfc, C.tfc, C.berries, C.fish, C.meat, C.dairy, C.bw,C.sw)
| |
| )
| |
| | |
| oprint(Environmental.concentration, digits=3)
| |
| | |
| | |
| cat("Muiden altistumisen arvioinnissa käytettyjen muuttujien arvot.\n")
| |
| | |
| parameters.adult <- data[data$Ikä == "Aikuinen",]
| |
| parameters.child <- data[data$Ikä == "Lapsi",]
| |
| | |
| parameters.table.a <- data.frame(
| |
| Muuttuja=parameters.adult$Parametri,
| |
| Yksikkö=parameters.adult$Yksikkö,
| |
| Aikuinen=parameters.adult$Result,
| |
| Lapsi=parameters.child$Result
| |
| )
| |
| | |
| parameters.table.b <- data.frame(
| |
| Muuttuja=c("Iholta imeytyvän haitta-aineen osuus (maa-aineskontaktin yhteydessä)","Ihon läpäisevyyskerroin haitta-aineelle (vesikontaktin yhteydessä)","Haitta-aineen taustasaanti muista kuin paikallisista lähteistä"),
| |
| Yksikkö=c("-","cm/h","µg/kg/vrk"),
| |
| Aikuinen=c(Abs.skin.soil, Kp, Background.intake.adult),
| |
| Lapsi=c(Abs.skin.soil, Kp, Background.intake.adult)
| |
| )
| |
| | |
| parameters.table <- merge(parameters.table.a, parameters.table.b, all=TRUE)
| |
| | |
| oprint(parameters.table, digits=3)
| |
| | |
| | |
| cat("Ympäristön laadun arvioinnissa käytetyt haitta-ainepitoisuuksien terveysperusteiset viitearvot \n")
| |
| | |
| HEQC.table <- data.frame(
| |
| Väliaine=c("Ulkoilma","Sisäilma","Juomavesi","Maaperä","Paikalliset vihannekset","Paikalliset juurekset","Paikalliset marjat","Paikallinen kala", "Paikallinen liha", "Paikalliset maitotuotteet","Pintavesi"),
| |
| Yksikkö=c("µg/m3", "µg/m3", "mg/l", "mg/kg", "mg/kg tuorepainoa", "mg/kg tuorepainoa", "mg/kg tuorepainoa", "mg/kg tuorepainoa", "mg/kg tuorepainoa", "mg/kg tuorepainoa", "mg/l"),
| |
| Pitoisuus=c(HEQC.air.outdoor, HEQC.air.indoor, HEQC.dw, HEQC.soil, HEQC.lfc, HEQC.tfc, HEQC.berries, HEQC.fish, HEQC.meat, HEQC.dairy, HEQC.sw)
| |
| )
| |
| | |
| oprint(HEQC.table, digits=3)
| |
| | |
| | |
| cat("Kroonisesta haitta-ainealtistumisesta aiheutuvan terveysriskin arvioinnissa käytetyt toksisuuden viitearvot \n")
| |
| | |
| toxicity.values.table <- data.frame(
| |
| Viitearvo=c("Haitta-aineen turvallisen päivittäisen saannin viitearvo", "Haitta-aineen turvallisen päivittäisen saannin viitearvo", "Haitta-aineen päivittäisen saannin NOAEL/LOAEL-arvo", "Haitta-aineen päivittäisen hengitystiealtistumisen NOAEC/LOAEC-arvo", "Haitta-aineen elinikäisen päivittäisen saannin yksikkösyöpäriski", "Haitta-aineen elinikäisen päivittäisen hengitystiealtistumisen yksikkösyöpäriski", "Altistuvan väestön määrä"),
| |
| Yksikko=c("µg/kg/vrk", "µg/m3", "µg/kg/vrk", "µg/kg/vrk", "per µg/kg/vrk", "per µg/m3", "Henkilöä"),
| |
| Arvo=c(TDI, TCA, NOAEL.ing, NOAEC.inh, Cancer.unit.risk.intake, Cancer.unit.risk.inhalation, Population)
| |
| )
| |
| | |
| oprint(toxicity.values.table, digits=5)
| |
| | |
| | |
| ###Altistumisen arviointi
| |
| | |
| cat("Altistumisen arvioinnin tulokset. \n")
| |
| | |
| expo <- Chronic.environmental.exposure.to.toxic.substances(C.air.outdoor, C.air.indoor, data)
| |
| | |
| intake.adult <- expo[expo$Ikä == "Aikuinen",]
| |
| intake.child <- expo[expo$Ikä == "Lapsi",]
| |
| intake.tot <- data.frame(
| |
| Altistumisreitti="Kokonaissaanti",
| |
| Aikuinen=sum(intake.adult$Result, na.rm=TRUE),
| |
| Lapsi=sum(intake.child$Result, na.rm=TRUE)
| |
| )
| |
| | |
| intake.table <- data.frame(
| |
| Altistumisreitti=intake.adult$Altistumisreitti,
| |
| Aikuinen=(intake.adult$Result),
| |
| Lapsi=(intake.child$Result)
| |
| )
| |
| | |
| intake.table <- merge(intake.table,intake.tot,all=TRUE)
| |
| intake.table$Elinikäinen <- (intake.table$Lapsi * 6 + intake.table$Aikuinen * 64) / 70
| |
| | |
| intake.fractions.adult <- (intake.table$Aikuinen / intake.tot$Aikuinen)*100
| |
| intake.fractions.child <- (intake.table$Lapsi / intake.tot$Lapsi)*100
| |
| intake.fractions.lifetime <- (intake.table$Elinikäinen / ((intake.tot$Lapsi * 6 + intake.tot$Aikuinen * 64)/70)*100)
| |
| | |
| intake.fractions.table <- data.frame(
| |
| Altistumisreitti=intake.table$Altistumisreitti,
| |
| Aikuinen=intake.fractions.adult,
| |
| Lapsi=intake.fractions.child,
| |
| Elinikäinen=intake.fractions.lifetime
| |
| )
| |
| | |
| cat("Keskimääräinen päivittäinen haitta-aineen saanti (µg/kg/vrk). \n")
| |
| oprint(intake.table, digits=3)
| |
| | |
| cat("Eri altistumisreittien osuus päivittäisestä saannista (%). \n")
| |
| oprint(intake.fractions.table, digits=4)
| |
| | |
| | |
| ###Ympäristöpitoisuuksien terveysperusteisen viitearvovertailun tulostaulu
| |
| | |
| cat("Haitta-aineen pitoisuus ympäristössä suhteutettuna terveysperusteiseen viitearvoon.\n")
| |
| HEQ.table <- Health.based.environmental.quality(Concentration, EQC)
| |
| oprint(HEQ.table, digits=3)
| |
| | |
| | |
| ###Terveysriskin karakterisointi
| |
| | |
| #####Määritellään terveysriskin karakterisointi -funktion tarvitsemat lähtömuuttujat
| |
| | |
| Tot.intake.adult <- expo[expo$Ikä == "Aikuinen",]
| |
| Tot.intake.adult <- sum(Tot.intake.adult$Result,na.rm=TRUE)
| |
| Tot.intake.child <- expo[expo$Ikä == "Lapsi",]
| |
| Tot.intake.child <- sum(Tot.intake.child$Result,na.rm=TRUE)
| |
| Tot.intake.lifetime <- (Tot.intake.child * 6 + Tot.intake.adult * 64) / 70
| |
| | |
| Ef.air.indoor <- data[data$Lyhenne == "Ef.air.indoor",]
| |
| Ef.air.indoor.adult <- (Ef.air.indoor[Ef.air.indoor$Ikä == "Aikuinen",])$Result
| |
| Ef.air.indoor.child <- (Ef.air.indoor[Ef.air.indoor$Ikä == "Lapsi",])$Result
| |
| C.inhaled.air.adult <- (C.air.outdoor * ((24 - Ef.air.indoor.adult) / 24)) + (C.air.indoor * (Ef.air.indoor.adult / 24))
| |
| C.inhaled.air.child <- (C.air.outdoor * ((24 - Ef.air.indoor.child) / 24)) + (C.air.indoor * (Ef.air.indoor.child / 24))
| |
| C.inhaled.air.lifetime <- (C.inhaled.air.child * 6 + C.inhaled.air.adult * 64) / 70
| |
| | |
| risk <- Health.risk.characterisation.of.chronic.exposure.to.toxic.substances(Exposure, Toxicity)
| |
| | |
| #####Riskin karakterisoinnin tulostaulu
| |
| | |
| cat("Kroonisesta ympäristöperäisestä haitta-ainealtistumisesta aiheutuvan terveysriskin karakterisointi. \n")
| |
| risk.adult <- risk[risk$Altistumistaso == "Aikuinen",]
| |
| risk.child <- risk[risk$Altistumistaso == "Lapsi",]
| |
| risk.lifetime <- risk[risk$Altistumistaso == "Elinikäinen",]
| |
| | |
| risk.table.a <- data.frame(Altistumisreitti=risk.adult$Altistumisreitti, Terveysvaikutus=risk.adult$Terveysvaikutus, Riski.indikaattori=risk.adult$Riski.indikaattori, Aikuinen=risk.adult$Result, Lapsi=risk.child$Result)
| |
| risk.table.b <- data.frame(Altistumisreitti=risk.lifetime$Altistumisreitti, Terveysvaikutus=risk.lifetime$Terveysvaikutus, Riski.indikaattori=risk.lifetime$Riski.indikaattori, Elinikäinen=risk.lifetime$Result)
| |
| | |
| risk.table <- merge(risk.table.a, risk.table.b, all=TRUE)
| |
| oprint(risk.table, digits=3)
| |
| | |
| | |
| </rcode>
| |
| | |
| | |
| | |
| ===Kohdekohtainen arviointi===
| |
| | |
| | |
| <u>'''HUOM!</u>
| |
| | |
| '''Desimaalimerkkinä tulee käyttää pistettä (esim. 2.5, EI 2,5)
| |
| | |
| '''Jos muuttujalle ei ole määritettävissä arvoa, kenttään tulee kirjoittaa NA
| |
| | |
| ==Perustelut==
| |
| | |
| ===Data===
| |
| | |
| '''Näitä muuttujien lähtöarvoja voi muuttaa taulukkoa editoimalla
| |
| | |
| <t2b index="Parametri,Lyhenne,Yksikkö,Ikä" locations="Aikuinen,Lapsi" unit="-">
| |
| Altistumisperiodin pituus|At|vrk|365|365
| |
| Kehon paino|Bw|kg|70|15
| |
| Hengitystiheys|Ir.air|m³/h|0.83|0.32
| |
| Oleskeluaika sisätiloissa (keskiarvo altistumisperiodille)|Ef.air.indoor|h/vrk|22.86|21.14
| |
| Juomaveden kulutus|Ir.dw|ml/vrk|700|200
| |
| Altistumistiheys, juomavesi|Ef.dw|vrk/altistumisperiodi|365|365
| |
| Niellyn maa-aineksen määrä|Ir.soil|g/vrk|0.050|0.150
| |
| Maa-aineksen kiinnittyminen iholle|Soil.ad.skin|mg/cm²/vrk|0.25|0.25
| |
| Maa-ainekselle altistuvan ihon osuus|F.skin.soil|-|0.05|0.2
| |
| Altistumistiheys, maa-aines|Ef.soil|vrk/altistumisperiodi|255|255
| |
| Vihannesten kokonaiskulutus (keskiarvo altistumisperiodille)|Ir.lfc|kg/vrk|0.11|0.055
| |
| Paikallisten vihannesten osuus kokonaiskulutuksesta (keskiarvo altistumisperiodille)|F.lfc.loc|-|0.1|0.1
| |
| Juuresten kokonaiskulutus (keskiarvo altistumsperiodille)|Ir.tfc|kg/vrk|0.2|0.1
| |
| Paikallisten juuresten osuus kokonaiskulutuksesta (keskiarvo altistumisperiodille)|F.tfc.loc|-|0.1|0.1
| |
| Marjojen kokonaiskulutus (keskiarvo altistumsperiodille)|Ir.berries|kg/vrk|0.044|0.035
| |
| Paikallisten marjojen osuus kokonaiskulutuksesta (keskiarvo altistumisperiodille)|F.berries.loc|-|0.5|0.5
| |
| Sienten kokonaiskulutus (keskiarvo altistumsperiodille)|Ir.mushroom|kg/vrk|0.006|0.003
| |
| Paikallisten sienten osuus kokonaiskulutuksesta (keskiarvo altistumisperiodille)|F.mushroom.loc|-|0.5|0.5
| |
| Kalan kokonaiskulutus (keskiarvo altistumsperiodille)|Ir.fish|kg/vrk|0.1|0.05
| |
| Paikallisen kalan osuus kokonaiskulutuksesta (keskiarvo altistumisperiodille)|F.fish.loc|-|0.1|0.1
| |
| Lihan kokonaiskulutus (keskiarvo altistumsperiodille)|Ir.meat|kg/vrk|0.1|0.05
| |
| Paikallisen lihan osuus kokonaiskulutuksesta (keskiarvo altistumisperiodille)|F.meat.loc|-|0.1|0.1
| |
| Maitotuotteiden kokonaiskulutus (keskiarvo altistumisperiodille)|Ir.dairy|kg/vrk|0.1|0.05
| |
| Paikallisten maitotuotteiden osuus kokonaiskulutuksesta (keskiarvo altistumisperiodille)|F.dairy.loc|-|0.1|0.1
| |
| Peseytymiseen kuluva aika|Ed.bw|h/vrk|0.25|0.25
| |
| Altistumistiheys, pesuvesi|Ef.bw|vrk/altistumisperiodi|365|365
| |
| Peseytyessä vedelle altistuvan ihon osuus|F.skin.bw|-|1|1
| |
| Uidessa niellyn pintaveden määrä|Ir.sw|ml/uintikerta|50|50
| |
| Uintikerran kesto|Ed.sw|h/uintikerta|0.25|0.25
| |
| Altistumistiheys, pintavesi|Ef.sw|uintikerta/altistumisperiodi|30|30
| |
| Uidessa pintavedelle altistuvan ihon osuus|F.skin.sw|-|1|1
| |
| </t2b>
| |
| | |
| ===Funktioiden parametrit===
| |
| | |
| <t2b name="funktioparametrit" index="Matriisi,Altistus,Funktio,Nopeus,Osuus" obs="Kuvaus" unit="-">
| |
| Ulkoilma|Air.inh.out|F1|Ir.air|Ef.air.indoor|Ulkoilma
| |
| Sisäilma|Air.inh.in|F2|Ir.air|Ef.air.indoor|Sisäilma
| |
| Talousvesi|Dw.ing|F3|Ir.dw|Ef.dw|Juomavesi
| |
| Maaperä|Soil.ing|F3|Ir.soil|Ef.soil|Maaperä, nieleminen
| |
| Pintavesi|Sw.ing|F3|Ir.sw|Ef.sw|Uimavesi, nieleminen
| |
| Vihannekset|Lfc.ing|F4|Ir.lfc|F.lfc.loc|Vihannekset
| |
| Juurekset|Tfc.ing|F4|Ir.tfc|F.tfc.loc|Juurekset
| |
| Marjat|Berries.ing|F4|Ir.berries|F.berries.loc|Marjat
| |
| Sienet|Mushroom.ing|F4|Ir.mushroom|F.mushroom.loc|Sienet
| |
| Kala|Fish.ing|F4|Ir.fish|F.fish.loc|Kala
| |
| Liha|Meat.ing|F4|Ir.meat|F.meat.loc|Liha
| |
| Maitotuotteet|Dairy.ing|F4|Dairy.tfc|F.dairy.loc|Maitotuotteet
| |
| Maaperä|Soil.derm|F5|Ef.soil|F.skin.soil|Maaperä, ihoaltistus
| |
| Talousvesi|Bw.derm|F6|Ef.bw|F.skin.bw|Pesuvesi, ihoaltistus
| |
| Pintavesi|Sw.derm|F7|Ef.sw|F.skin.sw|Pintavesi, ihoaltistus
| |
| </t2b>
| |
| | |
| ;Funktiot
| |
| * F1: concentration * (24 - tf(fraction) / 24) * tf(rate) / (tf("Bw") * tf("At"))
| |
| * F2: concentration * tf(fraction) / 24 * tf(rate) / (tf("Bw") * tf("At"))
| |
| * F3: concentration * tf(rate) * tf(fraction) / (tf("Bw") * tf("At"))
| |
| * F4: concentration * 1000 * tf(rate) * tf(fraction) / tf("Bw")
| |
| * F5: concentration * tf("Soil.ad.skin") * 0.001 * Skin.sa * tf(fraction) * Abs.skin.soil * tf(rate) / (tf("Bw") * tf("At"))
| |
| * F6: concentration * Kp * tf(rate) * tf("Ed.bw") * Skin.sa * tf(fraction) / (tf("Bw") * tf("At"))
| |
| * F7: concentration * Kp * tf(rate) * tf("Ed.sw") * Skin.sa * tf(fraction) / (tf("Bw") * tf("At"))
| |
| | |
| | |
| ===Laskenta===
| |
| | |
| <rcode name="alustus" label="Alusta funktiot" embed=1>
| |
| library(OpasnetUtils)
| |
| | |
| ########################## tf is a function that takes one large table, finds matching rows and
| |
| #### produces a standard-format vector that can be operated with easily. Parameters:
| |
| # condition = a vector with conditions for each condition column. The length must be ncol(col.condition).
| |
| ############ External parameters (these must be defined as objects before the function is run;
| |
| ##### they are not given in the function but they are used by it):
| |
| # data = a data frame that contains the data
| |
| # col.condition = vector with names of columns that contain the indices that must match in the data
| |
| # col.common = vector with names of columns that are used as indices in calculations.
| |
| # col.result = the column that contains the actual values.
| |
| | |
| tf <- function(condition, ...) {
| |
| | |
| # Take the part of data that fits the condition. Drop all columns but col.common and col.result.
| |
| out <- data[data[col.condition] == condition, c(col.common, col.result)]
| |
| | |
| # Merge the selected data with all col.common and drop possible extra rows so that the outcome always has the same size.
| |
| out <- merge(unique(data[col.common]), out, all = TRUE)
| |
| out <- out[rownames(unique(out[col.common])), ]
| |
| return(out[, col.result])
| |
| }
| |
| | |
| ####################Funktio väestön ympäristöperäisen haitta-ainealtistumisen määrittelyyn
| |
| ########Saanti lasketaan yksikössä µg/kg/vrk kun ympäristön haitta-ainepitoisuudet on ilmoitettu yksiköissä µg/m3 (ilma), mg/l (vesi) sekä mg/kg (kiinteät väliaineet)
| |
| ########Haitta-aineen taustasaanti tulee ilmoittaa muodossa µg/kg/vrk
| |
| | |
| Chronic.environmental.exposure.to.toxic.substances <- function(C.air.outdoor, C.air.indoor, data, ...) {
| |
| | |
| ##Hengitystiet
| |
| | |
| Air.inh <- ((C.air.outdoor * ((24 - tf("Ef.air.indoor")) / 24)) + (C.air.indoor * (tf("Ef.air.indoor") / 24))) * tf("Ir.air") / (tf("Bw") * tf("At"))
| |
| | |
| ##Ruuansulatuskanava
| |
| | |
| ###Juomavesi
| |
| | |
| Dw.ing <- C.dw * 1000 * tf("Ir.dw") * tf("Ef.dw") / (tf("Bw") * tf("At"))
| |
| | |
| ###Maaperä
| |
| | |
| Soil.ing <- C.soil * 1000 * (tf("Ir.soil") / 1000000) * tf("Ef.soil") / (tf("Bw") * tf("At"))
| |
| | |
| ###Vihannekset
| |
| | |
| Lfc.ing <- C.lfc * 1000 * tf("Ir.lfc") * tf("F.lfc.loc") / tf("Bw")
| |
| | |
| ###Juurekset
| |
| | |
| Tfc.ing <- C.tfc * 1000 * tf("Ir.tfc") * tf("F.tfc.loc") / tf("Bw")
| |
| | |
| ###Marjat
| |
| | |
| Berries.ing <- C.berries * 1000 * tf("Ir.berries") * tf("F.berries.loc") / tf("Bw")
| |
| | |
| ###Kala
| |
| | |
| Fish.ing <- C.fish * 1000 * tf("Ir.fish") * tf("F.fish.loc") / tf("Bw")
| |
| | |
| ###Liha
| |
| | |
| Meat.ing <- C.meat * 1000 * tf("Ir.meat") * tf("F.meat.loc") / tf("Bw")
| |
| | |
| ###Maitotuotteet
| |
| | |
| Dairy.ing <- C.dairy * 1000 * tf("Ir.dairy") * tf("F.dairy.loc") / tf("Bw")
| |
| | |
| ###Pintavesi
| |
| | |
| Sw.ing <- C.sw * 1000 * tf("Ir.sw") * tf("Ef.sw") / (tf("Bw") * tf("At"))
| |
| | |
| ##Iho
| |
| | |
| Skin.sa <- (4 * tf("Bw") + 7) / (tf("Bw") + 90) * 10000 #Lasketaan ihon kokonaispinta-ala
| |
| | |
| ###Maaperä
| |
| | |
| Soil.derm <- C.soil * 1000 * tf("Soil.ad.skin") * 0.000001 * Skin.sa * tf("F.skin.soil") * Abs.skin.soil * tf("Ef.soil") / (tf("Bw") * tf("At"))
| |
| | |
| ###Pesuvesi
| |
| | |
| Bw.derm <- C.bw * 1000 * 0.001 * Kp * tf("Ef.bw") * tf("Ed.bw") * Skin.sa * tf("F.skin.bw") / (tf("Bw") * tf("At"))
| |
| | |
| ###Pintavesi
| |
| | |
| Sw.derm <- C.sw * 1000 * 0.001 * Kp * tf("Ef.sw") * tf("Ed.sw") * Skin.sa * tf("F.skin.sw") / (tf("Bw") * tf("At"))
| |
| | |
| | |
| #Laskennan jälkeen lisätään yhteiset sarakkeet col.common ja kootaan altistuminen kaikkien altistumisreittien kautta allekkain yhteen tauluun.
| |
| | |
| common <- merge(unique(data[col.common]), data.frame(temp=1))[-(length(col.common)+1)]
| |
| | |
| out <- data.frame(
| |
| common,
| |
| Altistumisreitti = rep(c("Hengitystiet", "Juomavesi", "Maaperä (ruuansulatuskanava)", "Paikalliset vihannekset", "Paikalliset juurekset", "Paikalliset marjat", "Paikallinen kala", "Paikallinen liha", "Paikalliset maitotuotteet", "Pintavesi (ruuansulatuskanava)", "Maaperä (iho)", "Pesuvesi (iho)", "Pintavesi (iho)", "Taustasaanti"), each = nrow(common)),
| |
| Result = c(Air.inh, Dw.ing, Soil.ing, Lfc.ing, Tfc.ing, Berries.ing, Fish.ing, Meat.ing, Dairy.ing, Sw.ing, Soil.derm, Bw.derm, Sw.derm, Background.intake.adult, Background.intake.child)
| |
| )
| |
| | |
| return(out)
| |
| }
| |
| | |
| #################Funktio ympäristön terveysperusteisen laadun tarkasteluun
| |
| ######Ympäristöpitoisuus tulee ilmoittaa samassa yksikössä kuin viitearvo
| |
| | |
| Health.based.environmental.quality <- function(Concentration, EQC){
| |
| | |
| #Ympäristöpitoisuuksien vertailu haitta-aineen terveysperusteisiin ohjearvopitoisuuksiin
| |
| | |
| HEQ.air.outdoor <- C.air.outdoor / HEQC.air.outdoor #Ulkoilma
| |
| HEQ.air.indoor <- C.air.indoor / HEQC.air.indoor #Sisäilma
| |
| HEQ.dw <- C.dw / HEQC.dw #Juomavesi
| |
| HEQ.soil <- C.soil / HEQC.soil #Maaperä
| |
| HEQ.lfc <- C.lfc / HEQC.lfc #Vihannekset
| |
| HEQ.tfc <- C.tfc / HEQC.tfc #Juurekset
| |
| HEQ.berries <- C.berries / HEQC.berries #Marjat
| |
| HEQ.sw <- C.sw / HEQC.sw #Pintavesi
| |
| | |
| out <- data.frame(
| |
| Väliaine = c("Ulkoilma", "Sisäilma", "Juomavesi", "Maaperä", "Vihannekset", "Juurekset", "Marjat", "Pintavesi"),
| |
| Result = c(HEQ.air.outdoor, HEQ.air.indoor, HEQ.dw, HEQ.soil, HEQ.lfc, HEQ.tfc, HEQ.berries, HEQ.sw)
| |
| )
| |
| | |
| return(out)
| |
| }
| |
| | |
| | |
| | |
| #################Funktio väestön ympäristöperäisestä haitta-ainealtistumisesta aiheutuvan terveysriskin karakterisointiin
| |
| ####Vaatii toimiakseen:
| |
| ####Tot.intake.adult = Aikuiselle määritetty keskimääräinen päivittäinen haitta-aineen kokonaissaanti (per painokilo per päivä)
| |
| ####Tot.intake.child = Lapselle määritetty keskimääräinen päivittäinen haitta-aineen kokonaissaanti (per painokilo per päivä)
| |
| ####Tot.intake.lifetime = Koko eliniälle määritetty keskimääräinen päivittäinen haitta-aineen kokonaissaanti (per painokilo per päivä)
| |
| ####C.inhaled.air.adult = Aikuiselle määritetty hengitysilman keskimääräinen haitta-ainepitoisuus
| |
| ####C.inhaled.air.child = Lapselle määritetty hengitysilman keskimääräinen haitta-ainepitoisuus
| |
| ####C.inhaled.air.lifetime = Koko eliniälle määritetty hengitysilman keskimääräinen haitta-ainepitoisuus
| |
| ####TDI = Haitta-aineen turvallisen päivittäisen saannin viitearvo
| |
| ####NOAEL.ing = Haitta-aineen päivitäisen saannin NOAEL/LOAEL-arvo
| |
| ####TCA = Haitta-aineen turvallisen päivittäisen hengitystiealtistumisen viitearvo
| |
| ####NOAEC.inh = Haitta-aineen päivitäisen hengitystiealtistumisen NOAEC/LOAEC-arvo
| |
| ####Cancer.unit.risk.intake = Haitta-aineen elinikäisen päivitäisen saannin yksikkösyöpäriski
| |
| ####Cancer.unit.risk.inhalation = Haitta-aineen elinikäisen päivitäisen hengitystiealtistumisen yksikkösyöpäriski
| |
| ####Population = Altistuvan väestön määrä
| |
| | |
| | |
| Health.risk.characterisation.of.chronic.exposure.to.toxic.substances <- function(Exposure, Toxicity){
| |
| | |
| ###Päivittäinen kokonaissaanti
| |
| | |
| HQ.intake.adult <- Tot.intake.adult / TDI
| |
| MOS.intake.adult <- NOAEL.ing / Tot.intake.adult
| |
| | |
| HQ.intake.child <- Tot.intake.child / TDI
| |
| MOS.intake.child <- NOAEL.ing / Tot.intake.child
| |
| | |
| HQ.intake.lifetime <- Tot.intake.lifetime / TDI
| |
| MOS.intake.lifetime <- NOAEL.ing / Tot.intake.lifetime
| |
| | |
| | |
| ###Päivittäinen hengitystiealtistuminen
| |
| | |
| HQ.inhalation.adult <- C.inhaled.air.adult / TCA
| |
| MOS.inhalation.adult <- NOAEC.inh / C.inhaled.air.adult
| |
| | |
| HQ.inhalation.child <- C.inhaled.air.child / TCA
| |
| MOS.inhalation.child <- NOAEC.inh / C.inhaled.air.child
| |
| | |
| HQ.inhalation.lifetime <- C.inhaled.air.lifetime / TCA
| |
| MOS.inhalation.lifetime <- NOAEC.inh / C.inhaled.air.lifetime
| |
| | |
| | |
| ###Elinikäinen syöpäriski
| |
| | |
| Cancer.risk.intake <- Tot.intake.lifetime * Cancer.unit.risk.intake
| |
| Cancer.cases.intake <- Cancer.risk.intake * Population
| |
| | |
| Cancer.risk.inhalation <- C.inhaled.air.lifetime * Cancer.unit.risk.inhalation
| |
| Cancer.cases.inhalation <- Cancer.risk.inhalation * Population
| |
| | |
| ###Kootaan kaikki riski-indikaattorit yhteen tauluun
| |
| | |
| Noncancer.risk <- data.frame(
| |
| Altistumisreitti = rep(c("Kokonaissaanti", "Hengitystiet"), each=6),
| |
| Terveysvaikutus = c("Muu kuin genotoksinen karsinogeneesi"),
| |
| Riski.indikaattori = rep(rep(c("Vaaraosamäärä (HQ)", "Turvamarginaali (MOS)"), each=3), times=2),
| |
| Altistumistaso = c("Aikuinen", "Lapsi", "Elinikäinen"),
| |
| Result = c(HQ.intake.adult, HQ.intake.child, HQ.intake.lifetime, MOS.intake.adult, MOS.intake.child, MOS.intake.lifetime, HQ.inhalation.adult, HQ.inhalation.child, HQ.inhalation.lifetime, MOS.inhalation.adult, MOS.inhalation.child, MOS.inhalation.lifetime)
| |
| )
| |
| | |
| Cancer.risk <- data.frame(
| |
| Altistumisreitti = rep(c("Kokonaissaanti", "Hengitystiet"), each=2),
| |
| Terveysvaikutus = c("Genotoksinen karsinogeneesi"),
| |
| Riski.indikaattori =c("Yksilön syöpäriski (per 100 000)", "Odotetut syöpätapaukset väestössä"),
| |
| Altistumistaso = c("Elinikäinen"),
| |
| Result = c(Cancer.risk.intake*100000, Cancer.cases.intake, Cancer.risk.inhalation*100000, Cancer.cases.inhalation)
| |
| )
| |
| | |
| out <- merge(Noncancer.risk, Cancer.risk, all=TRUE)
| |
| return(out)
| |
| }
| |
| | |
| objects.store(tf, Chronic.environmental.exposure.to.toxic.substances, Health.based.environmental.quality, Health.risk.characterisation.of.chronic.exposure.to.toxic.substances)
| |
| | |
| cat("Funktiot alustettu.\n")
| |
| | |
| </rcode>
| |
| | |
| ==Katso myös==
| |
| {{Minera}}
| |
| | |
| ==Viitteet==
| |
| | |
| <references/>
| |
| | |
| ==Aiheeseen liittyviä tiedostoja==
| |
| | |
| {{mfiles}}
| |