KTL Sarcoma study
This page is a study.
The page identifier is Op_en2721 |
|---|
| Moderator:Jouni (see all) |
|
|
| Upload data
|
- Authors: Jouni T. TUOMISTO, Juha PEKKANEN, Hannu KIVIRANTA, Erkki TUKIAINEN, Terttu VARTIAINEN and Jouko TUOMISTO
- Reference: Int. J. Cancer: 108, 893–900 (2004) Chemosphere (2005) 60: 78: 854-869
- Urn: NBN:fi-fe200901121020
- Ethics: National Public Health Institute Ethics Committee
- Journal: Int J Cancer}}
Question
Because it is obvious that there is a great need for improved exposure assessment in studying cancer risk of dioxins, we decided to undertake the major effort of conducting a large case-control study on soft-tissue sarcoma and measure dioxin concentrations individually in both patients and controls. Because this can be done accurately only from very large blood samples or from fat samples taken during an operation, we studied STS patients coming to surgery because of their tumor and selected appendicitis patients as controls. In the general population, the exposure to dioxins is almost totally from dietary sources — in Finland mostly from fish — and it varies widely among the population. Because of the extremely long half-life of dioxins, measured levels of dioxin at the time of operation can be used to estimate the lifetime cumu- lative exposure accurately. There is a priori no simultaneous exposure to chlorophenols or phenoxy acid herbicides, which behave completely differently in the environment, have relatively short half-lives in humans and are excreted in a few days. This enables us to estimate the association of STS with clean dioxin exposure without concomitant exposure to the main chemical, in contrast to occupational studies.[1]
Answer
There is simulated data available about the study. For details, see #Simulated data.
Main fish consumption and PCDD/F variables
Some plots about dioxin congeners.
Rationale
Methods
Study population
The majority of sarcoma patients in southern Finland are treated by the multidisciplinary sarcoma group of Helsinki University Central Hospital, with the remaining cases in the University Hospitals of Kuopio, Turku, or Tampere. All patients referred to these hospitals for operative treatment of STS between June 1997 (August 1996 in Helsinki) and December 1999 and more than 15 years of age were eligible as cases. The diagnoses were verified histologically for all except 7 patients. Sarcomas connected with known familial or genetic conditions, as well as sarcomas arising in visceral organs and bone, were excluded. Also other malignancies than STS, as well as nonmalignant tumors, were rejected. Some patients were operated twice during the study period; the second sample was not processed.
All patients who were operated due to an appendicitis diagnosis in a study hospital and who were more than 15 years of age were eligible as controls. They were collected from the same catchment area as the STS patients by dividing it into 15 areas (mainly according to former Finnish health care districts). One hospital performing appendectomy operations was recruited to the study from each area (in Helsinki, 2 hospitals). These were the university, central, or district hospitals of Helsinki, Hyvinka¨a¨, Ha¨meenlinna, Joensuu, Jyva¨skyla¨, Kotka, Kuopio, Lahti, Lappeenranta, Pori, Seina¨joki, Tampere, Turku and Vaasa, and the municipality hospitals in Espoo (Jorvi Hospital) and Helsinki (Maria Hospital). Informed consent was obtained from all patients in writing before the operation. The study was approved by the ethics committees of the National Public Health Institute and the hospitals involved.
The total number of patients recruited during the fieldwork was 972. One case was deleted due to missing address information, 1 case and 2 controls due to missing age information, and 3 cases and 11 controls since their fat samples were too small for dioxin analysis. As a result, we had 954 patients (148 cases and 806 controls) available for matching. The age range was 17.0 –91.1 years for cases and 15.0–88.7 years for controls. Based on National Cancer Registry data, we caught 70%, 9%, 17% and 26% of STS patients in Helsinki, Turku, Tampere and Kuopio University hospital regions, respectively, during the study period (calendar years 1997–1999). In Helsinki, all patients treated surgically with correct diagnosis were caught and agreed to participate; those not caught were either treated nonsurgically or misdiagnosed. Based on hospital discharge registry data, we estimate that about onefourth of appendicitis patients were caught in average during the most active collection period, but differences between hospitals were large.
The cases and controls were individually matched for area and age at the end of the fieldwork. This was done to ensure that there are enough controls from small areas and old age groups in the final data set, as it was not possible to analyze all recruited patients for dioxin. Area was defined based on the area of residence using the 15 areas described above. The age was determined at the day of operation. Maximum allowed difference in age between cases and controls was ± 3 years if case was < 38.0 years old, and ± 6 years if case was >= 38.0 years old. The control closest by age was matched to the case. Cases with fewer controls had a priority over cases with more controls. The number of controls per case was limited to 3. For 110 cases, 227 matching controls could be found in the pool. Thirty-nine cases had 1 control, 25 cases had 2 and 46 cases had 3 controls; for 38 cases, no control matching both age and area could be found.
Exposure assessment
From the matched 337 patients, concentrations of the 17 toxic polychlorinated dibenzo-p-dioxins and dibenzofurans (PCDD/Fs) were measured from a subcutaneous fat sample obtained during an appendectomy or sarcoma operation. Measurements were done by gas chromatography-mass spectrometry30 at the Laboratory of Chemistry, which is an accredited testing laboratory (T077) for the analysis of dioxins in human samples (current standard: EN ISO/ IEC 17025) and has successfully participated in WHO/Euro intercalibrations. The concentrations were summed up after the value of each congener was multiplied by its relative toxic potency (toxic equivalency factor, TEF). The TEF values according to WHO31 were used, resulting in toxic equivalent concentrations (WHOTEq). Fat samples were analyzed during and after the collection period. Samples from STS patients were always analyzed in a batch containing also samples from appendicitis patients. All analytical work was performed blind so that the chemistry laboratory did not know the diagnosis of the patient. Quality assurance of analysis was performed with 2 separate means: 2 preformulated pools of human fat with different concentrations of dioxins [10.6 (n = 35) and 40.2 (n = 33) ng/kg (WHO-TEq in fat)] were always run with each lot of samples, and 36 individual fat samples with WHO-TEqs ranging from 6.9 to 116 ng/kg fat were analyzed as duplicates. The coefficients of variation for WHO-TEq in preformulated pools were 5.1% and 5.7%, respectively, and in duplicate analysis, 6.2%.[2]
A detailed questionnaire about socioeconomic and lifestyle factors and chemical exposures was given to the patients in the hospital. If the patient was found not to have received the questionnaire in the hospital or if the patient did not return it, a new copy was sent to the patient’s home address. Of the matched subjects, 84 cases (76%) and 185 controls (81%) have also questionnaire information.
Detailed exposure assessment
The concentrations of the 17 toxic PCDD/F congeners and of the 36 PCB congeners were measured from fat of a subcutaneous tissue sample (0.3–1.5 g of fat) which was obtained during an appendectomy or sarcoma operation. The toxic equivalents (WHOPCDD/F-TEQ and WHOPCB-TEQ) were calculated with the sets of toxic equivalency factors (TEF), recommended by WHO in 1998 (Van den Berg et al., 1998).
Fat from tissue sample was extracted with toluene for 18–24 h using the Soxhlet apparatus. The fat content was determined gravimetrically after changing the solvent to hexane using nonane as a keeper. Fat sample was spiked with a set of 13C-labeled internal standards: sixteen 2,3,7,8-chlorinated PCDD/F congeners, three non-ortho PCBs (PCB 77, 126, 169), and nine other PCBs (PCB 30 [12C-labeled], 80, 101, 105, 138, 153, 156, 180, 194).
The sample was defatted in a silica gel column containing acidic and neutral layers of silica, and all analytes were eluted with dichloromethane (DCM):cyclohexane (c-hexane) (1:1). PCDD/Fs were separated from PCBs on activated carbon column (Carbopack C, 60/80 mesh) containing Celite (Merck 2693). The first fraction including PCBs was eluted with DCM:c-hexane (1:1) following a back elution of the second fraction (PCDD/Fs) with toluene. Eluents from both of the fractions were evaporated using nonane as a keeper and then fractions in n-hexane were further cleaned by passing them through an activated alumina column (Merck 1097). The PCDD/F fraction was eluted from the alumina column with 20% DCM in n-hexane and recovery standards (13C 1,2,3,4-TCDD and 13C 1,2,3,7,8,9-HxCDD) were added to the fraction before DCM and n-hexane were replaced by 10-15 μl of nonane. The PCB fraction was eluted from the alumina column with 2% DCM in n-hexane, and the fraction, after changing the eluent to n-hexane, was transferred to another activated carbon column (without Celite) in order to separate the non-ortho PCBs from other PCBs. DCM (50%) in n-hexane was used to elute other PCBs while non-ortho PCBs were back eluted with toluene. Recovery standards, PCB 159 for other PCBs and 13C PCB 60 for non-ortho PCBs were added prior to analysis; the solvent for other PCBs (DCM:n-hexane, 1:1) was replaced by 300 μl of n-hexane, for non-ortho PCBs toluene was replaced by 10–15 μl of nonane. The quantitation was performed by selective ion recording mode using a VG 70–250 SE (VG Analytical, UK) mass spectrometer (resolution 10,000) equipped with a HP 6890 gas chromatograph with a fused silica capillary column (DB-DIOXIN, 60 m, 0.25 mm, 0.15 μm). Two μl were injected into a split-splitless injector at 270 °C. The temperature programs for PCDD/Fs, non-ortho-PCBs, and other PCBs were:
- start, 140 °C (4 min), rate 20 °C min−1 to 180 °C (0 min), rate 2 °C min−1 to 270 °C (36 min);
- start, 140 °C (4 min), rate 20 °C min−1 to 200 °C (0 min), rate 10 °C min−1 to 270 °C (12 min);
- start, 60 °C (3 min), rate 20 °C min−1 to 200 °C (0 min), rate 4 °C min−1 to 270 °C (14 min); respectively.
Limits of quantitation (LOQ) for PCDD/Fs and non-ortho PCBs varied between 0.1–5 and 1–5 pg g−1 fat, respectively, and for other PCBs between 0.02 and 0.1 ng g−1 fat, depending on each individual congener. Recoveries for internal standards were more than 50% for all congeners. Concentrations were calculated with lower bound method in which the results of congeners with concentrations below the LOQ were designated as nil.
This code was used to upload the data to Opasnet Base:
Quality control and assurance
Fat samples were analyzed during and after the collection period 1997–1999. All analytical work was performed blind such that the chemistry laboratory knew only the code of the sample. The laboratory reagent and equipment blank samples were treated and analyzed with the same method as the actual samples, one blank for every eight to ten samples. Quality assurance of analysis was performed in two separate ways: (a) two preformulated pools of human fat with different concentrations of PCDD/Fs [10.6 (n = 35) and 40.2 (n = 33) pg g−1 (WHOPCDD/F-TEQ in fat)] and PCBs [4.72 and 24.2 pg g−1 (WHOPCB-TEQ), respectively] were always run with each lot of samples and (b) 36 individual fat samples with WHOPCDD/F-TEQs ranging from 6.9 to 116 pg g−1 and WHOPCB-TEQs from 4.6 to 95 pg g−1 were analyzed in duplicate. The coefficients of variation (CV) for WHOPCDD/F-TEQ in preformulated pools were 5.1% and 5.7%, respectively, and for WHOPCB-TEQ 12 and 9.0%, respectively. In duplicate analysis the CV was 6.2% for WHOPCDD/F-TEQ and 18% for WHOPCB-TEQ.
The laboratory has successfully participated in several international quality control studies for the analysis of PCDD/Fs, and PCBs. Matrices in these studies have included cow milk, human milk and human serum. (Yrjänheikki, 1991, Rymen, 1994, WHO, 1996 and Lindström et al., 2000). The laboratory of chemistry in the National Public Health Institute is an accredited testing laboratory (No T077) in Finland (EN ISO/IEC 17025). The scope of accreditation includes PCDD/Fs, non-ortho PCBs, and other PCBs from human tissue samples.
Statistical analyses
Conditional logistic regression analysis was performed with SAS PHREG procedure. Odds ratios were estimated for each quintile of WHO-TEq, the sum of the toxic congeners and the most relevant individual congeners, i.e., 2378-TCDD, 2378-TCDF, 12378-PeCDD, 23478-PeCDF and 123678-HxCDD (abbreviations: T, tetra; Pe, penta; Hx, hexa; Hp, hepta; O, octa; CDD, chlorinated dibenzo-p-dioxin; CDF, chlorinated dibenzofuran). In the other congener-specific analyses, exposures were treated as continuous variables and odds ratios were calculated for an increase of an interquartile range of the exposure.
All analyses were adjusted for sex. Several variables collected with the questionnaire were used as confounders in the analysis one by one. Nonbinary variables were analyzed as quartiles. Radiation therapy given to an STS patient was considered as diseaserelated and ignored in the analyses if the link to the disease was stated in the questionnaire or if the therapy had been given within 1 year before the operation. The analysis with the largest number of missing values was that with education years with 63 cases and 112 controls, but otherwise there were at least 70 cases and 125 controls in the analyses.
Fish consumption was studied in detail. Specific questions about the frequency of fish consumption were asked: 1 about total fish consumption, and 10 about specific types of fish or fish species. Four fish types contributed most to the total fish consumption. They were assumed to have high (Baltic herring, Baltic salmon) or low (predatory fish from lakes, rainbow trout) dioxin concentration based on previous results.[3] The consumption frequencies (times per month) were calculated for high- and low-dioxin fish separately based on these 4 fish types. Exposure to the following chemicals was asked as a binary variable: solvents, solvent-based paints, formaldehyde, insecticides, fungicides/herbicides, wood preservatives, strong detergents, heavy metals, other chemicals.
Data
- The original data, in csv file
- KTL Sarcoma study statistical analyses.txt
- Log file about the statistical analyses: Part 1, Part2
- Compilation of the results of statistical analyses
The code below runs the main fish consumption and PCDD/F variables, but because this is personal-level data, you need a password to run it. However, you can see ready-made results [1].
For variable descriptions, see D↷
Questionnaire
Variable information
The variable information was originally documented in Log file about the statistical analyses: Part 1, but unfortunately mostly in Finnish.
| Show details |
|---|
Tähän on syytä kirjata myös muuttujaluettelo, koska sitä ei ole missään muualla kunnolla tehty.
LEIKKAUS leikkauspvm, SASin oma formaatti (päivää jostakin kiintopisteestä?)
IKA ikä vuosina leikkauspäivänä
ALUENRO aluenro tutkimusalue (potilaan kotiosoitteen postinumeron perusteella)
1 -
2 Espoo
3 Helsinki
4 Hyvinkää
5 Hämeenlinna
6 Joensuu
7 Jyväskylä
8 Kotka
9 Kuopio
10 Lahti
11 Lappeenranta
12 Pori
13 Seinäjoki
14 Tampere
15 Turku
16 Vaasa
PNRO postinumero K3 (K#=kyselylomakkeen kysymys nro #)
STRATUM stratum eli tapauksen numero ilman S-etuliitettä
STRATASE strataset eli tässä analyysissä 9
DGLUOKKA diagnoosiluokka tapauksilla
DG_id DGnimi
1 MFH
2 Liposarcoma
3 Leiomyosarcoma
4 Angiosarcoma
5 Chondrosarcoma
6 Sarcoma synoviale
7 Sarcoma Ewing
8 Dermatofibrosarcoma
9 Sarcoma alia
10 Sarcoma NUD
11 Ei tietoa
12 Osteosarcoma extrasceletale
21 Lipoma
22 Tumor Desmoides
23 Myxoma
24 Muu benigni tuumori
25 Melanoma
26 Muu kuin tuumori
27 Tuplanäyte
SP sukupuoli 1: mies, 2: nainen K6
KOULUV kouluvuodet K8
PITUUS pituus, cm K15
PAINO paino nyt, kg K16
KALAA kalansyönti K21
1 Harvemmin kuin kerran kuukaudessa tai en lainkaan
2 Kerran tai pari kuukaudessa
3 Kerran viikossa
4 Pari kertaa viikossa
5 Lähes joka päivä
6 Kerran päivässä tai useammin
PETOKALA K22 (muuttujaan _YRI_ISI asti)
0 En lainkaan
1 Harvemmin kuin kerran kuukaudessa
2 Kerran tai pari kuukaudessa
3 Kerran viikossa
4 Pari kertaa viikossa
5 Lähes joka päivä
MUIKKUA
SIS_VESI
KIRJOLOH
SILAKKAA
IT_MEREN
MUUTA_IT
PAKASTEK
KALAS_IL
VALTAMER
_YRI_ISI
SADE sädehoito K47
VASTATTU onko kysely palautettu? YES/NO
SADEAIK aikaisempi sädehoito (yhdistelty kyselyn ja sairaalan tiedoista)
TCDF2378 kongeneerispesifinen pitoisuus ng/kg (absoluuttiyksiköt rasvassa)
TCDD2378
PF12378
PF23478
PD12378
HF123478
HF123678
HF234678
HF123789
HD123478
HD123678
HD123789
F1234678
F1234789
D1234678
OCDF
OCDD
TOXSUM edellä mainittujen 17 kongeneerin summa
WHOTEQ edellä mainittujen 17 kongeneerin WHO-TEF-kertoimella painotettu summa
TUPAK oletko koskaan tupakoinut 1=ei, 2=kyllä K30
TSTATUS tupakointi: 1= < 6 kk sitten, 2= > 6 kk sitten, 3=ei koskaan K30+K32
PACKYEAR askivuodet: poltetut vuodet K31*( eri valmisteiden summa kpl/pvä K33)/20
NULL, jos K30=2 mutta K32=NULL
KEMIK monelleko kemikaaliryhmälle on altistunut? K42
Onko altistunut 1=en, 2=kyllä (K42 muuttujaan MUU2 asti)
LIUOTTI liuottimet
MAALIT liuotinpohjaiset maalit
FORMALDE formaldehydi
HYONTEIS hyönteismyrkyt
KASVINSU kasvinsuojeluaineet
KYLLASTE puunkyllästeet
PESUAINE voimakkaat pesuaineet
METALLIT raskasmetallit
MUU1 muu
MUU2 muu
K42 kuvauksen perusteella 0=ei altistusta 4=pahin altistus
HYONLUOK hyönteismyrkyt
KASVLUOK kasvinsuojeluaineet
KYLLLUOK puunkyllästeet
ALKO kuinka usein alkoholia K35
1 päivittäin
2 muutaman kerran viikossa
3 noin kerran viikossa
4 pari kertaa kuukaudessa
5 noin kerran kuukaudessa
6 noin kerran parissa kuukaudessa
7 3-4 kertaa vuodessa
8 pari kertaa vuodessa
9 kerran vuodessa tai harvemmin
10 en koskaan
ALKOUS K35 ilmoitettuna kertaa/viikko (7, 3, 1, 0.5, 0.2, 0.1, 0.05, 0.03, 0.01, 0)
ALKOKULU alkoholin kulutus annosta/viikko. Lasketaan K36=pal ja K35 avulla
alkokulu: IIf([pal] Is Null And [alko]>8,0,[alkous]*[alkomaar])
alkomaar K36 ilmoitettuna annosta/kerta: 0,1,2,3,5,8,12 annosta
ASUKKAIT potilaan kotikunnan asukasluku (vuonna 1996? Pitäisikö tarkistaa mistä tilasto on?)
bmi paino / pituus / pituus * 10000
mkala Nämä kolme kalamuuttujaa on saatu regressiomallilla sovittamalla luokittelu-
mkaladio muuttujat suoraan regressiomalliin. Yksiköt ovat siis epämääräisiä. Ehkä pitäisi
mkalamuu muuttaa ensin kalamuuttujat muotoon annosta/kk niin olisi mielekäs tulkinta?
muu if muu1 = 1 or muu2 = 1 then muu = 1 (muuten muu=0) HUOM! Tämä muu on laskettu
päin mäntyä: 1 tarkoittaa ei altistusta eli jos ei ole kahta altistusta, merkitään
altistuneeksi ja jos ei ole tietoa tai on kaksi altistusta, merkitään
altistumattomaksi. ÄLÄ KÄYTÄ SIIS TÄTÄ MUUTTUJAA MISSÄÄN!
smoking 3-tstatus; 0=ei ikinä tupakoinut, 1= > 6 kk sitten, 2= < 6 kk sitten
never smoking jaetaan 0->never=1, 1->former=1, 2->current=1
former
current
mkala = 1.180840432 +
PETOKALA * 0.285437176 +
MUIKKUA * 0.120796063 +
SIS_VESI * 0.081192631 +
KIRJOLOH * 0.432524410 +
SILAKKAA * 0.201481292 +
IT_MEREN * 0.186820358 +
MUUTA_IT *-0.096115539 +
PAKASTEK * 0.105839909 +
KALAS_IL *-0.059836406 +
VALTAMER * 0.095303307 +
_YRI_ISI * 0.033074683;
mkaladio = 1.180840432 +
SILAKKAA * 0.201481292 +
IT_MEREN * 0.186820358;
mkalamuu = 1.180840432 +
PETOKALA * 0.285437176 +
MUIKKUA * 0.120796063 +
SIS_VESI * 0.081192631 +
KIRJOLOH * 0.432524410 +
MUUTA_IT *-0.096115539 +
PAKASTEK * 0.105839909 +
KALAS_IL *-0.059836406 +
VALTAMER * 0.095303307 +
_YRI_ISI * 0.033074683;
|
Data management
Code to manage the data. It takes the original data files and merges them. Works only if files are available.
| Show details |
|---|
# Sarcoma epidemiological data
# Data was obtained from this data file (saved 23.9.2002, version 12.7.2002)
# It contains all data that was used in the publication but not e.g. all questionnaire data.
# U:\arkisto_kuopio\huippuyksikko\Tutkimus\R16_sarkooma\Analyysit\Analyysi020712\Analyysi020712.xls
library(OpasnetUtils)
sarc <- read.table(
"//cesium/yhteiset/YMAL/Projects/Silakan riskiarvio/Data/Salaiset/Sarkooma/Analyysi020712_copy.csv",
sep = ",", header = TRUE
)
colnames(sarc)[c(24, 27, 28, 30, 32)] <- c(
"Sisävesikalaa",
"Itämeren.lohta",
"Muuta.Itämerestä",
"Kalasäilykkeitä",
"Äyriäisiä"
)
########################################### Questionnaire
# The questions come from the questionnaire form
# U:\arkisto_kuopio\huippuyksikko\Tutkimus\R16_sarkooma\KTL_sarcoma_study_questionnaire.odt
# The questionnaire data comes from
# U:\arkisto_kuopio\huippuyksikko\Tutkimus\R80_Sarkooma2\Data\Kyselyt.xls (Kyselyt.csv does not contain åäö)
# Kyselyt.xls was saved to N:\YMAL\Projects\Silakan riskiarvio\Data\Salaiset\Kyselyt.csv
ques <- read.table(
"//cesium/yhteiset/YMAL/Projects/Silakan riskiarvio/Data/Salaiset/Kyselyt.csv",
sep = ",", header = TRUE
)
poista <- c(
"Pituus",
"Paino",
"Kalaa",
"Petokalaa",
"Muikkua",
"Sisävesikalaa",
"Kirjolohta",
"Silakkaa",
"Itämeren.lohta",
"Muuta.itämerestä",
"Pakastekalaa",
"Kalasäilykkeitä",
"Valtamerikalaa",
"Äyriäisiä",
"Vastattu",
"AlkoKuinka.usein",
"Onko1",
"Onko2",
"Onko3",
"Onko4",
"Onko5",
"Onko6",
"Onko7",
"Onko8",
"Onko9",
"Onko10"
)
# The tests below shows that the questionnaire columns in sarc and ques are actually identical. Therefore
# we remove them from ques and keep those in sarc, the data file that was used in the publication.
#for(i in testaa) {
# x <- dat[[paste(i, ".x", sep = "")]]
# if(is.factor(x)) x <- as.numeric(x) # levels(x)[x]
# y <- dat[[paste(i, ".y", sep = "")]]
# if(is.factor(y)) y <- as.numeric(y) # levels(y)[y]
# print(paste(i, sum( x != y, na.rm = TRUE)))
#}
#sum(as.numeric(dat$alko) != as.numeric(dat$AlkoKuinka.usein), na.rm = TRUE)
#sum(as.numeric(dat$liuotti) != as.numeric(dat$Onko1), na.rm = TRUE)
#sum(as.numeric(dat$maalit) != as.numeric(dat$Onko2), na.rm = TRUE)
#sum(as.numeric(dat$formalde) != as.numeric(dat$Onko3), na.rm = TRUE)
#sum(as.numeric(dat$hyonteis) != as.numeric(dat$Onko4), na.rm = TRUE)
#sum(as.numeric(dat$Kasvinsu) != as.numeric(dat$Onko5), na.rm = TRUE)
#sum(as.numeric(dat$Kyllate) != as.numeric(dat$Onko6), na.rm = TRUE)
#sum(as.numeric(dat$Pesuaine) != as.numeric(dat$Onko7), na.rm = TRUE)
#sum(as.numeric(dat$Metallit) != as.numeric(dat$Onko8), na.rm = TRUE)
#sum(as.numeric(dat$Muu1) != as.numeric(dat$Onko9), na.rm = TRUE)
#sum(as.numeric(dat$Muu2) != as.numeric(dat$Onko10), na.rm = TRUE)
ques <- ques[!colnames(ques) %in% poista]
dat <- merge(sarc, ques, by = "kysely_id", all.x = TRUE)
ruoat <- list(c(
"Harvemmin kuin kerran kuukaudessa tai en lainkaan",
"Kerran tai pari kuukaudessa",
"Kerran viikossa",
"Pari kertaa viikossa",
"Lähes joka päivä",
"Kerran päivässä tai useammin"
),
NA,
TRUE
)
kalat <- list(
c(
"En lainkaan",
"Harvemmin kuin kerran kuukaudessa",
"Kerran tai pari kuukaudessa",
"Kerran viikossa",
"Pari kertaa viikossa",
"Lähes joka päivä"
),
0:5,
TRUE
)
yn <- list(c("No", "Yes"), NA, TRUE)
locs <- list(
aluenro = c(
"-",
"Espoo",
"Helsinki",
"Hyvinkää",
"Hämeenlinna",
"Joensuu",
"Jyväskylä",
"Kotka",
"Kuopio",
"Lahti",
"Lappeenranta",
"Pori",
"Seinäjoki",
"Tampere",
"Turku",
"Vaasa"
),
dgluokka = list(
c(
"MFH",
"Liposarcoma",
"Leiomyosarcoma",
"Angiosarcoma",
"Chondrosarcoma",
"Sarcoma synoviale",
"Sarcoma Ewing",
"Dermatofibrosarcoma",
"Sarcoma alia",
"Sarcoma NUD",
"Ei tietoa",
"Osteosarcoma extrasceletale",
"Lipoma",
"Tumor Desmoides",
"Myxoma",
"Muu benigni tuumori",
"Melanoma",
"Muu kuin tuumori",
"Tuplanäyte"
),
c(1:12, 21:27)
),
sp = c("Male", "Female"),
Kalaa = ruoat,
Petokalaa = kalat,
Muikkua = kalat,
Sisävesikalaa = kalat,
Kirjolohta = kalat,
Silakkaa = kalat,
Itämeren.lohta = kalat,
Muuta.Itämerestä = kalat,
Pakastekalaa = kalat,
Kalasäilykkeitä = kalat,
Valtamerikalaa = kalat,
Äyriäisiä = kalat,
sade = yn,
tupak = yn,
tstatus = c("< 6 mo ago", "> 6 mo ago", "Never"),
liuotti = yn,
maalit = yn,
formalde = yn,
hyonteis = yn,
Kasvinsu = yn,
Kyllaste = yn,
Pesuaine = yn,
Metallit = yn,
Muu1 = yn,
Muu2 = yn,
Hyonluok = list(c("No", "Very mild", "Mild", "Moderate", "High"), 0:4, TRUE),
Kasvluok = list(c("No", "Very mild", "Mild", "Moderate", "High"), 0:4, TRUE),
Kyllluok = list(c("No", "Very mild", "Mild", "Moderate", "High"), 0:4, TRUE),
alko = list(c(
"en koskaan",
"kerran vuodessa tai harvemmin",
"pari kertaa vuodessa",
"3-4 kertaa vuodessa",
"noin kerran parissa kuukaudessa",
"noin kerran kuukaudessa",
"pari kertaa kuukaudessa",
"noin kerran viikossa",
"muutaman kerran viikossa",
"päivittäin"
),
10:1,
TRUE
),
Koulutus = list(c(
"Kansakoulu tai peruskoulu",
"Keskikoulu",
"Ammattikoulu tai vastaava",
"Opistotutkinto ja/tai lukio",
"Akateeminen tutkinto"
),
NA,
TRUE
),
Työntekijäryhmä = c(
"Ylempi toimihenkilö",
"Alempi toimihenkilö",
"Työntekijä",
"Maanviljelijä",
"Yrittäjä",
"Opiskelija",
"Eläkeläinen",
"Kotirouva",
"Työtön"
),
Painonmuutos = list(c(
"Olen laihtunut",
"Painoni ei ole juuri muuttunut",
"Olen lihonut ja laihtunut",
"Olen lihonut"
),
c(3, 2, 13, 1),
TRUE
),
Ruokavalio = c(
"ei erityisruokavaliota",
"kasvisruoka sekä maito- ja munatuotteet",
"ainoastaan kasvisruokavalio",
"gluteeniton",
"maidoton (ei edes hyla-tuotteita)",
"muu, tarkempi kuvaus"
),
Leipää = ruoat,
Puuroja = ruoat,
Makaronia = ruoat,
Muutaviljaa = ruoat,
Viiliä = ruoat,
Juustoja = ruoat,
Rasvaisia.juustoja = ruoat,
Jäätelöä = ruoat,
Liharuokaa = ruoat,
Mitä.maitoa = list(c(
"en juo maitoa enkä piimää",
"rasvatonta maitoa",
"rasvatonta piimää tai kirnupiimää",
"muuta piimää",
"ykkösmaitoa",
"kevytmaitoa",
"täysmaitoa"
),
c(7, 4, 5, 6, 3, 2, 1),
TRUE
),
# Tästä välistä puuttuu Mitä.piimää. Vai puuttuuko? Onko yhdistetty maitoon?
Mitä.leivälle = list(c(
"En mitään",
"Kasvimargariinia",
"Voi-kasvirasvaseosta",
"Voita"
),
NA,
TRUE
),
Paljonko.rasvaa = list(c(
"En lainkaan",
"Voinapilla voitelen kolme viipaletta tai enemmän",
"Voinapilla voitelen 1-2 viipaletta",
"Käytän enemmän kuin yhden voinapin viipaletta kohti"
),
NA,
TRUE
),
Mitä.rasvaa = list(c(
"Ei mitään rasvaa",
"Kasviöljyä",
"Kasvimargariinia",
"Talousmargariinia",
"Voi-kasviöljyseosta",
"Voita"
),
c(6, 1, 2, 3, 4, 5),
TRUE
),
Ruokamuutos = c(
"Ei",
"Kyllä"
),
Vesilähde = c(
"kunnan vesijohtovettä",
"oman kaivon vettä",
"kaupan pullotettua vettä",
"muuta"
),
Tupakointi = c(
"En",
"Kyllä"
),
TupakSäännöllisyys = c(
"en ole koskaan tupakoinut säännöllisesti",
"olen tupakoinut säännöllisesti"
),
Tupakviimeksi = list(c(
"yli 10 vuotta sitten",
"6 - 10 vuotta sitten",
"1 - 5 vuotta sitten",
"puoli vuotta - vuosi sitten",
"1 kk - puoli vuotta sitten",
"2 pv - 1 kk sitten",
"eilen tai tänään"
),
7:1,
TRUE
),
Alkoholi = list(c(
"en ole koskaan käyttänyt alkoholijuomia",
"en, olen lopettanut alkoholin käytön kokonaan",
"kyllä, harvemmin kuin kerran kuussa",
"kyllä, vähintään kerran kuussa"
),
4:1,
TRUE
),
AlkoKuinka.paljon = list(c(
"vähemmän kuin yhden annoksen",
"1 annoksen",
"2 annosta",
"3 annosta",
"4-5 annosta",
"6-10 annosta",
"yli 10 annosta"
),
NA,
TRUE
),
Asuntotyyppi = c(
"omakotitalossa",
"rivitalossa",
"kerrostalossa"
),
Lämmitystyyppi = c(
"kaukolämpö",
"öljylämmitys",
"sähkölämmitys",
"puulämmitys",
"muu"
),
Paikkaus = c(
"Ei ole",
"Kyllä"
),
PaikkaPoisto = yn,
Montako.paikkaa = list(c(
"ei yhtään",
"1 - 2",
"3 - 6",
"7 - 15",
"yli 15"
),
NA,
TRUE
),
Sairaus = yn,
Elinsiirto = yn,
Tekonivel = yn,
Muu = yn,
Sädehoito = yn,
Vierasesine = yn,
AIDS = yn,
Neurofibr = yn,
vonHippel = yn
)
for(i in names(locs)) {
if(!is.list(locs[[i]])) locs[[i]] <- list(locs[[i]], NA)
if(!is.numeric(locs[[i]][[2]])) locs[[i]][[2]] <- 1:length(locs[[i]][[1]])
if(length(locs[[i]]) < 3) locs[[i]][[3]] <- FALSE
if(i == "Kalaa") {print(locs[[i]]); print(dat[[i]][1:100])}
dat[[i]] <- factor(dat[[i]], levels = locs[[i]][[2]], labels = locs[[i]][[1]], ordered = locs[[i]][[3]])
if(i == "Kalaa") {print(locs[[i]]); print(dat[[i]][1:100])}
}
levels(dat$ikäAlin)[levels(dat$ikäAlin) == "20.5"] <- "20"
dat$ikaA1 <- as.numeric(substr(dat$ikäAlin, 1, 2))
dat$ikaA2 <- as.character(dat$ikäAlin)
dat$ikaA2 <- as.numeric(substr(dat$ikaA2, nchar(dat$ikaA2)-1, nchar(dat$ikaA2)))
levels(dat$ikäYlin)[levels(dat$ikäYlin) == "20.5"] <- "20"
levels(dat$ikäYlin)[levels(dat$ikäYlin) == "21.5"] <- "21"
levels(dat$ikäYlin)[levels(dat$ikäYlin) == "28.5"] <- "28"
levels(dat$ikäYlin)[levels(dat$ikäYlin) == "121"] <- "21"
dat$ikaY1 <- as.numeric(substr(dat$ikäYlin, 1, 2))
dat$ikaY2 <- as.character(dat$ikäYlin)
dat$ikaY2 <- as.numeric(gsub("[- ,]", "", substr(dat$ikaY2, nchar(dat$ikaY2)-2, nchar(dat$ikaY2))))
dat$Pnetto <- as.numeric(sapply(as.character(dat$Muutoskg), FUN = function(x) {strsplit(x, " ")[[1]][1]}))
dat$Ppoikk <- -as.numeric(sapply(as.character(dat$Muutoskg), FUN = function(x) {strsplit(x, " ")[[1]][2]}))
dat$Ppoikk[is.na(dat$Ppoikk)] <- 0
dat$Pnetto <- ifelse(dat$Painonmuutos %in% c("Olen laihtunut"), -dat$Pnetto, dat$Pnetto)
dat$Pnetto[dat$Painonmuutos == "Painoni ei ole juuri muuttunut"] <- 0
dat$Pnetto <- dat$Pnetto + dat$Ppoikk
# Then we'll input values for NA based on the averages of the respective subgroups
dat$Pnetto[is.na(dat$Pnetto) & dat$Painonmuutos == "Olen lihonut"] <- 8
dat$Pnetto[is.na(dat$Pnetto) & dat$Painonmuutos == "Olen laihtunut"] <- -8
dat$Pnetto[is.na(dat$Pnetto) & dat$Painonmuutos == "Olen lihonut ja laihtunut"] <- 1
dat$Rintamaitoa1[is.na(dat$Rintamaitoa1)] <- 0
dat$Rintamaitoa2[is.na(dat$Rintamaitoa2)] <- 0
dat$Rintamaitoa3[is.na(dat$Rintamaitoa3)] <- 0
dat$Rintamaitoa4[is.na(dat$Rintamaitoa4)] <- 0
dat$Rintamaitoa5[is.na(dat$Rintamaitoa5)] <- 0
dat$Rintamaitoa6[is.na(dat$Rintamaitoa6)] <- 0
dat$Rintamaitoa7[is.na(dat$Rintamaitoa7)] <- 0
dat$Rintamaitoa8[is.na(dat$Rintamaitoa8)] <- 0
dat$Rintamaitoa <- dat$Rintamaitoa1 + dat$Rintamaitoa2 + dat$Rintamaitoa3 + dat$Rintamaitoa4 +
dat$Rintamaitoa5 + dat$Rintamaitoa6 + dat$Rintamaitoa7 + dat$Rintamaitoa8
### Graphs about WHOTEQ as a function of age and BMI.
if(FALSE) {
ggplot(dat) + geom_point(aes(x = ika, y = WHOTEQ, colour = Paino / (Pituus/100)^2)) + scale_colour_gradientn(colours = rainbow(3))
ggplot(dat) + geom_point(aes(x = ika, y = WHOTEQ, colour = Paino / (Pituus/100)^2>25))
ggplot(dat, aes(x = ika, y = WHOTEQ, colour = Paino / (Pituus/100)^2>25)) + geom_point() + geom_smooth()
for(i in colnames(dat)[c(4, 6:8, 14:16, 18:35, 37:76, 82:84, 101:138, 144:152, 154:162)]) {#182, 184:199, 201:205, 238, 247, 267:268)]) {
print(ggplot(dat, aes_string(x = i)) + geom_bar() + labs(title = i))
# par(ask = interactive()) # This makes R to wait for enter before continuing
}
}
temp <- as.character(dat$leikkaus_dt)
temp <- as.numeric(substr(temp, nchar(temp) - 1, nchar(temp)))
temp <- temp - pmax(
dat$Vuosi1,
dat$Vuosi2,
dat$Vuosi3,
dat$Vuosi4,
dat$Vuosi5,
dat$Vuosi6,
dat$Vuosi7,
dat$Vuosi8,
na.rm = TRUE
)
temp[is.na(temp)] <- 0
dat$Syntymasta <- temp # Montako vuotta on viimeisen lapsen syntymästä leikkausvuoteen?
dat$ikaA1[is.na(dat$ikaA1)] <- 20
dat$ikaA2[is.na(dat$ikaA2)] <- 20
dat$ikaY1 <- ifelse(is.na(dat$ikaY1), dat$ika, dat$ikaY1)
dat$ikaY2 <- ifelse(is.na(dat$ikaY2), dat$ika, dat$ikaY2)
dat <- within(dat, lihomisvauhti <- (kgYlin - kgAlin) / ((ikaY2 + ikaY2) / 2 - (ikaA1 + ikaA2) / 2))
## From here on, dat contains also other information than that produced in the KTL sarcoma study.
ffq <- opbase.data("Op_en2721", subset = "Portions per month")
ffq$Result <- ffq$Result
ffq$Obs <- NULL
foods <- opbase.data("Op_en2721", subset = "Food energy and dioxin")
# Add two columns (energy "e" and dioxin "d") for each food item in the ffq questionnaire
dat$Energy <- 0
dat$Dioxin <- 0
for(i in unique(foods$Food)) {
# Merge classified ffq questionnaire data with quantitative interpretation of ffq.
cole <- paste("e", i, sep = "")
colnames(ffq) <- c(i, cole) # Convert words to numbers of portions per month
dat <- merge(dat, ffq, all.x = TRUE)
dat[[cole]] <- ifelse(is.na(dat[[cole]]), 0, dat[[cole]] / 30) # Replace NA with 0, otherwise /mo -> /d.
dat[[paste("d", i, sep = "")]] <- dat[[cole]] * as.numeric(as.character(foods[foods$Food == i & foods$Observation == "Dioxin", "Result"]))
dat[[paste("m", i, sep = "")]] <- dat[[cole]] * as.numeric(as.character(foods[foods$Food == i & foods$Observation == "Mass", "Result"]))
dat[[cole]] <- dat[[cole]] * as.numeric(as.character(foods[foods$Food == i & foods$Observation == "Energy", "Result"]))
dat$Energy <- dat$Energy + dat[[cole]]
dat$Dioxin <- dat$Dioxin + dat[[paste("d", i, sep = "")]]
}
objects.get("x89WlgJlDLA02vnL") # PCDD/F-data table1
pcdd <- table1[2:nrow(table1), c(2,3)] # Aika tiputetaan pois toistaiseksi tarpeettomana (2002, 2009 dataa)
colnames(pcdd) <- c("PCDDF", "PCB")
pcdd$PCDDF <- as.numeric(as.character(pcdd$PCDDF))
pcdd$PCB <- as.numeric(as.character(pcdd$PCB))
pcdd$TEQ <- pcdd$PCDDF + pcdd$PCB
dat$Silteq <- dat$mSilakkaa * mean(pcdd$TEQ)
dat$Kalteq <- dat$Silteq + dat$mKalaa * 1 # Estimated mean 1 pg/g fw
|
Interpretations
The consumption of hard fat is calculated in the following way (Q## means the value from the survey question; I## means the interpretation from the table below; Q24&I24 means that question Q24 is quantified by using interpretation from I24 with matching values; Q23*I23 means that the survey value and interpretation are multiplied.
total_fat = (Q23a*I23 + Q23b*I23) * Q24&I24 + Q25&I25 * Q26&I26 * Q21a&I21 + Q27&I27 * 20
The code assumes that a person uses 20 g/d fat for cooking. Q23: how much a) milk, b) sourmilk; Q24: What kind of milk; Q25 what fat on bread; Q26: how much fat on bread; Q27: what fat for cooking.
The following assumptions are used to interpret survey answers:
| Obs | Variable | Value | Unit | Result | Description | Vastaus suomeksi |
|---|---|---|---|---|---|---|
| 1 | Q23 | dl per glass | 2 | Size of a glass of milk or sourmilk | ||
| 2 | Q24 | 1 | fat g/dl | 0.035 | full milk, fat g/dl | täysmaitoa |
| 3 | Q24 | 2 | fat g/dl | 0.015 | light milk, fat g/dl | kevytmaitoa |
| 4 | Q24 | 3 | fat g/dl | 0.01 | 1% milk, fat g/dl | ykkösmaitoa |
| 5 | Q24 | 4 | fat g/dl | 0 | fat-free milk | rasvatonta maitoa |
| 6 | Q24 | 5 | fat g/dl | 0 | fat-free sourmilk | rasvatonta piimää tai kirnupiimää |
| 7 | Q24 | 6 | fat g/dl | 0.01 | other sourmilk fat g/dl | muuta piimää |
| 8 | Q24 | 7 | fat g/dl | 0 | none of these | en juo maitoa enkä piimää |
| 9 | Q25 | 1 | hard fat, proportion | 0 | none | en mitään |
| 10 | Q25 | 2 | hard fat, proportion | 0.15 | soft margarine, share of hard fat | kasvimargariinia |
| 11 | Q25 | 3 | hard fat, proportion | 0.5 | oil-butter-mix, share of hard fat | Voi-kasvirasvaseosta |
| 12 | Q25 | 4 | hard fat, proportion | 1 | butter | voita |
| 13 | Q26 | 1 | fat g /slice of bread | 0 | 0 g per slice of bread | en lainkaan |
| 14 | Q26 | 2 | fat g /slice of bread | 3 | 3 g per slice of bread | 10 g per 3 viipaletta |
| 15 | Q26 | 3 | fat g /slice of bread | 7 | 7 g per slice of bread | 10 g per 1-2 viipaletta |
| 16 | Q26 | 4 | fat g /slice of bread | 15 | 15 g per slice of bread | Yli 10 g per viipale |
| 17 | Q27 | 1 | hard fat fraction | 0 | hard fat fraction in the baking fat used | kasviöljyä |
| 18 | Q27 | 2 | hard fat fraction | 0.15 | hard fat fraction in the baking fat used | kasvimargariinia |
| 19 | Q27 | 3 | hard fat fraction | 0.5 | hard fat fraction in the baking fat used | talousmargariinia |
| 20 | Q27 | 4 | hard fat fraction | 0.5 | hard fat fraction in the baking fat used | Voi-kasvirasvaseosta |
| 21 | Q27 | 5 | hard fat fraction | 1 | hard fat fraction in the baking fat used | voita |
| 22 | Q27 | 6 | hard fat fraction | 0 | hard fat fraction in the baking fat used | ei mitään rasvaa |
| 23 | Q35 | 1 | alcohol times /a | 300 | päivittäin | |
| 24 | Q35 | 2 | alcohol times /a | 100 | muutaman kerran viikossa | |
| 25 | Q35 | 3 | alcohol times /a | 50 | noin kerran viikossa | |
| 26 | Q35 | 4 | alcohol times /a | 25 | pari kertaa kuukaudessa | |
| 27 | Q35 | 5 | alcohol times /a | 12 | noin kerran kuukaudessa | |
| 28 | Q35 | 6 | alcohol times /a | 6 | noin kerran parissa kuukaudessa | |
| 29 | Q35 | 7 | alcohol times /a | 4 | 3-4 kertaa vuodessa | |
| 30 | Q35 | 8 | alcohol times /a | 2 | pari kertaa vuodessa | |
| 31 | Q35 | 9 | alcohol times /a | 1 | kerran vuodessa tai harvemmin | |
| 32 | Q35 | 10 | alcohol times /a | 0 | en koskaan | |
| 33 | Q36 | 1 | alcohol portion | 0 | g alcohol | vähemmän kuin yhden |
| 34 | Q36 | 2 | alcohol portion | 12 | g alcohol | 1 annoksen |
| 35 | Q36 | 3 | alcohol portion | 24 | g alcohol | 2 annosta |
| 36 | Q36 | 4 | alcohol portion | 36 | g alcohol | 3 annosta |
| 37 | Q36 | 5 | alcohol portion | 55 | g alcohol | 4-5 annosta |
| 38 | Q36 | 6 | alcohol portion | 96 | g alcohol | 6-10 annosta |
| 39 | Q36 | 7 | alcohol portion | 150 | g alcohol | Yli 10 annosta |
| 40 | Q21a | 1 | g/day carbohydrates | 1.5 | carbohydrates per day of 100 g bread slices | leipää 100 g viipaleina. oletus: 50% hiilihydraattia |
| 41 | Q21a | 2 | g/day carbohydrates | 2.5 | carbohydrates per day of 100 g bread slices | leipää 100 g viipaleina. |
| 42 | Q21a | 3 | g/day carbohydrates | 7.5 | carbohydrates per day of 100 g bread slices | leipää 100 g viipaleina. |
| 43 | Q21a | 4 | g/day carbohydrates | 15 | carbohydrates per day of 100 g bread slices | leipää 100 g viipaleina. |
| 44 | Q21a | 5 | g/day carbohydrates | 50 | carbohydrates per day of 100 g bread slices | leipää 100 g viipaleina. |
| 45 | Q21a | 6 | g/day carbohydrates | 100 | carbohydrates per day of 100 g bread slices | leipää 100 g viipaleina. |
| 46 | Q21b | 1 | g/day carbohydrates | 0.84 | carbohydrates per day of 200 g porridge | puuroa 200 g annoksina. oletus: 70% hiilihydraattia viljasta, jota 20% |
| 47 | Q21b | 2 | g/day carbohydrates | 1.4 | carbohydrates per day of 200 g porridge | puuroa 200 g annoksina. |
| 48 | Q21b | 3 | g/day carbohydrates | 4.2 | carbohydrates per day of 200 g porridge | puuroa 200 g annoksina. |
| 49 | Q21b | 4 | g/day carbohydrates | 8.4 | carbohydrates per day of 200 g porridge | puuroa 200 g annoksina. |
| 50 | Q21b | 5 | g/day carbohydrates | 28 | carbohydrates per day of 200 g porridge | puuroa 200 g annoksina. |
| 51 | Q21b | 6 | g/day carbohydrates | 56 | carbohydrates per day of 200 g porridge | puuroa 200 g annoksina. |
| 52 | Q21c | 1 | g/day carbohydrates | 1.2 | carbohydrates per day of 200 g pasta | pastaa 200 g annoksina. oletus: 80% hiilihydraattia viljasta, jota 25% |
| 53 | Q21c | 2 | g/day carbohydrates | 2 | carbohydrates per day of 200 g pasta | pastaa 200 g annoksina. |
| 54 | Q21c | 3 | g/day carbohydrates | 6 | carbohydrates per day of 200 g pasta | pastaa 200 g annoksina. |
| 55 | Q21c | 4 | g/day carbohydrates | 12 | carbohydrates per day of 200 g pasta | pastaa 200 g annoksina. |
| 56 | Q21c | 5 | g/day carbohydrates | 40 | carbohydrates per day of 200 g pasta | pastaa 200 g annoksina. |
| 57 | Q21c | 6 | g/day carbohydrates | 80 | carbohydrates per day of 200 g pasta | pastaa 200 g annoksina. |
| 58 | Q21d | 1 | g/day carbohydrates | 1.26 | carbohydrates per day of 200 g musli etc | muita (mysli ym). oletus: 70% hiilihydraattia viljasta, jota 30% |
| 59 | Q21d | 2 | g/day carbohydrates | 2.1 | carbohydrates per day of 200 g musli etc | muita (mysli ym). |
| 60 | Q21d | 3 | g/day carbohydrates | 6.3 | carbohydrates per day of 200 g musli etc | muita (mysli ym). |
| 61 | Q21d | 4 | g/day carbohydrates | 12.6 | carbohydrates per day of 200 g musli etc | muita (mysli ym). |
| 62 | Q21d | 5 | g/day carbohydrates | 42 | carbohydrates per day of 200 g musli etc | muita (mysli ym). |
| 63 | Q21d | 6 | g/day carbohydrates | 84 | carbohydrates per day of 200 g musli etc | muita (mysli ym). |
| 64 | Q21e | 1 | g/day carbohydrates | 0.3 | carbohydrates per day of 200 g youghurt etc | viiliä tai jugurttia, sokeri. oletus: 5% hiilihydraattia (Doc. Geigy s. 479) |
| 65 | Q21e | 2 | g/day carbohydrates | 0.5 | carbohydrates per day of 200 g youghurt etc | viiliä tai jugurttia, sokeri. |
| 66 | Q21e | 3 | g/day carbohydrates | 1.5 | carbohydrates per day of 200 g youghurt etc | viiliä tai jugurttia, sokeri. |
| 67 | Q21e | 4 | g/day carbohydrates | 3 | carbohydrates per day of 200 g youghurt etc | viiliä tai jugurttia, sokeri. |
| 68 | Q21e | 5 | g/day carbohydrates | 10 | carbohydrates per day of 200 g youghurt etc | viiliä tai jugurttia, sokeri. |
| 69 | Q21e | 6 | g/day carbohydrates | 20 | carbohydrates per day of 200 g youghurt etc | viiliä tai jugurttia, sokeri. |
| 70 | Q21f | 1 | g/day carbohydrates | 0.015 | carbohydrates per 50 g cheese | vähärasv. juusto, sokeri. |
| 71 | Q21f | 2 | g/day carbohydrates | 0.025 | carbohydrates per 50 g cheese | vähärasv. juusto, sokeri. oletus: 1% hiilihydraattia (Doc. Geigy s. 479) |
| 72 | Q21f | 3 | g/day carbohydrates | 0.075 | carbohydrates per 50 g cheese | vähärasv. juusto, sokeri. |
| 73 | Q21f | 4 | g/day carbohydrates | 0.15 | carbohydrates per 50 g cheese | vähärasv. juusto, sokeri. |
| 74 | Q21f | 5 | g/day carbohydrates | 0.5 | carbohydrates per 50 g cheese | vähärasv. juusto, sokeri. |
| 75 | Q21f | 6 | g/day carbohydrates | 1 | carbohydrates per 50 g cheese | vähärasv. juusto, sokeri. |
| 76 | Q21g | 1 | g/day carbohydrates | 0.015 | carbohydrates per 50 g cheese | muu juusto, sokeri. oletus: 1% hiilihydraattia (Doc. Geigy s. 479) |
| 77 | Q21g | 2 | g/day carbohydrates | 0.025 | carbohydrates per 50 g cheese | muu juusto, sokeri. |
| 78 | Q21g | 3 | g/day carbohydrates | 0.075 | carbohydrates per 50 g cheese | muu juusto, sokeri. |
| 79 | Q21g | 4 | g/day carbohydrates | 0.15 | carbohydrates per 50 g cheese | muu juusto, sokeri. |
| 80 | Q21g | 5 | g/day carbohydrates | 0.5 | carbohydrates per 50 g cheese | muu juusto, sokeri. |
| 81 | Q21g | 6 | g/day carbohydrates | 1 | carbohydrates per 50 g cheese | muu juusto, sokeri. |
| 82 | Q21h | 1 | g/day carbohydrates | 0.3 | carbohydrates per 100 g ice cream | jäätelöä. oletus: 10% hiilihydraattia |
| 83 | Q21h | 2 | g/day carbohydrates | 0.5 | carbohydrates per 100 g ice cream | jäätelöä. |
| 84 | Q21h | 3 | g/day carbohydrates | 1.5 | carbohydrates per 100 g ice cream | jäätelöä. |
| 85 | Q21h | 4 | g/day carbohydrates | 3 | carbohydrates per 100 g ice cream | jäätelöä. |
| 86 | Q21h | 5 | g/day carbohydrates | 10 | carbohydrates per 100 g ice cream | jäätelöä. |
| 87 | Q21h | 6 | g/day carbohydrates | 20 | carbohydrates per 100 g ice cream | jäätelöä. |
| 88 | Q21i | 1 | g/day hard fat | 0.12 | hard fat per 200 g youghurt etc | viiliä tai jugurttia, rasva. oletus: 2 % rasvaa |
| 89 | Q21i | 2 | g/day hard fat | 0.2 | hard fat per 200 g youghurt etc | viiliä tai jugurttia, rasva. |
| 90 | Q21i | 3 | g/day hard fat | 0.6 | hard fat per 200 g youghurt etc | viiliä tai jugurttia, rasva. |
| 91 | Q21i | 4 | g/day hard fat | 1.2 | hard fat per 200 g youghurt etc | viiliä tai jugurttia, rasva. |
| 92 | Q21i | 5 | g/day hard fat | 4 | hard fat per 200 g youghurt etc | viiliä tai jugurttia, rasva. |
| 93 | Q21i | 6 | g/day hard fat | 8 | hard fat per 200 g youghurt etc | viiliä tai jugurttia, rasva. |
| 94 | Q21j | 1 | g/day hard fat | 0.15 | hard fat per 50 g low-fat cheese | vähärasvainen juusto. oletus: 10% rasvaa |
| 95 | Q21j | 2 | g/day hard fat | 0.25 | hard fat per 50 g low-fat cheese | vähärasvainen juusto. |
| 96 | Q21j | 3 | g/day hard fat | 0.75 | hard fat per 50 g low-fat cheese | vähärasvainen juusto. |
| 97 | Q21j | 4 | g/day hard fat | 1.5 | hard fat per 50 g low-fat cheese | vähärasvainen juusto. |
| 98 | Q21j | 5 | g/day hard fat | 5 | hard fat per 50 g low-fat cheese | vähärasvainen juusto. |
| 99 | Q21j | 6 | g/day hard fat | 10 | hard fat per 50 g low-fat cheese | vähärasvainen juusto. |
| 100 | Q21k | 1 | g/day hard fat | 0.45 | hard fat per 50 g cheese | juusto. oletus: 30% rasvaa (fineli) |
| 101 | Q21k | 2 | g/day hard fat | 0.75 | hard fat per 50 g cheese | juusto. |
| 102 | Q21k | 3 | g/day hard fat | 2.25 | hard fat per 50 g cheese | juusto. |
| 103 | Q21k | 4 | g/day hard fat | 4.5 | hard fat per 50 g cheese | juusto. |
| 104 | Q21k | 5 | g/day hard fat | 15 | hard fat per 50 g cheese | juusto. |
| 105 | Q21k | 6 | g/day hard fat | 30 | hard fat per 50 g cheese | juusto. |
| 106 | Q21l | 1 | g/day hard fat | 0.3 | hard fat per 100 g ice cream | jäätelöä. oletus: 10% rasvaa |
| 107 | Q21l | 2 | g/day hard fat | 0.5 | hard fat per 100 g ice cream | jäätelöä. |
| 108 | Q21l | 3 | g/day hard fat | 1.5 | hard fat per 100 g ice cream | jäätelöä. |
| 109 | Q21l | 4 | g/day hard fat | 3 | hard fat per 100 g ice cream | jäätelöä. |
| 110 | Q21l | 5 | g/day hard fat | 10 | hard fat per 100 g ice cream | jäätelöä. |
| 111 | Q21l | 6 | g/day hard fat | 20 | hard fat per 100 g ice cream | jäätelöä. |
| 112 | Q21m | 1 | g/day hard fat | 0.45 | hard fat per 100 g meat | liharuokaa. oletus: 15% rasvaa (Doc. Geigy s. 481) |
| 113 | Q21m | 2 | g/day hard fat | 0.75 | hard fat per 100 g meat | liharuokaa. |
| 114 | Q21m | 3 | g/day hard fat | 2.25 | hard fat per 100 g meat | liharuokaa. |
| 115 | Q21m | 4 | g/day hard fat | 4.5 | hard fat per 100 g meat | liharuokaa. |
| 116 | Q21m | 5 | g/day hard fat | 15 | hard fat per 100 g meat | liharuokaa. |
| 117 | Q21m | 6 | g/day hard fat | 30 | hard fat per 100 g meat | liharuokaa. |
| 118 | Q21n | 1 | g/day hard fat | 0.15 | hard fat per 100 g meat | kalaruokaa. oletus: 5% kovaa rasvaa, finelin mukaan 2-5% |
| 119 | Q21n | 2 | g/day hard fat | 0.25 | hard fat per 100 g meat | kalaruokaa. |
| 120 | Q21n | 3 | g/day hard fat | 0.75 | hard fat per 100 g meat | kalaruokaa. |
| 121 | Q21n | 4 | g/day hard fat | 1.5 | hard fat per 100 g meat | kalaruokaa. |
| 122 | Q21n | 5 | g/day hard fat | 5 | hard fat per 100 g meat | kalaruokaa. |
| 123 | Q21n | 6 | g/day hard fat | 10 | hard fat per 100 g meat | kalaruokaa. |
How much mass, energy, and dioxin does one portion contain? Data are guesswork of from Fineli.
| Obs | Food | Mass | Energy | Dioxin |
|---|---|---|---|---|
| 1 | Kalaa | 100 | 600 | 7 |
| 2 | Silakkaa | 100 | 792 | 470 |
| 3 | Petokalaa | 100 | 301 | 25 |
| 4 | Muikkua | 100 | 750 | 28 |
| 5 | Sisävesikalaa | 100 | 668 | 23 |
| 6 | Kirjolohta | 100 | 1067 | 74 |
| 7 | Itämeren.lohta | 100 | 1067 | 770 |
| 8 | Muuta.Itämerestä | 100 | 668 | 15 |
| 9 | Pakastekalaa | 100 | 324 | 7 |
| 10 | Kalasäilykkeitä | 60 | 600 | 7 |
| 11 | Valtamerikalaa | 100 | 600 | 7 |
| 12 | Äyriäisiä | 60 | 200 | 7 |
| 13 | Leipää | 50 | 406 | 0.01 |
| 14 | Puuroja | 200 | 642 | 0.02 |
| 15 | Makaronia | 200 | 846 | 0.02 |
| 16 | Muutaviljaa | 150 | 600 | 0.02 |
| 17 | Viiliä | 200 | 334 | 0.008 |
| 18 | Juustoja | 40 | 300 | 0.012 |
| 19 | Rasvaisia.juustoja | 40 | 600 | 0.03 |
| 20 | Jäätelöä | 150 | 1200 | 0.03 |
| 21 | Liharuokaa | 150 | 1400 | 1.5 |
| 22 | Maitoa | 200 | 358 | 0.004 |
| 23 | Piimää | 200 | 358 | 0.004 |
| Obs | Answer | Interpretation |
|---|---|---|
| 1 | En lainkaan | 0.003 |
| 2 | Harvemmin kuin kerran kuukaudessa tai en lainkaan | 0.1 |
| 3 | Harvemmin kuin kerran kuukaudessa | 0.5 |
| 4 | Kerran tai pari kuukaudessa | 1.5 |
| 5 | Kerran viikossa | 4 |
| 6 | Pari kertaa viikossa | 8 |
| 7 | Lähes joka päivä | 20 |
| 8 | Kerran päivässä tai useammin | 40 |
Analyses
Simulated data
- This code was used to create a csv file that contains a simulated data from this study. When compared with the original data, the simulated data
- has the same number of observations,
- has the same range of values in each variable,
- has approximately the same correlation structure between all variables.
POPs and obesity
Dioxins and PCBs have been assosiated to type 2 diabetes. Do dioxins cause diabetes, or do diabetes decrease dioxin elimination, or does obesity increase diabetes and decrease dioxin elimination, or something else? We tried to make sense of this by looking at sarcoma study data.
Self-reported chemical exposure
We looked at self-reported chemical exposure, especially pesticides and wood preservatives.
We also looked at the impact of self-reported occupation, recoded into 9 groups. This is best done in the unmatched dataset, but also some analyses were done with the matched dataset. Age was the only clearly significant variable, with sarcoma risk increasing by 8 % per year. Male gender seemed to increase the risk but was not statistically significant. None of the differences between occupation groups were statistically significant, and they did not show a pattern where putatively chemically-exposured groups would have higher risk.
Correlation of dioxin and fish
How do individual dioxin congeners correlate with individual fish parametres in the questionnaire?
These estimates are based on the code above.
| Obs | Fish | Parameter |
|---|---|---|
| 1 | Kalaa | 0.23179078 |
| 2 | Petokalaa | 0.17746642 |
| 3 | Muikkua | 0.14939457 |
| 4 | Sisävesikalaa | 0.09493785 |
| 5 | Kirjolohta | 0.29775961 |
| 6 | Silakkaa | 0.2152247 |
| 7 | Itämeren.lohta | 0.08175282 |
| 8 | Muuta.Itämerestä | 0.0282421 |
| 9 | Pakastekalaa | 0.21510166 |
| 10 | Kalasäilykkeitä | 0.21598007 |
| 11 | Valtamerikalaa | 0.1078198 |
| 12 | Äyriäisiä | 0.16021416 |
Correlation coefficients between fish dishes
| Show details | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
EU kalat
- The code that used to be here was moved to EU-kalat#Calculations.
- What updates should be done:
- Plot iterations to see that the model results do not drift.
- Take modelled parameters and develop a MC model to produce predicted concentrations.
- TCDD concentration should be added to the hierearchical Bayes model for this?
- KTL Sarcoma study, EU-kalat and Goherr: Fish consumption study should all be combined into one model. ----#: . Can models be combined as text with paste()? This could work if all submodels had unique parameter names like N.eu and N.goh rather than just N. And data lists are merged simply with c(). --Jouni (talk) 16:22, 22 January 2017 (UTC) (type: truth; paradigms: science: comment)
- A causal diagram should be drawn to show the model structure.
- JAGS user manual [2] (with e.g. distribution names and other guidance)
- How to generate predictions in JAGS [3]
- Using rjags, a simple guidance [4]
Related:
- Easily generate correlated variables from any distribution (without copulas) [5]
Concentration-age graph with THL formatting
See also
Related files
References
- ↑ Jouni T. TUOMISTO, Juha PEKKANEN, Hannu KIVIRANTA, Erkki TUKIAINEN, Terttu VARTIAINEN and Jouko TUOMISTO. Soft-tissue sarcoma and dioxin: a case-control study. Int. J. Cancer: 108, 893–900 (2004)
- ↑ Chemosphere (2005) 60: 78: 854-869
- ↑ Kiviranta H, Korhonen M, Hallikainen A, Vartiainen T. Kalojen dioksiinien ja PCB:eiden kulkeutuminen ihmiseen. Ympäristö ja Terveys 2000; 31: 65-9.