Causal relationship between two occupational carcinogens and lung cancer
Visualisation
Description
This directed acyclic graph is used to inform the estimation of the causal effect of lifetime cumulative exposure to asbestos (main exposure) on lung cancer (outcome) in the context of individual participant data (IPD) meta-analysis of the SYNERGY pooled case-control study [1]. Co-exposure to other occupational lung carcinogens is represented with respiratory cristaline silica (RCS) as a motivating example. True exposure is unobserved (X_asb_true and X_rcs_true) and thus estimated with the job exposure matrix SYN-JEM (asbestos_cum0 and silica_cum0), resulting in loss of individual variation (Epsilon), and exposure error terms (U) that are independent of outcome status (Berkson-type error) [2]. The minimal set of adjustment for this model consists of age (agegroup), sex, smoking status and time since quitting (time_quit), lifetime smoking intensity (packyears), and study (study_name). Study is considered a proxy for other study-level covariates and differences in baseline lung cancer risk. Occupational lung carcinogens are assumed to be related through the common cause industry which serves as a proxy for shared working environment conditions. This backdoor pathway was intentionally not closed as co-exposure to occupational lung carcinogens is frequent [3]. Estimating conditional effects by setting such co-exposures to zero could violate positivity (if certain covariate combinations never occur for a given job title) and consistency (counterfactual scenarios such as high asbestos exposure with zero RCS are implausible in some industries). The model assumes monotonicity, implying that asbestos cannot prevent lung cancer through any causal mechanism, and no-interference (only individual exposure is relevant for the effect and not affected by others' exposures). Lastly, both age and sex are matching factors in the individual case-control studies, thus potentially causing selection bias (not shown in this DAG for simplicity). Adjustment for these matching variables through unconditional logistic regression results in unbiased estimates under the rare disease assumption [4].
Additional details and documentation on this analysis are available at: https://github.com/UtrechtUniversity/PoC-Asbestos
References:
1 International Agency for Research on Cancer (IARC). About SYNERGY. [cited 2024 Oct 17]. SYNERGY: Home. Available from: https://synergy.iarc.who.int/about
2 Armstrong BG. Effect of measurement error on epidemiological studies of environmental and occupational exposures. Occupational and Environmental Medicine 1998; 55: 651–656.
3 Olsson A, Bouaoun L, Schüz J, et al. Lung Cancer Risks Associated with Occupational Exposure to Pairs of Five Lung Carcinogens: Results from a Pooled Analysis of Case-Control Studies (SYNERGY). Environmental Health Perspectives 2024; 132: 17005.
4 Kamenetsky ME, Keil AP. (Re-)match: adjusting for matching factors in case-control studies may be unnecessary or insufficient. American Journal of Epidemiology 2025; kwaf116. doi: 10.1093/aje/kwaf116
Variables
-
asbestos_cum0 Exposure No description
-
silica_cum0 Exposure No description
-
status Outcome No description
-
Epsilon_asb Unmeasured No description
-
Epsilon_rcs Unmeasured No description
-
U_asb Unmeasured No description
-
U_rcs Unmeasured No description
-
X_asbestos_true Unmeasured No description
-
X_rcs_true Unmeasured No description
-
agegroup No description
-
industry Unmeasured No description
-
packyears No description
-
sex No description
-
study_name No description
-
time_quit No description
Relationships
30 edges
- Epsilon_asb X_asbestos_true
- Epsilon_rcs X_rcs_true
- U_asb asbestos_cum0
- U_rcs silica_cum0
- X_asbestos_true status
- X_rcs_true status
- agegroup asbestos_cum0
- agegroup packyears
- agegroup silica_cum0
- agegroup status
- agegroup time_quit
- asbestos_cum0 X_asbestos_true
- industry asbestos_cum0
- industry silica_cum0
- packyears asbestos_cum0
- packyears silica_cum0
- packyears status
- packyears time_quit
- sex asbestos_cum0
- sex packyears
- sex silica_cum0
- sex status
- sex time_quit
- silica_cum0 X_rcs_true
- study_name asbestos_cum0
- study_name silica_cum0
- study_name status
- time_quit asbestos_cum0
- time_quit silica_cum0
- time_quit status
Read across: each marked cell is an edge from the row's variable to the column's.
- No sign given
- Directed
| asbestos_cum0 | silica_cum0 | status | Epsilon_asb | Epsilon_rcs | U_asb | U_rcs | X_asbestos_true | X_rcs_true | agegroup | industry | packyears | sex | study_name | time_quit | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| asbestos_cum0 | |||||||||||||||
| silica_cum0 | |||||||||||||||
| status | |||||||||||||||
| Epsilon_asb | |||||||||||||||
| Epsilon_rcs | |||||||||||||||
| U_asb | |||||||||||||||
| U_rcs | |||||||||||||||
| X_asbestos_true | |||||||||||||||
| X_rcs_true | |||||||||||||||
| agegroup | |||||||||||||||
| industry | |||||||||||||||
| packyears | |||||||||||||||
| sex | |||||||||||||||
| study_name | |||||||||||||||
| time_quit |
Code
Submitted as opencausal_bwoy9fng.txt. Also available as:
This JSON follows CausalJSON 0.2, the Open Causal Graph Format.
{
"$schema": "https://opencausal.org/causaljson/0.2/causaljson.schema.json",
"graph": {
"id": "bwoy9fng",
"doi": "10.83031/bwoy9fng",
"version": 1,
"title": "Causal relationship between two occupational carcinogens and lung cancer",
"description": "This directed acyclic graph is used to inform the estimation of the causal effect of lifetime cumulative exposure to asbestos (main exposure) on lung cancer (outcome) in the context of individual participant data (IPD) meta-analysis of the SYNERGY pooled case-control study [1]. Co-exposure to other occupational lung carcinogens is represented with respiratory cristaline silica (RCS) as a motivating example. True exposure is unobserved (X_asb_true and X_rcs_true) and thus estimated with the job exposure matrix SYN-JEM (asbestos_cum0 and silica_cum0), resulting in loss of individual variation (Epsilon), and exposure error terms (U) that are independent of outcome status (Berkson-type error) [2]. The minimal set of adjustment for this model consists of age (agegroup), sex, smoking status and time since quitting (time_quit), lifetime smoking intensity (packyears), and study (study_name). Study is considered a proxy for other study-level covariates and differences in baseline lung cancer risk. Occupational lung carcinogens are assumed to be related through the common cause industry which serves as a proxy for shared working environment conditions. This backdoor pathway was intentionally not closed as co-exposure to occupational lung carcinogens is frequent [3]. Estimating conditional effects by setting such co-exposures to zero could violate positivity (if certain covariate combinations never occur for a given job title) and consistency (counterfactual scenarios such as high asbestos exposure with zero RCS are implausible in some industries). The model assumes monotonicity, implying that asbestos cannot prevent lung cancer through any causal mechanism, and no-interference (only individual exposure is relevant for the effect and not affected by others' exposures). Lastly, both age and sex are matching factors in the individual case-control studies, thus potentially causing selection bias (not shown in this DAG for simplicity). Adjustment for these matching variables through unconditional logistic regression results in unbiased estimates under the rare disease assumption [4].\r\n\r\nAdditional details and documentation on this analysis are available at: https://github.com/UtrechtUniversity/PoC-Asbestos\r\n\r\nReferences: \r\n1 \tInternational Agency for Research on Cancer (IARC). About SYNERGY. [cited 2024 Oct 17]. SYNERGY: Home. Available from: https://synergy.iarc.who.int/about\r\n2 \tArmstrong BG. Effect of measurement error on epidemiological studies of environmental and occupational exposures. Occupational and Environmental Medicine 1998; 55: 651–656.\r\n3 \tOlsson A, Bouaoun L, Schüz J, et al. Lung Cancer Risks Associated with Occupational Exposure to Pairs of Five Lung Carcinogens: Results from a Pooled Analysis of Case-Control Studies (SYNERGY). Environmental Health Perspectives 2024; 132: 17005.\r\n4 \tKamenetsky ME, Keil AP. (Re-)match: adjusting for matching factors in case-control studies may be unnecessary or insufficient. American Journal of Epidemiology 2025; kwaf116. doi: 10.1093/aje/kwaf116",
"type": "dag",
"created": "2025-11-13T09:32:33+00:00",
"authors": [
{
"given_name": "Javier",
"family_name": "Mancilla Galindo",
"orcid": "0000-0002-0718-467X",
"affiliations": [
{
"name": "Institute for Risk Assessment Sciences, Utrecht University"
}
]
}
],
"submitter": {
"given_name": "Javier",
"family_name": "Mancilla Galindo",
"orcid": "0000-0002-0718-467X"
},
"license": "CC-BY-4.0",
"rights_url": "https://creativecommons.org/licenses/by/4.0/legalcode",
"publisher": "Open Causal",
"language": "en",
"layout": {
"coordinate_system": "screen"
}
},
"nodes": [
{
"id": "Epsilon_asb",
"label": "Epsilon_asb",
"unmeasured": true,
"position": {
"x": 0.999,
"y": 6.027
}
},
{
"id": "Epsilon_rcs",
"label": "Epsilon_rcs",
"unmeasured": true,
"position": {
"x": 0.0,
"y": 5.932
}
},
{
"id": "U_asb",
"label": "U_asb",
"unmeasured": true,
"position": {
"x": 0.623,
"y": 3.993
}
},
{
"id": "U_rcs",
"label": "U_rcs",
"unmeasured": true,
"position": {
"x": -0.323,
"y": 3.991
}
},
{
"id": "X_asbestos_true",
"label": "X_asbestos_true",
"unmeasured": true,
"position": {
"x": 1.0,
"y": 5.0
}
},
{
"id": "X_rcs_true",
"label": "X_rcs_true",
"unmeasured": true,
"position": {
"x": 0.0,
"y": 5.0
}
},
{
"id": "agegroup",
"label": "agegroup",
"position": {
"x": 0.115,
"y": 1.155
}
},
{
"id": "asbestos_cum0",
"label": "asbestos_cum0",
"role": "exposure",
"position": {
"x": 1.0,
"y": 4.0
}
},
{
"id": "industry",
"label": "industry",
"unmeasured": true,
"position": {
"x": 0.495,
"y": 4.727
}
},
{
"id": "packyears",
"label": "packyears",
"position": {
"x": 1.977,
"y": 2.04
}
},
{
"id": "sex",
"label": "sex",
"position": {
"x": 0.618,
"y": 0.804
}
},
{
"id": "silica_cum0",
"label": "silica_cum0",
"role": "exposure",
"position": {
"x": 0.0,
"y": 4.0
}
},
{
"id": "status",
"label": "status",
"role": "outcome",
"position": {
"x": 2.0,
"y": 5.0
}
},
{
"id": "study_name",
"label": "study_name",
"position": {
"x": -0.106,
"y": 1.928
}
},
{
"id": "time_quit",
"label": "time_quit",
"position": {
"x": 1.496,
"y": 0.909
}
}
],
"edges": [
{
"source": "Epsilon_asb",
"target": "X_asbestos_true",
"type": "directed"
},
{
"source": "Epsilon_rcs",
"target": "X_rcs_true",
"type": "directed"
},
{
"source": "U_asb",
"target": "asbestos_cum0",
"type": "directed"
},
{
"source": "U_rcs",
"target": "silica_cum0",
"type": "directed"
},
{
"source": "X_asbestos_true",
"target": "status",
"type": "directed"
},
{
"source": "X_rcs_true",
"target": "status",
"type": "directed",
"curvature": -0.486
},
{
"source": "agegroup",
"target": "asbestos_cum0",
"type": "directed"
},
{
"source": "agegroup",
"target": "packyears",
"type": "directed"
},
{
"source": "agegroup",
"target": "silica_cum0",
"type": "directed"
},
{
"source": "agegroup",
"target": "status",
"type": "directed"
},
{
"source": "agegroup",
"target": "time_quit",
"type": "directed"
},
{
"source": "asbestos_cum0",
"target": "X_asbestos_true",
"type": "directed"
},
{
"source": "industry",
"target": "asbestos_cum0",
"type": "directed"
},
{
"source": "industry",
"target": "silica_cum0",
"type": "directed"
},
{
"source": "packyears",
"target": "asbestos_cum0",
"type": "directed"
},
{
"source": "packyears",
"target": "silica_cum0",
"type": "directed"
},
{
"source": "packyears",
"target": "status",
"type": "directed"
},
{
"source": "packyears",
"target": "time_quit",
"type": "directed"
},
{
"source": "sex",
"target": "asbestos_cum0",
"type": "directed"
},
{
"source": "sex",
"target": "packyears",
"type": "directed"
},
{
"source": "sex",
"target": "silica_cum0",
"type": "directed"
},
{
"source": "sex",
"target": "status",
"type": "directed"
},
{
"source": "sex",
"target": "time_quit",
"type": "directed"
},
{
"source": "silica_cum0",
"target": "X_rcs_true",
"type": "directed"
},
{
"source": "study_name",
"target": "asbestos_cum0",
"type": "directed"
},
{
"source": "study_name",
"target": "silica_cum0",
"type": "directed"
},
{
"source": "study_name",
"target": "status",
"type": "directed"
},
{
"source": "time_quit",
"target": "asbestos_cum0",
"type": "directed"
},
{
"source": "time_quit",
"target": "silica_cum0",
"type": "directed"
},
{
"source": "time_quit",
"target": "status",
"type": "directed"
}
]
}
source,target,edge_type Epsilon_asb,X_asbestos_true,directed Epsilon_rcs,X_rcs_true,directed U_asb,asbestos_cum0,directed U_rcs,silica_cum0,directed X_asbestos_true,status,directed X_rcs_true,status,directed agegroup,asbestos_cum0,directed agegroup,packyears,directed agegroup,silica_cum0,directed agegroup,status,directed agegroup,time_quit,directed asbestos_cum0,X_asbestos_true,directed industry,asbestos_cum0,directed industry,silica_cum0,directed packyears,asbestos_cum0,directed packyears,silica_cum0,directed packyears,status,directed packyears,time_quit,directed sex,asbestos_cum0,directed sex,packyears,directed sex,silica_cum0,directed sex,status,directed sex,time_quit,directed silica_cum0,X_rcs_true,directed study_name,asbestos_cum0,directed study_name,silica_cum0,directed study_name,status,directed time_quit,asbestos_cum0,directed time_quit,silica_cum0,directed time_quit,status,directed
dag {
Epsilon_asb [latent,pos="0.999,6.027"]
Epsilon_rcs [latent,pos="0,5.932"]
U_asb [latent,pos="0.623,3.993"]
U_rcs [latent,pos="-0.323,3.991"]
X_asbestos_true [latent,pos="1,5"]
X_rcs_true [latent,pos="0,5"]
agegroup [pos="0.115,1.155"]
asbestos_cum0 [exposure,pos="1,4"]
industry [latent,pos="0.495,4.727"]
packyears [pos="1.977,2.04"]
sex [pos="0.618,0.804"]
silica_cum0 [exposure,pos="0,4"]
status [outcome,pos="2,5"]
study_name [pos="-0.106,1.928"]
time_quit [pos="1.496,0.909"]
Epsilon_asb -> X_asbestos_true
Epsilon_rcs -> X_rcs_true
U_asb -> asbestos_cum0
U_rcs -> silica_cum0
X_asbestos_true -> status
X_rcs_true -> status
agegroup -> asbestos_cum0
agegroup -> packyears
agegroup -> silica_cum0
agegroup -> status
agegroup -> time_quit
asbestos_cum0 -> X_asbestos_true
industry -> asbestos_cum0
industry -> silica_cum0
packyears -> asbestos_cum0
packyears -> silica_cum0
packyears -> status
packyears -> time_quit
sex -> asbestos_cum0
sex -> packyears
sex -> silica_cum0
sex -> status
sex -> time_quit
silica_cum0 -> X_rcs_true
study_name -> asbestos_cum0
study_name -> silica_cum0
study_name -> status
time_quit -> asbestos_cum0
time_quit -> silica_cum0
time_quit -> status
}
Discussion
No comments yet. Be the first to comment!