macでインフォマティクス

macでインフォマティクス

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

samtoolsのインストール

2019 2/26 インストール追記

2019 12/8 追記

2020 3/25 conda追記

 

あけましておめでとうございます。今年もよろしくお願い致します。 

samtoolsがどんどんアップデートしているので、久しぶりに更新します。ここではパッケージマネージャに頼らず、ソースからビルドします。自分の環境に合わせてビルドした方がチューニングが効きますし、ビルドのオプション次第で速くなる可能性もあります。

 

追記 1.10更新アナウンス 

新しいバージョンを入れる場合は他のツールとの互換性に注意してください。特にいきなり本環境に入れるのは良くないです。

 

http://www.htslib.org/

f:id:kazumaxneo:20190104214218p:plain

 

インストール

OSは素のubuntuを想定(失念していたものを追記)

#必要なコマンド、ライブラリを導入
apt update #追記 
apt install -y wget
apt install -y libncurses5-dev
apt install -y zlib1g-dev
apt install -y libbz2-dev
apt install -y liblzma-dev
apt install -y gcc #追記 
apt install -y make #追記 

samtoolsのダウンロードとインストール

#v1.9
#wget
wget https://github.com/samtools/samtools/releases/download/1.9/samtools-1.9.tar.bz2
#curl (macos)
curl -L https://github.com/samtools/samtools/releases/download/1.9/samtools-1.9.tar.bz2 > samtools-1.9.tar.bz2

tar -jxvf samtools-1.9.tar.bz2
cd samtools-1.9/
./configure --prefix=/usr/local/
make -j 8
make install


#2019 12/8追記 v1.10
wget https://github.com/samtools/samtools/releases/download/1.10/samtools-1.10.tar.bz2
#curl (macos)
curl -L https://github.com/samtools/samtools/releases/download/1.10/samtools-1.10.tar.bz2 > samtools-1.10.tar.bz2
tar -jxvf samtools-1.10.tar.bz2
cd samtools-1.10/
./configure --prefix=/usr/local/
make -j 8
make install

 

追記

もちろんcondaを使って導入することもできます。

#bioconda (link)
conda install -c bioconda -y samtools==1.10-2

#updateする
conda update samtools

  

ヘルプ (v1.10)

> samtools 

Program: samtools (Tools for alignments in the SAM format)

Version: 1.10 (using htslib 1.10)

 

Usage:   samtools <command> [options]

 

Commands:

  -- Indexing

     dict           create a sequence dictionary file

     faidx          index/extract FASTA

     fqidx          index/extract FASTQ

     index          index alignment

 

  -- Editing

     calmd          recalculate MD/NM tags and '=' bases

     fixmate        fix mate information

     reheader       replace BAM header

     targetcut      cut fosmid regions (for fosmid pool only)

     addreplacerg   adds or replaces RG tags

     markdup        mark duplicates

 

  -- File operations

     collate        shuffle and group alignments by name

     cat            concatenate BAMs

     merge          merge sorted alignments

     mpileup        multi-way pileup

     sort           sort alignment file

     split          splits a file by read group

     quickcheck     quickly check if SAM/BAM/CRAM file appears intact

     fastq          converts a BAM to a FASTQ

     fasta          converts a BAM to a FASTA

 

  -- Statistics

     bedcov         read depth per BED region

     coverage       alignment depth and percent coverage

     depth          compute the depth

     flagstat       simple stats

     idxstats       BAM index stats

     phase          phase heterozygotes

     stats          generate stats (former bamcheck)

 

  -- Viewing

     flags          explain BAM flags

     tview          text alignment viewer

     view           SAM<->BAM<->CRAM conversion

     depad          convert padded BAM to unpadded BAM

 

 

1.4を消して1.9を入れ直したのですが、samtools sortコマンドは5%ほど速くなっていました。メモリ使用量もかなり減っているようです。

引用

The Sequence Alignment/Map format and SAMtools.

Li H, Handsaker B, Wysoker A, Fennell T, Ruan J, Homer N, Marth G, Abecasis G, Durbin R; 1000 Genome Project Data Processing Subgroup.

Bioinformatics. 2009 Aug 15;25(16):2078-9