單細(xì)胞分析實(shí)錄(2): 使用Cell Ranger得到表達(dá)矩陣

Cell Ranger是一個(gè)“傻瓜”軟件很洋,你只需提供原始的fastq文件项贺,它就會(huì)返回feature-barcode表達(dá)矩陣勇边。為啥不說(shuō)是gene-cell褂策,舉個(gè)例子横腿,cell hashing數(shù)據(jù)得到的矩陣還有tag行,而列也不能肯定就是一個(gè)cell辙培,可能考慮到這個(gè)才不叫g(shù)ene-cell矩陣吧~它是10xgenomics提供的官方比對(duì)定量軟件,有四個(gè)子命令邢锯,我只用過(guò)cellranger count扬蕊,另外三個(gè)cellranger mkfastq、cellranger aggr丹擎、cellranger reanalyze沒用過(guò)尾抑,也沒啥影響。
下載:https://support.10xgenomics.com/single-cell-gene-expression/software/downloads/latest
安裝:https://support.10xgenomics.com/single-cell-gene-expression/software/pipelines/latest/installation

在講Cell Ranger的使用之前蒂培,先來(lái)看一下10X的單細(xì)胞數(shù)據(jù)長(zhǎng)什么樣

這是一個(gè)樣本5個(gè)Line的測(cè)序數(shù)據(jù)再愈,數(shù)據(jù)量足夠的話可能只有一個(gè)Line』ご粒可以看出翎冲,它們的命名格式相對(duì)規(guī)范,在收到公司的數(shù)據(jù)后媳荒,盡量不要自己更改命名抗悍。此外還要注意一個(gè)細(xì)節(jié),就是存放這些fastq文件的目錄應(yīng)該用第一個(gè)下劃線_前面的字符串命名钳枕,否則后續(xù)cell ranger將無(wú)法識(shí)別目錄里面的文件缴渊,同時(shí)報(bào)錯(cuò)

[error] Unable to detect the chemistry for the following dataset. 
Please validate it and/or specify the chemistry 
via the --chemistry argument.

其實(shí)并不是--chemistry參數(shù)的問題。
為了更清楚地理解文件內(nèi)容鱼炒,我們來(lái)看一下10X單細(xì)胞的測(cè)序示意圖

Read1那一段序列原本是連在磁珠上面的衔沼,有cellular barcode(一個(gè)磁珠上都一樣),有UMI(各不相同),還有poly-T指蚁。Read2就是來(lái)源于細(xì)胞內(nèi)的RNA菩佑。它倆連上互補(bǔ)配對(duì)之后,還會(huì)在Read2的另一端連上sample index序列欣舵。這段sample index序列的作用是什么呢擎鸠?可以參考illumina測(cè)序中index primers的作用:

簡(jiǎn)單來(lái)說(shuō)就是為了在一次測(cè)序中,測(cè)多個(gè)樣本缘圈,在來(lái)源于特定樣本的序列后都加上特定的index劣光,測(cè)完之后根據(jù)對(duì)應(yīng)關(guān)系拆分。一個(gè)樣本對(duì)應(yīng)4個(gè)index:

再看每個(gè)文件里面是什么就容易理解了糟把,我們以一個(gè)Line為例:

less -S S20191015T1_S6_L001_I1_001.fastq.gz | head -n 8
less -S S20191015T1_S6_L001_R1_001.fastq.gz | head -n 8
less -S S20191015T1_S6_L001_R2_001.fastq.gz | head -n 8

其實(shí)這個(gè)index序列就包含在文件的第1绢涡、5、9...行遣疯,有點(diǎn)多余雄可,一般不太關(guān)注它。這個(gè)文件的序列最多四種缠犀,感興趣的小伙伴可以看看数苫。

R1文件里面就是cellular barcode信息,多余的序列已經(jīng)去掉了辨液。10X的v2試劑堿基長(zhǎng)度是26虐急,v3試劑堿基長(zhǎng)度是28

最后一個(gè)文件就是真正的轉(zhuǎn)錄本對(duì)應(yīng)的cDNA序列
上一篇講到cell hashing測(cè)序有轉(zhuǎn)錄本信息,得到的文件和上面是一樣的滔迈;還有一個(gè)細(xì)胞表面蛋白信息止吁,根據(jù)這個(gè)蛋白信息區(qū)分細(xì)胞來(lái)源,如下:

從圖中可以看出燎悍,和普通轉(zhuǎn)錄本建庫(kù)差不多敬惦,就是R2那一部分換成了HTO序列,整個(gè)片段長(zhǎng)度也改變了谈山。

