模組 9 · Methylation primer
甲基化入門
介紹 5mC、allele-specific methylation、MM/ML tags,以及區分直接證據與註記的方法。
本模組學習目標
- 說明 5mC 是什麼、ONT 為什麼能直接偵測它
- 說明 MM/ML tag 可能在流程中遺失的情況,以及保留方法
- 區分「甲基化當作證據」與「甲基化當作事後註記」兩種用法
- 說明什麼是 within-ALT residual structure:固定 haplotype 與 allele 之後,仍存在的 read 層級甲基化分群
為什麼重要
一條 ONT read 除了序列,還帶著一串「這個 C 有沒有被加上甲基」的紀錄。 這件事的用處不只是「多一種資料」:同一群細胞的甲基化模式會比較像, 所以甲基化其實是一個關於「這條 read 來自哪一群細胞」的線索 —— 而 bulk 資料本來查不到這件事。
實驗室有兩個題目用到這個線索,但用法剛好相反: 一個把它當成判斷依據(會影響結果),另一個刻意不讓它影響判斷(只當事後註記)。 這一章先講清楚兩個題目各自在做什麼,再談為什麼其中一個要刻意不用。
概念與互動
5mC:序列之外的表觀遺傳資訊
5mC5mC 5-甲基胞嘧啶胞嘧啶第 5 個碳上的甲基化修飾。這是常見的 DNA 甲基化形式,主要見於 CpG;可影響轉錄調控,效應依基因組位置與細胞類型而異。5-methylcytosine, the commonest DNA methylation mark, usually at CpG sites. Affects expression without changing sequence.完整條目 → 是在胞嘧啶(C)的 5 位碳上加上甲基。在序列字母表示上,它不改變 C 的識別; 5mC 可與基因調控及表現相關,但作用取決於基因組脈絡。
在哺乳類,5mC 主要集中於 CpGCpG序列上一個 C 後接一個 G(p 代表兩者之間的磷酸鍵)。哺乳類多數 5mC 位於 CpG,特定細胞或情況亦可見非 CpG 甲基化。A cytosine followed by a guanine. Most mammalian 5mC occurs at CpG sites, although non-CpG methylation is also observed in particular cells and contexts.完整條目 → 位點(一個 C 後面接著一個 G),但也可能出現在非 CpG 脈絡。 在本節的分析中,基本單位是「某個 CpG 位點上,一條 read 的 methylated 或 unmethylated 狀態」。
bisulfite-seq 是測量甲基化的常用方法之一,會將未甲基化的 C 轉換為 U(在定序中通常讀為 T),流程較為繁複。 ONTONT 奈米孔定序Oxford Nanopore Technologies。以電流訊號讀取 DNA,可產生長 read;在 native-DNA 流程與適當模型下,可由訊號推定 5mC,通常不需 bisulfite 轉換。Oxford Nanopore Technologies. Reads DNA through ionic-current signals, producing long reads. With native DNA and a suitable model, 5mC can be inferred without bisulfite conversion.完整條目 → 可利用電流訊號搭配修飾辨識模型推定 5mC,通常不需 bisulfite 前處理; 在完成修飾辨識且保留 MM/ML 後,同一條 read 可同時提供序列變異與甲基化狀態。
這些資料在程式裡是什麼形狀
先把資料結構看清楚,後面兩種用法就都好懂了。 一條 read 在一個區域內會經過好幾個 CpG 位點,每個位點上它是 methylated 或 unmethylated —— 所以一條 read 就是一個 0/1 向量,一個區域就是一張 read × CpG 的表。
用法一:當作證據 —— 判斷一個候選是不是 somatic
第一個題目是 tumor-only 的 somatic 變異判讀:手上有一堆候選位置,要決定哪些是真的 somatic 變異。 甲基化在這裡派上用場的理由很具體 —— somatic 變異只存在腫瘤細胞裡,所以帶著它的那些 read 全部來自同一群細胞, 而不帶它的 read 則來自腫瘤與正常細胞的混合。兩側的甲基化組成因此會不一樣。
實際的特徵有三類:兩側各自的甲基化覆蓋量與其差距、每一側是單一還是混合的比例, 以及把兩側的平均甲基化程度畫成散布圖後的形狀差異。 分類器(XGBoost)本身不懂生物學,它只是學會「這幾個數字長這樣時,候選通常是真的」。
用法二要用到的任務:subclone 重建在做什麼
第二個題目常被術語擋住,但它的核心其實是一個很單純的組合問題。
腫瘤細胞一代一代分裂,過程中只會多拿到突變,不會把突變還回去。 所以拿一個小區域、看其中 k 個 somatic 位置,每個細胞在這 k 個位置上就是一個 0/1 向量; 一個細胞分裂出的後代,向量只會多出幾個 1。
bulk 定序給你的每一條 read,就是這些向量的一次取樣(read 夠長才能同時覆蓋好幾個位置)。 於是問題變成:已知看到了哪些向量,什麼樣的「一次翻一個 0→1」的路徑能最省步數地產生它們? 那條路徑就是這個區域的候選演化順序。
這樣看的話,subclone 重建的輸出就是「這個區域內、突變發生順序的候選解」, 而不是一棵完整的腫瘤演化樹。也因為是最小成本解,並列的候選會全部保留,不強行選一個。
同一個狀態裡,read 還能再分群
現在把甲基化接回第二個題目。假設一群 read 的 haplotype 相同、在每個 somatic 位置上的 0/1 向量也完全相同 —— 依序列來看它們是「同一個狀態」,無法再分。 但它們的甲基化模式可能明顯分成兩群:
可觀察到:ALT reads 仍可再分成兩群。 它們的 allele 與 haplotype 相同,僅依序列無法區分,但甲基化模式可能不同。
這個現象稱為 within-ALT residual structure;研究依其統計定義,在七個資料集中將其量化為主要殘餘變異來源(51.2%–80.4%)。 換句話說:固定 haplotype 與 allele 後,仍可觀察到額外的 read-level 甲基化分群。
資料說明:資料集數為何多於細胞株數
資料集不等於細胞株。同一個細胞株可能有多份不同 basecaller/流程的資料;例如 HCC1395 有 HKU 與 NYGC 兩份。
它的意義是:上一節那棵樹的一個節點裡,可能還藏著更細的分群 —— 序列證據已經用完了,但資料還沒說完。這正是甲基化在第二個題目裡的位置: 它標記已經建好的節點,而不參與建樹。
兩種角色的對照
兩個題目用的是同一份 read × CpG 表,但甲基化在流程裡的位置完全不同:
| 用法一 somatic 判讀:當作證據 | 用法二 subclone 重建:當作註記 | |
|---|---|---|
| 在流程的哪一步進來 | 判斷之前 —— 成為分類器的輸入特徵 | 候選拓撲完成之後才附加 |
| 會影響結果嗎 | 會 —— 它可影響候選是否保留 | 在此實作中不會 —— 不參與搜尋、成本或排序 |
| 是否可作為獨立驗證 | 同一資料流程中不宜宣稱為獨立驗證 | 若未參與推論,可作為獨立觀察 |
為什麼用法二要刻意不用?因為那個題目最想知道的,正是「這棵樹對不對」。 如果甲基化已經幫忙選過樹,再拿甲基化差異來說「看,這棵樹的分支確實有甲基化差異」, 那只是把自己的輸入念一次而已 —— 這是循環論證。
同一個原則也適用於用法一:那裡的甲基化已經進了模型,所以評估模型效能時 必須用沒有參與訓練的資料,不能拿甲基化特徵本身當成「模型是對的」的證據。
真實證據
實務限制之一是甲基化資料的覆蓋範圍。這裡要留意計數單位:M2 列出的是六個細胞株, 而評估用的是資料集,同一株可能有多份(HCC1395 的 HKU 與 NYGC)。 以細胞株計,六個裡只有五個有可用的甲基化資料;以資料集計則多於五份。 不論用哪個單位,能做甲基化分析的樣本都比能做序列分析的少; 因此甲基化較適合作為區域層級的補充證據,而非唯一判準。
研究統計各資料集中帶有穩定甲基化差異的 sSNV 位點比例, COLO829 為 9.5%、H2009 為 35.4%,資料集間差異明顯。不可評估的主要限制之一是 ALT read 的 coverage 不足; 要估計兩組甲基化差異,兩邊都需要足夠且相對平衡的 reads。
對實驗設計的影響
依區域與效應大小,甲基化差異分析通常需要足夠且平衡的 coverage。 若研究問題包含甲基化,應在設計階段提高目標 coverage,以降低不可評估位點的比例。
先提出預測,再查看解答
若研究問題是判定「某個 somatic 突變造成周圍甲基化改變」,
現有 tumor ONT 資料顯示帶突變的 reads 甲基化程度較高。
請評估此證據是否足以支持因果結論,並指出需要補充的資料。
展開答案
不足以支持因果結論。目前觀察到的是相關性,且至少有四個替代解釋尚未排除:
- 細胞族群不同 —— 帶突變與不帶突變的 reads 可能來自不同細胞群;在配對樣本中,後者也可能來自正常細胞。 兩者的甲基化背景可能不同,未必由突變造成。
- 反向因果 —— 也可能是該區域原本的甲基化狀態讓突變比較容易發生。
- coverage 不對等 —— ALT 那邊 read 少,比例估計本來就比較不穩。
- 批次或區域效應 —— 該區域的序列脈絡就會造成 basecaller 的甲基化判讀偏差。
至少可比較配對正常樣本的同一區域,並納入獨立重複或 allele-aware 分析: 若 normal 與 tumor REF reads 的甲基化模式相似,可降低區域背景差異的解釋,但不能完全排除。
因此,該方法將甲基化定位為事後註記而非推論證據;在缺乏獨立對照時,這可避免過度的因果解讀。
實作練習
甲基化資訊存在 BAM 的哪裡
前面那張 0/1 表不是憑空來的,它從 BAM 的兩個 tag 讀出來:
| tag | 內容 |
|---|---|
MMMM/ML tagBAM 中儲存每條 read 甲基化判讀的兩個 tag: | 修飾類型及其相對於 read 上標準鹼基的位置與跳過規則 |
ML | 與 MM 項目對應的修飾機率或信心,以 0–255 的位元組值編碼 |
資料格式:ML 是機率,不是二元標籤
ML 是機率而不是 0/1:要得到前面那張表,還需要一個門檻把機率二值化,
或直接保留機率值。門檻怎麼定會影響分群結果,屬於分析選擇而非資料本身。
重新比對可能遺失 MM/ML 標籤
若未明確傳遞 SAM tags,將帶有甲基化的 BAM 轉成 FASTQ 再重新比對時,通常不會保留 MM/ML。 結果可能是格式正常、但修飾欄位空白的 BAM;工具是否發出警告取決於實作與版本。
在以下 samtools→minimap2 流程中,需同時保留 tags 並啟用相應選項:
samtools fastq -T '*' methylcall.raw.bam > raw.fastq
minimap2 -ax map-ont -y reference.fasta raw.fastq
-T '*' 將 tags 帶入 FASTQ comment,-y 讓 minimap2 將其寫回 BAM。
請確認工具版本及 FASTQ comment 未被其他步驟改寫;缺少 tags 時,後續需要 MM/ML 的分析將無法取得修飾資訊。
確認 BAM 是否包含甲基化資料
先確認必要的 MM/ML tags,以免後續修飾分析缺少資料:
# 抽查一條 read 是否包含 MM / ML tags
samtools view methyl.bam | head -1 | tr '\t' '\n' | grep -E '^(MM|ML|Mm|Ml):'
# 統計帶有 MM tag 的 reads(抽查多條 reads,不只查看第一條)
total=$(samtools view -c methyl.bam)
withmod=$(samtools view methyl.bam | grep -c 'MM:Z:')
echo "$withmod / $total 條 read 帶甲基化 tag"
若第二個數字為 0,先確認原始 BAM 是否已完成修飾辨識及 tag 命名格式;可能是尚未呼叫修飾,也可能在前處理中遺失。可用以下流程重新保留 tags:
samtools fastq -T '*' original.bam > with_tags.fastq
minimap2 -ax map-ont -y reference.fasta with_tags.fastq | \
samtools sort -o remapped.bam && samtools index remapped.bam
提取並統計甲基化訊號
# 產生每個 CpG 位點的甲基化比例(bedMethyl 格式)
modkit pileup methyl.bam output.bed --ref reference.fasta
# 依 haplotype 分開統計(需要先 haplotag)
modkit pileup methyl.bam out_hp.bed --ref reference.fasta --partition-tag HP
--partition-tag HP 可將甲基化依 haplotype 分層統計,
以比較兩條 haplotype 的甲基化模式。依 M6 所述,haplotype 方向僅在同一 phase block 內一致,
因此統計應限制於同一 phase block,或先完成方向校正。
在 IGV 中檢視甲基化
在支援 base-modification 且 BAM 含有效 MM/ML、參考序列與相容版本時,IGV 可顯示 ONT 甲基化。載入 BAM 之後右鍵 → Color alignments by → base modification (5mC)。 搭配前面的 Group by phase,即可同時檢視 haplotype 與甲基化資訊。
學習檢核
本模組術語
- 5mC(5-甲基胞嘧啶)
- 胞嘧啶第 5 個碳上的甲基化修飾。這是常見的 DNA 甲基化形式,主要見於 CpG;可影響轉錄調控,效應依基因組位置與細胞類型而異。
- CpG
- 序列上一個 C 後接一個 G(p 代表兩者之間的磷酸鍵)。哺乳類多數 5mC 位於 CpG,特定細胞或情況亦可見非 CpG 甲基化。
- MM/ML tag
- BAM 中儲存每條 read 甲基化判讀的兩個 tag:
MM記錄位置、ML記錄機率。在轉換或重新比對流程中可能遺失,需確認 tags 是否保留。 - ONT(奈米孔定序)
- Oxford Nanopore Technologies。以電流訊號讀取 DNA,可產生長 read;在 native-DNA 流程與適當模型下,可由訊號推定 5mC,通常不需 bisulfite 轉換。