tooluniverse-polygenic-risk-score について
GWAS と遺伝子型データを使ったポリジェニックリスクスコアの構築・解釈を支援する ToolUniverse スキルです。PGS Catalog の公開モデルを先に確認し、診断ではなく祖先集団を考慮した確率的な解釈を重視します。
主な機能
- 01GWAS 関連バリアントの検索
- 02重み付き PRS モデルの構築
- 03遺伝子型からのスコア計算
- 04スコアの標準化とパーセンタイル推定
- 05PGS の検証結果と祖先集団データの確認
活用シーン
- 01複雑疾患の遺伝的素因の推定
- 02個人の PRS パーセンタイルの解釈
- 03形質に関する公開リスクスコアの比較
MCP 対応
このスキルは、GWAS Catalog、PGS Catalog、バリアント注釈、LD Score 回帰などの ToolUniverse 遺伝学ツールの利用方法を示します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mims-harvard/ tooluniverse --skill tooluniverse-polygenic-risk-scoreインストール後、Claude Code で/tooluniverse-polygenic-risk-scoreを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.env.templatecheck_data.pypython_implementation.pytest_prs_tools.pytest_skill_comprehensive.py詳細
ポリジェニックリスクスコア(PRS)ビルダー
ゲノムワイド関連解析(GWAS)データを使用して、複雑な疾患のポリジェニックリスクスコアを構築し、解釈します。
推論戦略
ポリジェニックリスクスコアは遺伝的リスクを予測するものであり、疾患を予測するものではありません。PRS が高いことは、集団と比較してリスクが高いことを意味しますが、その人が必ず発症するという意味ではありません。また、PRS が低くても免疫があるわけではありません。PRS の性能は祖先集団によって大きく異なります。ヨーロッパ系集団をもとに作成された PRS を西アフリカ系集団に適用すると、基盤となる GWAS がヨーロッパ系集団の対立遺伝子頻度と LD パターンを用いて学習されているため、予測力が 50~70%低下する可能性があります。発見 GWAS の効果量は winner’s curse(単一研究における過大評価)の影響を受けます。必ず大規模なメタ解析、または検証済みの PGS Catalog モデルの重みを優先してください。PRS は常に非遺伝的リスク要因を考慮して解釈してください。ほとんどの複雑な疾患では、環境要因の寄与は遺伝要因と同程度か、それ以上です。
推測せずに調べてください:効果量、対立遺伝子頻度、ある形質についてゲノムワイド有意な SNP を推測しないでください。必ず GWAS Catalog(gwas_get_associations_for_trait)を照会して実際のデータを確認してください。ある形質について検証済みの PRS モデルが存在すると決めつけず、PubMed 検索で PGS Catalog を確認してください。
概要
使用例:
- 「2 型糖尿病の遺伝的リスクを計算してください」
- 「冠動脈疾患のポリジェニックリスクスコアを作成してください」
- 「アルツハイマー病に対する遺伝的素因はどのくらいですか?」
- 「乳がんリスクについて、PRS のパーセンタイルを解釈してください」
このスキルでできること:
- GWAS Catalog からゲノムワイド有意な変異(p < 5e-8)を抽出します
- 効果量(ベータ係数)を使用して、重み付き PRS モデルを構築します
- 遺伝子型データから個人のリスクスコアを計算します
- PRS を集団内のパーセンタイルとリスクカテゴリーとして解釈します
このスキルでできないこと:
- 疾患を診断すること(PRS は確率的なものであり、決定論的なものではありません)
- 臨床評価や遺伝カウンセリングに代わること
- 非遺伝的要因(ライフスタイル、環境)を考慮すること
- 治療に関する推奨を行うこと
方法
PRS の計算式
ポリジェニックリスクスコアは、遺伝的変異全体の重み付き和として計算します。
PRS = Σ (dosage_i × effect_size_i)
ここで:
- dosage_i:SNP i における効果対立遺伝子の数(0、1、または 2)
- effect_size_i:GWAS におけるベータ係数または log(オッズ比)
標準化
解釈のため、生の PRS を z スコアに標準化します。
z-score = (PRS - population_mean) / population_std
これにより、集団分布との比較やパーセンタイルの算出が可能になります。
有意性の閾値
- ゲノムワイド有意性:p < 5×10⁻⁸(デフォルトの閾値)
- これはゲノム全体にわたる約 100 万件の独立した検定について補正します
- 閾値を緩和すると(例:p < 1×10⁻⁵)、より多くの SNP を含められますが、ノイズが増える可能性があります
効果量の扱い
- 連続形質(例:身長、BMI):ベータ係数(対立遺伝子 1 つあたりの形質の単位)
- 二値形質(例:疾患):オッズ比を対数オッズに変換します(beta = ln(OR))
- 効果量が欠損している SNP、または有意でない SNP は除外します
データソース
このスキルでは、ToolUniverse GWAS ツールを使用して以下を検索します。
-
GWAS Catalog(EMBL-EBI)
- キュレーションされた GWAS 関連情報、5000 件以上の研究
- ツール:
gwas_search_associations(パラメーター:disease_trait、size。また、gwas_get_associations_for_traitも利用可能)、gwas_get_snps_for_gene(パラメーター:gene_symbol)、dbsnp_get_variant_by_rsid - 注意:
disease_trait検索では、その形質が複数の関連する EFO 形質のいずれかである関連情報が返されます。正確に絞り込むには、efo_traitパラメーターで EFO ID を使用してください。
-
Open Targets Genetics
- ファインマッピングされた信頼集合を備えた統合遺伝学プラットフォーム
- ツール:
OpenTargets_search_gwas_studies_by_disease、EnsemblVEP_annotate_hgvs(バリアントの影響/頻度用)
-
バリアントアノテーション
gnomad_search_variants+gnomad_get_variant— 集団別のアレル頻度(VEP の colocated_variants を介した祖先集団別の頻度)MyVariant_query_variants— CADD、SIFT、PolyPhen、ClinVar、gnomAD を一度の呼び出しで取得gnomad_get_gene_constraints— 遺伝子制約指標(pLI、oe_lof)による優先候補の選定
-
PGS Catalog(pgscatalog.org、EMBL-EBI)— 生の GWAS 関連情報から何かを構築する前に、必ず最初に確認してください
- このスキルのベストプラクティスでは、すでに「利用可能な場合は、検証済みの PRS を PGS Catalog から使用する」としています。これらはそのためのツールです。API キーは不要です。
PGSCatalog_search_traits(query=...)— 自由記述の形質名を実際の EFO/MONDO のtrait_id(例:「2 型糖尿病」→MONDO_0005148)に解決し、公開済みスコアがいくつあるかを確認します。ツールが返すtrait_idを必ず使用してください。検索結果は予想とは異なる(ただし正しい)オントロジー用語に解決される場合があるため、推測したり、記憶している EFO/MONDO ID を再利用したりしないでください。PGSCatalog_get_scores_by_trait(trait_id=...)— その形質について公開済みの PGS をすべて一覧表示します。PGS ID、バリアント数、開発手法(LDpred、P+T、ゲノムワイド有意バリアントなど)、ゲノムビルド、出典論文が含まれます。形質によっては、規模や品質が大きく異なるスコアが 50 件以上ある場合があります(例:2 型糖尿病では、2014 年頃の 62 バリアントのスコアから、690 万バリアントの LDpred モデルまであります)。最初の結果が最適だと決めつけないでください。PGSCatalog_get_score(pgs_id=...)— 開発コホート(GWAS)と評価コホートの両方について、ancestry_distributionを含むスコアの全メタデータを取得します。スコアを信頼する前に、必ずこれを確認してください。開発に 100%ヨーロッパ系サンプルを使用したスコア(ancestry_distribution.dev.dist: {"EUR": 100})は、後により多様なコホートで評価された場合でも、このスキルで前述した転用可能性のリスクにまさに該当します。PGSCatalog_get_performance_metrics(pgs_id=...)— 評価コホートごとの実際の公開検証値を取得します。AUROC/C-index、ハザード比/オッズ比(「上位 10%対その他」の比較を含む)、R²が含まれ、それぞれの値について、測定対象の祖先集団とサンプルサイズが示されます。これにより、特定の集団でスコアを信頼できるかどうかを判断できます。ヨーロッパ系コホートのみで測定された高い AUROC からは、他の祖先集団での性能は分かりません。対象集団に一致する評価行を探すか、そのような行がないことを明記してください。
重要な概念
多遺伝子リスクスコア(PRS)
多遺伝子リスクスコアは、多数の遺伝的バリアントの影響を集約し、形質や疾患に対する個人の遺伝的素因を推定します。単一の変異によって引き起こされるメンデル遺伝病とは異なり、複雑な疾患には数百から数千のバリアントが関与し、それぞれの影響は小さいものです。
主な特性:
- 連続分布:PRS は集団内でベルカーブを描きます
- 相対リスク:個人を集団平均と比較します
- 確率的:PRS が高くても発症が保証されるわけではなく、低くても発症しないとは限りません
- 祖先集団に依存:PRS の精度は、GWAS と対象集団の祖先の一致度に左右されます
GWAS(ゲノムワイド関連解析)
GWASでは、数百万のSNPにわたって症例群と対照群のアレル頻度を比較したり、形質値との相関を調べたりして、疾患に関連するバリアントを特定します。
研究デザイン:
- 発見コホート:関連性を最初に特定します
- 再現コホート:独立したサンプルで検証します
- サンプルサイズ:規模の大きな研究ほど、小さな効果を検出できます(検出力 ∝ √N)
- 多重検定補正:約1M件の検定に対してボンフェローニ型補正を行います
効果量とオッズ比
- ベータ(β):効果アレル1コピーあたりの形質の変化
- 例:β = 0.5 kg/m²は、各アレルによってBMIが0.5単位増加することを意味します
- オッズ比(OR):疾患オッズの乗法的な変化
- OR = 1.5は、アレル1つあたりオッズが50%増加することを意味します
- ベータへの変換:β = ln(OR)
連鎖不平衡(LD)とクラumping
近傍のバリアントは、一緒に遺伝することがよくあります(LD)。二重計上を避けるには:
- LDクラumping:独立したバリアントを選択します(1 Mbのウィンドウ内でr² < 0.1)
- ファインマッピング:因果バリアントを特定する統計的手法です
- このスキルでは未加工の関連性データを使用します。実運用でPRSを構築する場合は、LDプルーニングを含める必要があります
集団の層別化
GWASとPRSの精度は、祖先集団が一致している場合に最も高くなります:
- 集団構造:祖先集団によってアレル頻度が異なります
- 移植可能性:欧州系集団で学習したPRSは、欧州系以外の集団では性能が低下します
- 解決策:多様なコホートでPRSを学習させるか、祖先集団が一致する参照データを使用します
用途
臨床リスク評価
PRSは、次の目的で個人を層別化できます:
- スクリーニングプログラム:高リスクの個人を対象にします(例:マンモグラフィー、大腸内視鏡検査)
- 予防戦略:遺伝的リスクの高い人に生活習慣への介入を行います
- 薬剤反応:代謝遺伝子に基づく薬理ゲノミクス
例:Kheraら(2018)は、PRSによって、単一遺伝子変異よりも冠動脈疾患リスクが3倍を超える個人を3倍多く特定できることを示しました。
研究への応用
- 遺伝子発見:PRSに基づく表現型横断的関連解析(PheWAS)
- 遺伝的相関:形質間でPRSを比較します。ただし、形質間の遺伝的相関(rg)をGWASの要約統計量から厳密に推定するには、
run_ldsc_genetic_correlation(LDスコア回帰)を使用してください。このツールは要約統計量のみを必要とし(個人の遺伝子型は不要)、サンプルの重複を補正します。PRS値の相関を調べるよりも、はるかに原理に基づいた手法です。 - 因果推論:PRSを操作変数として用いるメンデルランダム化
- シミュレーション研究:多遺伝子アーキテクチャをモデル化します
SNP遺伝率と遺伝的相関(LDSC)
PRSの構築前または構築と並行して、形質のうち共通SNPで説明される割合と、形質間の関係をGWASの要約統計量から直接定量化できます:
run_ldsc_heritability— 1つのGWASの要約統計量からSNPに基づく遺伝率(h²_SNP)を推定します。切片からは、交絡やインフレーションと真の多遺伝子性を見分ける手掛かりも得られます。これはPRSが到達できる上限を示します(以下の「遺伝率ギャップ」は、h²_SNPからPRSのR²を引いた値です)。run_ldsc_genetic_correlation— 2つのGWAS間の遺伝的相関(rg)を推定し、共通の病因や形質横断的なPRSに関する疑問に答えます。
どちらもリモートツールです(LDスコア回帰エンジンと参照LDスコアパネルを使用)。文献にある点推定値を引用するだけでなく、遺伝率やrgに関する主張をデータに基づいて示すために活用してください。
個人ゲノミクス
消費者向け遺伝子検査(23andMe、Ancestry DNA)では、未加工の遺伝子型データが提供されます。ユーザーは次のことができます:
- 報告されていない形質のPRSを算出する
- 公開されているPRSモデルと比較する
- 遺伝的要因と生活習慣要因の寄与を理解する
注意:個人のPRSは医療上の助言に代わるものではありません。結果を適切な文脈で説明しないと、不安を招くおそれがあります。
制限事項と考慮事項
- 遺伝率のギャップ:PRS で説明できる遺伝率は一部にすぎません(2 型糖尿病:遺伝率は約 50%、PRS で説明できるのは約 10~20%)。希少バリアント、エピスタシス、遺伝子と環境の相互作用は反映されません。
- 祖先集団による偏り:ヨーロッパ系集団に由来する PRS は、ヨーロッパ系以外の集団では性能が大幅に低下します。利用可能な場合は、複数の祖先集団を対象とした GWAS の重みを使用してください。
- 勝者の呪い:発見研究の効果量は過大評価されています。メタ解析の重み、または PGS Catalog で検証済みのモデルを使用してください。
- 診断には使えません:PRS が高くても発症が確定するわけではなく、PRS が低くても発症しないとは限りません。ほとんどの複雑な疾患では、環境要因も同等以上に寄与します。
- 実行可能な対策はさままです:アルツハイマー病の PRS では実行可能な介入が限られますが、心血管疾患の PRS はスタチンの使用や生活習慣の判断に役立つことがあります。その人が情報を得て何ができるかを必ず考慮してください。
- 倫理面:遺伝データは生涯変わらず、家族にも関わります。米国では GINA により雇用と健康保険は保護されますが、生命保険は対象外です。遺伝カウンセリングの観点を含めてください。
ワークフロー
0. 生の GWAS データから構築する前に PGS Catalog を確認する
関連を抽出して PRS をゼロから構築する(以下の手順 1~5)前に、検証済みのスコアがすでに存在するか確認してください。
PGSCatalog_search_traits(query="<trait>") # resolve to a real trait_id
PGSCatalog_get_scores_by_trait(trait_id="<from above>") # list candidate scores
PGSCatalog_get_score(pgs_id="<candidate>") # check dev-cohort ancestry
PGSCatalog_get_performance_metrics(pgs_id="<candidate>") # check validated AUROC/OR/R2 by ancestry
対象集団の祖先集団について十分に検証されたスコアが存在する場合は、生の GWAS Catalog の関連情報から精度の低い PRS を再導出するのではなく、公開済みの重み(scoring_file URL)をそのまま使用してください。これにより、生の GWAS を使う手順(手順 1~5)で手作業による対処が必要となる「勝者の呪い」と LD クランピングの問題を回避できます。PGS Catalog にその形質のスコアがない場合、または既存のスコアがすべて、スコアを算出する集団とは異なる祖先集団で開発・評価されている場合にのみ、生の関連情報からの構築に切り替えてください。
1. 形質の選択
対象とする疾患または形質を特定します。
- 標準的な用語を使用します(例:「T2D」ではなく「2 型糖尿病」)。
- GWAS Catalog で利用可能か確認します。
- 十分な数の GWAS 研究があることを確認します(理想的にはサンプル数が 10,000 を超えるもの)。
2. 関連情報の収集
ゲノム全体で有意な関連について、GWAS データベースを検索します。
prs = build_polygenic_risk_score(
trait="coronary artery disease",
p_threshold=5e-8, # Genome-wide significance
max_snps=1000
)
考慮事項:
- P 値の閾値:5e-8 は保守的で、1e-5 ではより多くのバリアントが含まれます。
- LD クランピング:本番システムでは相関のある SNP を間引く必要があります。
- 研究の質:小規模な研究より、大規模なメタ解析を優先します。
3. 効果量の抽出
ベータ係数またはオッズ比を抽出します。
- 連続形質にはベータを使用します(そのまま使用)。
- 二値形質には OR を使用します(対数オッズに変換)。
- 欠損値を処理します(除外するか、メタ解析から補完します)。
4. SNP のフィルタリング
品質管理フィルター:
- MAF フィルター:堅牢性を高めるため、希少バリアント(MAF < 0.01)を除外します。
- 遺伝子型 QC:欠損率の高い SNP(> 10%)を除去します。
- ハーディ・ワインベルグ平衡:HWE に違反する SNP(p < 1e-6)を除外します。
- 曖昧な SNP:A/T および G/C の SNP(鎖の曖昧さがあるもの)を除去します。
5. スコアの計算
遺伝子型の用量を重み付けして合計します。
result = calculate_personal_prs(
prs_weights=prs,
genotypes=my_genotypes,
population_mean=0.0,
population_std=1.0
)
遺伝子型データの取得元:
- 23andMe の生データエクスポート
- Ancestry DNA の生データ
- 全ゲノムシーケンス(VCF ファイル)
- SNP アレイデータ(Illumina、Affymetrix)
6. リスクの解釈
パーセンタイルとリスク区分に変換します。
result = interpret_prs_percentile(result)
print(f"Percentile: {result.percentile:.1f}%")
print(f"Risk: {result.risk_category}")
リスク区分:
- 低リスク:20 パーセンタイル未満(遺伝的な保護要因あり)
- 平均的なリスク:20~80 パーセンタイル(典型的な遺伝的素因)
- リスク上昇:80~95 パーセンタイル(リスクが中程度に上昇)
- 高リスク:95 パーセンタイル超(リスクが大幅に上昇)
臨床的な解釈:
- パーセンタイルは正規分布を仮定します。
- 平均値に対する相対リスクであり、絶対リスクではありません。
- 家族歴や臨床的なリスク要因と組み合わせてください。
- PRS は診断には使えません。リスクが高くても、実際には発症しない人が多数います。
ベストプラクティス
- 利用可能な場合は、PGS Catalog の検証済み PRS を使用します(外部で検証されており、LD クランピングと祖先集団別の重み付けが含まれています)。
- GWAS と対象集団の祖先集団を一致させます。利用可能な場合は、複数祖先集団の GWAS を使用します。
- 高度に多遺伝子性の形質(身長、教育)では、緩やかな p 値のしきい値を用いると、より多くのシグナルを捉えられます。一方、少数の遺伝子が関与する形質(IBD、T1D)では、厳格なしきい値が適しています。
- PRS を臨床リスクスコア(Framingham、QRISK)と組み合わせ、統合的な予測を行います。
- 研究では、SNP 選択基準、LD クランピングのパラメーター、GWAS の祖先集団を記録します。保留コホートで検証し、祖先集団別に R² または AUC を報告します。
免責事項
このスキルは教育および研究のみを目的としています。
- 臨床診断や治療方針の決定には使用できません
- 臨床使用について検証されていません — 臨床グレードの PRS には PGS Catalog のモデルを使用してください
- 遺伝カウンセリングが必要です — 結果の解釈には専門知識が必要です
- 家族歴、環境、生活習慣の要因は考慮されません
- 祖先集団に依存します — 精度は GWAS の祖先集団が一致しているかどうかに左右されます
臨床遺伝学的検査については、以下に相談してください。
- 遺伝カウンセラー(ABGC/ABMGG 認定)
- 臨床遺伝専門医
- ゲノミクスの研修を受けた医療提供者
PRS は急速に進展している分野です。研究の進展に伴い、ガイドラインとベストプラクティスは今後も変化し続けます。
規制状況:
- FDA は現在、PRS を規制していません(2024 年時点)
- 一部の国では、消費者への直接的な遺伝的リスク報告が制限されています
- 臨床導入の前に、現地の規制を確認してください