f8b21af4be
10_Wiki/Topics 대규모 정리: - 오류 캡처/미완성 stub 문서 227개 제거 - 교차폴더 중복 43클러스터 병합 (63파일 → redirect) - 링크명 정규화: 깨진 링크 수정·redirect 직결·개념 매핑 ~2,400건 - 카테고리 MOC 6개 신규 생성 - Graph 섹션 미해결 related-keyword 링크 10,058건 제거 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
154 lines
5.9 KiB
Markdown
154 lines
5.9 KiB
Markdown
---
|
|
id: wiki-2026-0508-etiology-of-disease
|
|
title: Etiology of Disease
|
|
category: 10_Wiki/Topics
|
|
status: verified
|
|
canonical_id: self
|
|
aliases: [Disease Causation, Pathogenesis, Causal Inference (Medicine)]
|
|
duplicate_of: none
|
|
source_trust_level: A
|
|
confidence_score: 0.9
|
|
verification_status: applied
|
|
tags: [medicine, epidemiology, causal-inference, pathology]
|
|
raw_sources: []
|
|
last_reinforced: 2026-05-10
|
|
github_commit: pending
|
|
tech_stack:
|
|
language: r
|
|
framework: epidemiology
|
|
---
|
|
|
|
# Etiology of Disease
|
|
|
|
## 매 한 줄
|
|
> **"매 disease 의 cause = single agent 가 아닌 web of necessary + sufficient + component causes"**. 매 1840 Henle-Koch 의 single-pathogen postulate → 매 Rothman 1976 sufficient-component model → 매 2026 의 multi-omics + Mendelian randomization + DAG-based causal inference.
|
|
|
|
## 매 핵심
|
|
|
|
### 매 causation models
|
|
- **Henle-Koch postulates**: 매 isolation, transmission, re-isolation — 매 monocausal infectious era.
|
|
- **Bradford Hill criteria (1965)**: 9 viewpoints — strength, consistency, specificity, temporality, biological gradient, plausibility, coherence, experiment, analogy.
|
|
- **Rothman sufficient-component**: 매 disease = sum of "pies", each pie = sufficient cause = set of component causes. 매 same disease 의 multiple sufficient sets.
|
|
- **Counterfactual / DAG**: 매 Pearl 의 do-calculus, 매 confounder identification.
|
|
|
|
### 매 causal categories
|
|
- **Necessary**: 매 cause 없이 disease 없음 (예: HIV → AIDS).
|
|
- **Sufficient**: 매 cause 만 으로 disease (rare in practice).
|
|
- **Component**: 매 sufficient cause 의 part (예: 흡연 + asbestos + genetic).
|
|
- **Risk factor**: 매 association 만 — causality 의 unconfirmed.
|
|
|
|
### 매 응용
|
|
1. Smoking → lung cancer (Doll & Hill 1950).
|
|
2. H. pylori → peptic ulcer (Marshall 1984).
|
|
3. HPV → cervical cancer (zur Hausen 2008 Nobel).
|
|
4. APOE4 → Alzheimer (genetic risk, not deterministic).
|
|
|
|
## 💻 패턴
|
|
|
|
### Bradford Hill scoring
|
|
```python
|
|
from dataclasses import dataclass
|
|
|
|
@dataclass
|
|
class HillCriteria:
|
|
strength: float # RR or OR
|
|
consistency: int # # of confirming studies
|
|
temporality: bool # exposure precedes outcome
|
|
gradient: bool # dose-response
|
|
plausibility: bool # mechanism known
|
|
coherence: bool # fits prior knowledge
|
|
experiment: bool # RCT / natural experiment
|
|
specificity: bool
|
|
|
|
def hill_score(c: HillCriteria) -> int:
|
|
score = 0
|
|
score += 2 if c.strength >= 3 else 1 if c.strength >= 2 else 0
|
|
score += min(c.consistency // 3, 3)
|
|
score += [c.temporality, c.gradient, c.plausibility,
|
|
c.coherence, c.experiment, c.specificity].count(True)
|
|
return score # ≥7 = strong causal evidence
|
|
```
|
|
|
|
### Confounder adjustment via DAG (DoWhy)
|
|
```python
|
|
import dowhy
|
|
from dowhy import CausalModel
|
|
|
|
model = CausalModel(
|
|
data=df,
|
|
treatment="smoking",
|
|
outcome="lung_cancer",
|
|
common_causes=["age", "sex", "ses"],
|
|
instruments=["tobacco_tax"],
|
|
)
|
|
identified = model.identify_effect()
|
|
estimate = model.estimate_effect(identified, method_name="backdoor.linear_regression")
|
|
refute = model.refute_estimate(identified, estimate, method_name="placebo_treatment_refuter")
|
|
```
|
|
|
|
### Mendelian randomization
|
|
```python
|
|
# Instrumental variable: SNP → exposure → outcome
|
|
# (SNP independent of confounders)
|
|
import statsmodels.api as sm
|
|
|
|
# Wald ratio: beta_outcome / beta_exposure
|
|
def mendelian_ratio(snp_exposure_beta: float, snp_outcome_beta: float) -> float:
|
|
return snp_outcome_beta / snp_exposure_beta
|
|
```
|
|
|
|
### Population attributable fraction
|
|
```python
|
|
def paf(prevalence: float, relative_risk: float) -> float:
|
|
"""Fraction of disease attributable to exposure in population."""
|
|
return prevalence * (relative_risk - 1) / (1 + prevalence * (relative_risk - 1))
|
|
|
|
# Smoking prevalence 25%, RR for lung cancer 20:
|
|
print(paf(0.25, 20)) # ~0.83 → 83% of lung cancer attributable to smoking
|
|
```
|
|
|
|
### Sufficient-component pie visualization
|
|
```python
|
|
def sufficient_pies(disease: str) -> list[set[str]]:
|
|
"""Each pie = a set of component causes that together suffice."""
|
|
return [
|
|
{"smoking", "genetic_susceptibility"}, # pie 1
|
|
{"asbestos", "smoking"}, # pie 2
|
|
{"radon", "smoking", "vitamin_deficiency"}, # pie 3
|
|
]
|
|
```
|
|
|
|
## 매 결정 기준
|
|
| 상황 | Method |
|
|
|---|---|
|
|
| Single pathogen, acute | Koch postulates (modernized) |
|
|
| Chronic, multifactorial | Bradford Hill + Rothman |
|
|
| Observational with confounders | DAG + backdoor adjustment |
|
|
| Genetic causation suspected | Mendelian randomization |
|
|
| RCT impossible (ethics) | quasi-experiment + sensitivity analysis |
|
|
|
|
**기본값**: 매 Bradford Hill + DAG-based confounder adjustment + sensitivity analysis (E-value).
|
|
|
|
## 🔗 Graph
|
|
- 부모: [[Causal Inference]]
|
|
|
|
## 🤖 LLM 활용
|
|
**언제**: 매 literature synthesis 의 mechanism aggregation, 매 DAG 의 candidate confounder enumeration, 매 sufficient-component 의 component proposal.
|
|
**언제 X**: 매 final causation claim 의 LLM 의 의존 — 매 effect estimate 의 source data + statistical method 의 검증 필수.
|
|
|
|
## ❌ 안티패턴
|
|
- **Single-cause thinking**: 매 multifactorial disease 의 monocausal explanation — 매 H. pylori 발견 전 의 stress 의 ulcer 의 단일 cause 의 오해.
|
|
- **Correlation = causation**: 매 RR 만 으로 causal claim — 매 confounding, reverse causation, selection bias 의 무시.
|
|
- **Ignoring temporality**: 매 cross-sectional study 의 causal direction 의 결정 X.
|
|
- **Hill criteria 의 checklist 화**: 매 의 mechanical scoring — 매 viewpoints, not rules (Hill 의 의도).
|
|
|
|
## 🧪 검증 / 중복
|
|
- Verified (Rothman & Greenland "Modern Epidemiology" 4th ed, Hernán & Robins "Causal Inference: What If" 2024, Pearl "Causality" 2nd ed).
|
|
- 신뢰도 A.
|
|
|
|
## 🕓 Changelog
|
|
| 날짜 | 변경 |
|
|
|---|---|
|
|
| 2026-05-08 | Phase 1 |
|
|
| 2026-05-10 | Manual cleanup — Hill criteria, Rothman pies, DAG/MR patterns 추가 |
|