RNA Quantification, RNA 定量

linnil1
8 min readSep 2, 2020

--

簡單介紹 RNA-seq 表現量(Abundance) 的基本概念

觀念

Central Dogma 告訴我們

  • DNA 會 transcript(轉錄) 成 RNA
  • RNA 會 translate(轉譯) 成 protein(蛋白質)

RNA有以下特點

  • RNA 跟 DNA 是比 protein 更容易被 sequencing(定序) 出來的
  • protein 是有功能的,所以找到生成 protein 的源頭 RNA,就代表的某個機制或是功能有在運作
  • RNA 的 sequences 越多,代表著那個機制越活耀(如下圖)
  • DNA 數量永遠一樣(一個細胞就是兩套),所以要讀的就是 RNA 的數量
Modified from Chen’s youtube(https://www.youtube.com/watch?v=_xtwTl60Msk)

流程

那把 RNA 一條條抽出來計算次數就好啦 --> 哪有這麼好康ㄉ

Reads

目前技術使用 NGS(Next-Generation Sequencing) 平台,也就是說你會收到 短序列的 reads,分成 single-end 跟 paired-end 兩種最多。Read Length 從 50bp ~ 300bp 都有。300 真的很短,人類的 DNA 總長有 3G(3,000,000,000) 這麼長。

Reads 怎麼來的呢,可以看這個影片 https://www.youtube.com/watch?v=fCd6B5HRaZ8 ,就是你的 RNA 會被適度地打斷,然後用這個平台獲取 短reads 後,再進行下個步驟。

介紹 single-end 跟 paired-end

Read Mapping

只要有足夠長度的 read length,就可以辨識出那條 reads 是從哪個 sequences 來的,就可以把它貼回去。

Modified from wiki https://en.wikipedia.org/wiki/Genomics#/media/File:Mapping_Reads.png

你上圖中,你可以發現每個 base 都要有均勻覆蓋到(Coverage),而且越多次越好(Depth),畢竟總是會有些 sequencing error 會出現。但是越多的 reads 就要越多錢,當然。

Transcriptome Read Mapping

假設你有 RNA 的資料庫的話,那就很簡單,把 read mapping 回去就好了(註: RNA 在這裡又叫 transcript, 很多個叫 transcriptome)

Copied from https://www.semanticscholar.org/paper/RNA-Seq-Mapping-Errors-When-Using-Incomplete-of-Pyrkosz-Cheng/477ddd62263b12ff437a2dbfd0f7ac5553864d4d/figure/1

Genome Read Mapping

你可能沒有 RNA 資料庫,只有 DNA 資料庫,其實也沒關係,你還是可以 mapping,要注意的是,如果是 mRNA 的話,必須使用 gapped mapper,如下圖,mRNA 有做過 splicing(切掉 intron) ,而 DNA 則是有 intron, 所以你的一條 read 有可能會 map 到不同的兩邊,演算法就會不一樣。

相反的,剛剛上面那種 alignment 的方法就是 Ungapped mapper。

Reference-free Read Mapping

你可能沒有 RNA ,也沒有 DNA 資料,可能是新物種之類的。這個稍微麻煩一點,需要先 Assemble(組出) transcripts 再做 read-mapping。這部分的細節會在下篇 Quantification on De-novo assembled transcriptome 中會提到

表現量

Abundance,有時叫 expression,就是這個 transcript 被表現了多少,也就是出現的比例

Count Table

第一,我們用 read-mapping 得到了這個 transcript 內多少個 read 能 mapped 到,如下表格

| Transcript | Sample1 Read Counts | Sample2 Read Counts |
|------------|---------------------|---------------------|
| A(2kb) | 6 | 2 |
| B(1kb) | 2 | 1 |

然後考慮怎麼去 normalize 資料。

Transcript Length

在假設每個 base 都以一樣的機率成為 reads 的起點時

因為 Transcript2 比較長,所以她的產生的 Reads 會比較多,所以 count 會跟 length 有關。如下圖 Transcript1 天生就是有2個單位,Transcript2 則是有4個

第二點是不同的 reads 長度會不同,所以我們就加權這個單位,他們稱加權後的值叫 effective length,講白話就是他天生因為長度而有的基本單位,這個單位顯示 Reads Count 會因為 Transcript 跟 Read 長度而產生的不平等

TPM

目前大家應該都是用 TPM 當作 abundance 的標準

X_i is the reads counts in Transcript i

首先他把 Counts /effective length,也就確保不會受長度影響(包括 transcript 跟 reads 的)

| Transcript | Sample1 Counts/length | Sample2 Counts/length |
|------------|-----------------------|-----------------------|
| A(2kb) | 3 | 1 |
| B(1kb) | 2 | 1 |

接下來 Sample1 明顯比 Sample2 多,可能是因為本來我們 sequencing 做的 reads 數就比較多,我們直接 Normalize 他就好,也就是公式分母的 Summation。

| Transcript | Sample1 TPM | Sample2 TPM |
|------------|-------------|-------------|
| A(2kb) | 0.6 | 0.5 |
| B(1kb) | 0.4 | 0.5 |

這樣的話,就可以很好的比較不同實驗的 Abundance 了。

有關為什麼只用 TPM 而不用 RPKM FPKM 這裡其實有很好的說明 https://rna-seqblog.com/rpkm-fpkm-and-tpm-clearly-explained/

接下來

得到 transcripts 的 abundance 後,你就可以做接下來的分析:

  1. 分析 case, control (實驗組對照組) 的 expression 有沒有差異
  2. 把有差異的那些 transcripts 跟資料庫比對一下,是否代表某些機制出了問題, e.g. 剛好那些 transcripts 的功能都跟聽力有關之類的。
  3. 也可以去分析是否是因為哪些 mutation(突變)導致這個 expression 的改變

本篇講的概念就是這張圖:

Copied from Chen’s youtube(https://www.youtube.com/watch?v=_xtwTl60Msk)

覺得棒 記得 claps

Reference

--

--

linnil1

目前做生物資訊與演算法,過去做過 Machine Vision(Deep learning),維護伺服器(k8s, docker),部分IOT(rpi, arduino)