MiXCR是一个通用的框架,处理从原始测序数据到定量clonotype的免疫组数据。
支持PE和SE的reads,考虑测序质量,纠正PCR错误,还能识别生殖系高突变。
支持部分和全长分析,并使用所有可用的RNA或DNA信息,包括V基因片段上游和J基因片段下游的序列。
下载安装地址: https://github.com/milaboratory/mixcr
发表的文献: https://github.com/milaboratory/mixcr/blob/develop/doc/paper/paperAttachments.md
mixcr官方说明文档: https://mixcr.readthedocs.io/en/master/quickstart.html
官方给的使用教程已经非常详细了。
简单的说,数据分为两类:1是多重PCR数据,2是RNA-Seq数据。针对这两种不同的数据类型有不同的分析方法:
(一)PCR数据,用amplicon参数
mixcr analyze amplicon \
-s hsa \
--starting-material dna \
--5-end v-primers --3-end c-primers \
--adapters adapters-present \
raw/ERR3445170_1.fastq.gz raw/ERR3445170_2.fastq.gz ERR3445170
(二)RNA-Seq方法,
用的是 shotgun参数,然后设置一下 align的参数,assemble参数这里没有设置。
mixcr analyze shotgun
--align "-OsaveOriginalReads=true"
--species hs
--starting-material rna
--receptor-type tcr
-r E16_R2.report(运行报告)
result/E16_R2.fq.gz(你的数据) E16_R2.mixcr.out(前缀)
参数说明:
--align 设置了align的一个参数就是要保存reads信息。
--species 物种名hs表示人;mus表示小鼠
--starting-material 是什么类型的数据
--receptor-type tcr或者IG
-r 报告名
直接跟原始数据。PE的也可以。
最后一个是输出文件的前缀
如果需要知道每个clonotype所属reads,则可以用以下命令:
输出reads,输入文件为第一步生成的clna文件,和一个输出文件的前缀名(可以加路径,否则结果输出到当前目录,生成的fastq非常多,需要注意!)
mixcr exportReadsForClones -s E16_R2.mixcr.out.clna E16_R2.
mixcr 使用imgt library
只需要增加--library 为imgt,并且下载imgt的json文件放到 mixcr 安装目录下的library中即可。
mixcr analyze shotgun \
--library imgt \
--align "-OsaveOriginalReads=true" \
--species mmu -t 50 --receptor-type tcr \
--starting-material rna -r xxx.report \
./data/235_S1_L001_R1_001.fastq ./data/235_S1_L001_R2_001.fastq \
235_S1.mixcr.out.analyze.shotgun
输出fastq reads到指定目录:
mixcr exportReadsForClones -s G358E2L1.mixcr.out.clna mydir/myprefix.
输入一个clna文件,mydir为结果目录,必须提取创建好。myprefix为结果文件的前缀。
报错报错收集:
- OutOfMemoryError
这个报错是Assembing这一步的时候,线程数太多,如果你的机器没有那么多线程,并且你还同时跑了好几个,那么就有可能报这个错。
修正方法:
--assemble "-t 5"。同时建议不要多个mixcr同时跑,除非你有大集群。
mixcr analyze shotgun --align "-OsaveOriginalReads=true" --species hs --starting-material rna --receptor-type tcr --assemble "-t 5" -r E16_R2.report(运行报告) result/E16_R2.fq.gz(你的数据) E16_R2.mixcr.out(前缀)
Java heap space
这种报错也会出现在sorting 过程中,我的做法是设置内存参数: mixcr -Xmx32G -Xms32G analyze
更换新版本的mixcr,更换了最新版mixcr-3.0.13,重跑不再报错。
mixcr-3.0.13 结果不再生产.clna 文件,而是.clns文件。(如何才能生成)
mixcr 2.0 软件使用:
第一步:
mixcr align --species hsa --save-description All7Samples_R1.p1.fq All7Samples_R1_align.vdjca
# -s 或--species 物种名 必要参数 hs,hsa,mus
# 第二步:
mixcr assemble --index indexFile_R1 All7Samples_R1_align.vdjca All7Samples_R1_clones.clns
# 这里--index 是为了后面输出reads而设置的。
# 第三步:输出已下参数中的信息。
mixcr exportClones --chains TRA -cloneID -count -vGene -jGene -nFeature CDR3 -aaFeature CDR3 -qFeature CDR3 All7Samples_R1_clones.clns All7Samples_R1_clones_Important.txt
# 第四步:输出reads
mixcr exportAlignments -cloneId indexFile_R1 -descrR1 All7Samples_R1_align.vdjca All7Samples_A_alignments.txt
用法相当简单。
mixcr结果的一些下游分析才是最终要的,比如:
1,统计clonetype 的数量,以及多少reads数支持。
2,统计每个细胞中有多少分子,即每个clonotype有多少umi。
3,统计有多少个细胞,即有多少个TRA和TRB pairs。
4,统计乱七八糟事。
5,两个样品间的上述比较。可以用vdjtools: 【J】vdjtools处理mixcr数据实战
这些都是个性化分析,已经写好了脚本