工欲善其事必先利其器
SeekSoulTools 是寻因生物自主开发的一套处理单细胞转录组数据的软件,用于识别细胞标签barcode,比对定量,得到可用于下游分析的细胞表达矩阵,之后进行细胞聚类和差异分析,产品不仅支持SeekOne系列试剂盒产出数据,还可通过对barcode的描述,支持各种自定义设计结构。软件使用教程已经写的很好了,这边仅仅是作为知识的搬运工,记录一下测试体验过程。
下载安装包,解压即可使用
mkdir seeksoultools.1.2.2
cd seeksoultools.1.2.2
wget -c -O seeksoultools.1.2.2.tar.gz "https://seekgene-public.oss-cn-beijing.aliyuncs.com/software/seeksoultools/seeksoultools.1.2.2.tar.gz"
tar -xf seeksoultools.1.2.0.tar.gz
source ./bin/activate #激活conda环境
##测试是否可用
./seeksoultools --version
下载
SeekSoulTools 目前包含四个模块,功能如下:
## rna模块测试数据
wget -c -O demo_dd.tar "https://seekgene-public.oss-cn-beijing.aliyuncs.com/software/data/demodata/demo_dd.tar"
#解压
tar xf demo_dd.tar -C demo_data
##下载参考基因组文件
wget -c -O GRCh38.tar.gz "https://seekgene-public.oss-cn-beijing.aliyuncs.com/software/data/reference/GRCh38.tar.gz"
tar -zxvf GRCh38.tar.gz
##文件大小
55G 8月 15 2023 demo_dd.tar
11G 5月 8 2023 GRCh38.tar.gz
##解压后文件
28G 9月 7 2022 demo_dd_S39_L001_R1_001.fastq.gz
27G 9月 7 2022 demo_dd_S39_L001_R2_001.fastq.gz
##GRCh38
$tree -L 3
.
├── fasta
│ ├── genome.fa
│ └── genome.fa.fai
├── genes
│ └── genes.gtf
└── star
├── chrLength.txt
├── chrNameLength.txt
├── chrName.txt
├── chrStart.txt
├── exonGeTrInfo.tab
├── exonInfo.tab
├── geneInfo.tab
├── Genome
├── genomeParameters.txt
├── Log.out
├── SA
├── SAindex
├── sjdbInfo.txt
├── sjdbList.fromGTF.out.tab
├── sjdbList.out.tab
└── transcriptInfo.tab
##fast模块测试数据
wget -c -O cellline.tar.gz "https://seekgene-public.oss-cn-beijing.aliyuncs.com/software/data/demodata/cellline.tar.gz"
#解压
tar zxf cellline.tar.gz -C fast_data
#下载rRNA参考基因组文件
wget -c -O hg38_rRNA.tar.gz "https://seekgene-public.oss-cn-beijing.aliyuncs.com/software/data/reference/hg38_rRNA.tar.gz"
tar -zxvf hg38_rRNA.tar.gz
##文件大小
45G 10月 24 2023 cellline.tar.gz
11G 5月 12 2023 hg38_rRNA.tar.gz
##解压后文件大小
22G 10月 23 2023 cellline_R1.fq.gz
23G 10月 23 2023 cellline_R2.fq.gz
##hg38_rRNA
$tree -L 3
.
├── genes
│ └── delete_rRNA5.8-18-28_in_rRNA45s.gtf
└── star
├── chrLength.txt
├── chrNameLength.txt
├── chrName.txt
├── chrStart.txt
├── exonGeTrInfo.tab
├── exonInfo.tab
├── geneInfo.tab
├── Genome
├── genomeParameters.txt
├── Log.out
├── SA
├── SAindex
├── sjdbInfo.txt
├── sjdbList.fromGTF.out.tab
├── sjdbList.out.tab
└── transcriptInfo.tab
## vdj模块测试数据
wget -c -O PBMC_xin.tar "https://seekgene-public.oss-cn-beijing.aliyuncs.com/software/data/demodata/PBMC_xin.tar"
#解压
tar -xf PBMC_xin.tar -C vdj_data
##解压后文件大小
1.9G 3月 4 15:14 PBMC_xin_BCR_S19_L1_R1_001.fastq.gz
1.8G 3月 4 15:14 PBMC_xin_BCR_S19_L1_R2_001.fastq.gz
2.4G 3月 4 15:15 PBMC_xin_TCR_S19_L1_R1_001.fastq.gz
2.1G 3月 4 15:15 PBMC_xin_TCR_S19_L1_R2_001.fastq.gz
SeekSoulTools可以兼容CellRanger构建的参考基因组。可以直接使用10X的参考基因组,至于如何自己构建可参考:
###将以下运行代码写入脚本 seeksoul_rna_run.sh
#! /bin/bash -xe
#
bin=/home/data/t020559/biosoft/seeksoultools.1.2.2/seeksoultools
ref=/home/data/t020559/seekone/GRCh38
ls ${bin} ; ls ${ref}
id=${1}
/usr/bin/time -v ${bin} rna run \
--fq1 /home/data/t020559/seekone/demo_data/demo_dd_S39_L001_R1_001.fastq.gz \
--fq2 /home/data/t020559/seekone/demo_data/demo_dd_S39_L001_R2_001.fastq.gz \
--samplename ${id} \
--genomeDir ${ref}/star \
--gtf ${ref}/genes/genes.gtf \
--chemistry DDV2 \
--core 4 \
--include-introns
##参数释义
--fq1 #R1文件路径
--fq2 #R2文件路径
--samplename #样本名称。默认会在outdir创建以样本名命名的目录
--genomeDir #STAR构建的参考基因组路径, 版本需要与SeekSoulTools使用的STAR一致
--gtf #相应物种的gtf路径
--chemistry #试剂类型,每种对应一组--shift、--pattern、 --structure、--barcode和--sc5p的组合,可选值:DDV2,DD5V1,MM,MM-D;
# DDV2 对应SeekOne® DD单细胞3’转录组试剂盒;
# DD5V1 对应SeekOne® DD单细胞5’转录组试剂盒;
# MM 对应SeekOne® MM单细胞转录组试剂盒;
# MM-D 对应SeekOne® MM大孔径高通量转录组试剂盒
--core #设置线程
--include-introns #不启用时,只会选择exon reads⽤于定量;启用时,intron reads也会⽤于定量
--outdir #设定输出文件路径,默认值:./
--expectNum #预估的捕获细胞数目
--forceCell #当正常分析得到的细胞数⽬不理想时,选⽤此参数,后⾯加⼀个预期的数值N,SeekSoulTools软件会按照UMI从⾼到低取前N个细胞
--star_path #指定其他版本的STAR路径进行比对,版本需要与`--genomeDir`版本兼容,默认的`--star_path`为环境下的STAR
##提交任务
nohup bash seeksoul_rna_run.sh basic_test 1>log_test1.txt 2>&1 &
如果一个样本对应多个FASTQ数据集,则输入文件依次指定即可,例如:
seeksoultools rna run \
--fq1 /path/to/demo_dd_S39_L001_R1_001.fastq.gz \
--fq1 /path/to/demo_dd_S39_L002_R1_001.fastq.gz \
--fq2 /path/to/demo_dd_S39_L001_R2_001.fastq.gz \
--fq2 /path/to/demo_dd_S39_L002_R2_001.fastq.gz \
--samplename demo \
--genomeDir /path/to/GRCh38/star \
--gtf /path/to/GRCh38/genes/genes.gtf \
--chemistry DDV2 \
--core 4 \
--include-introns
如果要使用SeekSoulTools自定义R1结构,则需使用--barcode
依次指定3段barcode,--linker
依次指定2段linker ,例如:
seeksoultools rna run \
--fq1 /path/to/demo_dd_S39_L001_R1_001.fastq.gz \
--fq2 /path/to/demo_dd_S39_L001_R2_001.fastq.gz \
--samplename demo \
--genomeDir /path/to/GRCh38/star \
--gtf /path/to/GRCh38/genes/genes.gtf \
--barcode /path/to/utils/CLS1.txt \
--barcode /path/to/utils/CLS2.txt \
--barcode /path/to/utils/CLS3.txt \
--linker /path/to/utils/Linker1.txt \
--linker /path/to/utils/Linker2.txt \
--structure B9L12B9L13B9U8 \
--core 4 \
--include-introns
barcode和UMI 以字母和数字描述Read1的基本结构,字母描述碱基含义,数字描述碱基长度
B: barcode部分碱基 L: linker部分碱基 U: UMI部分碱基 X: 其他任意碱基,用于占位
两种Read1结构示例
###将以下运行代码写入脚本 seeksoul_fast_run.sh
#! /bin/bash -xe
#
bin=/home/data/t020559/biosoft/seeksoultools.1.2.2/seeksoultools
ref=/home/data/t020559/seekone/GRCh38
rRNA=/home/data/t020559/seekone/hg38_rRNA
ls ${bin} ; ls ${ref} ; ls ${rRNA}
id=${1}
/usr/bin/time -v ${bin} fast run \
--fq1 /home/data/t020559/seekone/fast_data/cellline_R1.fq.gz \
--fq2 /home/data/t020559/seekone/fast_data/cellline_R2.fq.gz \
--samplename ${id} \
--genomeDir ${ref}/star \
--gtf ${ref}/genes/genes.gtf \
--rRNAgenomeDir ${rRNA}/star \
--rRNAgtf ${rRNA}/genes/delete_rRNA5.8-18-28_in_rRNA45s.gtf \
--chemistry DD-Q \
--include-introns \
--core 4
### 参数释义
--rRNAgenomeDir #STAR构建的参考基因组路径,用于rRNA比例评估, 对于非人非鼠物种,该参数可以不指定,当不指定该参数时,用–genomeDir参数值进行核糖体信息统计。如果指定该参数吗,则版本需要与SeekSoulTools使用的STAR一致
--rRNAgtf #相应物种的gtf路径,用于rRNA比例评估,同样该参数可以不指定
--chemistry # 试剂类型;DD-Q 对应SeekOne® DD单细胞全序列转录组试剂盒
--scoremin #设置STAR比对时的`--outFilterScoreMinOverLread`参数,用于FFPE样本放宽比对要求
--matchnmin #设置STAR比对时的`--outFilterMatchNminOverLread`参数,用于FFPE样本放宽比对要求
##提交运行
nohup bash seeksoul_fast_run.sh fast_test 1>log_fast_test.txt 2>&1 &
如果是FFPE样本单细胞转录数据 ,可以添加参数 --scoremin 0.2 --matchnmin 0.33
使用
## T细胞分析
###将以下运行代码写入脚本 seeksoul_vdj_tcr_run.sh
#! /bin/bash -xe
#
bin=/home/data/t020559/biosoft/seeksoultools.1.2.2/seeksoultools
ls ${bin}
id=${1}
output_dir=/home/data/t020559/seekone/TCR_test
if [ ! -d ${output_dir} ];
then mkdir -p ${output_dir}
fi
/usr/bin/time -v ${bin} vdj run \
--fq1 /home/data/t020559/seekone/vdj_data/PBMC_xin_TCR_S19_L1_R1_001.fastq.gz \
--fq2 /home/data/t020559/seekone/vdj_data/PBMC_xin_TCR_S19_L1_R2_001.fastq.gz \
--chemistry DD5V1 \
--samplename ${id} \
--outdir ${output_dir} \
--chain TR \
--core 8 \
--organism human
## B细胞分析
###将以下运行代码写入脚本 seeksoul_vdj_bcr_run.sh
#! /bin/bash -xe
#
bin=/home/data/t020559/biosoft/seeksoultools.1.2.2/seeksoultools
ls ${bin}
id=${1}
output_dir=/home/data/t020559/seekone/BCR_test
if [ ! -d ${output_dir} ];
then mkdir -p ${output_dir}
fi
/usr/bin/time -v ${bin} vdj run \
--fq1 /home/data/t020559/seekone/vdj_data/PBMC_xin_BCR_S19_L1_R1_001.fastq.gz \
--fq2 /home/data/t020559/seekone/vdj_data/PBMC_xin_BCR_S19_L1_R2_001.fastq.gz \
--chemistry DD5V1 \
--samplename ${id} \
--outdir ${output_dir} \
--chain IG \
--core 8 \
--organism human
###参数释义
--organism #设定物种。可选值:human,mouse, monkey,rabbit,rat
--chain #链类型,可选值:IG,TR;IG对应B细胞受体;TR对应T细胞受体
##提交运行
nohup bash seeksoul_vdj_tcr_run.sh PBMC_xin_TCR 1>log_test2_tcr.txt 2>&1 &
nohup bash seeksoul_vdj_bcr_run.sh PBMC_xin_BCR 1>log_test2_bcr.txt 2>&1 &
TCR结果
更多详细使用教程见:http://seeksoul.seekgene.com/zh/v1.2.2/2.tutorial.html