tooluniverse-epigenomics-chromatin について
エピゲノミクスとクロマチンアクセシビリティ研究向けのスキルです。調節エレメント、転写因子結合、eQTL、非コード変異を調べ、複数層の証拠を組み合わせて評価します。
主な機能
- 01ヒストン修飾とChIP-seqの検索
- 02クロマチンアクセシビリティと状態の分析
- 03調節エレメントと転写因子の特定
- 04組織特異的eQTLの検索
- 05変異の調節影響の評価
活用シーン
- 01遺伝子座の調節エレメントの研究
- 02非コード変異の機能評価
- 03組織別の遺伝子調節証拠の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mims-harvard/ tooluniverse --skill tooluniverse-epigenomics-chromatinインストール後、Claude Code で/tooluniverse-epigenomics-chromatinを入力して読み込まれたか確認します。
詳細
エピゲノミクスとクロマチンアクセシビリティの研究
対象外(代わりに別のスキルを使用)
- メチル化アレイデータの処理(CpG ベータ値、差次的メチル化) ->
tooluniverse-epigenomicsを使用 - RNA-seq の差次的発現解析 ->
tooluniverse-rnaseq-deseq2を使用 - GWAS バリアントの解釈 ->
tooluniverse-gwas-snp-interpretationを使用 - VCF からのバリアント機能アノテーション ->
tooluniverse-variant-analysisを使用
推論:まず質問を分類する
ツールを呼び出す前に、回答する質問の種類を特定してください。それぞれ異なるツールセットに対応します。
(a) この遺伝子座にはどのような調節エレメントが存在しますか? UCSC_get_encode_cCREs(領域ベース)または SCREEN_get_regulatory_elements(遺伝子ベース)を使用します。次に、ENCODE_get_chromatin_state で ChromHMM アノテーションを確認し、ENCODE_search_chromatin_accessibility で ATAC-seq のエビデンスを確認します。
(b) そこに結合する TF は何ですか? ChIP-seq 実験には ReMap_get_transcription_factor_binding を使用します。jaspar_search_matrices で結合モチーフを取得し、その配列が既知のモチーフを破壊するか確認します。
(c) バリアントは調節にどのような影響を与えますか? スコア付きの要約には RegulomeDB_query_variant を使用します。次に、複数の層からエビデンスを集めます:UCSC_get_encode_cCREs(バリアントは cCRE 内にあるか?)、GTEx_get_single_tissue_eqtls(eQTL か?)、jaspar_search_matrices(TF モチーフを破壊するか?)。単一の層だけでは不十分です。以下のバリアント推論セクションを参照してください。
(d) あるエレメントによってどの遺伝子が調節されますか? GTEx_get_single_tissue_eqtls または GTEx_query_eqtl を使用して、そのエレメント内のバリアントと発現との関連がある遺伝子を見つけます。SCREEN_get_regulatory_elements で element_type="PLS"/"pELS"/"dELS" を指定し、エレメントとプロモーターの関係を分類します。
推論:ヒストンマーク
データを取得する前に、ヒストンマークの種類をツールへのクエリの指針とし、結果の解釈に役立てます。
- H3K4me3 = 活性化プロモーターです。H3K27ac を伴わずに存在する場合、プロモーターは活性化していても、高度にアセチル化されていない可能性があります。
- H3K27ac = 活性化エンハンサーまたはプロモーターです。強いシグナルは、調節エレメントが活性化していることを示します。
- H3K4me1 = プライム状態または活性化状態のエンハンサーです。活性を確認するには H3K27ac が必要です。H3K4me1 のみの場合はプライム状態です。
- H3K27me3 = Polycomb による抑制です。遺伝子は PRC2 によってサイレンシングされています。
- H3K9me3 = 構成的ヘテロクロマチンです。領域は構造的にサイレンシングされています。
- H3K36me3 = 転写中の遺伝子本体です。伸長が活発であることを確認できます。
二価プロモーターの考え方:同じ遺伝子座で H3K4me3 と H3K27me3 の両方が見られる場合、プロモーターは二価状態にあります。つまり、プライム状態ですが活性化していません。これは幹細胞や発生に応じて調節される遺伝子でよく見られます。このような遺伝子を「活発に転写されている」と報告しないでください。GTEx_get_expression_summary を使用して、対象組織で実際にその遺伝子が発現しているか確認します。
推論ルール:まだクエリしていないマークについてユーザーから質問された場合は、すでに見つかったマークで質問に答えられるかを検討します。ある領域の H3K4me3 は活発な転写を予測するため、伸長を特に確認する場合を除き、H3K36me3 もクエリする必要はないかもしれません。
推論:eQTL の解釈
eQTL は、変異 X が組織 T における遺伝子 Y の発現と統計的に関連していることを意味します。eQTL の結果を報告する前に、次の推論手順を適用します。
- 関連 ≠ 因果。 その変異は因果変異と LD にある可能性があります。因果関係ではなく、効果量(NES)と p 値を報告します。
- 組織特異性を確認します。 GTEx_get_multi_tissue_eqtls を使用して、効果が複数の組織で共有されているか(多くの組織で m 値が 1.0 付近)、組織特異的か(1 つの組織のみで m 値が 1.0 付近)を確認します。組織特異的な eQTL は、細胞種特異的な調節の有力候補です。
- クロマチン情報と照合します。 eQTL 変異は cCRE 内にありますか?変異の座標に対して UCSC_get_encode_cCREs を使用します。該当する場合、その変異は調節エレメントを介して作用する可能性が高いです。
- TF モチーフの破壊を確認します。 jaspar_search_matrices を使用して、eQTL 座位と重なるモチーフを検索します。変異アレル間でモチーフスコアが異なる場合、因果変異の候補です。
- 効果の方向は重要です。 NES が正の場合、参照アレルが発現を増加させます。NES が負の場合、代替アレルが発現を減少させます。
推論:変異の調節への影響
非コード変異の調節への影響を評価するには、複数の独立した層からエビデンスを集めます。単一の層だけでは十分ではありません。
層 1 — RegulomeDB スコア:高確率(スコア 1a~2b)は、eQTL、TF 結合、DNase から収束したエビデンスがあることを意味します。スコア 4~7 は、裏付けが弱いことを意味します。トリアージのフィルターとして使用します。
層 2 — 調節エレメントとの重複:変異の座標に対して UCSC_get_encode_cCREs をクエリします。変異が cCRE(特に PLS または pELS)内に位置する場合、機能的な文脈にあります。
層 3 — eQTL のエビデンス:近傍遺伝子について GTEx_get_single_tissue_eqtls をクエリします。その変異が有意な eQTL である場合、その関連は調節機能を裏付けます。
層 4 — TFBS の破壊:座位にモチーフを持つ TF を jaspar_search_matrices でクエリします。その変異がモチーフ内の情報量の高い位置を変化させる場合、機能的な有力候補です。
統合ルール:各層を個別に報告します。3 層以上でエビデンスが収束する場合、信頼度の高い調節変異です。単一の層(例:eQTL のみ)では、慎重な解釈が必要です。
フェーズ 0:曖昧さの解消
MyGene_query_genes:query(文字列)。遺伝子シンボルを Ensembl ID と座標に変換します。結果を symbol == '<GENE>' でフィルタリングしてください。最初の結果が一致するとは限りません。
ensembl_lookup_gene:gene_id(Ensembl ID)、species(必須、「homo_sapiens」)。chr/start/end を返します。
主な形式に関する注意事項:
- GTEx にはバージョン付き GENCODE ID が必要です:
ENSG00000012048.20 - RegulomeDB には rsID を指定します:
rs4994 - GTEx の変異 ID:
chr17_43705621_T_C_b38 - UCSC cCRE 領域:
chrom="chr17", start=7668421, end=7687490
フェーズ 1:ヒストン修飾と ChIP-seq
ENCODE_search_histone_experiments:target(ヒストンマーク)、cell_type(または別名の tissue)、biosample_term_name(最も具体的な ENCODE オントロジー名)、limit。
ENCODE の解剖学用語に関する注意事項:「breast」→「breast epithelium」または「mammary epithelial cell」を試します。「brain」→「brain」で検索できます。結果が 0 件の場合は、「tissue」、「epithelium」、または「cell」を付け加えます。
result = tu.tools.ENCODE_search_histone_experiments(target="H3K27ac", cell_type="GM12878", limit=5)
# result["data"]["experiments"][0]["accession"] -> "ENCSR000AKC"
GEO_search_chipseq_datasets:古い ChIP-seq データセット、または ENCODE 以外の ChIP-seq データセットの代替手段です。
フェーズ 2:クロマチンアクセシビリティと構造
ENCODE_search_chromatin_accessibility:cell_type、limit。ATAC-seq 実験を返します。
ENCODE_get_chromatin_state:cell_type、limit。ChromHMM の 15 状態アノテーション(TssA、Enh、TssBiv、ReprPC など)を返します。二価プロモーター状態またはエンハンサー分類の確認に使用します。
ENCODE_search_rnaseq_experiments:assay_type(デフォルトは "total RNA-seq")、biosample、limit。結果が 0 件の場合は、assay_type="polyA plus RNA-seq" で再試行します。
GEO_search_rnaseq_datasets / GEO_search_atacseq_datasets:query、organism、limit(max_results も指定可能)。GEO は ATAC ツールのクエリに「ATAC-seq」を自動的に追加します。
ReMap_get_transcription_factor_binding(CTCF):gene_name="CTCF"、cell_type、limit。ENCODE TF ChIP-seq 実験を返します。
フェーズ 3:調節エレメントの特定
SCREEN_get_regulatory_elements:gene_name、element_type(PLS/pELS/dELS/CTCF-only/DNase-H3K4me3)、limit。
UCSC_get_encode_cCREs:chrom(必須)、start(必須)、end(必須)、genome(デフォルトは "hg38")。DNase、H3K4me3、H3K27ac、CTCF シグナルの Z スコアを含む cCRE を返します。
# cCREs near TP53
result = tu.tools.UCSC_get_encode_cCREs(chrom="chr17", start=7668421, end=7687490, genome="hg38")
ENCODE_search_annotations:annotation_type("candidate Cis-Regulatory Elements" または "chromatin state")、biosample_term_name、organism、assembly、limit。
フェーズ 4:eQTL 解析
GTEx_get_single_tissue_eqtls:gencode_id(Ensembl 遺伝子 ID のリスト。バージョン付き、またはバージョンなし)、tissue_site_detail_id、page。遺伝子シンボルは受け付けません。シンボルしかない場合は、以下の GTEx_query_eqtl を使用してください。複数の組織における有意な eQTL を、snpId、pValue、tissueSiteDetailId、nes(正規化効果量)とともに返します。
result = tu.tools.GTEx_get_single_tissue_eqtls(gencode_id=["ENSG00000012048"]) # BRCA1
from collections import Counter
tissue_counts = Counter(e["tissueSiteDetailId"] for e in result["data"])
GTEx_query_eqtl:gene_symbol、tissue(tissueSiteDetailId)、page(1 始まり)、size。特定の組織に使用します。
GTEx_get_multi_tissue_eqtls:operation="get_multi_tissue_eqtls"、gencode_id(バージョン付き、必須)。組織間での共有を示す、バリアントごとの m 値を返します。m 値が 1.0 に近い場合は効果があり、0.0 に近い場合は効果がありません。
result = tu.tools.GTEx_get_multi_tissue_eqtls(
operation="get_multi_tissue_eqtls",
gencode_id="ENSG00000012048.20"
)
GTEx_calculate_eqtl:operation="calculate_eqtl"、gencode_id、variant_id(chr_pos_ref_alt_b38)、tissue_site_detail_id。有意でないペアにも使用できます。
eQTL_list_datasets / eQTL_get_associations:非推奨のため、使用しないでください。EBI eQTL Catalogue は REST API を廃止したため(HTTP 410 Gone)、どちらのツールもエラーを返します。組織 eQTL には上記の GTEx eQTL ツールを、GWAS/QTL の共局在には OpenTargets_get_credible_set_colocalisation を使用してください。eQTL Catalogue の全データは、tabix/FTP の要約統計量としてのみ利用できます。
フェーズ 5:遺伝子発現の背景情報
GTEx_get_expression_summary:gene_symbol。推奨 — GENCODE のバージョンを自動的に解決します。組織ごとの TPM 中央値を返します。
result = tu.tools.GTEx_get_expression_summary(gene_symbol="BRCA1")
# data: {geneExpression: [{tissueSiteDetailId, median (string TPM), unit, ...}]}
top_tissues = sorted(result["data"]["geneExpression"], key=lambda x: float(x["median"]), reverse=True)[:5]
GTEx_get_median_gene_expression:operation="get_median_gene_expression" と、バージョンを正確に指定した gencode_id が必要です。バージョンを厳密に指定する必要がある場合にのみ使用してください。
GTEx_get_tissue_sites:パラメーターはありません。すべての tissueSiteDetailId 値を返します。
フェーズ 6:転写因子の結合
jaspar_search_matrices:name(TF 名)、collection("CORE")、tax_group("vertebrates")、species("9606")、page_size。
result = tu.tools.jaspar_search_matrices(name="CTCF", collection="CORE", page_size=5)
jaspar_get_matrix:JASPAR マトリックス ID の位置頻度行列を返します。バリアントアレルが情報量の高い位置を損なうかどうかの確認に使用します。
ReMap_get_transcription_factor_binding:gene_name(TF)、cell_type、limit。フェーズ 2 で CTCF に使用したものと同じツールで、任意の TF に適用できます。
STRING_get_functional_annotations:identifiers(遺伝子名)、species(9606)、category("Process"/"Function"/"KEGG")。調節の背景情報として、GO/KEGG/Reactome アノテーションを返します。
フェーズ 7:バリアントの制御スコアリング
RegulomeDB_query_variant:rsid(例:「rs4994」)。確率、ランキング(1a = 最も強い、7 = 最も弱い)、組織特異的スコアを返します。
result = tu.tools.RegulomeDB_query_variant(rsid="rs4994")
score = result["data"]["regulome_score"]
# score["ranking"]: "1a" (eQTL + TF + motif + DNase) ... "7" (no evidence)
# score["probability"]: 0.0–1.0
top_tissues = sorted(score["tissue_specific_scores"].items(), key=lambda x: float(x[1]), reverse=True)[:5]
ランキング 1a~1f はすべて eQTL の証拠があります。ランキング 2a~3b は eQTL を伴わない TF 結合の証拠があります。ランキング 4~7 は証拠の強さが段階的に低下します。「強い制御支持」のしきい値として、ランキング <= 2b を使用します。
フェーズ 8:統合
報告する前に、証拠の階層を組み合わせます。
- T1(直接的な実験):ENCODE ChIP-seq 実験、GTEx eQTL p < 5e-8
- T2(強力な計算的証拠):RegulomeDB score <= 2、SCREEN cCRE 分類、ChromHMM 状態
- T3(中程度):eQTL p < 0.05、JASPAR モチーフ一致、複数組織での m-value > 0.5
- T4(アノテーションベース):STRING GO 用語、文献参照
独立した情報源からの T1+T2 の証拠の収束(例:ENCODE ChIP-seq が RegulomeDB 1a バリアントと重複し、GTEx eQTL もある場合)は、制御機能を示す強力な証拠となります。層間の矛盾(例:RegulomeDB スコアが高いが eQTL がない場合)は、明示的に記載してください。
フォールバック戦略
| フェーズ | プライマリツール | フォールバック |
|---|---|---|
| ヒストン ChIP-seq | ENCODE_search_histone_experiments | GEO_search_chipseq_datasets |
| RNA-seq | ENCODE_search_rnaseq_experiments (total RNA-seq) | polyA plus RNA-seq で再試行 |
| ATAC-seq | ENCODE_search_chromatin_accessibility | GEO_search_atacseq_datasets |
| cCRE | UCSC_get_encode_cCREs | SCREEN_get_regulatory_elements |
| eQTL | GTEx_get_single_tissue_eqtls | GTEx_query_eqtl |
| 発現 | GTEx_get_expression_summary | GTEx_get_median_gene_expression |
| TF モチーフ | jaspar_search_matrices | ReMap_get_transcription_factor_binding |
| バリアントスコアリング | RegulomeDB_query_variant | eQTL + TF 結合を手動で組み合わせる |