上面兩張圖是我在實(shí)際處理中看到的兩種cell hashing測(cè)序俄删,第一張是TotalSeqA,第二張是TotalSeqB奏路。TotalSeqA中抗蠢,R2第一個(gè)堿基開始為HTO序列(之后是polyA序列),而TotalSeqB中思劳,R2前10個(gè)堿基為N的任意堿基迅矛,第11個(gè)堿基為HTO序列的開始位置,HTO序列長(zhǎng)度為16潜叛。

綜上秽褒,cell hashing的測(cè)序數(shù)據(jù)有兩套壶硅,一套是常規(guī)的轉(zhuǎn)錄本fastq,一套是蛋白信息(也可以說(shuō)是樣本信息)的fastq销斟。所以處理這類數(shù)據(jù)庐椒,要跟測(cè)序公司確認(rèn)清楚用的是TotalSeqA還是B,以及樣本和HTO序列的對(duì)應(yīng)關(guān)系蚂踊。


接下來(lái)說(shuō)說(shuō)如何用Cell Ranger處理普通10X單細(xì)胞測(cè)序數(shù)據(jù)约谈,以及cell hashing單細(xì)胞測(cè)序數(shù)據(jù)
普通10X

indir=/project_2019_11/data/S20191015T1
outdir=/project_2019_11/cellranger/
sample=S20191015T1
ncells=5000 #預(yù)計(jì)細(xì)胞數(shù),這個(gè)參數(shù)對(duì)最終能得到的細(xì)胞數(shù)影響并不大犁钟,所以不用糾結(jié)
threads=20

refpath=/ref/10x/human/refdata-cellranger-GRCh38-3.0.0
cellranger=/softwore/bin/cellranger
cd ${outdir}
${cellranger} count --id=${sample} \
                 --transcriptome=${refpath} \
                 --fastqs=${indir} \
                 --sample=${sample} \
                 --expect-cells=${ncells} \
                 --localcores=${threads}

cell hashing

total_seq_A
需要提前準(zhǔn)備好兩個(gè)文件夾棱诱,比如我用total_seq_A或total_seq_B存放HTO序列和樣本來(lái)源的對(duì)應(yīng)關(guān)系:

$ ls
feature.reference1.csv
$ cat feature.reference1.csv
id,name,read,pattern,sequence,feature_type
tag1,tag1,R2,^(BC),GTCAACTCTTTAGCG,Antibody Capture
tag2,tag2,R2,^(BC),TGATGGCCTATTGGG,Antibody Capture

tag1、tag2對(duì)應(yīng)哪一個(gè)樣本事先知道涝动;^(BC)可以看做正則表達(dá)式迈勋,表示R2序列以barcode(也就是HTO序列)開始
total_seq_B

$ ls
feature.reference.csv
$ cat feature.reference.csv
id,name,read,pattern,sequence,feature_type
tag6,tag6,R2,5PNNNNNNNNNN(BC)NNNNNNNNN,GGTTGCCAGATGTCA,Antibody Capture
tag7,tag7,R2,5PNNNNNNNNNN(BC)NNNNNNNNN,TGTCTTTCCTGCCAG,Antibody Capture

5PNNNNNNNNNN(BC)NNNNNNNNN表示從5端開始,10個(gè)堿基之后就是HTO序列醋粟,后面的序列隨意
lib_csv
第二個(gè)文件夾lib_csv靡菇,用來(lái)存放cell hashing兩套數(shù)據(jù)的路徑,用csv格式存儲(chǔ)米愿,sample這一列為文件夾名稱

$ cat S20200612P1320200702N.libraries.csv
fastqs,sample,library_type
/project_2019_11/data/fastq/,S20200612P1320200702N,Gene Expression
/project_2019_11/data/antibody_barcode/,S20200612P13F20200702N,Antibody Capture

最終腳本如下

lib_dir=/script/cellranger/1/lib_csv/
#need to be changed based on your seq-tech: total_seq_A or total_seq_B
feature_ref_dir=/script/cellranger/1/total_seq_A/
outdir=/project_2019_11/cellranger/
sample=S20191017P11
ncells=5000
threads=20
refpath=/ref/10x/human/refdata-cellranger-GRCh38-3.0.0
cellranger=/softwore/bin/cellranger

cd ${outdir}
${cellranger} count --libraries=${lib_dir}${sample}.libraries.csv \
        --r1-length=28 \
        --feature-ref=${feature_ref_dir}feature.reference1.csv \
        --transcriptome=${refpath} \
        --localcores=${threads} \
        --expect-cells=${ncells} \
        --id=${sample}

最終的表達(dá)矩陣會(huì)輸出到

