macでインフォマティクス

macでインフォマティクス

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

メタゲノムのアセンブル配列からウィルス由来配列を見つける VirSorter

 

 細菌と古細菌に感染するウイルスはこれまでにサンプリングされたあらゆるタイプのバイオームにありふれており、豊富に存在する。ウイルス - 宿主相互作用は地球化学的循環からヒトの健康まで生態系機能を変化させる(Fuhrman, 1999; Wommack & Colwell, 2000; Weinbauer, 2004; Breitbart & Rohwer, 2005; Edwards & Rohwer, 2005; Suttle, 2007; Rohwer & Thurber, 2009; Letarov & Kulikov, 2009; Rodriguez-Valera et al., 2009; Reyes et al., 2012; Brum & Sullivan, 2015)。例えば海では、シアノバクテリアに感染するウイルスは、1日当たり宿主の約3%を殺し(Suttle、2002)、一方で、ウイルスにコードされた光化学系コア遺伝子の発現および移入を通じてシアノバクテリア光合成に局所的およびグローバルに影響を与える(Lindell et al 、 2005Sullivan et al、 2006)。そのような感染中の宿主代謝への調節は、海洋ウイルス群集が炭素、窒素、リン酸塩および硫黄代謝を調節する可能性を有する遺伝子をコードする一般化された戦略であると思われる(Breitbart et al., 2007; Sharon et al., 2009; Sharon et al., 2011; Thompson et al., 2011; Hurwitz, Hallam & Sullivan, 2013; Anantharaman et al., 2014; Roux et al., 2014b; Hurwitz, Brum & Sullivan, 2015)。ヒトでは微生物のウイルスは動的に見え(Reyes et al、2010; Pride et al、2011; Minot et al、2013)、ここでもまた重要な生態系の役割を果たし、特に通性病原菌の病原性に影響を及ぼす。顕著な例は、コレラ菌の病原性をフルに引き起こすのためファージ感染が必要であることである(Waldor&Mekalanos、1996)。Busby、Kristensen&Koonin、2013)。微生物ウイルスは抗生物質耐性病原菌との闘いにも役立つかもしれない。(一部略)

 この重要性にもかかわらず、ウイルスの多様性に関する我々の理解は、自然界に存在するもののごく一部に限られたままである。これは、barcode surveysから存在することが知られているほとんどの微生物がまだ培養されておらず(Rappé&Giovannoni、2003)、たとえ宿主微生物が培養されたとしても、すべてのウイルスが培養に適していないためである(Edwards&Rohwer、2005)。ウイルス群集調査では、海洋だけではリファレンスゲノムの欠如により未知の配列の大部分(63〜93%)と、分類上識別不可能な5,476の表面海洋ウイルス集団の大部分(99%)「order」レベル以上で戻ってくる(Brum&Sullivan、2015)。 RefSeqで入手可能なバクテリア古細菌に感染する1,531ゲノムのウイルスの86%が、既知の宿主phyla61種のうち3種にしか関連していないことを考えると驚くべきことではない (based on the viral genomes available in NCBI RefseqVirus v69, January 2015).。

 今後の1つの方法は、急速に拡大している微生物ゲノムデータセットからウイルス配列データをよりよく検出してカタログ化することである。第一に、微生物宿主ゲノムへの温和なウイルスゲノムのintegrationから生じるプロファージが、シーケンシングされた細菌の約60%に存在する(Casjens、2003; Canchaya、Fournous&Brüssow、2004)。第二に、Single-cell Amplified Genome(SAG)データセットは、新規微生物のゲノム配列データおよび代謝能についての推論を提供するために現在日常的に生成されている(SSwan et al., 2011; Kamke, Sczyrba & Ivanova, 2013; Rinke et al., 2013; Kashtan et al., 2014)。これらのデータは、プロファージ配列、ならびに活発な溶菌性感染症のウイルスを含むであろう。このようなSAGに基づくウイルスシグナルは、未培養原生生物、細菌および古細菌における海洋ウイルス多様性およびウイルス - 宿主相互作用への洞察をすでに提供している。(一部略)

 Phage_Finder(Fouts、2006)、Prophinder(Lima-Mendez et al、2008)、PHAST(Zhouet al、2011)、およびPhiSpy(Akhter、Aziz&Edwards、2006)を含む、完全な微生物ゲノムにおけるプロファージを同定するための多数のアプローチが利用可能である。 2012)。全体として、プロファージ予測は、微生物ゲノムと既知ウイルス遺伝子との間の配列類似性の検出に依存している。さらに、PhiSpyは、データベースに存在しないウイルスの検出を可能にするために、「ウイルス様」ゲノムの特徴(ATおよびGCのskew、タンパク質長、および転写されるstrandの方向性)も同定している(Akhter、Aziz&Edwards、2012)。プロファージ予測因子はまた、予測される各プロファージについて微生物ゲノム中の付着部位を同定することによってプロファージの「末端」を探す。これらのツールは、ユーザーがローカルでダウンロードして実行する(PhiSpy、Phage_Finder)か、Webサーバーを介してアクセスする(PHAST)ように設計されている。

 しかし、(i)プロファージやデータベースで利用可能なものと厳密に一致する事例を超えてウイルス検出を進める(ii)断片化された大規模な微生物ゲノムデータセットを処理できる新しいツールが必要である。ここでは、ゲノムデータセット内のウイルスシグナルを検出するために設計された自動化ツールであるVirSorterを紹介し、この新しいツールと関連データベースをiPlant サイバー​​インフラストラクチャ環境で自由に利用できるようにする(Goff et al、2011)。全体として、VirSorterは現在のプロファージツールと同様に完全な微生物ゲノムでプロファージを検出するだけでなく、不完全なゲノム、SAGまたはメタゲノムアセンブリを含む断片化ゲノムデータセットでウイルス配列を検出する能力を提供する。

 

インストール

依存

本体 Github

dockerやcondaを使った導入がサポートされている。

#データベースのダウンロード
wget https://zenodo.org/record/1168727/files/virsorter-data-v2.tar.gz
tar -xvzf virsorter-data-v2.tar.gz

#docker hubからdockerイメージを取得
docker pull simroux/virsorter:v1.0.5

#実行
docker run -v /host/path/to/virsorter-data:/data -v /host/path/to/virsorter-run:/wdir -w /wdir --rm simroux/virsorter:v1.0.5 --db 2 --fna Input_contigs.fna

 

CyVserseの中で使う

http://ivirus.us/available-tools/

f:id:kazumaxneo:20190108233141p:plain

