Barcode-Converter
这是一个用于转换单细胞测序数据中CellBarcode的工具。
转化过程
首先识别输入数据fastq文件中R1的CellBarcode,识别过程允许CellBarcode的一个碱基错误匹配;
然后通过白名单对应关系,完成CellBarcode的转化;
软件包下载
NOTE
下载并解压
快速开始
TIP
在开始转换之前,请确保您已正确安装了conv.0.1.2工具,并准备好相应的白名单文件。
示例1:DD数据的CellBarcode转换成10X
--wl1
指定输入数据的白名单文件,--wl2
指定输出数据的白名单文件,--rs
指定转换后的CellBarcode的起始位点,-t
指定线程数,-o
指定输出目录。
/path/to/conv.0.1.2 --fq1 ./demo_dd_S39_L001_R1_001.fastq.gz --fq2 ./demo_dd_S39_L001_R2_001.fastq.gz --wl1 ./P3CB.barcode.txt.gz --wl2 3M-february-2018.txt.gz --rs 17C+T -t 12 -o output/
示例2:同一样本,多组文件的转换
--fq1
和--fq2
参数可以指定多个文件,以空格分隔;注意参数下R1和R2文件顺序要一致。
/path/to/conv.0.1.2 --fq1 ./demo_dd_S39_L001_R1_001.fastq.gz ./demo_dd_S39_L001_R1_002.fastq.gz --fq2 ./demo_dd_S39_L001_R2_001.fastq.gz ./demo_dd_S39_L001_R2_002.fastq.gz --wl1 ./P3CB.barcode.txt.gz --wl2 3M-february-2018.txt.gz --rs 17C+T -t 12 -o output/
示例3:使用已有的CellBarcode对应关系
用于多组学数据使用一致的对应关系。
/path/to/conv.0.1.2 --fq1 ./demo_dd_S39_L001_R1_001.fastq.gz --fq2 ./demo_dd_S39_L001_R2_001.fastq.gz --map ../map.tsv --rs 17C+T -t 12 -o output/
参数说明
参数 | 描述 |
---|---|
--fq1 ... | 输入的R1的fastq文件,可以指定一个样本的多次测序数据,以空格分隔 |
--fq2 ... | 输入的R2的fastq文件,可以指定一个样本的多次测序数据,以空格分隔 |
--rs | 读取R1的结构,由数字/+和字母组成,数字表示碱基数,+表示剩余碱基,C表示CellBarcode碱基,T表示其他碱基 [默认: 17C+T],DD系列产品为17C+T |
--wl1 | 输入fastq的试剂类型对应的白名单文件,DD系列产品选择barcode/P3CB.barcode.txt |
--wl2 | 输出fastq的试剂类型对应的白名单文件,需要根据文库类型转化,比如3'文库是3M-february-2018.txt.gz,5'文库是737K-august-2016.txt.gz |
--map | 条形码映射文件,包含两列,以制表符分隔,第一列为输入白名单,第二列为输出白名单。--map选项优先于--wl1和--wl2,必须至少指定--wl1和--wl2或--map中的一个 |
--no-multi | 对多个匹配的barcode 进行重新分配,默认执行 |
-t, --threads | 线程数 [默认: 10] |
-o, --out | 输出目录 [默认: ./] |
-h, --help | 打印帮助 |
-V, --version | 打印版本 |
输出文件说明
输出文件包含以下内容:
<OUT>/*fastq.gz
:转换后的fastq文件。<OUT>/multi_*fastq.gz
:输出fastq文件中具有多个匹配条形码的序列的中间文件,可能的条形码以"_"连接。<OUT>/map.txt
:条形码映射文件,包含两列,以制表符分隔,第一列为输入白名单,第二列为输出白名单。
注意事项
IMPORTANT
同一公司可能有多组白名单,不同产品使用不同的白名单,--wl1
和--wl2
参数需要设置正确。10x Genomics的barcodes定义在cellranger-*/lib/python/cellranger/chemistry_defs.json
,或cellranger-5.0.1/lib/python/cellranger/chemistry.py
;barcodes位于:cellranger-*/lib/python/cellranger/barcodes/
。
NOTE
首先判断--wl1中CellBarcode数目和--wl2中 CellBarcode数目时,如果--wl1 数目大于--wl2,会取10M Reads统计CellBarcode:如果输入fastq数据的CellBarcode数目多于--wl2白名单数目,取高频的CellBarcode与--wl2白名单CellBarcode对应;如果输入fastq数据CellBarcode数目不多于--wl2白名单数目,取出现过的CellBarcode与--wl2白名单CellBarcode对应,余下的CellBarcode随机取。
WARNING
设置--no-multi 时,会在统计完CellBarcode的reads数目后,对多个匹配CellBarcode的序列再做分配。对可能的CellBarcode按reads数目从高到低排序,分配给reads数最多的CellBarcode,如果排序后第一和第二CellBarcode的reads数目相同时,放弃分配。
TIP
同一样本的多组学数据转换时,比如5'/TCR/BCR等,需要使用一致的对应关系,可以先转换一种类型数据,建议先转化转录RNA文库的数据,将其输出的map.txt文件作为输入,再转换其他类型数据。
NOTE
conv.0.1.2 是conv 的升级版本:修复工作线程小的时候内存占用过高问题:将read_ahead的chunk_size和chunk_queue_size由默认的100,调整为工作线程数的平方。