Ero sivun ”Radonin terveysvaikutukset” versioiden välillä
Siirry navigaatioon
Siirry hakuun
(→Kaava) |
(→Kaava) |
||
Rivi 28: | Rivi 28: | ||
<rcode graphics=1 embed=1 variables=" | <rcode graphics=1 embed=1 variables=" | ||
name:N|default:100| | name:N|default:100| | ||
name: | name:erottelu1|description:Minkä tekijän mukaan haluat erotella terveysvasteen?|type:selection| | ||
options: | |||
name: | 'Tupakka';Tupakka; | ||
'Talotyyppi';Talotyyppi; | |||
'Sukupuoli';Sukupuoli; | |||
'Maakunta';Maakunta| | |||
default:'Maakunta'| | |||
name:erottelu2|description:Minkä tekijän mukaan haluat erotella terveysvasteen?|type:selection| | |||
options: | |||
'Tupakka';Tupakka; | |||
'Talotyyppi';Talotyyppi; | |||
'Sukupuoli';Sukupuoli; | |||
'Maakunta';Maakunta| | |||
default:'Tupakka'| | |||
name:verbose|description:Haluatko nähdä välivaiheet?|type:selection|options:FALSE;En;TRUE;Kyllä|default:FALSE | |||
"> | "> | ||
library(OpasnetUtils) | library(OpasnetUtils) | ||
library(ggplot2) | library(ggplot2) | ||
objects.latest('Op_en6007', code_name = 'answer') # [[OpasnetUtils/Drafts]] fetches fillna and collapsemarg function. | |||
###### OSA 1: VÄESTÖ | |||
### TALOT | |||
## | |||
objects.latest('Op_fi2761', code_name = 'alusta') # [[Talotyypit Suomessa]], ovariable talot. | objects.latest('Op_fi2761', code_name = 'alusta') # [[Talotyypit Suomessa]], ovariable talot. | ||
# | # Yksinkertaista talotyyppiluokittelua ja summaa taloista pois perhekoko. | ||
#talot@output <- talot@output[talot@output$Kunta == "Akaa" , ] ########### POISTA TÄMÄ | #talot@output <- talot@output[talot@output$Kunta == "Akaa" , ] ########### POISTA TÄMÄ | ||
Rivi 73: | Rivi 64: | ||
"Pientalo" | "Pientalo" | ||
) | ) | ||
talot <- collapsemarg(talot, c("Kunta", "Talotyyppi"), sum) | talot <- collapsemarg(talot, c("Kunta", "Talotyyppi"), sum) | ||
### KUNNAT | |||
objects.latest('Op_fi3907', code_name = 'alusta') # [[Suomen kunnat]], ovariable kunnat. | |||
kunnat <- EvalOutput(kunnat, N = N) | kunnat <- EvalOutput(kunnat, N = N) | ||
### TUPAKOINTI JA ALUEVASTAAVUUS | |||
tupakointi <- EvalOutput(Ovariable("tupakointi", # Tupakoivien osuus väestöstä. Result-sarake summautuu ykköseen. | tupakointi <- EvalOutput(Ovariable("tupakointi", # Tupakoivien osuus väestöstä. Result-sarake summautuu ykköseen. | ||
Rivi 96: | Rivi 92: | ||
} | } | ||
)) | )) | ||
### VÄESTÖN LASKENTA | |||
väestö <- kunnat * talot * aluevastaavuus * tupakointi | väestö <- kunnat * talot * aluevastaavuus * tupakointi | ||
cat("Väestö\n") | if(verbose) { | ||
oprint(head(väestö@output)) | cat("Väestö\n") | ||
cat("Kunnat\n") | oprint(head(väestö@output)) | ||
oprint(head(kunnat@output)) | cat("Kunnat\n") | ||
cat("Talot\n") | oprint(head(kunnat@output)) | ||
oprint(head(talot@output)) | cat("Talot\n") | ||
cat("Aluevastaavuus\n") | oprint(head(talot@output)) | ||
oprint(head(aluevastaavuus@output)) | cat("Aluevastaavuus\n") | ||
cat("Tupakointi\n") | oprint(head(aluevastaavuus@output)) | ||
oprint(head(tupakointi@output)) | cat("Tupakointi\n") | ||
oprint(head(tupakointi@output)) | |||
} | |||
###### OSA 2: RISKISUHTEET | |||
#### | ### ALTISTUS | ||
# RADON | |||
objects.latest('Op_fi2759', code_name = 'alusta') # [[Radon sisäilmassa]], ovariable radonpit, data.frame radon. | objects.latest('Op_fi2759', code_name = 'alusta') # [[Radon sisäilmassa]], ovariable radonpit, data.frame radon. | ||
Rivi 117: | Rivi 120: | ||
radonpit <- EvalOutput(radonpit, N = N) | radonpit <- EvalOutput(radonpit, N = N) | ||
radonpit@output <- radonpit@output[radonpit@output$Maakunta == "Pirkanmaa" , ] ############# POISTA TÄMÄ | #radonpit@output <- radonpit@output[radonpit@output$Maakunta == "Pirkanmaa" , ] ############# POISTA TÄMÄ | ||
# TUPAKKA. Väestö on jo jaettu tupakoiviin ja tupakoimattomiin. | |||
tupakkaaltistus <- EvalOutput(Ovariable("tupakkaaltistus", | tupakkaaltistus <- EvalOutput(Ovariable("tupakkaaltistus", | ||
Rivi 123: | Rivi 128: | ||
), N = N) | ), N = N) | ||
# Altistuksessa lisätään uusi sarake Altiste kuvaamaan sitä, mikä altisteen altistumisesta tai riskistä on kyse ko. rivillä. | |||
altistus <- orbind( | altistus <- orbind( | ||
Rivi 132: | Rivi 138: | ||
altistus@output <- fillna(altistus@output, c("Tupakka", "Maakunta", "Talotyyppi")) | altistus@output <- fillna(altistus@output, c("Tupakka", "Maakunta", "Talotyyppi")) | ||
cat("Altistus\n") | if(verbose) { | ||
oprint(head(altistus@output)) | cat("Altistus\n") | ||
oprint(head(altistus@output)) | |||
} | |||
### SUHTEELLINEN RISKI | |||
# | # Annosvasteiden perustiedot. | ||
ERF <- EvalOutput(Ovariable("ERF", data = data.frame(Altiste = c("Radon", "Tupakka"), Result = c(1.006, 20))), N = N) | |||
tausta.altistus <- 0 # Radonille voisi olla 5. | |||
RR <- exp(log(ERF) * (altistus - tausta.altistus)) # Relative risk given the exposures | |||
cat(" | if(verbose) { | ||
oprint(head( | cat("ERF\n") | ||
oprint(head(ERF@output)) | |||
cat("RR\n") | |||
oprint(head(RR@output)) | |||
} | |||
### | ### SYÖPÄKUOLLEISUUS | ||
objects.latest('Op_fi3912', code_name = 'alusta') # [[Syöpäkuolleisuus Suomessa]], ovariable syopakuolleisuus. | |||
syopakuolleisuus@data <- syopakuolleisuus@data[syopakuolleisuus@data$Primaaripaikka == "Keuhkot, henkitorvi" , ] # ICD.10.koodi == "C33-34" | |||
syopakuolleisuus <- EvalOutput(syopakuolleisuus, N = N) | |||
if(verbose) { | |||
cat("Syöpäkuolleisuus\n") | |||
cat(" | oprint(head(syopakuolleisuus@output)) | ||
oprint(head( | } | ||
### | ### TAUSTARISKI | ||
# Calculate subgroup-specific background risks by first calculating a temporary burden estimate. | # Calculate subgroup-specific background risks by first calculating a temporary burden estimate. | ||
Rivi 178: | Rivi 190: | ||
tausta <- syopakuolleisuus / (temp1 / temp2) # syopakuolleisuus without any exposure | tausta <- syopakuolleisuus / (temp1 / temp2) # syopakuolleisuus without any exposure | ||
cat("Taustariski\n") | if(verbose) { | ||
oprint(head(tausta@output)) | cat("Taustariski\n") | ||
oprint(head(tausta@output)) | |||
} | |||
########### | ###### OSA 3: TAUTIKUORMA | ||
### ARVIO PERUSTUEN POPULATION ATTRIBUTABLE FRACTIONIIN | |||
# Tässä oletetaan, että riskisuhteiden avulla voidaan suoraan laskea eri teijöiden osuus tautikuormasta. | |||
# Luku on yliarvio, koska jokainen altiste lasketaan ikään kuin muita altisteita ei olisi tautia aiheuttamassa. | |||
# Etuna on, että jokaiselle altisteelle saadaan arvio erikseen. | |||
väestöosuus <- 1 | väestöosuus <- 1 | ||
Rivi 187: | Rivi 206: | ||
PAF <- väestöosuus * (RR - 1) / (väestöosuus * (RR - 1) + 1) | PAF <- väestöosuus * (RR - 1) / (väestöosuus * (RR - 1) + 1) | ||
vaikutuspaf <- väestö * syopakuolleisuus * PAF | |||
# Onko tarpeen integroida yli muiden indeksien? | |||
#vaikutuspaf <- collapsemarg(vaikutuspaf, c("Iter", "Kunta, ", "Tupakka", "Talotyyppi", "Altiste"), sum) | |||
vaikutus | ### ARVIO PERUSTUEN TAUSTARISKIIN | ||
# Tässä oletetaan, että on olemassa populaatiokohtainen taustariski, jota ei altistumisen takia havaita. | |||
# Se voidaan kuitenkin laskea ottamalla havaittu tautikuorma ja poistamalla altistumisen vaikutus. | |||
# Arvio lienee tarkempi kuin PAF-menetelmällä, mutta altistekohtainen tieto menetetään. | |||
RRkok <- collapsemarg(RR, c("Iter", "Tupakka", "Maakunta", "Talotyyppi"), prod) | RRkok <- collapsemarg(RR, c("Iter", "Tupakka", "Maakunta", "Talotyyppi"), prod) | ||
Rivi 199: | Rivi 220: | ||
vaikutusrr <- väestö * tausta * RRkok | vaikutusrr <- väestö * tausta * RRkok | ||
#vaikutusrr <- collapsemarg(vaikutusrr, c("Iter", "Kunta", "Tupakka", "Talotyyppi"), sum) | |||
cat("PAF\n") | if(verbose) { | ||
oprint(head(PAF@output)) | cat("PAF\n") | ||
cat("VaikutusPAF\n") | oprint(head(PAF@output)) | ||
oprint(head(vaikutus@output)) | cat("VaikutusPAF\n") | ||
cat("Kokonaisvaikutus PAF-menetelmällä\n") | oprint(head(vaikutus@output)) | ||
oprint(head(kokonaisvaikutuspaf@output)) | cat("Kokonaisvaikutus PAF-menetelmällä\n") | ||
cat("RRkok\n") | oprint(head(kokonaisvaikutuspaf@output)) | ||
oprint(head(RRkok@output)) | cat("RRkok\n") | ||
cat("VaikutusRR\n") | oprint(head(RRkok@output)) | ||
oprint(head(vaikutusrr@output)) | cat("VaikutusRR\n") | ||
cat("Kokonaisvaikutus RR-menetelmällä\n") | oprint(head(vaikutusrr@output)) | ||
oprint(head(kokonaisvaikutusrr@output)) | cat("Kokonaisvaikutus RR-menetelmällä\n") | ||
oprint(head(kokonaisvaikutusrr@output)) | |||
} | |||
geombar <- function(object, title = "", y = "", x = "") { | geombar <- function(object, title = "", y = "", x = "") { | ||
Rivi 225: | Rivi 248: | ||
} | } | ||
geombar( | ograph(RR, x = erottelu1, fill = erottelu2, title = 'Suhteellinen yksilöriski altistumattomaan verrattuna') | ||
geombar(vaikutuspaf, title = "Vaikutus PAF-menetelmällä") | |||
geombar(vaikutusrr, title = "Vaikutus RR-menetelmällä") | geombar(vaikutusrr, title = "Vaikutus RR-menetelmällä") | ||
Rivi 232: | Rivi 257: | ||
ggplot(altistus@output[altistus@output$Altiste == "Radon" , ], aes(x = altistusResult, fill = Talotyyppi)) + geom_density(alpha = 0.2) | ggplot(altistus@output[altistus@output$Altiste == "Radon" , ], aes(x = altistusResult, fill = Talotyyppi)) + geom_density(alpha = 0.2) | ||
## POISTETTIIN KOKO KUNTAKARTTATOIMINNALLISUUS, KOSKA JOTKIN OSAT OVAT VANHENTUNEET. ON HELPOMPI RAKENTAA ALUSTA UUDESTAAN. | |||
</rcode> | </rcode> | ||
Rivi 330: | Rivi 266: | ||
* [[Syöpäkuolleisuus Suomessa]] | * [[Syöpäkuolleisuus Suomessa]] | ||
* [[:en:Attributable risk#Combined_PAR]] | * [[:en:Attributable risk#Combined_PAR]] | ||
* [[:en:OpasnetUtils/Drafts]] | |||
<t2b name="Maakunnat ja sairaanhoitopiirit" index="Maakunta" obs="Sairaanhoitopiiri" unit="-"> | <t2b name="Maakunnat ja sairaanhoitopiirit" index="Maakunta" obs="Sairaanhoitopiiri" unit="-"> |
Versio 17. marraskuuta 2013 kello 11.07
Moderaattori:Jouni (katso kaikki)
Sivun edistymistä ei ole arvioitu. Arvostuksen määrää ei ole arvioitu (ks. peer review). |
Lisää dataa
|
Kysymys
Mitkä ovat radonin terveysvaikutukset Suomessa?
Vastaus
Perustelut
Vastaus on alustava, ja malli pitäisi tarkistaa ennen kuin vankkoja päätelmiä tehdään. Kehityskohteita:
- Maakuntien ja kuntien yhdistäminen pitäisi tehdä jotenkin älykkäästi skräpätystä datasta eikä tässä koodissa.
- Itä-Uudenmaan kunnat voisi korjata näin: out$Kunta[out$Kunta %in% c("Mäntsälä", "Pornainen", "Porvoo", "etc", "", "", "")] <- "Itä-Uusimaa"
- Radonpitoisuudet pitää sämplätä maakunnittain, ei kunnittain kuten nyt. Pienillä ännän arvoilla tulee isoja eroja kuntien välille, mutta se on pelkkää harhaa.
- Epävarmuudet voiti ottaa myös annosvasteisiin.
- Pitoisuusjakaumat voisi toteuttaa oikeasti jakaumina olettaen esim. lognormaalijakauman epävarmoilla parametreilla joka maakuntaan. Nyt kuvaajiin tulee harhaisia piikkejä. Jos olisi alkuperäisdata, niin voisi tehdä pikku Bayes-mallin.
- Kartan piirtäminen ja muutamat muut jutut voisi tehdä funktioiksi ja pistää jollekin järkevälle sivulle, josta ne inkludeerataan tähän.
- Miksi yksikköriski näyttää tosi isolta, mutta kun summataan yli koko väestön, talo*tupakointikohtaiset luvut näyttävät tosi pieniltä.
- Pitäisi katsoa, onko puuttuvia arvoja, jotka mergatessa slaissaavat dataa pois.
- Satunnaistaminen pitäisi tehdä sellaisissa vaiheissa, että se olisi nopeaa.
- Miten pitäisi käsitellä asuntojen radonpitoisuuksien vaihtelu vs. epävarmuus syöpäriskistä? Meneekö 2DMC liian raskaaksi ja onko siitä vastaavaa hyötyä? Voiko saman toteuttaa 1DMC:na siten, että haluttu epävarmuus käsitellään vaihteluna eri tavalla kuin muut?
Kaava
- Päivittäin tupakoivien osuus Suomessa: Tupakoivat [1]
- Tupakan annosvaste: UK: päivittäin tupakoivia 22 % Miehet, 20 % Naiset. Tämä aiheuttaa 88 % ja 84 % keuhkosyövistä vastaavasti. [2] Tämän perusteella voidaan laskea riskisuhde RR = AF / (EF(RR-1)+1), missä AF on attributable fraction eli altisteen aiheuttama osuus koko tautikuormasta ja EF on altistuneiden osuus koko väestöstä. Tämän perusteella päivittäisen tupakoinnin riskisuhteeksi keuhkosyövälle saadaan 20 - 30. (Laskennassa käytetään 20:tä.)
Obs | Maakunta | Sairaanhoitopiiri |
---|---|---|
1 | Ahvenanmaa | Åland |
2 | Etelä-Karjala | Etelä-Karjala |
3 | Etelä-Pohjanmaa | Etelä-Pohjanmaa |
4 | Etelä-Savo | Etelä-Savo |
5 | Uusimaa | Helsinki ja Uusimaa |
6 | Itä-Uusimaa | |
7 | Itä-Savo | |
8 | Kainuu | Kainuu |
9 | Kanta-Häme | Kanta-Häme |
10 | Keski-Pohjanmaa | Keski-Pohjanmaa |
11 | Keski-Suomi | Keski-Suomi |
12 | Koko maa | |
13 | Kymenlaakso | Kymenlaakso |
14 | Länsi-Pohja | |
15 | Lappi | Lappi |
16 | Päijät-Häme | Päijät-Häme |
17 | Pirkanmaa | Pirkanmaa |
18 | Pohjanmaa | |
19 | Pohjois-Karjala | Pohjois-Karjala |
20 | Pohjois-Pohjanmaa | Pohjois-Pohjanmaa |
21 | Pohjois-Savo | Pohjois-Savo |
22 | Satakunta | Satakunta |
23 | Vaasa | |
24 | Varsinais-Suomi | Varsinais-Suomi |
25 | Yhteensä |
Katso myös
- heande:Radon sisäilma altistus Suomi
- op_en:Radon
- Suomen kunnat
- Radon sisäilmassa
- Talotyypit Suomessa
Viitteet
Aiheeseen liittyviä tiedostoja
<mfanonymousfilelist></mfanonymousfilelist>