virsorterをクリック、CyVerseにログインする(root直下がiplanetになる)。 

 

uploadから配列をアップロード。

f:id:kazumaxneo:20190110103155j:plain

 

VirSorterを実行する。Apps => virsorterを選択

f:id:kazumaxneo:20190110103116j:plain

ソートしたい配列を入力、データベースのウィンドウをクリックしてデータベースを選択。

 

f:id:kazumaxneo:20190110103052j:plain

launchする。結果はデフォルトではhomeのanalysesに出力される。

 

引用
VirSorter: mining viral signal from microbial genomic data
Roux S, Enault F, Hurwitz BL, Sullivan MB

PeerJ. 2015 May 28;3:e985

 

冗長性がある配列データベースに対する正確なリードアライメントを行う KMA

 

 バイオインフォマティクスで最も古く、おそらく最も重要なツールは1つ以上の配列のアライメントである。アライメントは、ある配列が別の配列とどの程度類似しているかを知らせ、類似の配列パターンの存在量を定量化するために使用できる。見つかったパターンにアノテーションがある場合は、これをクエリシーケンスに送ることができる。したがって、アライメント方法を適切に選択することは、さらなる調査にとって重要である[ref.1]。

 過去10年間にわたり、ターゲット配列に対するrawリードの直接マッピングを可能にするいくつかのマッピング方法が開発されてきた。これまでの研究では、リードマッピングベースのアプローチの方が、最初にリードをアセンブルしてBLAST’edする従来の方法よりも優れていることが示されている。 BLASTは未処理のリードを直接マッピングするには遅すぎるので、このような方法が成功するかどうかはアセンブリの品質に大きく左右される。これはゲノムの反復領域および低深度領域内で問題となり、アセンブルされたコンティグ間にしばしばギャップを生じ、データの欠落を招く。今日、Bowtie 2 [ref.4]、BWA-MEM [ref.5]、およびMinimap 2 [ref.6]は、大きなリファレンスゲノムに対する高速なマッピングを可能にする一般的なマッピング方法である。これらの方法の全ては、配列のデータベース全体に対してマッピングするように適合させることができるが、最良の一致が複数ある場合にはランダム選択する問題に悩まされる。この同点問題を解決するために、前処理と後処理でこれらのランダム選択を解決するツールがいくつか開発されている。これらの例はSRST2 [ref.3]とMGmapper [ref.7]で、それぞれBowtie2とBWA-MEMのマッピングの前処理と後処理を行う。 Salmon [ref.8]などの他の方法は、伝統的な方法によって生成されたマッピングから相同テンプレートの配列決定レベルを推定するためにEMアルゴリズムwiki)を使用する。

 しかし、genomic epidemiologyで使用されている冗長なデータベースは、未加工のリードを直接マッピングすることに関して依然として課題を投げかけている。データベースが自然な進化のため新しいシーケンスで絶えず更新されるとき、結果は絶えず変化する状態にあり、クラスタリングを困難にする。データベースのこの機能は、リードが参照シーケンスの固有の部分をカバーするという保証がないため、rawリードの直接マッピングが面倒になる。バクテリアデータベースにマッピングする場合、冗長性が問題になるが、これらのデータベースはいくつかの遺伝子データベースほど冗長ではなく、ペアエンドの片方のペアは単一にマッピングされることが多いため、ペアエンドリードをより有効に利用できる。鋭敏な決定を下すことができるように、正確かつ迅速に冗長性に関する問題を解決するできる新しい方法論が必要である。この要求に応えて、新しいアラインメント方法、KMA(k-merアラインメント)が開発された。 KMAは、homologousなテンプレートを区別するために、新しい分類スキームConClaveを導入した。

 著者らは、冗長データベースに対してrawリードを直接マッピングすることを可能にする新しいアライメント方法KMA、およびスコアリングスキームConClaveを紹介する。 KMAはデータベース内での冗長性を可能にすることで既知のマッパーとは異なり、コンセンサス配列と結果の概要も生成する。 KMAは、現在のユーザーの要求と分析の課題に基づいて、できるだけ直感的でユーザーフレンドリーになるように作成された。 これを解決するために、KMAは5つの主なステップで動作する(trimming of reads、heuristic k-mer mapping、fine alignment、ConClave scoring and reference assembly)(論文図1を参照)。(以下略)

 

インストール

mac os10.14でテストした。

本体 Bitbucket

git clone https://bitbucket.org/genomicepidemiology/kma.git
cd kma && make
#パスの通ったディレクトリに移動
mv kma* /usr/local/bin/

> kma

$ kma

 Too few arguments handed

 Printing help message:

# KMA-1.1.7 mapps raw reads to a template database.

# Options are: Desc: Default: Requirements:

#

# -o Output file None REQUIRED

# -t_db Template DB None REQUIRED

# -i Input file name(s) STDIN

# -ipe Input paired end file name(s)

# -int Input interleaved file name(s)

# -k Kmersize DB defined

# -e evalue 0.05

# -ConClave ConClave version 1

# -mem_mode Use kmers to choose best

# template, and save memory False

# -ex_mode Searh kmers exhaustively False

# -ef Print additional features False

# -vcf Make vcf file, 2 to apply FT False/0

# -deCon Remove contamination False

# -dense Do not allow insertions

# in assembly False

# -ref_fsa Consensus sequnce will

# have "n" instead of gaps False

# -matrix Print assembly matrix False

# -a Print all best mappings False

# -mp Minimum phred score 30

# -5p Cut a constant number of

# nucleotides from the 5 prime. 0

# -Sparse Only count kmers False

# -Mt1 Map only to "num" template. 0 / False

# -ID Minimum ID 1.0%

# -ss Sparse sorting (q,c,d) q

# -pm Pairing method (p,u,f) u

# -fpm Fine Pairing method (p,u,f) u

# -apm Sets both pm and fpm u

# -shm Use shared DB made by kma_shm 0 (lvl)

# -swap Swap DB to disk 0 (lvl)

# -1t1 Skip HMM False

# -ck Count kmers instead of

# pseudo alignment False

# -ca Make circular alignments False

# -boot Bootstrap sequence False

# -bc Base calls should be

# significantly overrepresented. [True]

# -bc90 Base calls should be both

# significantly overrepresented,

# and have 90% agreement. False

# -bcNano Call bases at suspicious

# deletions, made for nanopore. False

# -and Both mrs and p_value thresholds

# has to reached to in order to

# report a template hit. or

# -mq Minimum mapping quality 0

# -mrs Minimum alignment score,

# normalized to alignment length 0.50

# -reward Score for match 1

