mcpField
T
tooluniverse-gwas-finemapping

tooluniverse-gwas-finemapping

github.com/mims-harvardデータ・データベース1.8k363 回インストール2 日前に更新
リポジトリ

tooluniverse-gwas-finemapping について

GWAS座位の因果変異を、信用集合、LD、機能アノテーション、変異と遺伝子の関連情報から優先順位付けするToolUniverseスキルです。ローカルでのファインマッピング、共局在解析、TWASにも対応します。

主な機能

  1. 01因果事後確率の評価
  2. 02信用集合とLD構造の解釈
  3. 03L2Gと機能情報の統合
  4. 04ファインマッピング、共局在解析、TWAS

活用シーン

  1. 01GWAS座位の因果候補変異の優先順位付け
  2. 02発現・機能情報による変異と遺伝子の関連付け
  3. 03入力したサマリー統計量のローカル解析

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-gwas-finemapping

インストール後、Claude Code で/tooluniverse-gwas-finemappingを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

.env.template
python_implementation.py
test_skill_comprehensive.py

詳細

説明するのではなく、計算する

解析に計算(統計、データ処理、スコアリング、エンリッチメント)が必要な場合は、Bash 経由で Python コードを作成して実行してください。何をするか説明するだけでなく、実行して実際の結果を報告してください。ToolUniverse ツールを使ってデータを取得し、その後 Python(pandas、scipy、statsmodels、matplotlib)で解析してください。

GWAS ファインマッピングと因果バリアントの優先順位付け

統計的ファインマッピングと遺伝子座から遺伝子への予測を用いて、GWAS 遺伝子座の因果バリアントを特定し、優先順位を付けます。

概要

ゲノムワイド関連解析(GWAS)は、形質に関連するゲノム領域を特定しますが、連鎖不平衡(LD)のため、因果バリアントの特定は困難です。ファインマッピングでは、ベイズ統計手法を用いて、GWAS サマリー統計量に基づき、各バリアントが因果的である事後確率を計算します。

推論戦略 — まずここから: ファインマッピングでは、この遺伝子座において、どのバリアントが因果的かを問います。次の手順で進めてください。

  1. まず LD 構造を確認 — LD が高い(r² > 0.8)バリアント同士は、統計的に区別できません。単一のバリアントが原因だと決めつける前に、Open Targets または GWAS Catalog で LD ブロックを調べてください。
  2. 機能アノテーションで LD の候補を絞り込む — 2 つのバリアントの事後確率が似ていても、一方がコード領域(ミスセンス、終止コドン獲得)にある、または活性のある調節エレメント(プロモーター、エンハンサー)に位置する場合は、そのバリアントを生物学的に優先します。機能的エビデンスが決め手となります。
  3. eQTL 共局在が重要な橋渡しとなる — 関連する組織(例:2 型糖尿病(T2D)遺伝子座における膵島 eQTL)で近傍遺伝子の有意な eQTL でもあるバリアントには、メカニズムに基づく説明が可能です。Open Targets の L2G スコアで eQTL のエビデンスを調べ、最も近い遺伝子が作用遺伝子だと決めつけないでください。

このスキルでは、次のツールを利用できます。

  • ファインマッピングの事後確率を用いた因果バリアントの優先順位付け
  • 遺伝子座から遺伝子への予測(L2G)を用いたバリアントと遺伝子の紐付け
  • 機能的帰結によるバリアントのアノテーション
  • ファインマッピングの結果に基づく検証戦略の提案

重要な概念

信頼集合

信頼集合とは、因果バリアントが高い確信度(通常 95% または 99%)で含まれる最小限のバリアント集合です。集合内の各バリアントには、次のような手法を用いて計算された、因果的である事後確率があります。

  • SuSiE(単一効果の合計)
  • FINEMAP(ベイズファインマッピング)
  • PAINTOR(確率的アノテーション統合器)
事後確率

GWAS データと LD 構造に基づき、特定のバリアントが因果的である確率です。事後確率が高いほど、因果的である可能性が高くなります。

遺伝子座から遺伝子への予測(L2G)

L2G スコアは複数のデータ種を統合し、どの遺伝子がバリアントの影響を受けるかを予測します。

  • 遺伝子までの距離(近いほどスコアが高い)
  • eQTL のエビデンス(発現の変化)
  • クロマチン相互作用(Hi-C、プロモーターキャプチャー)
  • 機能アノテーション(コードバリアント、調節領域)

