目前有多種方法可以進行RNA velocity的分析:
- scVelo(參考文章:單細胞轉錄組數據分析|| scVelo 教程:RNA速率分析工具)
- velocyto (官網:Welcome to velocyto.py!)
- Seurat (參考文章:用Seurat做RNA Velocity)
在前一篇的文獻學習里(RNA velocity of single cells文獻學習),作者使用的是velocyto軟件,也就是上面的第二個軟件進行分析的,所以我也主要學習這個軟件的使用。作者的詳細代碼見:here,里面有R和python兩種版本。
由于RNA velocity分析的前提,是要我們從單細胞RNA-seq的數據里區分出未成熟mRNA(unspliced)和成熟的mRNA(spliced),所以你需要從fastq文件開始,與基因組進行對比后得到sam文件,從sam文件轉成bam,再從bam文件里提取這些信息,最后你會得到.loom為后綴的文件,這個文件才是我們需要的。
你可以在這個網站(http://velocyto.org/velocyto.py/tutorial/cli.html)里學習如何從bam文件里提取我們需要的信息,你可以使用10X、SMART-seq2、dropseq等平臺測序得到的fastq文件,每一種情況都有詳細的說明。
這次練習的原始數據是GSE99933,有768個文件,這個project是應用SMART-Seq2平臺進行測序的。
懶得從fastq文件走一遍完整流程的童鞋可以直接下載bam文件:
http://pklab.med.harvard.edu/velocyto/chromaffin/bams.tar
或者你可以直接下載loom文件進行分析:
http://pklab.med.harvard.edu/velocyto/chromaffin/dat.rds
(一)fastq文件下載以及文件名的批量修改
關于如何批量下載fastq文件,如何比對,如何從sam文件轉成bam文件,我在單細胞測序實戰(第一部分)寫的非常詳細。這里一共768個fastq文件,大約是12G左右。
(其實批量修改文件名不是必要的,完全可以跳過這一步,但是不知道為什么自己突發奇想要改名,可能是看著SRR文件名不舒服吧。。。想節約時間的童鞋可以直接跳到fastqc步驟)
下載fastq文件后,文件名都是SRR開頭的,那么我想把前綴改成細胞的編號:E13.5_E之類的,應該怎么弄?首先你要先拿到細胞編號的list,在GEO頁面里:
在新頁面里,點擊“Export”:
現在你下載了所有樣品的信息,是一個csv表,用excel打開是這樣的:
用查找/替換功能把[single cell RNA-seq]替換成空白(注意是空白,不是空格):
從這個表里提取第二列的細胞編號:
$ awk -F"," '{print $2}' sample.csv>> cell_name.txt
$ head cell_name.txt
E12.5_A1
E12.5_A2
E12.5_A3
E12.5_A4
E12.5_A5
E12.5_A6
E12.5_A7
E12.5_A8
E12.5_A9
E12.5_A10
在win10系統下批量修改文件名,看視頻:here或者windows如何批量修改文件名
修改后的fastq文件的名字就變成了:
(二)fastqc
隨便抽取幾個fastq文件看一下:
(三)比對
進入fastq文件夾里進行比對:
$ ls *.gz | while read i;do hisat2 -p 10 -x /media/yanfang/FYWD/RNA_seq/ref_genome/index/mm10/genome -U $i -S /media/yanfang/FYWD/scRNA_seq/RNA_relocity/GSE99933_sam/${i}.sam;done
這一步要過夜(大概10個小時多一點),因為是用自己的電腦跑的,所以比較慢。生成的sam文件:
(四)生成bam文件
可以先看一下后續分析要去的bam文件是什么樣的:
$ ls *.fastq.gz.sam | while read i ;do (samtools sort -O bam -@ 10 -o /media/yanfang/FYWD/scRNA_seq/RNA_relocity/GSE99933_bam/$(basename ${i} ".fastq.gz.sam").bam ${i});done
(五)下載mouse_repeat_msk.gtf
除了mm10_annotation.gtf以外(可在https://www.gencodegenes.org/下載),我們還需要一個文件進行后續的分析,這個文件叫repeat_msk.gtf,你可以在這個網站:here下載到:
選項都填好,點擊左下角“get output”。就行了。
這個gtf文件是幫助我們去除表達的重復元素(expressed repetitive elements),因為這些reads可能在下游分析中構成一個混淆因素。
到此,生成loom文件的必需文件就都準備齊全了。下一篇會介紹生成loom文件需要哪些軟件。