# -penalty Penalty for mismatch -2

# -gapopen Penalty for gap opening -3

# -gapextend Penalty for gap extension -1

# -per Reward for pairing reads 7

# -cge Set CGE penalties and rewards False

# -t Number of threads 1

# -v Version

# -h Shows this help message

#

> kma_index

$ kma_index 

# Too few arguments handed.

# kma_index creates the databases needed to run KMA, from a list of fasta files given.

# Options are: Desc: Default:

#

# -i Input/query file name (STDIN: "--") None

# -o Output file Input/template file

# -batch Batch input file

# -deCon File with contamination (STDIN: "--") None/False

# -batchD Batch decon file

# -t_db Add to existing DB None/False

# -k Kmersize 16

# -k_t Kmersize for template identification 16

# -k_i Kmersize for indexing 16

# -ML Minimum length of templates kmersize (16)

# -CS Start Chain size 1 M

# -ME Mega DB False

# -NI Do not dump *.index.b False

# -Sparse Make Sparse DB ('-' for no prefix) None/False

# -ht Homology template 1.0

# -hq Homology query 1.0

# -and Both homolgy thresholds

# has to be reached or

# -v Version

# -h Shows this help message

#

> kma_shm

$ kma_shm 

# Too few arguments handed

# Printing help message:

# kma_shm sets up a shared database (sysV) for mapping with KMA.

# Options are: Desc: Default: Requirements:

#

# -t_db Template DB None REQUIRED

# -destroy Destroy shared DB False

# -shmLvl Level of shared memory 1

# -shm-h Explain shm levels

# -v Version

# -h Shows this help message

#

 

 

実行方法

1、index

kma_index -i templates.fsa.gz -o templates
  • -i     Input/query file name (STDIN: "--") None
  • -o    Output file Input/template file

出力

f:id:kazumaxneo:20190108162147j:plain

 

2、マッピング

ショートリードマッピング。1つのリードは1つのテンプレートのみマッピングされる。

#ペアエンド
kma -ipe pair*gz -t_db templates -o output -1t1 -t 20

#シングルエンドとペアエンド
kma -i singleEndReads.fq.gz -ipe pair*gz –o output -t_db templates -1t1 -t 20
  • -i     Input file name(s) STDIN 
  • -ipe     Input paired end file name(s)
  • -t_db   Template DB None REQUIRED
  • -1t1     Skip HMM False
  • -t     Number of threads

 

ロングリードマッピング

kma -i nanoporeReads.fq.gz –o output –t_db database/name -mp 20 -mrs 0.0 -bcNano -Mt1 2 -t 20
  • -mrs    Minimum alignment score
  • -bcNano   Call bases at suspicious
  • -Mt1    Map only to "num" template. 0 / False
  • -mp     Minimum phred score 30

 

出力はテンプレートとのアライメントファイル、アライメント結果から得られるコンセンサス配列などになります。詳細はBitbucketの方で確認して下さい。

引用

Rapid and precise alignment of raw reads against redundant databases with KMA
Clausen PTLC, Aarestrup FM, Lund O

BMC Bioinformatics. 2018 Aug 29;19(1):307

 

Microbial mat(微生物マット)からの高品質なgDNA抽出プロトコル

 

 メタゲノムデータの正確で正確な分析と解釈は、高品質で高分子量(HMW)のコミュニティDNAの効率的な抽出にかかっている。しかしながら、environmental mat サンプルはしばしば高濃度の高品質HMW DNAを得ることを困難にする。好塩性微生物マットには、大量の細胞外高分子物質(EPS)と、抽出されたDNAの下流での使用を妨げる可能性のある塩が含まれている。溶けにくい試料からのDNA抽出には直接の苛酷な方法がしばしば使用される。これらの方法は、溶解中に固着性マトリクスの EPSがDNAを結合するため使用される。より厳しい抽出方法の結果として、DNAは小さなサイズに断片化されるようになる(ref.4,5,6)。

 したがって、このような方法で抽出したDNAはラージインサートのベクターへクローニングするには不適切になる。これらの制限を回避するために、著者らは高品質の微生物マットから高品質で大量のHMW DNAを抽出する改良された方法論を報告する。このプロトコルA260/280比で、マットサンプル1グラムあたり約2μgのHMW DNA(35-50 kb)を抽出する。さらに、16S rRNA遺伝子の増幅は、このプロトコールが混入物のあらゆる阻害効果を最小化または排除できることを示唆している。著者らの結果は、機能メタゲノム研究のための微生物マットからのHMW DNAの抽出のための適切な方法論を提供する。本方法は、DNA抽出が困難な他の環境サンプルにも適用できる可能性がある。

 

ビデオジャーナルなので動画(9:30)があります。

論文リンク

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3346306/

 

手順(論文より転載)

f:id:kazumaxneo:20190107195413p:plain

 

1. Microbial Cell Extraction

  1. 滅菌粉砕乳棒で徹底的に混合して微生物マットを均質化する。均質化したマット材料約30g(湿重量)をWaringブレンダーの滅菌容器に入れ、約100mlの1M NaCl(または使用中の試料に特異的な濃度)を加え、-20℃の冷凍庫で中程度の速度で1分間混合し、-20度で1分間冷却する。これを3回繰り返す。スラリーを250mlの遠心分離ボトルに移し、1MのNaClで残りの空の容量を満たす。
  2. さらにボルテックス(Vortex-GenieR 2)を用いて室温で30分間振盪(150rpm)することで、マトリックスから微生物細胞を剥がす。
  3. 4℃で15分間、低速(500×g)で遠心する。沈殿したペレットが入らないように気をつけながら上清を静かにフラスコに移す。
  4. ペレット化した沈殿物を使用して、混合およびステップ1.2、1.3をさらに4回繰り返す。各上清を新しいフラスコに移す。
  5. 細胞抽出からの5回分の上清を使い、4℃で15分間、高速(25,000×g)遠心する。上清を捨て、各細胞ペレットを10mLの2%ヘキサメタリン酸ナトリウムに再懸濁し、ペレットを混合して2%ヘキサメタリン酸ナトリウムで200mLにする。室温で30分間振盪(150 rpm)して細胞を洗浄する。このステップの終わりに、あなたは次のステップに進むために細胞の1本のチューブだけを持つべき。
  6. 4℃で15分間、高速(25,000×g)遠心する。上清を捨て、細胞ペレットを200 mLのTE(50 mM EDTA)に再懸濁し、室温で10分間振盪(150 rpm)して細胞を洗浄する。
  7. 4℃で15分間高速(25,000×g)遠心し、上清を捨て、15 mLのTE(10 mM EDTA)に再懸濁し、DNA抽出に必要になるまで-80℃で200-μLのaliquotsを保存する。

 