L2G スコアは 0~1 の範囲で、高いほど遺伝子とバリアントの関連が強いことを示します。

ファインマッピング推論フレームワーク(重要)

推測せずに調べる — リード SNP が因果バリアントだと決めつけないでください。必ず以下のツールを使って、LD 構造、信頼集合、機能アノテーションを確認してください。

ステップ 1:リード SNP と因果バリアント

リード SNP(p 値が最も有意なもの)は、因果バリアントではないことがよくあります。これは単に、遺伝子型判定アレイ上で最もよくタグ付けされたバリアントにすぎません。因果バリアントには、次のようなものがあります。

  • リード SNP と完全な LD(r2 > 0.95)にあり、機能的帰結を持つバリアント
  • アレイに含まれない非コード調節バリアント
  • 遺伝子座にある複数の独立したシグナルのうちの 1 つ(条件付き解析により複数であることが判明)

実行事項:リード SNP について、必ず OpenTargets_get_variant_credible_sets を呼び出してください。事後確率が 0.5 未満の場合、リード SNP は因果バリアントではない可能性が高いため、信頼集合内の他のバリアントを調べてください。

ステップ 2:LD 構造の解釈

LD ブロックはファインマッピングの解像度の限界を定めます:

  • 狭い LD ブロック(バリアントが少なく、r2 > 0.9):信頼できるバリアントセットは小さくなり、機能アノテーションが決め手になります
  • 広い LD ブロック(バリアントが多い):信頼できるバリアントセットは大きくなります。統計的なファインマッピングだけでは不十分で、機能データ(eQTL、クロマチン、CRISPR)が必要です
  • 集団が重要です:LD パターンはヨーロッパ系、アフリカ系、東アジア系の集団で異なります。アフリカ系の集団では LD ブロックが短く、ファインマッピングの解像度が高くなります。GWAS がどの集団を対象に実施されたか確認してください。
ステップ 3:信頼できるバリアントセットの解析

信頼できるバリアントセットを解釈する際は、次の点を確認してください:

  1. サイズが重要です:95%信頼できるバリアントセットが 1~3 個のバリアントで構成されていれば、解像度は高いといえます。50 個以上の場合は解像度が低く、さらにデータが必要です。
  2. 事後確率の分布:あるバリアントの PP が 0.5 を超える場合、そのバリアントが有力候補です。PP が多数のバリアントに均等に分散している場合、統計的に単一の原因バリアントを特定することはできません。
  3. 1 つの座位に複数の信頼できるバリアントセットがある場合:複数の独立した原因シグナル(対立遺伝子の異質性)が示唆されます。各セットは異なる原因メカニズムを表します。
ステップ 4:共局在の推論

共局在解析では、2 つの関連シグナル(例:GWAS と eQTL)が同じ原因バリアントを共有しているかどうかを調べます。

  • 高い L2G スコア(> 0.7)+関連組織における eQTL:そのバリアントが遺伝子発現の変化を通じて疾患に影響することを強く示す証拠です
  • GWAS シグナルは強いが eQTL がない場合:バリアントは、タンパク質コード領域の変化、スプライシング、またはまだプロファイリングされていない組織や細胞種を介して作用している可能性があります
  • 遠位遺伝子(最近傍ではない遺伝子)の eQTL:エフェクター遺伝子は最近傍の遺伝子ではありません。L2G スコアを必ず確認し、最近傍の遺伝子をデフォルトで選ばないでください
ステップ 5:優先順位付けの決め手

複数のバリアントの事後確率が同程度の場合:

  1. コーディングバリアント(ミスセンス、終止コドン獲得)>調節領域>イントロン>遺伝子間領域
  2. 疾患関連組織で活性化しているクロマチンマーク(H3K27ac、H3K4me1)内にある
  3. 転写因子結合モチーフを破壊する
  4. 種を超えて保存されている(PhyloP、GERP)
  5. 疾患関連組織で、効果の方向が一貫している eQTL

