一般にイントロンは一次転写産物から取り除かれ、成熟RNA分子を形成するために、スプライシングと呼ばれる転写後プロセスが行われる。一次転写産物の効率的なスプライシングは、遺伝子発現に不可欠なステップであり、その制御ミスは多くのヒト疾患に関連している。したがって、このプロセスのダイナミクスと、転写産物の異常処理によって引き起こされる可能性のある障害をより良く理解するためには、スプライシング効率を定量化することが重要である。SPLICE-qは、ゲノム全体のスプライシング効率を定量化するための高速で使いやすいPythonツールである。このツールは、転写産物の処理ダイナミクスにおけるスプライシング効率の影響に焦点を当てた研究をサポートする。SPLICE-qは、鎖特異的RNA-seqから得られたアラインメントリードを用いて、各イントロンのスプライシング効率を個別に定量し、他の遺伝子のエキソンなど他のゲノムエレメントとの重複に関する制限を異なるレベルで選択することが可能である。SPLICE-qを酵母とヒトの新生RNA-seqにおけるイントロン除去のダイナミクスをグローバルに評価するために適用した。また、患者をマッチングした前立腺がんサンプルのtotal RNA-seqを用いて、その応用を示した。
SPLICE-qが新生RNA-seqのタイムコースを通してスプライシング効率の漸進的な増加を検出するのに適しており、単なる遺伝子発現レベルを超えてがんの進行を理解する上で有用であることを示している。SPLICE-qは、https://github.com/vrmelo/SPLICE-q で入手できる。
manual
https://github.com/vrmelo/SPLICE-q/wiki
特徴(レポジトリより)
- スプライシングリード(スプリットリードとアンスプリットジャンクションリード)を用いて、各イントロンのスプライシング効率(SE)を個別に定量する。スプリットリードは、エクソンから別のエクソンにまたがるジャンクションリードを意味する。アンスプリットジャンクションリードは、イントロンとエクソンの境界(スプライスジャンクションの両側)にわたるリードで、イントロンがまだスプライシングされていない転写産物を意味する。
- 複数の予測アルゴリズムによってSNVとindel両方のモチーフスコアを提供。
- 鎖特異的なRNA-seqデータから個々のイントロンスプライシング効率を定量。
- ゲノムエレメントの重なりに敏感(levelで調整可能)。
- 高速で使いやすい。
インストール
mambaで環境を作ってpipで導入した。
OS
依存
- Python 3.6+
- PySam
- InterLap
- NumPy
- Rich
#PyPI
mamba create -n splice-q python=3 -y
conda activate splice-q
pip install SPLICE-q
#from source
git clone https://github.com/vrmelo/SPLICE-q
cd SPLICE-q
pip install -e .
$ SPLICE-q.py -h
usage: SPLICE-q.py [-h] -g -b [-o] [-q] [-i] [-f] [-l] [-r] [-c] [-p] [-x]
options:
-h, --help show this help message and exit
-g , --gtffile GTFfile provided by GENCODE or Ensembl.
-b , --bamfile Sorted BAM file.
-o , --outfile Output file name.
-q, --quiet Enable quiet mode (only shows warnings and errors).
-i, --IERatio Running mode that additionally outputs the
Inverse Intron Expression Ratio (IER). Takes longer.
-f , --filterLevel Levels:1) Keeps all introns in the genome. 2) Keeps only introns whose SJs do not overlap with exons in different genes. 3) Keeps only introns that do not overlap with exons in other parts of the genome (Default).
-l , --MinIntronLength
Minimum intron length. (Default = 30)
-r , --MinReadQuality
Minimum read quality. (Default > 10)
-c , --MinCoverage Minimum coverage of each splice junctions.
(Default = 10)
-p , --NrProcesses Number of processes spawned to process chromosomes in parallel. 0 spawns as many as processors are available.
-x , --ChromsList List of Chromosome names separated by comma (without spaces). Without this parameter a default set of common chromosomes is used.
実行方法
ランするにはbamファイルとGTFファイルが必要。bam.baiがない場合はsamtoolsによって作成される。
SPLICE-q.py -b file.bam -g annotation.gtf -o outfile.tsv
- -g GTFfile provided by GENCODE or Ensembl
- -b Sorted BAM file.
- -o Output file name.
- -x List of Chromosome names separated by comma (without spaces). Without this parameter a default set of common chromosomes is used.
-
-r Minimum read quality. (Default > 10)
-
-c Minimum coverage of each splice junctions. (Default = 10)
デフォルトではchr1-720, I-XVI, 2L, 2R, 3L, 3R, Z, Wを考慮する。変更するには-xオプションを使う。例;-x "1,2,3,4,X"。デフォルトでは、一意にマップされたリードと、各スプライスジャンクションにまたがる最低10本のリードが使用される。変更するには-cと-rを使う。
ここではGRCh38にHISAT2でマッピングして得たbamを指定して実行した。
出力例
> head -n 20 outfile.tsv
こちらで説明されています。
引用
SPLICE-q: a Python tool for genome-wide quantification of splicing efficiency
Verônica R. de Melo Costa, Julianus Pfeuffer, Annita Louloupi, Ulf A. V. Ørom & Rosario M. Piro
BMC Bioinformatics volume 22, Article number: 368 (2021)