2. DNA Extraction and Purification

  1. 200μLの5M NaCl、200μLの10%SDS、および100μLの14.3M β-メルカプトエタノールを200μLの微生物細胞aliquotsに加える。 4〜6回転倒混和する。
  2. 液体窒素に2分間浸した後、65℃の水浴5分間で解凍するfreeze-thaw サイクルを3回繰り返す。最後の解凍は10分に延長する。
  3. 5M 酢酸カリウム(pH5.5)200μLを加え、氷上に10分間置く。 4℃で10分間10,000×gで遠心し、口径の広いチップを用いて上清を新しいチューブに移す。 3µLのRNaseAを添加し、37℃で1時間インキュベートする。
  4. 等量のクロロホルムを加え、ひっくり返して短時間振盪し、15,000 x gで10分間室温で遠心する。
  5. 口径の広いチップを使用して、上清の最上層を新しいチューブに慎重に移す。最上層と最下層の間にある白い界面層をピペッティングしないこと。クロロホルム抽出手順を繰り返す。
  6. 上清に等量の冷却(-20℃)イソプロパノールを加え、氷上で30分間インキュベートしてDNAを沈殿させる。
  7. DNAをペレットにするために4℃で10分間最高速度(20,800×g)で遠心する。
  8. 上清を捨て、DNAペレットを1mLの冷却した(-20℃で)70%エタノールで洗浄する。
  9. 4℃で10分間最高速度(20,800×g)で遠心し、上清を捨て、70%エタノール洗浄を繰り返し、10分間DNAペレットを風乾する。 70%エタノール洗浄を繰り返す。
  10. DNAを25 µLのTE(10 mM EDTA)に再懸濁し、65℃で5分間温め、複数のチューブを使用している場合は1つのチューブにまとめ、TEで500 µLにメスアップする。
  11. 500μLの氷冷(または4℃で)20%ポリエチレングリコール(PEG)(1.2M NaClで調製)を加える。転倒混和して静かに混合し、氷上で10分間インキュベートした後、4℃で10分間最高速度で遠心してDNAをペレットにする。上清を取り除き、ペレット化したDNAを1 mLの冷却した70%エタノールで洗浄し、10分間風乾した後、30〜50 µLのTEまたはmolecularグレードの水に再懸濁する。 65℃で5分間加温してDNAの再懸濁を促進し、-80℃でDNAを保存する。

 

3. DNA Purity, Concentration and Size Determination

  1. Nanodrop 1000分光光度計または他の適切な機器を使用してA260 / 280およびA260 / 230の比率を測定して、DNAの品質を決定する。
  2. 製造元の指示に従って、Quant-iT dsDNA Assayキットを使用してDNA濃度を決定する。
  3. パルスフィールドゲル電気泳動を使用してDNAサイズを決定する。(パラメータ省略。は論文を確認して下さい)泳動後のゲルを1×SYBR Green Iで30分間染色する。

 

結果

Cell extraction
 連続的な微生物細胞抽出では、抽出数が増加するにつれて抽出物の濁度が減少することを示した。これは、繰り返しの細胞抽出による細胞数の減少を示唆している。ここで注意することは、各追加の細胞抽出工程が汚染物質導入の機会を提供するので、最終細胞ペレットが全体の微生物群集を代表するように細胞抽出の数を最小限にするべきであるということである。他の汚染源は適切な実験室用滅菌技術を採用することによって管理された。例えば、溶液をオートクレーブ処理したDI水中で調製して濾過滅菌した。容器をアルコールで滅菌し、オートクレーブ処理し、そしてUVおよびultraviolet crosslinkerで処理した。

DNA concentration and quality determination
 このプロトコルにより、マットサンプル1グラム当たり、A260/280比が1.6、A260/230比が0.7(表1)、約2µgのHMW DNA(35〜50kb)(図4)が得られた。A260/230の比率は低いように見えるが、別の研究では16S rRNA遺伝子のPCR増幅などのアプリケーションでの阻害は観察されなかった(ref.7)。好塩性微生物マットからのDNAには、EPSと塩という2つのメジャーな汚染源があることに注意することが重要になる。 したがって、これらの汚染物質が、多大な努力にもかかわらず残存し、A260/280比に影響を与えている可能性がある。

DNA size determination

パルスフィールドゲル電気泳動から、本プロトコルは、約35〜50kbのHMW DNAを生じた。 いくらかのDNAサイズは30kbより小さくてもよいが、フォスミドクローニングは約40kbのDNA insertを必要とする。大きなDNAフラグメントは無傷の生合成経路へのより大きなアクセスを提供するので、DNAの一部は35kb以上あることが重要である。 

 

 複雑で非常に多様な微生物マットサンプルからの全細胞取り出しが実用的ではないことを考えると、主な関心事は抽出された細胞が微生物マットコミュニティ全体をどの程度うまく表しているかである。以前の研究では、微生物の16S rRNA遺伝子のPCR-DGGE分析は、このプロトコルで使用されている5つの細胞除去ステップが全体の微生物マット群集の代表である細胞を抽出することを示した(ref.7)。微生物群集を代表する細胞ペレットを提供するのに必要とされる細胞抽出工程の実際の数は、試料の種類に応じて変わる可能性が高い。異なるサンプルの最適なプロトコル開発のために、小規模の予備的研究が推奨される。(以下略)

 

関連論文

ビデオジャーナルです

 

引用
Extraction of High Molecular Weight DNA from Microbial Mats
Benjamin S. Bey, Erin B. Fichot, R. Sean Norman

J Vis Exp. 2011; (53): 2887. Published online 2011 Jul 7

 