よくあるクエリ

  • 「TCF7L2 座位で、2 型糖尿病の原因である可能性が高いバリアントはどれですか?」→ OpenTargets_get_variant_credible_sets を使用するか、gene=TCF7L2 を指定して gwas_search_snps を使用します
  • 「rs429358(APOE4)をファインマッピングする」→ OpenTargets_get_variant_info を使用してから、OpenTargets_get_variant_credible_sets を使用します
  • 「GWAS 研究 GCST90029024 のすべての原因座位」→ OpenTargets_get_study_credible_sets を使用します
  • 「アルツハイマー病の GWAS 研究」→ OpenTargets_search_gwas_studies_by_disease または gwas_search_studies を使用します

使用するツール

Open Targets Genetics(GraphQL)
  • OpenTargets_get_variant_info:バリアントの詳細と対立遺伝子頻度
  • OpenTargets_get_variant_credible_sets:バリアントを含む信頼できるバリアントセット
  • OpenTargets_get_credible_set_detail:信頼できるバリアントセットの詳細情報
  • OpenTargets_get_study_credible_sets:GWAS 研究のすべての座位
  • OpenTargets_search_gwas_studies_by_disease:疾患別に研究を検索
GWAS Catalog(REST API)
  • gwas_search_snps:遺伝子または rsID で SNP を検索
  • gwas_get_snp_by_id:SNP の詳細情報
  • gwas_get_associations_for_snp:バリアントに関連するすべての形質
  • gwas_search_studies:疾患/形質別に研究を検索
ファインマッピング、共局在解析、TWAS を自分で実行する

このスキルの上記「制限事項」セクションですでに説明したとおり、Open Targets では、公開された GWAS のすべての座位についてファインマッピングが行われているわけではありません。ある座位について、事前計算済みの OpenTargets_get_variant_credible_sets/OpenTargets_get_study_credible_sets の結果がない場合は、次の 3 つのローカル計算ツールを使って、すでに手元にあるか、別の場所から取得した SNP ごとの生の要約統計量(ベータ値、標準誤差、SNP ID)から、実際の統計解析を実行できます。

  • Finemap_credible_set(beta=[...], se=[...], snp=[...], coverage=0.95, sd_prior=...) — Wakefield の近似ベイズ因子を用いた、単一原因変異のファインマッピングです。各 SNP の事後包含確率(PIP)、top_snp/top_pip、および指定したカバレッジのクレディブルセットを返します。ライブ環境で検証済みです:{"n_snps": 6, "top_snp": "rs3", "top_pip": 1.0, "credible_set": [...]}。
  • Coloc_abf_test(beta1=[...], se1=[...], beta2=[...], se2=[...], snp=[...], p1=..., p2=..., p12=...) — ベイズ共局在解析(coloc.abf、Giambartolomei 2014)により、同じ SNP セット上の 2 つのシグナル(例:GWAS ヒットと eQTL)が 1 つの原因変異を共有しているかを検定します。5 つの事後確率 PP0~PP4 を返します(PP4 は原因変異の共有を示すため、まず確認する値です)。ライブ環境で検証済みです:6 SNP のテスト領域で実際の事後確率が返されました。
  • SPrediXcan_associate(weight=[...], gwas_z=[...], snp_sd=[...], covariance=..., snp=[...]) — 要約統計量に基づくトランスクリプトーム全体の関連解析(S-PrediXcan、Barbeira 2018)です。ある遺伝子の eQTL 予測重みと GWAS の SNP ごとの z スコアを組み合わせ、その遺伝子の予測発現量(近傍の変異だけではありません)が形質と関連するかを検定します。TWAS の z スコア/p 値と方向を返します。ライブ環境で検証済みです:{"twas_zscore": 4.73, "p_value": 2.2e-06, ...}。

