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?

snpEffを動かす [備忘録]

Last updated at Posted at 2023-11-25

GATKやsamtoolsなどを用いて検出したバリアントについて,どの遺伝子に影響があるのかを調べるためには,アノテーションをつける必要がある。snpEffを用いると,アノテーションとバリアントの効果を予測することができる。snpEffの使いかたについて,簡単に備忘録としてまとめる。

snpEffについて詳しい情報は以下を参照。

また,日本語だと,以下の上坂一馬さん(id:kazumaxneo)のサイトが詳しい。(ただし,カスタムアノテーションについては,configファイルを書き換える方法もあるので,特にその部分については私が書いたカスタムアノテーションの項目についても参照してほしい)

使用環境等

MacOSで,snpEffは以下にようにcondaでインストールした。

$ mamba install -c bioconda -y snpeff

$ snpEff -h
SnpEff version SnpEff 5.2 (build 2023-09-29 06:17), by Pablo Cingolani
Usage: snpEff [command] [options] [files]

アノテーション

基本的な使用方法は以下の通り。
(1) データベースのダウンロード
まず,用いる生物種のデータベースがあるか確認する。

$ snpEff databases

上記のコマンドだと,データベースにあるものが全部表示されるので,以下のように見つけたい生物種で絞り込む。(ここでは,Aspergillus oryzaeを対象とする)

$ snpEff databases | grep -i Aspergillus

用いる生物種のデータベースが見つからない場合は,以下のカスタムアノテーションに進む。

用いる生物種のデータベースが見つかった場合は,以下のようにデータベースをダウンロードする。

$ snpEff download -v Aspergillus_oryzae

(2)アノテーションの実行
以下のように,実行する。(variant.vcfはアノテーションをつけたいファイル,annotation.vcfはアウトプットファイルの名前)

$ snpEff -v -stats result.html Aspergillus_oryzae variant.vcf > annotation.vcf

カスタムアノテーション

データベースに目的の生物種,もしくはアノテーションデータがない場合には,自身で登録したファイルも使用可能。bed,gtfファイルなどが使用できるが,ここではgffファイル(gff3)を用いる方法を紹介する。

(1)ファイルの準備
ゲノムのリファレンス配列(fastaファイル: .faの拡張子にする)とアノテーションファイル(gff3形式のファイル: .gffの拡張子にする)を用意する。ここでは,RIB40という株についてアノテーションをつけることにする。公式ではgz圧縮した例が紹介されているが,非圧縮ファイルでも作業内容は同様。

(2)ファイルのbuild
snpEffのインストールディレクトリにまず移動する。condaで導入した場合には以下のような感じ。

$ cd /Users/Username/mambaforge/share/snpeff-5.2-0 

このディレクトリにある,snpEff.configファイルに,ゲノムの情報を追加する。例えば以下のような感じ。(上一行はなんでも良い気がするが,よくわからない)

\# RIB40 genome, version RIB40
RIB40.genome : RIB40

/snpeff-5.2-0/data/ディレクトリに移動。新しいディレクトリを作成する。この時,名前はアノテーションをつける株の名前にしておく。(つまり,"RIB40"という名前のフォルダを作る)

/snpeff-5.2-0/data/RIB40/に移動し,gffファイルを置く。ファイル名はgenes.gffにする。
さらに,fastaファイル(RIB40.fa)をsequences.faに名前を変えて置く。
(fastaファイルは,/snpeff-5.2-0/data/にgenomes/というディレクトリを作り,その中にRIB40.faとしてファイルを置いても良い)

/snpeff-5.2-0/に移動し,以下のコマンドを打つ。

$ snpEff build -gff3 -noCheckCds -noCheckProtein -v RIB40

-v オプションで株名(データベース名)を指定する。また,今回はgff3形式ファイルを用いたので,-gff3 オプションで指定する(他のファイル形式は公式サイトを参照)。
他のサイトには詳しく述べられていないが,ここで"-noCheckCds"と"-noCheckProtein"オプションを入れることが重要。CDSとProteinの情報を入れていない場合にはerrorが起きてbuildが実行できないので,必ずこのオプションを入れること
うまくbuildできれば,/data/RIB40/ディレクトリに.binファイルが作られているはず。

(3)アノテーション
アノテーションは,データベースをダウンロードした場合も,カスタムアノテーションも同じ。

$ snpEff -v -stats result.html RIB40 variant.vcf > annotation.vcf
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?