k-merベースのスケーラブルなメタゲノムの全配列比較ツール Libra

 

 ショットガンメタゲノミクスは、微生物群集の生物多様性と機能に対する強力な洞察を提供する。しかしながら、メタゲノム研究からの推論は、データセットのサイズと複雑さや既存のデータベースの可用性と完全性によって制限される。 de novo比較メタゲノミクスは、それらのtotal genetic contentに基づいてメタゲノムの比較を可能にする。
 k-mer contentに基づいたメタゲノムの正確なクラスタリングによるall-vs-all比較を実行するLibraと呼ばれるツールを開発した。Libraは大規模なメタゲノム比較のためにスケーラブルなHadoopフレームワークとシーケンスデプスを正規化しながらシーケンス構成と存在量を使用して距離を計算するCosine Similarity(wiki)を使い、そしてCyVerse のサイバーインフラストラクチャによるWebベースのiMicrobe (http://imicrobe.us)で実装している。
シミュレートされたデータセットとリアルメタゲノムデータセット(8000万から42億リードまで)の両方を使い、同様のツールとLibraを比較すると、頻繁に使用されるメソッドは、データ削減、リード数正規化、距離メトリックの有無 などに関して、 大規模な比較分析では分解能が大幅に低下していた。対照的に、Libraはリードすべてを使用して、グローバル規模の分析を可能にし、微生物シグネチャを生物学的プロセスにリンクさせるために任意のサイズのデータ​​セットに拡張できるHadoopアーキテクチャでk-mer存在量を計算する。

 

Labo HP

http://www.hurwitzlab.org

 

Cyberinfrastructure for Microbial Ecology

f:id:kazumaxneo:20190106185508j:plain

 

iMicrobe Documentation

https://hurwitzlab.gitbook.io/imicrobe/

 

Libra Github


 

実行方法

ここではiMicrobeでの使用手順を確認する。

0、CyVerseのアカウントがないなら作っておく。

また、公共データではなく自分自身のデータを解析したいなら、前もってCyVerseにデータもアップデートしておく。

 

 

1、iMicrobeにアクセス。上のメニューにあるSing in to CyVerseからCyVerseにログイン、データを連携できるようにする。

f:id:kazumaxneo:20190106215805p:plain

 

2、上のメニューにあるTools => Appsにアクセスする。

f:id:kazumaxneo:20190106215313p:plain

 

3、下の方にあるlibraを選択(2019年1月現在ver.1.0)

f:id:kazumaxneo:20190106215420p:plain

3、Cart、またはData storeから入力データを選択する。

Cartはすでに登録済みのデータで、protein searchかtaxonomy searchからサンプルを選択、Cartに入れている場合選択できる(下で説明)。ここではCyVerseのデータを選択したいので、Data storeを選択。

f:id:kazumaxneo:20190106221132p:plain

サンプル(fasta/fastq)のディレクトリを選択。

 

4、必要であればパラメータを修正する。

f:id:kazumaxneo:20190106221323p:plain

Runボタンでスタート

 

5、結果が出るまでしばらく時間がかかるので、間違って2度同じジョブを走らせないように注意する。

f:id:kazumaxneo:20190106222532p:plain

結果のOutputs欄にリンクとして追加される。

 

 

 

 

Tools => taxonomy searchからはtaxonomy ID(NCBI taxonomy ID Brower)で検索して該当生物種を含む登録ずみデータ(メタゲノム/isolatesサンプル)を検索できる

f:id:kazumaxneo:20190106191708j:plain

y

種、属名などのキーワードでも検索可能

 

Tools => protein search

該当するタンパク質(IDかキーワード)を持つメタゲノムサンプルやisolatesサンプルを検索できる。

f:id:kazumaxneo:20190106191529j:plain

 

 

 

Libra以外にもメタゲノム解析で使えるツールがまとまっている。前処理、アセンブリクラスタリング、taxonomy assignmentなど(例えばTrimmostic、soapdenovo2、prokka、diamond、centrifuge、graftm)。

f:id:kazumaxneo:20190106192004j:plain

iMicrobeのツールを使えば、例えば、メタゲノムデータを前処理し、de novo アセンブリ、taxonomy assignment、という一連の作業を、端末を使わず全てクラウドでこなすことができる。

 

引用
Libra: scalable k-mer based tool for massive all-vs-all metagenome comparisons
Choi I, Ponsero AJ, Bomhoff M, Youens-Clark K, Hartman JH, Hurwitz BL

Gigascience. 2018 Dec 28

 

参考

Hadoopを40分で理解する #cwt2013 from Cloudera Japan

 

 

iMicrobe

ハイスループットDNAライブラリ作成に適したDNA抽出プロトコル

 

 

 最近、次世代シーケンシング(NGS)を用いた、シーケンスによるジェノタイピング(GBS)などのハイスループット分子マーカー技術が開発された。これらの方法論は、ゲノムリソースに関係なく、ほとんどすべての種において、費用対効果の高い方法で迅速に数千の一塩基多型(SNP)マーカーを同定することができる[ref.1]。 DNAの品質は、シークエンシングおよび制限酵素ベースのGBSプラットフォームにとって最も重要である[ref.2、3]。それは、多糖類やフェノールなどのコンタミネーション物質をほとんど含まない高分子量ゲノムDNA(gDNA)を必要とするためである。これらの夾雑物は、シークエンシング品質ならびに制限酵素活性およびそれに続く手順を阻害し、それによって信頼性の低いSNPデータソースを提供する可能性があり、これは遺伝子型分析にとって重大な意味を有する[ref.4 pubmed]。

 特に植物からのDNA抽出は、フェノールおよび炭水化物のコンタミネーションに加えて、組織の均質化を妨げる細胞壁および繊維成分のために問題となり得る。これらの課題に対処するために多くのプロトコルが利用可能だが [ref.3、5、67]、ほとんどが高価(US $ 6– $ 9 / sample)か、スループットが比較的低い[ref.3、8]。さらに、多くの植物抽出法は有機溶媒に頼っているか、 fume hood(ドラフトチャンバー)なしでプロトコールの自動化を困難にするβ-メルカプトエタノール[3、5–7]のような化合物を含んでいる。Whitlock et al. [ref.2 pubmed]は、凍結乾燥した植物組織や昆虫組織から、PCRベースのアッセイに適した、有機溶媒を使わないハイスループットDNA抽出プロトコルを記載している。このプロトコルを改良および拡張して、コストと時間効率を大幅に向上させながら、ルーティンに広範囲の飼料、作物、およびモデル生物種にわたって、freshな組織やフリーズドライの組織から、ハイスループットなシーケンス品質の高分子量gDNAを抽出できる方法を報告する。

  

freshな組織での手順

(96well plate使用)

 重要なことは、ビーズサイズをウェルサイズおよびプレート強度と合うように一致させることである。これは効果的な組織破砕を確実にするために重要であり、ビーズがウェルの底に詰まる可能性、またはプレートが粉砕する可能性を減らす。 gDNA抽出をより高度にするために、プレートは単一の個体からのサンプルで満たされてもよい。

  1. Corning®1 mlディープウェル96ウェルプレート(link)の各ウェルに、50 mgの新しい組織と2つの5/32インチ(3.97 mm)ステンレススチールビーズ(link)を入れる。サーマルボンドシール(link)でヒートシールする。これにより、粉砕プロセス中にビーズがシールを突き破って破損するのを防ぐことができる。また、プレートを液体窒素に5分間浮かべることもできる。Qiagen TissueLyser(link)を使うため、プレートアダプターをあらかじめ冷却する。
  2. 96ウェルプレートをQiagen TissueLyserプレートアダプターにセットし、30 Hzで1分間組織を破砕し、さらに安定した破砕のために、アダプターのプレートの向きを変えて繰り返す。一度に1枚のプレートのみをホモジナイズする場合は、2枚目はバランスプレートを使用する。
  3. プレート用のスウィングバケットローターを備えたHettich Rotanta 460R遠心分離機(または類似のもの)中で-15℃で1分間、4000×gで遠心して植物組織の残渣をウェルの底に沈殿させる。

    一時停止ポイント
    この時点で、処理が再開されるまでプレートを-80℃で保存できる。

    重要なステップ
    ホモジナイゼーションバッファーを添加する前にサンプルが解凍されないように注意する必要がある。これは、特にホワイトクローバーのような反応しにくい種の場合、DNAの品質に悪影響を与えることがわかっているためである。

  4. プレートを氷水中に20分間置き、約0℃に温める。氷がプレートの底に付着するのを防ぐために、アルミの容器に浮かせる。
  5. -15℃で4000×gで1分間遠心し、分散した粉末状の植物材料をウェルの底に沈殿させる。注意深くシールをはがし、マルチチャンネルピペットを用いてリザーバーから500μlのあらかじめ温めてある(55℃で10分間)HBバッファー(*1)と1.8μlの20μg/μlプロテ​​アーゼKを加える。プレートの上面を乾かし、新しいThermal Bondヒートシールを貼る。手動で上下に振とうしてよく混合し(ボルテックスマシンを使用しないで)、次に室温で10分間4000×gで遠心分離する。
  6. 上清300 µlを新しいAxygen®1.1 ml 96ウェルプレート(link)に移す。Hamilton Microlab®STARlet (link) などの自動液体分注ロボを使うか、またはピペットを使って手動行う。
  7. 300 µlのPBバッファー(*1)を添加する。 Axygen®シーリングマット(link)を貼り、プレートを手動で10〜20秒間反転、振とうさせてよく混ぜる。
  8. プレートを氷水浴中で15分間インキュベートする。
  9. 室温で30分間最高速度で遠心する。 Hettich Rotanta 460R遠心分離機の場合、最大速度は8595×g。

    一時停止ポイント                                                                                                     プレートは、DNAの品質に悪影響を与えることなく4℃で72時間まで放置できる。

  10. Pall AcroPrep™Advance 96ウェル1 mlフィルタープレート(link)(link)をAxygen®1.1 ml 96ウェルディープウェルプレートの上に置き、600 µlのBBバッファーを添加し、続いて1ウェルあたり400 µlの上清を添加する。 10回穏やかにピペッティングしてよく混ぜる。

    重要なステップ
    各ウェルは最大容量に近いため、オーバーフローによるクロスコンタミネーションの可能性を回避するために注意が必要。さらに、gDNAのせん断を防ぐためにピペッティングを穏やかにする。

  11. 室温で4000×gで2分間遠心する。フロースルーを捨て、ペーパータオルでコレクションプレート(Axygen®1.1 ml 96ウェルディープウェルプレート)の表面を乾かす。

    重要なステップ
    ryegrass pseudostemのようないくつかの植物種や組織では、炭水化物によるものと思われるフィルター膜の目詰まりが見られた。これは、HBバッファーの添加後にインキュベーション工程を除去することによって減少した。遠心分離後にウェルが目詰まりした場合は、個々のピペットチップでフィルターメンブレンを静かにこするか軽く叩いてから遠心分離を繰り返すことで改善できる。

  12. 1ウェルあたり300µlのBBバッファーで洗浄する。室温で2分間4000×gで遠心する。
  13. 1ウェルあたりり300µlのWBバッファーで洗浄する。室温で2分間4000×gで遠心する。
  14. 1ウェルあたり300 µlの無水エタノールで洗浄する。室温で2分間4000×gで遠心すし、フロースルーを捨てる。
  15. 膜を乾燥させるために室温で5分間4000×g遠心する。
  16. フィルタープレートから溶出するDNAを集めるために、新しいAxygen®1.1 ml 96ウェルディープウェルプレートに交換する。
  17. 1ウェルあたり115 µlの10 mM Tris HCl pH 8および0.04 µlの100 mg ml-1 RNAse Aを加え(リザーバーから分注)、室温で1分間4000 x gで遠心する。これにより、植物種と粉砕効率にもよるが、1ウェルあたり1〜13 µgのDNAを含む約100 µlの溶出液が得られる。プレートをPCRシーリングフィルムで密封し、4度で保管する。
  18. DNAをQubit®2.0 Fluorometerで定量し、Nanodrop ND-1000分光光度計で230〜280 nmの吸光度スキャンを行う。

ランタイムは、98x2の192サンプル処理で、トータル3時間45分程度。

 

 

フリーズドライ(またはシリカゲルドライ)の組織での手順

 凍結乾燥の際には、植物組織の長期保存とDNAの品質を最善にするために、収穫した新しい材料をあらかじめ冷却した凍結乾燥機に入れ、できるだけ早く効果的にvacuumを行う。これにより、凍結前の段階や、初期の凍結乾燥プロセスで組織が解凍し、細胞成分が破裂する可能性がなくなる。これが起きると、gDNA収量が低下する。凍結乾燥機が容易に利用できない場合、特により遠方の野外条件で材料を収穫する場合、効果的な代替手段はシリカゲルで植物組織サンプルを乾燥することである。 1 gの生重量の植物材料あたり10 gのシリカゲル(LabServ Pronalys 2–6 mm self-indicating Silica gel)の割合で入れ、36時間乾燥させた後、シーケンス品質のgDNAを改良プロトコールを用いて抽出することができる。この乾燥方法は、小ロットまたは96ウェルプレートの葉の材料に適している。どちらの方法でも、乾燥前は液体窒素ドライアイスではなく、新鮮な材料を密封バッグに入れて4℃で最大1週間保存できる。DNAの品質は低下しない。 96ウェルプレートに直接採取し、乾燥し、ステンレス球を加え、次いで密封して湿度を下げるためにシリカゲルを入れた容器に保存することは、DNA抽出の前にサンプルプレートを貯蔵する効果的な方法を提供する。プレート内でサンプルを乾燥させることで、前もって乾燥しており、おそらく帯電してひっつく可能性のあるサンプルをウェルに移す場合の潜在的なクロスコンタミネーションも回避できる。

 

  1. 新鮮な葉50 mgをCorning®1 mlディープウェル96ウェルプレートの各ウェルに直接採取し、96ウェルプレート全体および内容物を凍結乾燥またはシリカゲル乾燥させる。 材料がすでに乾燥している場合は、15 mgの乾燥組織を各ウェルに加える。 植物組織は既に脆くそして容易に粉砕されるので、均質化工程にはウェル当たり2つのより小さい(3/32インチ; 2.38mm)ステンレス球が使用される。 サーマルボンドシールでヒートシールする。

    以降のステップは、Qiagen TissueLyserアダプタを予冷する必要がないこと、遠心分離を室温で行うことができること、およびステップ4(アイスバス)と5を省略することを除いて、新鮮な組織のプロトコールと同じである。

 

結果(抜粋)

 50 mgのfreshな組織または15 mgの乾燥した物質からの収量は、種および組織に応じて1〜13μg(平均= 2.7μg)で、260/280 nmの平均吸光度比は2.0だった(論文 表1)(様々な植物種を使用)。さらに、抽出されたgDNAは常に高分子量であり(論文 図1a)、制限酵素による消化に適していた(論文 図1b)。新鮮な組織から抽出したものでも、テスト済みの乾燥植物組織から抽出したものでも(論文 図2)、gDNAは4℃で数ヶ月間安定だが、ほとんどの精製DNAと同様に長期保存は-20〜-80℃が最適である。通常、96ウェルプレート抽出ではプレート全体で比較的一貫した収量が得られた(論文 図3)(white cloverとperennial ryegrassを使用)。

 CTABに基づくプロトコルlink)、Whitlock [ref.2 pubmed]法、そして本法でgDNAを抽出し、シークエンシング(GBS)ライブラリーを作成し、Hiseq2500を使いシングルエンドでシークエンシング(100 bp)した。FastQCで分析すると、CTABに基づくプロトコルでは、良好なphread qualityのシーケンスの他に多数の低クオリティなベースコールも存在し、100 bpリード長に沿ってシーケンス品質はさらに低下した(図4d)。矛盾した、または信頼性の低いSNPデータの原因となるため、これはジェノタイピングに重大な影響を及ぼす。対照的に、Whitlock [ref.2]法からのシーケンスは、良好なクオリティのシーケンスをもたらした(図4e)。この論文で開発された合理化されたハイスループット方法論では、シーケンシングされた配列の最初から最後まで非常に均一にハイクオリティなベースコールを有するシーケンスが生成された(図4f)。これはほとんどのリードがレーン全体にわたって同様のハイクオリティであったことを示しており、下流の遺伝分析における信頼性を提供する。この高品質シーケンス出力は、本プロトコルを使用して抽出されたgDNAをさまざまな種にわたってシーケンスするときに日常的に使用できる(論文 表1)。さらに、この方法を用いてL. perenneおよびT. uniflorumから抽出されたgDNAは、PacBioロングリードプラットフォーム(Macrogen, South Korea)を用いて首尾よくシーケンシングされた(論文 表1)。

 