生の入力データの入手先:これら 3 つのツールは、指定した配列を使って計算します。要約統計量自体を取得することはありません。src/tooluniverse/data/gwas_sumstats_tools.json の 3 つのツール(GWASSumStats_list_studies、GWASSumStats_get_trait_studies、GWASSumStats_get_region_associations)は、まさにこの用途を想定していましたが、本稿執筆時点では、3 つとも利用できません。EBI は GWAS Summary Statistics REST API を完全に廃止しており、すべての呼び出しで 410 Gone(「この API は廃止されました。要約統計量へのアクセス方法については、https://www.ebi.ac.uk/gwas/docs/methods/summary-statistics を参照してください」)が返ります。このことは、tu test と、同じエンドポイントに対する独立した直接の curl の両方で確認済みです。GWASSumStats_* が動作することを期待してワークフローに組み込まないでください。代わりに、GWAS Catalog の現在の一括ダウンロード/FTP 方式(上記ドキュメントページからリンクされています)または別のソースから領域レベルの要約統計量を取得し、得られたベータ値/標準誤差/SNP の配列を上記 3 つの計算ツールに渡してください。

ファインマッピングの出力を理解する

事後確率の解釈
  • > 0.5:原因変異である可能性が非常に高い(有力候補)
  • 0.1 - 0.5:原因変異である可能性がある
  • 0.01 - 0.1:可能性はあるものの不確実
  • < 0.01:原因変異である可能性は低い
L2G スコアの解釈
  • > 0.7:遺伝子と変異の関連に対する信頼度が高い
  • 0.5 - 0.7:信頼度が中程度
  • 0.3 - 0.5:弱いが関連の可能性がある
  • < 0.3:信頼度が低い

よくある質問

Q: すべてのバリアントに信用集合があるわけではないのはなぜですか? A: ファインマッピングには、以下が必要です。

  1. GWAS の要約統計量(トップヒットだけではありません)
  2. LD 参照パネル
  3. 十分なシグナル強度(p < 5e-8)
  4. 計算リソース

Q: 1 つのバリアントが複数の信用集合に含まれることはありますか? A: はい。1 つのバリアントが複数の形質に対して因果的である(多面発現)場合や、同じ形質を対象とする異なる研究に現れる場合があります。

Q: L2G の最上位遺伝子がバリアントから遠く離れている場合はどうすればよいですか? A: これは、調節作用(エンハンサー、プロモーター)を示唆しています。以下を確認してください。

  • 関連する組織における eQTL のエビデンス
  • クロマチン相互作用データ(Hi-C)
  • 調節エレメントのアノテーション(Roadmap、ENCODE)

Q: 信用集合内のバリアントをどのように選べばよいですか? A: 以下の順に優先してください。

  1. 事後確率(高いほど有望)
  2. 機能的帰結(コーディング > 調節領域 > 遺伝子間領域)
  3. eQTL のエビデンス
  4. 進化的保存性
  5. 実験の実施可能性

制限事項

  1. LD に依存:ファインマッピングの精度は、LD 構造が研究対象集団と一致しているかどうかに左右されます
  2. 要約統計量が必要:すべての研究が完全な要約統計量を提供しているわけではありません
  3. 計算負荷が高い:大規模な研究のファインマッピングには、多くのリソースが必要です
  4. 事前分布の仮定:ベイズ法は事前分布(因果バリアントの数、効果量)に依存します
  5. データの欠落:Open Targets では、すべての GWAS 遺伝子座がファインマッピングされているわけではありません

ベストプラクティス

  1. 新しい疾患を調べる際は、まず研究レベルのクエリから始めます
  2. シグナルが再現されているか、複数の研究で確認します
  3. 機能データ(eQTL、クロマチン、CRISPR スクリーニング)と組み合わせます
  4. 祖先集団を考慮します。LD は集団によって異なります
  5. 実験で検証します。ファインマッピングで得られるのは候補であり、証明ではありません

参考文献

  1. Wang et al. (2020) 「回帰における変数選択のためのシンプルな新しいアプローチと、遺伝的ファインマッピングへの応用」JRSS-B(SuSiE)
  2. Benner et al. (2016) 「FINEMAP:ゲノムワイド関連解析の要約データを用いた効率的な変数選択」Bioinformatics
  3. Ghoussaini et al. (2021) 「Open Targets Genetics:大規模な遺伝学および機能ゲノミクスを用いた形質関連遺伝子の体系的な同定」NAR
  4. Mountjoy et al. (2021) 「公開されたヒト GWAS の形質関連遺伝子座すべてにおける因果バリアントと遺伝子を体系的に優先順位付けするオープンなアプローチ」Nat Genet

関連スキル

  • tooluniverse-gwas-explorer:より広範な GWAS 解析
  • tooluniverse-eqtl-colocalization:バリアントと遺伝子発現を関連付けます
  • tooluniverse-gene-prioritization:体系的な遺伝子ランキング

コメント