Haploviewに実装された諸ツールの出典



HaploviewはHapmapプロジェクトデータからのデータダウンロードに対応したSNPデータの連鎖不平衡解析ツールである。そのウェブサイトはこちら。その公開は論文化に先立ってなされていたが、その概要の論文化は2005年に入ってから(Barrett JC, Fry B, Maller J, Daly MJ. Haploview: analysis and visualization of LD and haplotype maps. Bioinformatics. 2005 Jan 15 [PubMed ID: 15297300](Haploviewホームページによるフリー(多分)アクセスPDF))

同論文で触れられている諸法の出典は以下のとおり

  • Pairwise LD
    • D', r^2(概説、ただし¥Deltaはr,¥Delta^2r^2)
    • LD指標値の信頼度としてのLOD値に関する説明は遺伝解析パッケージArlequin 2.000のマニュアルのSection 7.1.4.2 in page 86 を参照
  • Pairwise-LD based LD Block
    • Gabriel et al.
      • D'を使用
      • D'の信用度を次の2指標で評定
        • Minor allele frequency<0.05のSNPを除外(D'値の信頼度が低いから)
        • D'の95% 信頼区間(95%CI)を算出し、D'算出値、95%CIの上限値・下限値を用いる
          • D'の95%CIの算出方法については近似法(解説文書はこちら)もあるが、GabrielらはD'の正確確率分布とその5パーセンタイル・95パーセンタイルを算出している
            • "Confidence limits were determined by calculating the probability of the observed data for all possible values of D', from which an overall probability distribution was determined. The upper and lower bounds represent the 5% tails of the overall probability distribution.---Sience論文のSuppl.Methodsより"
      • 隣接マーカーにつき基準をクリアする範囲をブロックとして定義
    • Wang et al.
      • Four gamete testによる
      • Four gamete testの原定義では、2SNPが作りうる4ハプロタイプのうち1つ(以上)のハプロタイプで推定頻度がゼロの場合に、four gamete test陰性(4つのハプロタイプが認められなかった)とするが、Haploviewにては、稀ハプロタイプ頻度は0.01未満の場合にfour gamete test 陰性とする。four gamete test 陽性の範囲がブロックとされる
    • その他"Solid Spine of LD "
      • LDインデックス D' を用い、ある閾値を与えてSNPペアのLDのありなしを決定する。このとき、あるマーカー列が存在して、その両端のマーカーがマーカー列のすべてのマーカーとLDありとなるような、SNP列のうち最も長くとれるものをブロックとする、という定義
      • Haploview作成グループによる定義。出典なし(引用するとすればHaploviewのウェブサイト)
    • LD blockのサンプル図(こちら)
  • Pairwise-LD based recombination rate estimate
    • McVean et al.
      • Coalescentモデルに基づいたマーカー間recombination rateの推定
      • DNA配列上にrecombination rateの上下する関数が存在するものとし、その関数の値をDNAの位置について推定する
      • 次元の変化する(推定パラメタ数の変化する)場合にも用いることができるMCMC法の拡張であるRJMCMC(Reversible Jump MCMC解説サイト)を用いている
      • 基本的にSNPペア間についての解析を領域に重畳するとともに、DNA配列にそって連続関数であるようにする
  • Haplotype inference
    • 上述の方法で定義されたブロックのSNP列について、および、任意のSNP列について下記の方法でハプロタイプ推定を行う
    • accelerated EM algorithmをHaploview作成グループが実装したもの
      • Qin et al.のPLEM(Partition/Ligation法と同様、とのこと)
        • PLEMでは、動的計画法を用いて、小領域での推定解から大領域での推定解を求める。小領域の推定においては、適切な解を与えることが知られているEMを用いるという方法である。
          • 動的計画法(Dymnamic programing)は、簡単に言うと、小領域から大領域の推定解を求めるにあたり、小領域を含むより広い領域の最適解は小領域における最適解に基づいて行うというものである。これにより、小領域解を求めるときに行った判断を繰り返すことなく小領域→大領域のステップに伴って新たに発生した判断だけをしていけばよいことになる。このようなステップなので、パレート最適解(記事はこちら)の1つが求められる(だろう)
      • PLEM法とその他のハプロタイプ推定プログラムとの関係はこちらの記事で
    • ブロック間ハプロタイプ-ハプロタイプ関係はHedrick's Multiallelic D'*1にて評価する(出典)
  • 関連検定
    • 個々のSNPのアレル頻度による¥chi^2テスト
    • 推定ハプロタイプについての¥chi^2テスト
    • Permutation testによる統計的有意レベルの補正
  • Tag SNP選択
    • Tagger by de Bakker et al.
      • r^2を用いる
      • r^2にて閾値以上のLD関係にあるSNPはそのどちらかをとることにより、それらを含むセグメントの関連解析に十分な解析力を与えることを根拠とする
      • Greedy algorithmにて、最も少ない数のtag SNPを選ぶことで、すべてのSNPがtag SNPのいずれか1つ以上と閾値以上のr^2の関係になるようにする。Greedy algorithmの説明は後述
      • さらに、このようにして作られたtag SNPリストのtag SNPを除去する。除去にあたっては、そのtag SNPとLD関係にあるという理由でtag SNPに登録されなかったSNPが依然として少なくなったtag SNP リストのいずれか1個以上とLD関係にあるかどうかの判断を入れる
      • あるSNPがあるSNPによって代表される条件として、両者の物理的距離が遠すぎないこと、両者のr^2のLODが低くなく、信頼のおける算出値であることなどの条件も入れる。また、低すぎるマイナーアレル頻度はGabriel et al.のLDブロッキングのときと同様、初めからtag SNPの選択過程から除去する
        • 「Greedy algorithmにて」ということは、tag SNPのリストを作るにあたり、1つずつリストに登録する。登録するにあたって、未登録のSNPの中でもっとも多くの未登録SNPと強いLD関係(r^2が閾値以上)のSNPを登録する。リストが更新されるたびに、そのtag SNPリストによってすべてのSNPがtag SNPのうちの少なくとも1つ以上とr^2が閾値以上になっているかどうかを判断し、そうなっていればtag SNPリストの出来上がりとする

※ 追記(LD指標のLOD値)

  • LD指標値の信頼度としてのLOD値に関する説明は遺伝解析パッケージArlequin 2.000のマニュアルのSection 7.1.4.2 in page 86 を参照

※ 追記(HWE検定)

  • Haploviewでは、HWE検定につき、従来法(カイ自乗検定(もしくはそれとほぼ同じ値の出る尤度比検定法))ではなく、Abecasisらの正確検定が採用されている。これは、カイ自乗検定よりもp値が大きめで出る(HWEが棄却されにくい)方法である。簡単には、Heterozygosityが期待値以上の場合にはP=1、期待値よりも小さい場合にP<1となる。ヘテロ個体数が観測数以下になる場合を数え上げてP値として返す方法である。
  • オリジナルのペーパーはこちら
  • ソースはこちらで、Rのもある(こちら)ので、確認が簡便である。
  • 利用上の注意
    • Hardy-Weinberg calculation code courtesy of Goncalo Abecasis and Jan Wigginton at the University of Michigan Center for Statistical Genetics 』とHaploviewホームページに記載があるので、Haploviewで表示されるのは、Abecasisらの正確検定の結果と思われるが、AbecasisらのホームページのRソースでの解析結果とHaploviewでの解析結果に不一致がある。どちらが(も)正しくないかの確認はまだ取れていない。少なくともカイ自乗検定法よりもP値が大きくでるのは、Abecasis'Rもhaploviewも同様のようである。


*1:D’は、2つのSNPが作る4ハプロタイプの頻度のばらつき具合を表す数字で、 1がばらばら、0が均質、です(h1*h4-h2*h3)が0なら、ゼロ、これが大きい方 の極端なら1、です。 multiallelic D'も基本的には、0が「均質」1が「偏り」です。 今、1つ目のブロックに5つのハプロタイプがあり、2つ目のブロックに2つの ハプロタイプがあるとします。 もし、1つめのブロックに2つしかハプロタイプがなければ、1つめのブロック も2つめのブロックも2つずつのハプロタイプしかありませんから、 multiallelic D'は普通のD’と同じになります。 ですが、今、1つめのブロックには、2つのハプロタイプの代わりに5つのハプ ロタイプがありますから、ちょっと工夫が必要で 1つ目のブロックの5つのハプロタイプを、1個とそれ以外に分けてやります。そ うすると2つのブロックはそれぞれ2ハプロタイプのブロック同士に見なせるの で、普通のD’が定義できます。 このようにして、2つのブロックの間に仮に2ハプロタイプー2ハプロタイプの 組を作ってやって、それぞれのすべてについて、普通のD’を計算してやります。 それらを全部合せて、2ブロック間の関係を出したいわけです。 全部を足して、割ってやってもいいのですが、それだと、頻度が高いタイプの力 と頻度の低いタイプの力を平等に扱うことになって、不公平な感じもします。で すので、そこのところを、頻度が高いものは重く、低いものは軽くして、平均を とった(加重平均)ものがmultiallelic D'です。