Discussionは省略 

 引用

Protocol: a versatile, inexpensive, high-throughput plant genomic DNA extraction method suitable for genotyping-by-sequencing

Craig B. Anderson, Benjamin K. Franzmayr, Soon Won Hong, Anna C. Larking, Tracey C. van Stijn,3Rachel Tan, Roger Moraga, Marty J. Faville,  Andrew G. Griffiths

Plant Methods. 2018; 14: 75.

 

* 1

 組成は論文参照。BB bufferにはguanidinium chlorideも入っているが、これも改良点の1つ。

低コスト且つ短時間で行える高分子量gDNA抽出プロトコル

 2019 1/7 タイトル修正

 

 複雑なゲノムの新規シーケンシングは、高品質のリファレンス配列を求める研究者にとっての主要な課題の1つである。 多くのde novoアセンブリはショートリードに基づいており、断片化されたゲノム配列を生成する。 リード長が10 kbを超える第3世代のシークエンシングでは、複雑なゲノムの構築が改善されるが、これらの手法には高分子量のゲノムDNA(gDNA)が必要になる。 ショートリードシーケンシングのためのgDNA抽出法は、この目的には適していない。 バクテリア人工染色体(BAC)ライブラリー用のgDNA調製方法はこの目的に適合させることができるが、これらのアプローチは時間がかかり、そしてこれらの方法のための市販のキットは高価である。 アガロースゲルマトリックスでメガベースサイズのDNAを調製することは可能だが(論文より ref.2)、このプロセスには3日かかり、アガロースプラグからDNAを抽出するのは困難である。この論文では、バクテリア、植物、動物から高分子量gDNAを迅速かつ安価に抽出するためのプロトコールを紹介する。 この方法は、1サンプルあたり<0.20のコストで、1本のマイクロチューブで最大150 kbのマイクログラムの高分子量ゲノムDNA(gDNA)を抽出できる(図1)。ヒマワリの葉のサンプル用にこのプロトコルを微調整し、その後バクテリアとヒト細胞用に検証した。ヒマワリは、ポリフェノールや、多糖類やタンニンなどの他の汚染物質を含むことが知られている(ref.3)。したがって、この植物種から非常に純粋なDNAを抽出することは一般に困難である。ヒマワリの葉のサンプルでは、平均リード長12.6kbおよび最大リード長80kbを生じた。

 

