工欲善其事必先利其器
Kallisto是由Nicolas Bray主导开发的一款专门用于从 RNA-Seq 数据中量化转录本的表达丰度的工具。发表于 2016 年的《Nature Biotechnology》期刊,其具有以下特性:
官网
官网:
Github:
题目:Near-optimal probabilistic RNA-seq quantification 期刊:Nat Biotechnol 作者及单位: Nicolas L Bray && University of California, Berkeley, California 日期:2016/5 DOI:10.1038/nbt.3519
使用conda 安装,方便管理整个组学分析的软件
conda activate RNAseq
conda install kallisto
不过最近conda的镜像很多挂掉了,如果conda下载不下来的话,也只可以直接从GIthub下载安装,也非常方便
预编译的二进制版,下载解压即可使用
cd software/
wget -c https://github.com/pachterlab/kallisto/releases/download/v0.50.1/kallisto_linux-v0.50.1.tar.gz
tar -xf kallisto_linux-v0.50.1.tar.gz
解压即可使用
总的来说,安装起来还是非常方便的
其实可以对比salmon来学习。见 Salmon — 兼具高效、精准及偏差感知的RNA-seq定量工具
##下载转录本文件
wget -c https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_45/gencode.v45.transcripts.fa.gz
##文件大小
454M 1月 11 21:27 gencode.v45.transcripts.fa
mkdir homo_gencode_trans_kalliso
~/biosoft/kallisto/kallisto index -k 31 -t 8 -i homo_gencode_trans_kalliso.idx gencode.v45.transcripts.fa
-i #指定构建索引的输出文件名
-t 8 #设置线程
-k #指定用于索引构建的 k-mer 长度。默认值为 31,这是 k-mer 长度的最大值。k-mer 长度影响索引的精确性和内存使用量
-T #指定临时目录,默认是tmp
--make-unique #如果在 FASTA 文件中存在重复的目标名称,此选项将自动替换这些名称以确保它们的唯一性。这有助于避免在量化过程中发生名称混淆
##输出文件大小
422M 6月 25 00:15 homo_gencode_trans_kalliso.idx
建索引
###双端
~/biosoft/kallisto/kallisto quant \
-i ~/ref/homo/gencode/homo_gencode_trans_kalliso.idx \
-o ./paired_out2 -t 4 \
/home/data/t020559/RNAseq/GSE128101/b_rawdata/homo_pe/SRR8707539_1.fastq.gz \
/home/data/t020559/RNAseq/GSE128101/b_rawdata/homo_pe/SRR8707539_2.fastq.gz
-i #索引文件
-o #输出目录
-t #设定线程
--plaintext #仅输出文本格式。默认是HDF5格式
--single #指定输入的是单端测试数据
-l #指定估计的平均片段长度
-s #指定片段长度的标准偏差
-l 和 -s 这些参数对于单端数据是必需的,因为无法从单端数据中直接估计它们
###单端-小鼠测序数据
~/biosoft/kallisto/kallisto quant \
-i ~/ref/mouse/gencode/mouse_gencode_trans_kalliso.idx \
-o ./single_out -t 4 --single -l 100 -s 30 \
~/RNAseq/GSE128101/b_rawdata/SRR8734842.fastq.gz
双端日志
单端日志
默认输出3个结果
abundance.tsv
目前支持的技术列表
$~/biosoft/kallisto/kallisto bus -l
List of supported single-cell technologies
short name description
---------- -----------
10xv1 10x version 1 chemistry
10xv2 10x version 2 chemistry
10xv3 10x version 3 chemistry
Bulk Bulk RNA-seq
SmartSeq2 Smart-seq2 (multiplexed)
BDWTA BD Rhapsody WTA
CELSeq CEL-Seq
CELSeq2 CEL-Seq version 2
DropSeq DropSeq
inDropsv1 inDrops version 1 chemistry
inDropsv2 inDrops version 2 chemistry
inDropsv3 inDrops version 3 chemistry
SCRBSeq SCRB-Seq
SmartSeq3 Smart-seq3
SPLiT-seq SPLiT-seq
STORM-seq STORM-seq
SureCell SureCell for ddSEQ
VASA-seq VASA-seq
Visium 10x Visium Spatial Transcriptomics
实例测试
~/biosoft/kallisto/kallisto bus \
-i ~/ref/homo/gencode/homo_gencode_trans_kalliso.idx \
-o ./scRNA_out4 -t 4 -x 10xv3 \
~/scRNA/PRJNA971592/b_rawdata/split/SRR24516561.lite_2.fastq.gz \
~/scRNA/PRJNA971592/b_rawdata/split/SRR24516561.lite_3.fastq.gz
-x #指定单细胞测序技术
默认输出结果
12M 6月 25 18:47 matrix.ec
4.8G 6月 25 18:47 output.bus
592 6月 25 18:47 run_info.json
18M 6月 25 18:47 transcripts.txt
matrix.ec :这个文件包含了等价类的信息。每个等价类由一个唯一的编号和与之对应的一组转录本编号组成。通常包含两列,第一列是等价类的编号,第二列是该等价类包含的转录本的索引
matrix.ec
output.bus:这是一个 Barcode, UMI, Set (BUS) 格式的文件。包含了有关每个读取的信息,如细胞的条形码(barcode)、UMI和读取所属的转录本等价类。BUS 文件是一个二进制文件,可以被用于后续的数据处理和分析步骤,如使用 bustools
这样的工具进一步处理。
run_info.json :Kallisto 执行的信息,可以忽略
transcripts.txt :单列,每行是一个转录本的名称。这个文件列出了分析中使用的所有转录本的名称,这些转录本名称通常与分析所使用的参考转录组索引文件一致。它主要用于将转录本的索引编号映射到具体的转录本名称。
transcripts.txt
更多用法,详见:https://www.kallistobus.tools/
参考: