淺談RPKM,FPKM,RPM,TPM的區(qū)別
在RNA-Seq的分析中,我們常用RPKM、FPKM和TPM作為轉(zhuǎn)錄組數(shù)據(jù)定量的表示方法。它們都是對表達量進行標(biāo)準(zhǔn)化的方法,為何不直接用read數(shù)表示,而選標(biāo)準(zhǔn)化呢,因為落在一個基因區(qū)域內(nèi)的read數(shù)目取決于基因長度和測序深度?;蛟介Lread數(shù)目越多,測序深度越高,則一個基因?qū)?yīng)的read數(shù)目也相對越多。所以必須要標(biāo)準(zhǔn)化,而標(biāo)準(zhǔn)化的對象就是基因長度與測序深度。
RPKM:
Reads Per Kilobase of exon modelper Million mapped reads (每千個堿基的轉(zhuǎn)錄每百萬映射讀取的reads),主要用來對單端測序(single-end RNA-seq)進行定量的方法。
RPKM(推薦軟件,Range) 的計算公式:
$RPKM= total exon reads/ (mapped reads (Millions) * exon length(KB))$;
total exon reads:某個樣本mapping到特定基因的外顯子上的所有的reads;
mapped reads ( Millions ) :某個樣本的所有reads總和;
exon length( KB ):某個基因的長度(外顯子的長度的總和,以KB為單位)。
你可以用這個公式計算基因,外顯子,轉(zhuǎn)錄本的表達,這里以基因的表達為例進行說明。在一個樣本中一個基因的RPKM等于落在這個基因上的總的read數(shù)(total exon reads)與這個樣本的總read數(shù)(mapped reads (Millions))和基因長度(exon length( KB )) 的乘積的比值。
FPKM:
Fragments Per Kilobase of exon model per Million mapped fragments(每千個堿基的轉(zhuǎn)錄每百萬映射讀取的fragments),主要是針對pair-end測序表達量進行計算。
FPKM (推薦軟件,cufflinks) 和RPKM 的計算方法基本一致。
FPKM和RPKM的區(qū)別就是一個是fragment,一個是read。對于單末端測序數(shù)據(jù),由于Cufflinks計算的時候是將一個read當(dāng)做一個fragment來算的,故而FPKM等同于RPKM。 對于雙末端測序而言,如果一對paired-read都比對上了,那么這一對paired-read稱之為一個fragment,而如果一對paired-Read中只有一個比對上了,另外一個沒有比對上,那么就將這個比對上的read稱之為一個fragment.而計算RPKM時,如果一對paired-read都比對上了會當(dāng)成兩個read計算,而如果一對paired-read中只有一個比對上了,另外一個沒有比對上,那么就計read數(shù)為1。 故而即使是理論上將各個參數(shù)都設(shè)置成一樣的,也并不能說FPKM=2RPKM。對于單末端測序,雖然理論上FPKM等同于RPKM, 但是實際上即使是使用同一個mapping軟件得到的mapping結(jié)果,然后再分別去計算同一個基因的RPKM (自己人工計算,或者用現(xiàn)成的一些軟件都能算)和FPKM(用Cufflinks計算),結(jié)果卻仍然是不同,因為Cufflinks有自己的模型和自己的一些內(nèi)在算法。
RPM/CPM:
Reads/Counts of exon model per Million mapped reads (每百萬映射讀取的reads).
RPM的計算公式:
RPM=total exon reads / mapped reads (Millions)
total exon reads:某個樣本mapping到特定基因的外顯子上的所有的reads;
mapped reads (Millions) :某個樣本的所有reads總和;
RPM per gene is calculated as the number of reads per gene divided by the number of single-mapping reads per sample library times one million.
由定義和計算公式可直接看出RPM與RPKM的區(qū)別,這里就不做說明了。
TPM:
Transcripts Per Kilobase of exonmodel per Million mapped reads (每千個堿基的轉(zhuǎn)錄每百萬映射讀取的Transcripts),優(yōu)化的RPKM計算方法,可以用于同一物種不同組織的比較。
TPM (推薦軟件,RSEM) 的計算公式:
TPMi={( Ni/Li )*1000000 } / sum( Ni/Li+……..+ Nm/Lm )
Ni:mapping到基因i上的read數(shù);
Li:基因i的外顯子長度的總和。
在一個樣本中一個基因的TPM:先對每個基因的read數(shù)用基因的長度進行校正,之后再用校正后的這個基因read數(shù)(Ni/Li)與校正后的這個樣本的所有read數(shù)(sum(Ni/Li+……..+ Nm/Lm))求商。由此可知,TPM概括了基因的長度、表達量和基因數(shù)目。TPM可以用于同一物種不同組織間的比較,因為sum值總是唯一的。
(不喜歡看公式分析,那么看看這個實例吧:http://www.bio-info-trainee.com/2017.html)
總結(jié):
不管是計算FPKM、RPKM,還是計算TPM,我們都要先得到一個ReadCount的矩陣(行為基因,列為樣本)。在計算FPKM和RPKM時,都是先按列(也就是這個樣本的總read數(shù))進行標(biāo)化,之后再對對個基因的長度進行標(biāo)準(zhǔn)化。而TPM是先對基因長度進行標(biāo)準(zhǔn)化,之后再對列(這個時候就不再是這個樣本的總read數(shù)了)進行標(biāo)化。這樣使得最終的TPM矩陣的每列都相同(列和都等于1),也就是說每個樣本中的TPM的和都是一樣的。這樣就會使得我們更容易去比較同一個基因在不同樣本中所占的read數(shù)的比例。而RPKM/FPKM由于最終的表達值矩陣的列和不同,故而不能直接比較同一個基因在不同樣本中所占的read數(shù)的比例。