手順

1、3週齢のヒマワリ苗木から葉を収穫する。サンプルを直ちに液体窒素中で凍結し、そしてDNA分解を防ぐために粉砕するまで-80℃で貯蔵した。

2、葉を液体窒素中で微粉末に粉砕、ヌクレアーぜが働かないよう直ちに2に移る。

3、細胞膜を溶解するdetergentとして、SDSベースのバッファー(ref.4、5)を使い、サンプルを溶解する。SDSは、DNAを分解するタンパク質、特にエンドヌクレアーゼを中和し不活性化する。RNAを消化するため、バッファーにRNase Aも含める。溶解均質化の程度は、抽出プロセスの収率およびDNAの純度とも相関する。場合によっては、溶解バッファーを加熱すると溶液の均質化に役立つが、サンプルを65℃以上で1時間以上加熱すると、DNAが損傷することがある。

4、酢酸カリウムを添加し、不溶性のドデシル硫酸カリウムを形成させる。タンパク質と多糖類はドデシル硫酸カリウム複合体を形成し、遠心分離によって除去される(ref.6)。

5、次に、溶解溶液からのDNAを精製する。ここでは磁気ビーズを選んだ。カルボキシル化磁気ビーズは費用対効果が高く(ref.7)、DNAのせん断を最小限に抑えることができる。以前に記載されているように(ref.78)PEG8000を使い、DNAをビーズに結合させた。 PEG8000は安全で、イソプロパノールやエタノールと比較して沈殿物の発生が少なくなる(ref.9)。

