Guideseq是一種檢測體內(nèi)基因編輯脫靶的測序方法,基本原理是CRISPR系統(tǒng)剪切基因組后,在進(jìn)行基因組修復(fù)時可能會將一段設(shè)計好的雙鏈DNA,即tag,插入到基因組中,通過tag設(shè)計引物可將基因組斷裂位點兩側(cè)的序列擴(kuò)增出來建庫,之后進(jìn)行二代測序,通過Guideseq的分析流程即可鑒定出脫靶位點。
具體細(xì)節(jié)可以看他們的論文:
GUIDE-seq enables genome-wide profiling of off-target cleavage by CRISPR-Cas nucleases | Nature Biotechnology
下圖是Guideseq的原理圖:

我就不介紹Guideseq的具體分析流程怎么跑了,可以參考這里aryeelab/guideseq: Analysis pipeline for the GUIDE-seq assay. For news, see: (github.com),不過目前有2個版本,老版本只支持python2,新版本支持了python3,具體代碼有略微差異。
Guideseq的分析共分為7步,分別是Demultiplex、Umitag、Consolidate、Align、IdentifyOfftargetSites、FilterBackgroundSites以及Visualize。
符合Guideseq分析的標(biāo)準(zhǔn)數(shù)據(jù)包含read1、read2、index1和index2四個文件,其中read1和read2就是測序reads,index1為樣本index,長度為8nt,index2為8nt的樣本index+8nt的umi。
這里記錄一下Guideseq的分析思路,即每一步具體做了什么,內(nèi)容根據(jù)python2版本的代碼整理。
1. Demultiplex
首先是Demultiplex,這一步的作用是根據(jù)index將測序數(shù)據(jù)按樣本進(jìn)行拆分,因此,如果你的測序數(shù)據(jù)是多個樣本混合一起上機(jī)測序的,可以直接跑Guideseq流程。如果你的數(shù)據(jù)已經(jīng)按照樣本拆分好了,那么就可以跳過這一步。
這一步的具體操作是:
1) 將index1和index2的[1:8]的序列(這里是0base,因此各取7nt的序列)組合起來作為樣本index;
2)根據(jù)樣本index將測序文件按樣本拆分,拆分后的單樣本文件reads數(shù)必須>=min_reads (默認(rèn)10000),否則存放到undetermined文件;
3)這一步未對原始數(shù)據(jù)進(jìn)行更改,僅拆分。
2. Umitag
這一步是對拆分好的數(shù)據(jù)進(jìn)行umi標(biāo)記,用于下一步合并PCR重復(fù)的reads。具體操作是:
1)在read1和read2的read id最后加上molecular_barcode,其組成是index2[8:16]_read1[0:6]_read2[0:6];
2)將reads根據(jù)molecular_barcode進(jìn)行排序。
3. Consolidate
此步的目的是合并PCR重復(fù)的reads,因為最終要對鑒定的脫靶位點reads數(shù)進(jìn)行統(tǒng)計,所以要消除PCR的效應(yīng)。具體操作是:
1)首先將molecular_barcode相同的reads劃分進(jìn)同一個bin;
2)對同一個bin中的reads逐個堿基進(jìn)行合并:
i) 對每個位置的堿基進(jìn)行統(tǒng)計,只有質(zhì)量值大于min_qual (默認(rèn)15)的堿基才被統(tǒng)計,同時記錄每個位置A、T、C、G、N的最高質(zhì)量值;
ii) 每個位置取出現(xiàn)次數(shù)最多的那個堿基,若此堿基出現(xiàn)的頻率大于min_freq (默認(rèn)0.9),則將該位點合并成此堿基,質(zhì)量值取該堿基在該位置的最高質(zhì)量值,否則該位點合并為N,質(zhì)量值為0;
3)readname 變成 "molecular_barcode_n 原始readname中的第二個元素",n為被合并的reads數(shù)。
4.Align
使用bwa mem進(jìn)行比對。
5.IdentifyOfftargetSites
這一步根據(jù)比對后的sam文件,鑒定脫靶位點。
1)取mapq>=50且flag包含128 (PE測序read2)且flag不包含2048 (嵌合比對)的比對結(jié)果,獲取read的比對起始位點(根據(jù)sam文件中TLEN插入片段長度的正負(fù)號不同計算方法也不同);
2)獲得所有比對起始位點及其對應(yīng)的read數(shù),將同一染色體上距離<=10bp的相鄰位點歸入一個window,對所有window的read count進(jìn)行統(tǒng)計,并篩選出滿足以下條件之一的window:
i)比對到正鏈的read count和比對到負(fù)鏈的read count均大于0;
ii)以tag_primer1開頭的read count和以tag_primer2開頭的read count 均大于0;
3)對于通過篩選的window,確定window中總read count最大的位點,以此為中心,前后各延伸25nt,截取基因組序列;
4)將截取的基因組序列與target sequence進(jìn)行比對,若最優(yōu)比對的mismatch<=8,則此基因組位點為脫靶位點,以該window中總read count進(jìn)行量化。
6. FilterBackgroundSites
一般來說,做實驗時會有一個陰性對照,這一步的目的是過濾掉陰性對照中檢測到的脫靶位點,但實際的代碼是將實驗組與對照組的交集保存到單獨的文件中,在最后的可視化中并沒有將這些位點扣除,這里有些奇怪,不知道我是否理解有誤。
7. Visualize
最后就是將鑒定到的脫靶位點進(jìn)行可視化。
放一張Guideseq論文中的可視化圖
