macでインフォマティクス

macでインフォマティクス

HTS (NGS) 関連のインフォマティクス情報についてまとめています。

追加配列のアノテーションを含めるように既存のfastaとgff3を改変する reform

 

 

タイトルの通りのスクリプト。使い方は下のテストラン参照。

 

インストール

依存

  • reform requires Python3 and Biopython.

本体 Github

pip install biopython

git clone https://github.com/gencorefacility/reform.git
cd reform/

> python3 reform.py -h

$ python3 reform.py -h

usage: reform.py [-h] --chrom CHROM --in_fasta IN_FASTA --in_gff IN_GFF

                 [--upstream_fasta UPSTREAM_FASTA]

                 [--downstream_fasta DOWNSTREAM_FASTA] [--position POSITION]

                 --ref_fasta REF_FASTA --ref_gff REF_GFF

 

optional arguments:

  -h, --help            show this help message and exit

  --chrom CHROM         Chromosome name (String)

  --in_fasta IN_FASTA   Path to new sequence to be inserted into reference

                        genome in fasta format

  --in_gff IN_GFF       Path to GFF file describing new fasta sequence to be

                        inserted

  --upstream_fasta UPSTREAM_FASTA

                        Path to Fasta file with upstream sequence. Either

                        position, or upstream AND downstream sequence must be

                        provided.

  --downstream_fasta DOWNSTREAM_FASTA

                        Path to Fasta file with downstream sequence. Either

                        position, or upstream AND downstream sequence must be

                        provided.

  --position POSITION   Position at which to insert new sequence. Note:

                        Position is 0-based. Either position, or upstream AND

                        downstream sequence must be provided.

  --ref_fasta REF_FASTA

                        Path to reference fasta file

  --ref_gff REF_GFF     Path to reference gff file

 

 

テストラン

実行するには、元のリファレンス配列(fasta)とそのアノテーション情報(GFFまたはGTF)、そこに追加する新規配列(fasta)とそのアノテーション(GFFまたはGTF)が必要。挿入位置はポジションか上流配列と下流配列のfastaで指定する。

cd test_data/1/

#リファレンスref.faとアノテーションref.gff3のchrの"X"の4-bp目に、in.fastaアノテーションin.gff3を挿入
python3 reform.py
--chrom=X \
--position 3
--in_fasta=in.fa \
--in_gff=in.gff3 \
--ref_fasta=ref.fa \
--ref_gff=ref.gff3
  • --chrom    Chromosome name (String)
  • --position    Position at which to insert new sequence. Note: Position is 0-based. Either position, or upstream AND downstream sequence must be provided.
  • --in_fasta    Path to new sequence to be inserted into reference genome in fasta format
  • --in_gff        Path to GFF file describing new fasta sequence to be inserted
  • --ref_fasta   Path to reference fasta file
  • --ref_gff       Path to reference gff file

ref_reformed.faとref_reformed.gff3が出力される。

 

元のアノテーションref.gff3

f:id:kazumaxneo:20190828020650p:plain

 

追加するアノテーションin.gff3

f:id:kazumaxneo:20190828020737p:plain

 

ref.gff3の4-bp目にin.gff3を組み込む。出力されたとref_reformed.gff3

f:id:kazumaxneo:20190828020850p:plain

青がin.gff3由来アノテーション。挿入された配列mの位置に応じて影響を受けるアノテーションのポジションが変更されているのが確認できる(上記は5つともポジションが変更されている)。

引用

GitHub - gencorefacility/reform: Modify existing reference fasta and gff3/gtf files to include a new sequence