2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Pan-genomeの圧縮解凍ツールAGCを使ってみた

Last updated at Posted at 2023-06-09

はじめに

Pan-genomeは、2023年ごろに論文が出た比較的新しいゲノムの地図です。

これまでのリファレンス配列は hg19/GRCh37、hg38/GRCh38、hs1/chm13/T2T など、一本のアセンブリに基づくものでした。Pan-genomeでは、アフリカ人、アメリカ先住民、アジア人などを含む47人の多様な人々の全DNAを1つの巨大な遺伝子地図帳にまとめて、今よりも網羅的で汎用性の高いリファレンスを作ろうとする試みです。

しかし、リファレンスゲノムはファイルサイズが大きいです。例えばGRCh38はgzip圧縮した状態で約850Mbあります。しかしヒトゲノムはほとんど同じなので、複数のFASTAファイルを集めて一つのファイルに圧縮した方がようでしょう。これがAGC形式です。

FASTAをAGC形式に圧縮したり展開するツールが Assembled Genomes Compressor (AGC) です。

Assembled Genomes Compressor (AGC)

AGCのリポジトリはこちらです。

論文もあるようです。

インストール

conda install -c bioconda agc

筆者は、M1/M2 Macでこれを動かしてみようと試みましたがうまくいきませんでした。Dockerを使って、--platform linux/amd64 を指定してもうまく動作しませんでした。M1/M2 Macで動かす方法がわかる方がいたら教えてください。(2023-06-08時点)
Linuxでも、ソースからコンパイルするときにPythonのヘッダーファイルが必要になり、libpython3-devpython-dev をインストールする必要がありました。

使ってみる

Pan-genomeのダウンロード

Pan-genomeのデータは HPP_Year1_Assemblies - GitHub にまとまっています。例えば、Pan-genomeのデータを一人ひとりのアセンブリとして手に入れたい場合は、S3アドレスから入手できます。(ダウンロード料金は無料だそうです)

今回はagcを使う記事なので、Zenodoからagc形式のファイルをダウンロードします。

上のリンク先の、HPRC-yr1.agc をダウンロードします。ファイルは1.4Gbであり、47人のアセンブリを集約したものであることを考えると、かなり効率的に圧縮されているという感じがします。

ゲノム名のリストを表示する

$ agc listset HPRC-yr1.agc
CHM13Y
HG002.1
HG002.2
HG00438.1
HG00438.2
HG005.1
HG005.2
HG00621.1
HG00621.2

--- 中略 ---

NA20129.2
NA21309.1
NA21309.2

特定のアセンブリを展開する

$ agc getset HPRC-yr1.agc CHM13Y > chm13.fa
grep ">" chm13.fa

>chr1
>chr2

--- 中略 ---

>chrX
>chrY
>chrM

Contigのリストを表示する

agc listctg HPRC-yr1.agc CHM13Y

Contigを抽出する

$ agc getctg chrM > chrM.fa

または

$ agc getctg HPRC-yr1.agc chrM@CHM13Y

複数のcontigを指定することもできる。

$ agc getctg HPRC-yr1.agc chrX@CHM13Y chrY@CHM13Y

すべてのゲノムを抽出する

-o でディレクトリを指定します。(ディレクトリを指定しない場合は、すべてが標準出力に表示されます)

$ mkdir pan-genome # pan-genome ディレクトリを作成
$ agc getcol -o pan-genome HPRC-yr1.agc

ちなみに、上記のコマンドはpan-genomeディレクトリ内に100個近い3GBのファイルを作り出します。ご注意ください。

圧縮する

圧縮はそれほど使う機会は多くないかもしれませんが、

agc create a1.fa a2.fa a3.fa > all.agc

などとすればいいようです。しかも、あらたにゲノムを追加することもできるようです。

agc append all.agc a4.fa > all.agc

ファイルの情報を表示する

$ agc info HPRC-yr1.agc
No. samples      : 95
k-mer length     : 31
Min. match length: 20
Batch size       : 50
Command lines:
 : agc create -t32 -o HPRC-yr1.agc CHM13Y.fa HG002.1.gz HG002.2.gz HG00438.1.gz HG00438.2.gz HG005.1.gz HG005.2.gz HG00621.1.gz HG00621.2.gz HG00673.1.gz HG00673.2.gz HG00733.1.gz HG00733.2.gz HG00735.1.gz HG00735.2.gz HG00741.1.gz HG00741.2.gz HG01071.1.gz HG01071.2.gz HG01106.1.gz HG01106.2.gz HG01109.1.gz HG01109.2.gz HG01123.1.gz HG01123.2.gz HG01175.1.gz HG01175.2.gz HG01243.1.gz HG01243.2.gz HG01258.1.gz HG01258.2.gz HG01358.1.gz HG01358.2.gz HG01361.1.gz HG01361.2.gz HG01891.1.gz HG01891.2.gz HG01928.1.gz HG01928.2.gz HG01952.1.gz HG01952.2.gz HG01978.1.gz HG01978.2.gz HG02055.1.gz HG02055.2.gz HG02080.1.gz HG02080.2.gz HG02109.1.gz HG02109.2.gz HG02145.1.gz HG02145.2.gz HG02148.1.gz HG02148.2.gz HG02257.1.gz HG02257.2.gz HG02486.1.gz HG02486.2.gz HG02559.1.gz HG02559.2.gz HG02572.1.gz HG02572.2.gz HG02622.1.gz HG02622.2.gz HG02630.1.gz HG02630.2.gz HG02717.1.gz HG02717.2.gz HG02723.1.gz HG02723.2.gz HG02818.1.gz HG02818.2.gz HG02886.1.gz HG02886.2.gz HG03098.1.gz HG03098.2.gz HG03453.1.gz HG03453.2.gz HG03486.1.gz HG03486.2.gz HG03492.1.gz HG03492.2.gz HG03516.1.gz HG03516.2.gz HG03540.1.gz HG03540.2.gz HG03579.1.gz HG03579.2.gz NA18906.1.gz NA18906.2.gz NA19240.1.gz NA19240.2.gz NA20129.1.gz NA20129.2.gz NA21309.1.gz NA21309.2.gz

以上、agc のコマンドを実行して、Pan-genomeのデータを個別のアセンブリに解凍する方法を見ました。

この記事は以上です。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?