${outdir}${sample_id}/outs/filtered_feature_bc_matrix
$ cd S20200619P11120200716NC/outs/filtered_feature_bc_matrix/
$ ls
barcodes.tsv.gz  features.tsv.gz  matrix.mtx.gz

$ less -S features.tsv.gz
ENSG00000243485 MIR1302-2HG Gene Expression
ENSG00000237613 FAM138A Gene Expression
......
ENSG00000277475 AC213203.1  Gene Expression
ENSG00000268674 FAM231C Gene Expression
tag7    tag7    Antibody Capture
tag8    tag8    Antibody Capture

features.tsv.gz存儲(chǔ)的是基因信息厦凤,因?yàn)槭莄ell hashing數(shù)據(jù),矩陣最后多了幾行tag信息育苟,共33540行

$ less -S barcodes.tsv.gz | head -n 4
AAACCCAAGACTTAAG-1
AAACCCAAGCTACTGT-1
AAACCCAAGGACTGGT-1
AAACCCAAGGCCTGCT-1

barcodes.tsv.gz存放的是最后得到的cellular barcode较鼓,共10139行

$ less -S matrix.mtx.gz | head -n 8
%%MatrixMarket matrix coordinate integer general
%metadata_json: {"format_version": 2, "software_version": "3.1.0"}
33540 10139 15746600
65 1 1
103 1 1
155 1 2
179 1 2
191 1 1

matrix.mtx.gz為矩陣信息,除前三行外宙搬,余下的行數(shù)等于feature乘以CB數(shù)笨腥,第二列表示CB編號(hào)拓哺,從1到10139勇垛,1重復(fù)33540次,對(duì)應(yīng)第一列的33540個(gè)feature士鸥。第三列表示UMI
下面的腳本可以將這三個(gè)文件轉(zhuǎn)換為常見的矩陣形式

path1=/softwore/biosoft/cellranger-3.1.0/cellranger
path2=/project_2019_11/cellranger/

i=S20191211P71
${path1} mat2csv ${path2}${i}/outs/filtered_feature_bc_matrix ${path2}Feature_Barcode_Matrices/${i}.mat.count.csv
sed 's/,/\t/g' ${path2}Feature_Barcode_Matrices/${i}.mat.count.csv  > ${path2}Feature_Barcode_Matrices/${i}.mat.count.txt
sed -i 's/^\t//g' ${path2}Feature_Barcode_Matrices/${i}.mat.count.txt
rm -f ${path2}Feature_Barcode_Matrices/${i}.mat.count.csv
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末闲孤,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子烤礁,更是在濱河造成了極大的恐慌讼积,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,820評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件脚仔,死亡現(xiàn)場(chǎng)離奇詭異勤众,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)鲤脏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門们颜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)吕朵,“玉大人,你說(shuō)我怎么就攤上這事窥突∨#” “怎么了?”我有些...
    開封第一講書人閱讀 168,324評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵阻问,是天一觀的道長(zhǎng)梧税。 經(jīng)常有香客問我,道長(zhǎng)称近,這世上最難降的妖魔是什么第队? 我笑而不...
    開封第一講書人閱讀 59,714評(píng)論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮煌茬,結(jié)果婚禮上斥铺,老公的妹妹穿的比我還像新娘。我一直安慰自己坛善,他們只是感情好晾蜘,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,724評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著眠屎,像睡著了一般剔交。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上改衩,一...
    開封第一講書人閱讀 52,328評(píng)論 1 310
  • 那天岖常,我揣著相機(jī)與錄音,去河邊找鬼葫督。 笑死竭鞍,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的橄镜。 我是一名探鬼主播偎快,決...
    沈念sama閱讀 40,897評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼洽胶!你這毒婦竟也來(lái)了晒夹?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,804評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤姊氓,失蹤者是張志新(化名)和其女友劉穎丐怯,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體翔横,經(jīng)...
    沈念sama閱讀 46,345評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡读跷,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,431評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了禾唁。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片效览。...
    茶點(diǎn)故事閱讀 40,561評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡些膨,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出钦铺,到底是詐尸還是另有隱情订雾,我是刑警寧澤,帶...
    沈念sama閱讀 36,238評(píng)論 5 350
  • 正文 年R本政府宣布矛洞,位于F島的核電站洼哎,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏沼本。R本人自食惡果不足惜噩峦,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,928評(píng)論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望抽兆。 院中可真熱鬧识补,春花似錦、人聲如沸辫红。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)贴妻。三九已至切油,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間名惩,已是汗流浹背澎胡。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留娩鹉,地道東北人攻谁。 一個(gè)月前我還...
    沈念sama閱讀 48,983評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像弯予,于是被迫代替她去往敵國(guó)和親戚宦。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,573評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容