ハイスループットのDNAシーケンス技術は、膨大な量のデータを生成する。何千ものサンプルを同時に解析するためには、高速で柔軟性があり、メモリ効率の良い実装が必要である。ここではANGSDと呼ばれるマルチスレッド・プログラム・スイートを発表する。このプログラムは、様々な要約統計量を計算し、生のシーケンスデータを直接処理したり、遺伝子型の尤度を使用したりして、次世代シーケンスデータの全情報を利用した関連性マッピングや集団遺伝学的解析を行うことができる。
このプログラムは、BAMファイルやインピュートされたビーグル遺伝子型確率ファイルなど、複数の入力フォーマットに対応している。このプログラムでは、既存の手法の組み合わせを選択することができ、他では実装されていない解析を行うことができる。
Documentaion
http://www.popgen.dk/angsd/index.php/ANGSD
HPより
ANGSDは、次世代シーケンスデータを解析するためのソフトウェアです。このソフトウェアは、マッピングされたリードから入力された遺伝子型確率まで、さまざまな入力タイプを扱うことができます。ほとんどの手法では、遺伝子型と呼ばれるものに基づいて解析を行うのではなく、遺伝子型の不確実性を考慮しています。これは、特に低深度および中深度のデータに有効です。このソフトウェアはC++で書かれており、大規模なサンプルサイズで使用されています。
このプログラムは、BAM/CRAMファイルを操作するためのものではなく、あくまでも様々な種類の解析を行うためのツールです。BAMファイルの出力や修正には、優れたプログラムであるSAMtoolsをお勧めします。
インストール
condaを使ってubuntu18.04に導入した。
依存
- The program is developed on tested on a Linux system with gcc compiler. It compiles on OSX with clang, but OSX is not really that tested.
#bioconda (link)
mamba create -n angsd
conda activate angsd
mamba install -c bioconda angsd -y
> angsd
# angsd
-> angsd version: 0.935 (htslib: 1.12) build(Mar 28 2021 01:00:43)
-> angsd
-> No '-out' argument given, output files will be called 'angsdput'
-> angsd version: 0.935 (htslib: 1.12) build(Mar 28 2021 01:00:42)
-> Please use the website "http://www.popgen.dk/angsd" as reference
-> Use -nThreads or -P for number of threads allocated to the program
Overview of methods:
-GL Estimate genotype likelihoods
-doCounts Calculate various counts statistics
-doAsso Perform association study
-doMaf Estimate allele frequencies
-doError Estimate the type specific error rates
-doAncError Estimate the errorrate based on perfect fastas
-HWE_pval Est inbreedning per site or use as filter
-doGeno Call genotypes
-doFasta Generate a fasta for a BAM file
-doAbbababa Perform an ABBA-BABA test
-sites Analyse specific sites (can force major/minor)
-doSaf Estimate the SFS and/or neutrality tests genotype calling
-doHetPlas Estimate hetplasmy by calculating a pooled haploid frequency
Below are options that can be usefull
-bam Options relating to bam reading
-doMajorMinor Infer the major/minor using different approaches
-ref/-anc Read reference or ancestral genome
-doSNPstat Calculate various SNPstat
-cigstat Printout CIGAR stat across readlength
many others
Output files:
In general the specific analysis outputs specific files, but we support basic bcf output
-doBcf Wrapper around -dopost -domajorminor -dofreq -gl -dovcf docounts
For information of specific options type:
./angsd METHODNAME eg
./angsd -GL
./angsd -doMaf
./angsd -doAsso etc
./angsd sites for information about indexing -sites files
Examples:
Estimate MAF for bam files in 'list'
'./angsd -bam list -GL 2 -doMaf 2 -out RES -doMajorMinor 1'
> angsd -GL
# angsd -GL
-> angsd version: 0.935 (htslib: 1.12) build(Mar 28 2021 01:00:43)
-> angsd -GL
-> Analysis helpbox/synopsis information:
-> Fri May 21 03:06:30 2021
---------------------
abcGL.cpp:
-GL=0:
1: SAMtools
2: GATK
3: SOAPsnp
4: SYK
5: phys
6: Super simple sample an allele type GL. (1.0,0.5,0.0)
7: outgroup gls
-trim 0 (zero means no trimming)
-tmpdir angsd_tmpdir/ (used by SOAPsnp)
-errors (null) (used by SYK)
-minInd 0 (0 indicates no filtering)
Filedumping:
-doGlf 0
1: binary glf (10 log likes) .glf.gz
2: beagle likelihood file .beagle.gz
3: binary 3 times likelihood .glf.gz
4: text version (10 log likes) .glf.gz
5: binary saf files (usefull for realSFS) .glf.gz
実行方法
bamファイルのリストファイルを指定し、遺伝子型の尤度から対立遺伝子頻度を推定。10スレッド使用。
angsd -out outFileName -bam bam.list -GL 1 -doMaf 1 -doMajorMinor 1 -nThreads 10
- -bam Options relating to bam reading-bam Options relating to bam reading
- -doMaf Estimate allele frequencies-doMaf Estimate allele frequencies
- -doMajorMinor Infer the major/minor using different approaches
HPでは、他のツールとも連携して様々な使用法が提示されています。上のリンクから確認して下さい。
引用
ANGSD: Analysis of Next Generation Sequencing Data
Thorfinn Sand Korneliussen, Anders Albrechtsen & Rasmus Nielsen
BMC Bioinformatics volume 15, Article number: 356 (2014)