mcpField
T
tooluniverse-dose-response

tooluniverse-dose-response

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

tooluniverse-dose-response について

濃度–反応データを4パラメータロジスティックモデルで適合するToolUniverseスキルです。研究者が効力、有効性、適合品質を推定し、解釈上の限界を確認しながら化合物を比較できます。

主な機能

  1. 014パラメータ用量反応曲線の適合
  2. 02IC50とEC50の推定
  3. 03Hill勾配と有効性の報告
  4. 04適合品質の確認
  5. 05化合物の効力比較
  6. 06CSV適合スクリプト

活用シーン

  1. 01酵素・細胞アッセイの反応分析
  2. 02化合物間の効力比較
  3. 03不完全または低品質な曲線の確認

MCP 対応

IC50計算、曲線適合、効力比較のためのToolUniverseツールを提供し、ローカルのPython適合スクリプトも説明しています。

インストール

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

$npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-dose-response

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

同梱ファイルscripts/fit_dose_response.pytest_fit_dose_response.py

詳細

用量反応/濃度反応解析

濃度と反応のペア測定値から、効力(IC50/EC50)、ヒル勾配、効果(Emax)、および品質評価を求め、化合物間で効力を比較します。

こんなときに使います

  • 酵素阻害/活性化アッセイ、細胞生存率、レポーターアッセイ、放射性リガンド結合、アゴニスト/アンタゴニストの薬理試験。
  • 濃度のリストと各濃度での反応値があり、IC50/EC50とヒル勾配を求めたいとき。
  • 「化合物AはBよりN倍効力が高い」と示したいとき。

モデルは4パラメータロジスティック(4PL)/ヒルシグモイドです: f(x) = Emin + (Emax − Emin) / (1 + (EC50/x)^n) — ここで、nはヒル勾配です。

ステップ1 — データを準備する(結果がうまくいかない原因)

問題対処方法
濃度の単位単位(µM、nM、M)を1つ選び、すべての測定点で統一します。IC50はその単位で返されます。単位を混在させないでください。
対数濃度と線形濃度濃度はlog10ではなく、線形スケールで渡します(例:0.01, 0.1, 1, 10)。フィッターが内部で対数変換します。
ゼロ/コントロール濃度濃度が文字どおり0のデータ点は除外します(log(0)は未定義です)。正規化する場合は、Emin/Emaxの基準としてのみ残します。
方向阻害曲線は高値から低値(IC50)、活性化曲線は低値から高値(EC50)になります。ツールはどちらにも対応しますが、方向を統一してください。
正規化Emax/Eminを100/0付近にしたい場合は、生のシグナルをコントロールに対する割合に変換します:% = 100 × (raw − blank)/(control − blank)。生の値でもフィッティングできますが、その場合、プラトーは生の値の単位になります。
反復測定フィッティング前に濃度ごとの技術反復を平均するか、すべての測定点を渡します(フィッティングでは各点が均等に重み付けされます)。

測定範囲の要件:測定点は4点以上必要です(ツールで必須)。理想的には、両方のプラトーをまたぐ6~8点を用意してください。つまり、変曲点より明らかに高い点と低い点が必要です。曲線がプラトーに達しない場合、IC50の信頼性が低くなり、外挿値になることがあります(ステップ4を参照)。

ステップ2 — フィッティングして効力を求める

単一の曲線からIC50またはEC50を求めます(数学的には同じです。阻害には「IC50」、活性化には「EC50」を使います):

tu run DoseResponse_calculate_ic50 '{"operation":"calculate_ic50",
  "concentrations":[0.001,0.01,0.1,1,10,100],
  "responses":[98,95,80,45,12,3]}'

ic50、ic50_95_confidence_interval、hill_slope、emax、emin、r_squared、log_ic50が返されます。

4PLの全パラメーターのみが必要な場合は、DoseResponse_fit_curveを使います(入力は同じです)。2つの化合物を比較する場合は、conc_a/resp_a/conc_b/resp_bを指定してDoseResponse_compare_potencyを使います(各化合物のIC50に加え、ic50_fold_shift_b_over_aとmore_potentが返されます)。

制約付きプラトー、重み付け、プロットなど、標準外の要件には、scripts/fit_dose_response.pyを使います。CSVからSciPyの4PLフィッティングを実行し、ツールと同じ結果を得られます。

ステップ3 — 4つのパラメーターを解釈する

パラメーター意味妥当性の確認
IC50 / EC50最大効果の半分が得られる濃度、つまり効力です。低いほど効力が高くなります。測定範囲内にあるべきです。端点と一致する、または端点を超える場合、曲線は不完全です(ステップ4)。
ヒル勾配n急峻さ/見かけの協同性です。約1なら単純な単一部位です。1.5超なら、急峻な曲線/正の協同性(または非特異的な反応)を示します。0.5未満なら、浅い曲線/複数部位または不均一性を示します。`
Emax最大反応(上側のプラトー)であり、効果を示します。%データの場合、完全アゴニストは約100です。部分アゴニストは、飽和濃度でも100を大きく下回る値でプラトーに達します。
Emin下側のプラトー(ベースライン/下限)です。%阻害データの場合、完全阻害剤では約0です。
r²フィッティングの品質です。0.95以上なら良好です。0.90未満の場合は、IC50を信頼する前に外れ値、誤ったモデル、不完全な曲線がないか確認してください。

効力の比較:IC50/EC50の倍率差を報告します(例:「AはBより6.2倍効力が高い」)。意味のある比較とするには、両方のフィッティングが良好(r²≥0.95)で、ヒル勾配が同程度であることが必要です。ヒル勾配が大きく異なる曲線間の効力比は、明確な比較になりません。

ステップ 4 — 品質上の注意点(隠さずに明記する)

  • 曲線が不完全で、プラトーがない。 応答が両端で平坦にならない場合、Emax/Emin(ひいては IC50)は外挿値となり、不安定です。IC50 は「概算/試験範囲より右側」と報告し、より広い濃度範囲を推奨してください。
  • 測定点が 4~5 点未満、または変曲点付近に測定点がない。 フィッティングが、高い r² を示しながら、意味のない IC50 に収束することがあります。測定点が実際に IC50 を挟んでいるか確認してください。
  • 二相性/U 字型のデータ。 4PL の単一フィッティングは、ホルミシスや二部位性の挙動には適しません。フィッティングの精度は低くなります(r² が低い)。IC50 を無理に 1 つ求めず、その旨を明記してください。
  • IC50 と Ki。 IC50 はアッセイ条件(基質/リガンド濃度)によって異なります。Cheng-Prusoff 補正なしに、IC50 を親和性(Ki)として報告しないでください。
  • 単位。 IC50 の正確さは入力した濃度単位に左右されるため、必ず単位を明記してください。

正直な制約

  • 4PL は単調なシグモイドを前提としており、二相性、釣鐘型、または全か無かの急峻な応答は表現できません。
  • 不適切または不完全な曲線から確信度の高い IC50 を報告することは、最もよくある誤りです。r² と曲線のカバレッジを基準に、報告の仕方を判断してください。
  • 効力(IC50/EC50)は有効性(Emax)とは異なります。より効力の高い化合物が、より弱い(部分)アゴニストである場合があります。両方を報告してください。

関連スキル

  • tooluniverse-image-analysis — 画像由来の測定値(.tif、コロニー、蛍光)を用いた用量反応解析。
  • tooluniverse-gpcr-structural-pharmacology / tooluniverse-network-pharmacology — 受容体薬理の文脈。
  • tooluniverse-statistical-modeling — 一般的な回帰、スプラインによる EC50、検出力分析。

コメント