QTc計算機
心拍数が毎分80回でQTが400 msなら、Bazettの式でQTcは462 msを少し下回ります。毎分60回なら400 msのままです。QTと、心拍数またはRR間隔を入れてください。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- Qt
- 400
- 心拍数
- 60
- Rr
- 1 ms
- Qtc
- 400
補正QT間隔、すなわちQTcは、異なる心拍数で記録した実測QTを、一分あたり六十拍という共通の基準で比べられるように再スケールします。Bazettの式は、実測QTを秒単位のRR間隔の平方根で割ります。本QTc計算機は、ミリ秒のQT間隔と、一分あたり拍数で表した正の心拍数、または秒単位の正のRR間隔のいずれかとを受け取り、ミリ秒のQTcを返します。心拍数を送るとRRは六十をそのレートで割った値になり、RRを送ると心拍数は六十をRRで割った値になります。
BazettのQTcとは何か、平方根補正の仕組み
QT間隔はQRS波の始まりからT波の終わりまでの時間で、心室の脱分極と再分極を覆います。紙またはデジタルの心電図では、通常ミリ秒で測ります。生のQTは心拍数が上がると短くなり、下がると長くなります。
そのため、心筋の回復時間が同じでも、RR周期が変わっただけでQTの数値が違う二本のトレースになり得ます。補正QT、すなわちQTcは、測定を一秒、つまり一分あたり六十拍の標準周期に引き直して、そのレート効果を打ち消します。Bazettの式は、RRを秒としたとき、QTcはQTをRRの平方根で割った値です。
QTをミリ秒で渡すとQTcもミリ秒です。400ミリ秒のQTを60拍/分で測るとRRは1秒、QTcは400ミリ秒になり、未補正値と一致します。80拍/分では同じQTのRRは0.75秒、QTcは400を0.75の平方根で割った値で、462ミリ秒弱です。
RRの代わりに心拍数を送ると、本計算機はRRを六十割る心拍数(拍/分)で換算します。秒のRRを送ると、心拍数は六十割るRRとして復元します。実装は初等算術と平方根一つです。
Fridericiaの立方根式、Framinghamの線形補正、Hodges、Rautaharju、年齢や性別を使う回帰は適用しません。ECGファイルは読まず、QRS開始もT波終末も検出しません。それらは信号処理ツールと臨床家の仕事です。
出力はBazettの閉形式の教育的評価として扱い、QT延長症候群の診断、薬物安全性の判断、レビュー済みトレースの代替としては扱わないでください。
QTc計算機が使われる場面、料金、正直な限界
心電図検査室、循環器の臨床実習、臨床薬理学の授業では、教科書のQTと心拍数の組からBazettの演習が絶えず出るため、導出したRRと並べてQTcを返す信頼できるオラクルは採点とデモ準備を速めます。試験ジェネレータとLMSプラグインは、正でないRRや心拍数を拒否し、壊れた採点が成功と誤認し得る沈黙のNaNを出さない決定的エンジンを必要とします。
期待は教育用に保ってください。計算と学習の道具であり診断用医療機器ではなく、レビュー済み心電図、専門的解釈、QT延長薬の地域処方規則の代替ではありません。失神、突然死の家族歴、既知のチャネル病がある方は、自動化された単一のQTcではなく専門的な医学助言に従ってください。
テストでは qtc を固定し、Bazettは超高レートや超低レートの普遍的真理ではなく指名された式として扱い、ミリ秒で測ったRRは呼び出す前に秒へ換算し(800ミリ秒は0.8秒)、すでに秒で表したQTは先にミリ秒へ直してから送ってください。
活用例
授業用Bazett解答キー
教科書のQTと心拍数の組からQTcを生成し、教員と自動採点が同じ透明なBazettの正解を共有できるようにします。
薬理学と心電図の実習
臨床実習で平方根によるレート補正を示し、同じページでFridericiaや線形式を混ぜないようにします。
よくある質問
QTcとは何で、どの式を使いますか?
QTcは基準心拍数へ補正したQT間隔です。本計算機はBazettを使います。QTc = QT / √RR。QTはミリ秒、RRは秒です。結果のQTcもミリ秒です。
心拍数やRRがゼロまたは負だとどうなりますか?
Bazettには正のRR間隔が必要です。正でない心拍数やRRは、Infinity や沈黙のNaNを返す代わりに拒否されます。
QTはミリ秒ですか、秒ですか?
ミリ秒です。 成人の典型的なQTは数百ミリ秒(例: 400)です。秒で測った場合は、呼び出す前に1000を掛けてください。RRは秒です(0.8 sであり、800ではありません)。
QTが400 msで心拍数が毎分80回のときQTcはいくつですか?
462 msを少し下回ります。毎分80回ではRR間隔が0.75秒になり、QTをその平方根で割るためです。毎分60回ならRRは1秒で、QTcはQTと同じになります。
FridericiaやFraminghamの式でも計算しますか?
しません。使うのはBazettの式だけで、Fridericia、Framingham、Hodges、Rautaharjuの補正は行いません。心電図のファイルを読んでT波の終わりを探すこともしないので、QTは事前に測っておきます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/health/qtc \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"qt":400,"heart_rate":60}'const res = await fetch("https://api.kit.forhosting.com/health/qtc", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"qt": 400,
"heart_rate": 60
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/health/qtc",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"qt": 400,
"heart_rate": 60
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/health/qtc", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"qt":400,"heart_rate":60}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"qt":400,"heart_rate":60}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/health/qtc", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"qt": 400,
"heart_rate": 60
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "health.qtc",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
ゼロまたは負の周期長は invalid_input で失敗し、課金されません。
入力契約、応答の形、エラーの扱い
別名 hr、bpm、rate を受け付けます。RR間隔または心拍数が正の数でない場合、絶対値を取ったりゼロ平方根の分母から Infinity を返したりせず、タスクは失敗します。両方を送る場合、どちらも正でなければなりません。古典的なスモーク確認は、60拍/分で400ミリ秒のQT(QTcは400)と、RR 0.8秒で400ミリ秒のQT(QTcは約447ミリ秒)です。必須のQT間隔と、周期長フィールドを少なくとも一つ含むJSON本体をPOSTしてください。フィールド qt はミリ秒の実測QTで、ゼロより大きい有限数でなければなりません。別名 qt_ms、qt_interval、qt_msec を受け付けます。フィールド heart_rate は一分あたり拍数の心拍数で、ある場合は有限の正の数でなければなりません。フィールド rr は秒単位のRR間隔で、ある場合は有限の正の数でなければなりません。別名 rr_interval、rr_s、rr_sec を受け付けます。heart_rate、rr、または両方を指定してください。各数値フィールドはJSON数値でも数値文字列でも構いません。qt の欠落、空文字、真偽値、NaN、Infinity、ゼロ、負の値はフィールド名付きの invalid_input になり、課金されません。heart_rate だけを送ると、RRは六十をそのレートで割った値です。rr だけを送ると、heart_rate は六十をその間隔で割った値です。Bazettは渡されたRRを使い、送った heart_rate はエコーして、何を送ったか分かるようにします。成功時は qt、heart_rate、rr、ミリ秒の qtc、ms に設定した unit、QTcはQTをRRの平方根で割るという式文字列、method bazett を返します。レートに対するQTcの図が必要なら、ご自身の作図とJSONを組み合わせてください。本エンドポイントはBazettの数値だけを計算します。
QTc計算機が使われる場面、料金、正直な限界
すでに実測QTと心拍数を持つ薬物安全性やthorough QT試験のワークシートは、表計算言語ごとに平方根を再実装せず、小さなparse APIを呼べます。本機能は純粋なparseエンジンなので、成功したAPI呼び出しは公開の基本料金$0.002で、モデルトークンも外向きネットワークもなく、検証失敗は前払い残高を消費しません。
連携の活用例
決定的なQT試験用フィクスチャ
ワークシートと回帰テスト向けに安定したQTcラベルを一括生成し、正でないRRや心拍数には厳しい invalid_input を返します。
技術的な質問
心拍数とRR間隔のどちらを送りますか。
どちらでも構いません。heart_rate を拍/分で送ると RR は 60 / heart_rate 秒になり、rr を秒で送ると heart_rate は 60 / rr になります。少なくとも一方は正の数である必要があります。
QTc計算機の料金はいくらですか。
ブラウザツールは無料で、お使いの端末で動きます。API要求は成功1件あたり$0.002の前払いKIT残高を使い、無効な入力は課金されません。