6、gDNAを70%エタノールで洗浄し、磁気ビーズに結合しにくい汚染物質、および前のステップで使用した試薬の残りを除去した。緩衝溶液中に再懸濁してビーズからDNAを溶出した。

7、分光光度計を使用してDNA溶液の純度を評価した。 A260 / 230の比率は、特定の汚染物質の存在によって影響を受ける。著者らは、230nmの光を吸収する汚染物質を完全に除去するためには、70%エタノールでビーズを再懸濁するプロセスが重要であることを見出した(論文 表1)。 DNA強度を低下させることなく、さらに2回洗浄することができた(data not shown)。本発明者らは、A260/280比が>1.8を得た。これは、DNA溶液がタンパク質を含まないことを示している。分光光度計または蛍光インターカレーティング色素に基づく方法のいずれかによって定量された濃度は同様であり(論文 表1)、DNA溶液が純粋であることを示していた。抽出により、90 mgの新鮮なヒマワリの葉から6.7〜7.8 µgの高純度DNAが得られた。

 

評価

 本プロトコール(70%エタノール再懸濁あり/なし)とQIAGEN Genomic Tipsによって抽出されたヒマワリのgDNAを、パルスフィールドアガロースゲル電気泳動で評価した(表2)。さらにHEK293ヒト細胞gDNAとNEB 5-alphaエレクトロコンピテントE. Coli gDNAを本プロトコールで抽出したものも加えた。本プロトコールを使用して抽出したDNA溶液をGenomic Tips 20/G commercial kit (QIAGEN, Hilden, Germany) で抽出したDNAと比較すると、gDNAの純度と状態は両方のプロトコールで同様であった(論文 表1および図2)。 )しかし、市販のキットは35倍高価で(サンプルあたり7ドル)、著者らの1時間で終わるこのプロトコルと比べると、少なくとも3時間を必要とする。

 

 最後に、BluePippinの4つのDNAサイズカットオフ (12〜20kb) のPacBioライブラリーを使用して、PacBio RS II(カリフォルニア州メンロパークのPacific Biosciences)でシークエンスして本プロトコールによるヒマワリgDNAの品質を検証した(論文 表2)。シーケンス反応の阻害は観察されなかった(10–15 kb for 240-min-long movies and up to 17,126 bp for 360-min-long movies)。

 

 

引用

Extraction of high-molecular-weight genomic DNA for long-read sequencing of single molecules.

Mayjonade B, Gouzy J, Donnadieu C, Pouilly N, Marande W, Callot C, Langlade N, Muños S

Biotechniques. 2016 Oct 1;61(4):203-205.

 

下記リンクも合わせて読むことをお勧めします。

http://lab.loman.net/2018/05/25/dna-extraction-book-chapter/

 

追記

protocol.io

DNA size selection (>1kb) and clean up using an optimized SPRI beads mixture

Nanopore公式から、このprotocol.ioの方法をさらにmodifyしたプロトコルを入手できます。ログインしてアクセスできるこのページの下の方にあるSPRI size selectionをクリックしてください。

 

samtoolsのインストール

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

2019 12/8 追記

2020 3/25 conda追記

2020 10/13 1.11追記2021 2/17  新しい論文を引用、ツイート追加

2021 dockerについて追記

2022/05/12 追記 v1.15

 

 

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

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

 

追記 1.10更新アナウンス 

2021 2/17

 

 

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

 

http://www.htslib.org/

f:id:kazumaxneo:20190104214218p:plain

 

インストール

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

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

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

#2020 10/13追記 v1.11
wget https://github.com/samtools/samtools/releases/download/1.11/samtools-1.11.tar.bz2
#curl (macos)
curl -L
https://github.com/samtools/samtools/releases/download/1.10/samtools-1.10.tar.bz2
tar -xvf samtools-1.11.tar.bz2
cd samtools-1.11/
./configure --prefix=/usr/local/
make -j 8
make install

#2024/03/31 v1.19.2
wget https://github.com/samtools/samtools/releases/download/1.19.2/samtools-1.19.2.tar.bz2
tar -xvf samtools-1.19.2.tar.bz2
cd samtools-1.19.2/
./configure --prefix=/usr/local/
make -j12
make install

追記; apple silicon macでもhomebrew(M1 native版の方) でgccなど導入しておけば、オプションの指定なく、make出来ることを確認(gcc --version;Apple clang version 14.0.0 (clang-1400.0.29.102))。

 

追記

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

#bioconda (link)
mamba install -c bioconda -y samtools==1.12

#updateする
conda update samtools

追記

bgzipとtabixも使えるようにしておく。

cd samtools-1.10/htslib-1.10/
make -j
make install

   

ヘルプ (v1.11)

> samtools 

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

Version: 1.11 (using htslib 1.11)

 

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

     ampliconclip   clip oligos from the end of reads

 

  -- 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)

     ampliconstats  generate amplicon specific stats

 

  -- 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

 

2020 12/21

HTSlib - C library for reading/writing high-throughput sequencing data

James K. Bonfield, John Marshall, Petr Danecek, Heng Li, Valeriu Ohan, Andrew Whitwham, Thomas Keane

bioRxiv, Posted December 16, 2020

 

2021 2/17

Twelve years of SAMtools and BCFtools
Petr Danecek, James K Bonfield, Jennifer Liddle, John Marshall, Valeriu Ohan, Martin O Pollard, Andrew Whitwham, Thomas Keane, Shane A McCarthy, Robert M Davies, Heng Li
GigaScience, Volume 10, Issue 2, February 2021

 

2021 4/21 

dockerでsamtoolsを動かすなら、biocontainersのイメージが利用できます。具体的には、

biocontainers/satoolsのdockerfileは、biocontainersのubuntuのベースイメージ(Dockerfile)をpullし、condaコマンドだけランすることでsamtoolsをインストールしています(Dockerfile)。

docker pull biocontainers/samtools:v1.9-4-deb_cv1

 ただ、biocontainersのubuntuのベースイメージは色々なツールを導入するために肥大しています。samtoolsを動かすだけなら、自分でビルドするか、軽量なイメージをpullした方が良いと思います。