Ero sivun ”Väestön kohdekohtainen ympäristöperäisen haitta-ainealtistumisen ja terveysriskin arviointi” versioiden välillä

Opasnet Suomista
Siirry navigaatioon Siirry hakuun
 
(94 välissä olevaa versiota 6 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
{{metodi}}
#REDIRECT[[Väestön kohdekohtainen ympäristöperäisen haitta-ainealtistumisen arviointi]]
 
==Kysymys==
 
Kuinka arvioidaan kohdekohtaisesti väestön ympäristöperäinen altistuminen haitta-aineelle sekä altistumisesta aiheutuva terveysriski?
 
==Vastaus==
 
===Ennakolta määritellyt laskentaparametrit===
 
<t2b index="Parametri,Lyhenne,Yksikkö,Henkilö" obs="Arvo" unit="useita">
Altistumisperiodin pituus|At|vrk|Aikuinen|365
Altistumisperiodin pituus|At|vrk|Lapsi|365
Kehon paino|Bw|kg|Aikuinen|70
Kehon paino|Bw|kg|Lapsi|15
Hengitystiheys|Ir.air|m3/h|Aikuinen|0.83
Hengitystiheys|Ir.air|m3/h|Lapsi|0.32
Oleskeluaika sisätiloissa (keskiarvo altistumsperiodille)|Ef.air.indoor|h/vrk|Aikuinen|22.86
Oleskeluaika sisätiloissa (keskiarvo altistumsperiodille)|Ef.air.indoor|h/vrk|Lapsi|21.14
Juomaveden kulutus|Ir.dw|l/vrk|Aikuinen|0.7
Juomaveden kulutus|Ir.dw|l/vrk|Lapsi|0.2
Altistumistiheys, juomavesi|Ef.dw|vrk/vuosi|Aikuinen|365
Altistumistiheys, juomavesi|Ef.dw|vrk/vuosi|Lapsi|365
Niellyn maa-aineksen määrä|Ir.soil|mg/vrk/ton|Aikuinen|50
Niellyn maa-aineksen määrä|Ir.soil|mg/vrk|Lapsi|150
Maa-aineksen kiinnittyminen iholle|Soil.ad.skin|mg/cm2/vrk|Aikuinen|0.25
Maa-aineksen kiinnittyminen iholle|Soil.ad.skin|mg/cm2/vrk|Lapsi|0.25
Maa-ainekselle altistuvan ihon osuus|F.skin.soil||Aikuinen|0.05
Maa-ainekselle altistuvan ihon osuus|F.skin.soil||Lapsi|0.2
Altistumistiheys, maa-aines|Ef.soil|vrk/vuosi|Aikuinen|255
Altistumistiheys, maa-aines|Ef.soil|vrk/vuosi|Lapsi|255
Vihannesten kokonaiskulutus (keskiarvo altistumsperiodille)|Ir.lfc|kg/vrk|Aikuinen|0.110
Vihannesten kokonaiskulutus (keskiarvo altistumsperiodille)|Ir.lfc|kg/vrk|Lapsi|0.055
Juuresten kokonaiskulutus (keskiarvo altistumsperiodille)|Ir.tfc|kg/vrk|Aikuinen|0.200
Juuresten kokonaiskulutus (keskiarvo altistumsperiodille)|Ir.tfc|kg/vrk|Lapsi|0.100
Marjojen kokonaiskulutus (keskiarvo altistumsperiodille)|Ir.berries|kg/vrk|Aikuinen|0.044
Marjojen kokonaiskulutus (keskiarvo altistumsperiodille)|Ir.berries|kg/vrk|Lapsi|0.035
Paikallisten vihannesten osuus kokonaiskulutuksesta (keskiarvo altistumsperiodille)|F.lfc.loc||Aikuinen|0.1
Paikallisten vihannesten osuus kokonaiskulutuksesta (keskiarvo altistumsperiodille)|F.lfc.loc||Lapsi|0.1
Paikallisten juuresten osuus kokonaiskulutuksesta (keskiarvo altistumsperiodille)|F.tfc.loc||Aikuinen|0.1
Paikallisten juuresten osuus kokonaiskulutuksesta (keskiarvo altistumsperiodille)|F.tfc.loc||Lapsi|0.1
Paikallisten marjojen osuus kokonaiskulutuksesta (keskiarvo altistumsperiodille)|F.berries.loc||Aikuinen|0.5
Paikallisten marjojen osuus kokonaiskulutuksesta (keskiarvo altistumsperiodille)|F.berries.loc||Lapsi|0.5
Peseytymiseen kuluva aika|Ed.bw|h/vrk|Aikuinen|0.25
Peseytymiseen kuluva aika|Ed.bw|h/vrk|Lapsi|0.25
Altistumistiheys, pesuvesi|Ef.bw|vrk/vuosi|Aikuinen|365
Altistumistiheys, pesuvesi|Ef.bw|vrk/vuosi|Lapsi|365
Pesuvedelle altistuvan ihon osuus|F.skin.bw||Aikuinen|1
Pesuvedelle altistuvan ihon osuus|F.skin.bw||Lapsi|1
Uidessa niellyn pintaveden määrä|Ir.sw|l/uintikerta|Aikuinen|0.05
Uidessa niellyn pintaveden määrä|Ir.sw|l/uintikerta|Lapsi|0.05
Uintikerran kesto|Ed.sw|h/uintikerta|Aikuinen|0.25
Uintikerran kesto|Ed.sw|h/uintikerta|Lapsi|0.25
Altistumistiheys, pintavesi|Ef.sw|Uintikerta/vuosi|Aikuinen|30
Altistumistiheys, pintavesi|Ef.sw|Uintikerta/vuosi|Lapsi|30
Pintavedelle altistuvan ihon osuus|F.skin.sw||Aikuinen|1
Pintavedelle altistuvan ihon osuus|F.skin.sw||Lapsi|1
</t2b>
 
===Mallifunktio===
 
<rcode name="answer" include="page:OpasnetBaseUtils|name:generic">
 
library(OpasnetBaseUtils)
library(xtable)
 
opasnet.csv
opasnet.data
 
page <- "Op_fi2814"
 
C.air.outdoor <- 0.118/1000
C.air.indoor <- 0.118/1000
C.soil <- 2645
C.dw <- 0.06
C.lfc <- 2.5
C.tfc <- 0.9
C.berries <- 1.9
C.bw <- 0.06
C.sw <- 0.003
 
Abs.skin.soil <- 0.003
Kp <- 0.001
 
#Riskinarviointi <- function(Whatever){
data <- op_baseGetData("opasnet_base", page)
data <- tidy(data)
 
#############Riskinarvioinnin laskenta
 
#Aikuinen, haitta-aineen päivittäinen saanti
 
data.a <- data[data$Henkilö == "Aikuinen",]
Bw.a <- data.a[data.a$Lyhenne == "Bw",][,5]
At.a <- data.a[data.a$Lyhenne == "At",][,5]
 
##Hengitystiet
 
###Ilma
 
Ir.air.a <- data.a[data.a$Lyhenne == "Ir.air",][,5]
Ef.air.indoor.a <- data.a[data.a$Lyhenne == "Ef.air.indoor",][,5]
 
Air.inh.a <- ((C.air.outdoor * (24-Ef.air.indoor.a/24)) + (C.air.indoor * (Ef.air.indoor.a/24)) * Ir.air.a) / (Bw.a * At.a)
 
##Ruuansulatuskanava
 
###Juomavesi
 
Ir.dw.a <- data.a[data.a$Lyhenne == "Ir.dw",][,5]
Ef.dw.a <- data.a[data.a$Lyhenne == "Ef.dw",][,5]
 
Dw.ing.a <- (C.dw * Ir.dw.a * Ef.dw.a) / (Bw.a * At.a)
 
###Maaperä
 
Ir.soil.a <- data.a[data.a$Lyhenne == "Ir.soil",][,5]
Ef.soil.a <- data.a[data.a$Lyhenne == "Ef.soil",][,5]
 
Soil.ing.a <- (C.soil * (Ir.soil.a / 1000000) * Ef.soil.a) / (Bw.a * At.a)
 
###Vihannekset
 
Ir.lfc.a <- data.a[data.a$Lyhenne == "Ir.lfc",][,5]
F.lfc.loc.a <- data.a[data.a$Lyhenne == "F.lfc.loc",][,5]
 
Lfc.ing.a <- (C.lfc * Ir.lfc.a * F.lfc.loc.a) / Bw.a
 
###Juurekset
 
Ir.tfc.a <- data.a[data.a$Lyhenne == "Ir.tfc",][,5]
F.tfc.loc.a <- data.a[data.a$Lyhenne == "F.tfc.loc",][,5]
 
Tfc.ing.a <- (C.tfc * Ir.tfc.a * F.tfc.loc.a) / Bw.a
 
###Marjat
 
Ir.berries.a <- data.a[data.a$Lyhenne == "Ir.berries",][,5]
F.berries.loc.a <- data.a[data.a$Lyhenne == "F.berries.loc",][,5]
 
Berries.ing.a <- (C.berries * Ir.berries.a * F.berries.loc.a) / Bw.a
 
###Pintavesi
 
Ir.sw.a <- data.a[data.a$Lyhenne == "Ir.sw",][,5]
Ef.sw.a <- data.a[data.a$Lyhenne == "Ef.sw",][,5]
 
Sw.ing.a <- (C.sw * Ir.sw.a * Ef.sw.a) / (Bw.a * At.a)
 
##Iho
 
Skin.sa.a <- (4 * Bw.a + 7) / (Bw.a + 90) * 10000 #Lasketaan ihon kokonaispinta-ala
 
###Maaperä
 
Soil.ad.skin.a <- data.a[data.a$Lyhenne == "Soil.ad.skin",][,5]
F.skin.soil.a <- data.a[data.a$Lyhenne == "F.skin.soil",][,5]
 
Soil.derm.a <- (C.soil * Soil.ad.skin.a * 0.000001 * Skin.sa.a * F.skin.soil.a *Abs.skin.soil * Ef.soil.a) / (Bw.a * At.a)
 
###Pesuvesi
 
Ef.bw.a <- data.a[data.a$Lyhenne == "Ef.bw",][,5]
Ed.bw.a <- data.a[data.a$Lyhenne == "Ef.bw",][,5]
F.skin.bw.a <- data.a[data.a$Lyhenne == "F.skin.bw",][,5]
 
Bw.derm.a <- (C.bw * 0.001 * Kp * Ef.bw.a * Ed.bw.a * F.skin.bw.a) / (Bw.a * At.a)
 
###Pintavesi
 
Ef.sw.a <- data.a[data.a$Lyhenne == "Ef.sw",][,5]
Ed.sw.a <- data.a[data.a$Lyhenne == "Ef.sw",][,5]
F.skin.sw.a <- data.a[data.a$Lyhenne == "F.skin.sw",][,5]
 
Sw.derm.a <- (C.sw * 0.001 * Kp * Ef.sw.a * Ed.sw.a * F.skin.sw.a) / (Bw.a * At.a)
 
Tot.intake.a <- Air.inh.a + Dw.ing.a + Soil.ing.a + Lfc.ing.a + Tfc.ing.a + Berries.ing.a + Sw.ing.a + Soil.derm.a + Bw.derm.a + Sw.derm.a
 
 
#Lapsi, haitta-aineen päivittäinen saanti
 
data.c <- data[data$Henkilö == "Lapsi",]
Bw.c <- data.c[data.c$Lyhenne == "Bw",][,5]
At.c <- data.c[data.c$Lyhenne == "At",][,5]
 
##Hengitystiet
 
###Ilma
 
Ir.air.c <- data.c[data.c$Lyhenne == "Ir.air",][,5]
Ef.air.indoor.c <- data.c[data.c$Lyhenne == "Ef.air.indoor",][,5]
 
Air.inh.c <- ((C.air.outdoor * (24-Ef.air.indoor.c/24)) + (C.air.indoor * (Ef.air.indoor.c/24)) * Ir.air.c) / (Bw.c * At.c)
 
##Ruuansulatuskanava
 
###Juomavesi
 
Ir.dw.c <- data.c[data.c$Lyhenne == "Ir.dw",][,5]
Ef.dw.c <- data.c[data.c$Lyhenne == "Ef.dw",][,5]
 
Dw.ing.c <- (C.dw * Ir.dw.c * Ef.dw.c) / (Bw.c * At.c)
 
###Maaperä
 
Ir.soil.c <- data.c[data.a$Lyhenne == "Ir.soil",][,5]
Ef.soil.c <- data.c[data.c$Lyhenne == "Ef.soil",][,5]
 
Soil.ing.c <- (C.soil * (Ir.soil.c / 1000000) * Ef.soil.c) / (Bw.c * At.c)
 
###Vihannekset
 
Ir.lfc.c <- data.c[data.c$Lyhenne == "Ir.lfc",][,5]
F.lfc.loc.c <- data.c[data.c$Lyhenne == "F.lfc.loc",][,5]
 
Lfc.ing.c <- (C.lfc * Ir.lfc.c * F.lfc.loc.c) / Bw.c
 
###Juurekset
 
Ir.tfc.c <- data.c[data.c$Lyhenne == "Ir.tfc",][,5]
F.tfc.loc.c <- data.c[data.c$Lyhenne == "F.tfc.loc",][,5]
 
Tfc.ing.c <- (C.tfc * Ir.tfc.c * F.tfc.loc.c) / Bw.c
 
###Marjat
 
Ir.berries.c <- data.c[data.c$Lyhenne == "Ir.berries",][,5]
F.berries.loc.c <- data.c[data.c$Lyhenne == "F.berries.loc",][,5]
 
Berries.ing.c <- (C.berries * Ir.berries.c * F.berries.loc.c) / Bw.c
 
###Pintavesi
 
Ir.sw.c <- data.c[data.c$Lyhenne == "Ir.sw",][,5]
Ef.sw.c <- data.c[data.c$Lyhenne == "Ef.sw",][,5]
 
Sw.ing.c <- (C.sw * Ir.sw.c * Ef.sw.c) / (Bw.c * At.c)
 
##Iho
 
Skin.sa.c <- (4 * Bw.c + 7) / (Bw.c + 90) * 10000 #Lasketaan ihon kokonaispinta-ala
 
###Maaperä
 
Soil.ad.skin.c <- data.c[data.c$Lyhenne == "Soil.ad.skin",][,5]
F.skin.soil.c <- data.c[data.c$Lyhenne == "F.skin.soil",][,5]
 
Soil.derm.c <- (C.soil * Soil.ad.skin.c * 0.000001 * Skin.sa.c * F.skin.soil.c *Abs.skin.soil * Ef.soil.c) / (Bw.c * At.c)
 
###Pesuvesi
 
Ef.bw.c <- data.c[data.c$Lyhenne == "Ef.bw",][,5]
Ed.bw.c <- data.c[data.c$Lyhenne == "Ef.bw",][,5]
F.skin.bw.c <- data.c[data.c$Lyhenne == "F.skin.bw",][,5]
 
Bw.derm.c <- (C.bw * 0.001 * Kp * Ef.bw.c * Ed.bw.c * F.skin.bw.c) / (Bw.c * At.c)
 
###Pintavesi
 
Ef.sw.c <- data.c[data.c$Lyhenne == "Ef.sw",][,5]
Ed.sw.c <- data.c[data.c$Lyhenne == "Ef.sw",][,5]
F.skin.sw.c <- data.c[data.c$Lyhenne == "F.skin.sw",][,5]
 
Sw.derm.c <- (C.sw * 0.001 * Kp * Ef.sw.c * Ed.sw.c * F.skin.sw.c) / (Bw.c * At.c)
 
Tot.intake.c <- Air.inh.c + Dw.ing.c + Soil.ing.c + Lfc.ing.c + Tfc.ing.c + Berries.ing.c + Sw.ing.c + Soil.derm.c + Bw.derm.c + Sw.derm.c
 
 
###########Ilmoitetaan tulokset
 
 
cat("Laskennassa käytetty haitta-aineen pitoisuus väliaineessa (mg/kg) \n")
 
Pitoisuus <- data.frame(Ulkoilma=C.air.outdoor, Sisäilma=C.air.indoor, Juomavesi=C.dw, Maaperä=C.soil, Vihannekset=C.lfc, Juurekset=C.tfc, Marjat=C.berries, Pesuvesi=C.bw, Pintavesi=C.sw)
 
print(xtable(Pitoisuus), type = 'html')
 
 
cat("Keskimääräinen päivittäinen altistuminen haitta-aineelle (µg/kg), aikuinen \n")
 
Kokonaissaanti.a <- data.frame(Ilma=Air.inh.a, Juomavesi=Dw.ing.a, Maaperä.rsk=Soil.ing.a, Vihannekset=Lfc.ing.a, Juurekset=Tfc.ing.a, Marjat=Berries.ing.a, Pintavesi.rsk=Sw.ing.a, Maaperä.iho=Soil.derm.a, Pesuvesi.iho=Bw.derm.a, Pintavesi.iho=Sw.derm.a, Kokonaissaanti=Tot.intake.a)*1000
 
print(xtable(Kokonaissaanti.a), type = 'html')
 
 
cat("Keskimääräinen päivittäinen altistuminen haitta-aineelle (µg/kg), lapsi \n")
 
Kokonaissaanti.c <- data.frame(Ilma=Air.inh.c, Juomavesi=Dw.ing.c, Maaperä.rsk=Soil.ing.c, Vihannekset=Lfc.ing.c, Juurekset=Tfc.ing.c, Marjat=Berries.ing.c, Pintavesi.rsk=Sw.ing.c, Maaperä.iho=Soil.derm.c, Pesuvesi.iho=Bw.derm.c, Pintavesi.iho=Sw.derm.c, Kokonaissaanti=Tot.intake.c)*1000
 
 
#Kokonaissaanti.c <- data.frame(Altistusreitti = c("Ilma", "Juomavesi", ...), Henkilö = , Arvo =  c(Air.inh.c, Dw.ing.c, Soil.ing.c...)
#, Vihannekset=Lfc.ing.c, Juurekset=Tfc.ing.c, Marjat=Berries.ing.c, Pintavesi.rsk=Sw.ing.c, Maaperä.iho=Soil.derm.c, Pesuvesi.iho=Bw.derm.c, Pintavesi.iho=Sw.derm.c, Kokonaissaanti=Tot.intake.c)*1000
 
print(xtable(Kokonaissaanti.c), type = 'html')
 
 
cat("Osuus kokonaissaannista, aikuinen \n")
 
Saanti.osuus.a <- Kokonaissaanti.a / Kokonaissaanti.a$Kokonaissaanti
print(xtable(Saanti.osuus.a), type = 'html')
 
cat("Osuus kokonaissaannista, lapsi \n")
 
Saanti.osuus.c <- Kokonaissaanti.c / Kokonaissaanti.c$Kokonaissaanti
print(xtable(Saanti.osuus.c), type = 'html')
 
#return(Kokonaissaanti.c)
#}
 
cols <- "Henkilö"
condition <- "Lyhenne"
resultcol <- "Result"
 
########################## 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: data      = a data frame that contains the data
#            condition  = a vector with conditions for each condition column. The length must be the same as ncol for the cols.
#            cols      = vector with names of columns that contain the indices that must match in the data
#            resultcol  = the column that contains the actual values.
# tf <- function(data = data, condition = condition, cols = cols, resultcol = resultcol) {
 
slice <- unique(data[, cols])
print(slice)
out <- merge(slice, data[, c(cols, resultcol)], x.all = TRUE)
print(out)
 
 
 
a<- Riskinarviointi(Whatever)
 
print(a)
 
print(sum(a))
 
RA(sum(a))
</rcode>
 
===Arvioinnin tulos===
 
<rcode include="page:OpasnetBaseUtils|name:generic|page:Väestön_kohdekohtainen_ympäristöperäisen_haitta-ainealtistumisen_ja_terveysriskin_arviointi|name:answer"
variables="
name:C.air.outdoor|default:0.5|description:Haitta-aineen pitoisuus ulkoilmassa (µg/m3)|
name:C.air.indoor|default:0.5|description:Haitta-aineen pitoisuus sisäilmassa (µg/m3)|
name:C.dw|default:100|description:Haitta-aineen pitoisuus juomavedessä (mg/l)|
name:C.soil|default:1000|description:Haitta-aineen pitoisuus maaperässä (mg/kg)|
name:C.lfc|default:5|description:Haitta-aineen pitoisuus vihanneksissa (mg/kg tuorepainoa)|
name:C.tfc|default:5|description:Haitta-aineen pitoisuus juureksissa (mg/kg tuorepainoa)|
name:C.berries|default:5|description:Haitta-aineen pitoisuus marjoissa (mg/kg tuorepainoa)|
name:C.bw|default:0.5|description:Haitta-aineen pitoisuus pesuvedessä (mg/l)|
name:C.sw|default:0.5|description:Haitta-aineen pitoisuus pintavedessä (mg/l)|
name:TDI|default:100|description:Turvallisen päivittäisen saannin viitearvo (µg/kg/d)
">
 
library(OpasnetBaseUtils)
library(xtable)
 
#juomavesi(page, C.dw, Ir.dw, Ef.dw, Bw, At)
 
 
#Intake.dw <- juomavesi(page, C.dw, Ir.dw, Ef.dw, Bw, At)
#print(xtable(Intake.dw), type = 'html')
 
C.dw
 
</rcode>

Nykyinen versio 21. maaliskuuta 2013 kello 09.32