決定係数計算機
観測値3、5、7、9に対して予測がそれぞれ半単位ずつ外れている場合、R²は0.95で、残差平方和は全平方和20のうち1です。2つのリストを同じ順番で貼り付ければ、どんなモデルでも評価できます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 観測値
- 3, 5, 7, 9
- 予測値
- 2.5, 5.5, 6.5, 9.5
- N
- 4
- 決定係数 R²
- 0.95
- 誤差平方和
- 1
- 全平方和
- 20
決定係数計算機は、観測された結果と予測値を比較し、標準的な平方和の定義に基づいてモデルが説明する変動の割合であるR²を返します。位置ごとに観測値と予測値が対応する、同じ長さの2つの数値配列を入力してください。結果には残差平方和、全平方和、観測値の平均、ペア数が含まれるため、計算内容を確認して再利用できます。有限の数値だけを受け付け、配列の長さが異なる場合はエラーになります。また、観測系列に分散がない場合はR²が定義できないため、その旨を明示します。
対応する観測値と予測値をご用意ください
位置によって対応関係が決まり、最初の予測値は最初の観測値、2番目は2番目の観測値と比較されます。そのため、両方の配列には同じ数の要素が必要であり、長さが異なると計算機はエラーを返します。同じ尺度と単位の未加工の値をご使用ください。
片方の配列だけを並べ替えたり、片側だけから項目を削除したり、確率とクラスラベルを混在させたりすると、本来の対応関係が失われます。各要素は有限の数値でなければなりません。空欄、null、無限大、文字列は暗黙に変換せず拒否します。
最低2組が必要です。 結果が欠けている行がある場合は、呼び出す前に処理方法を決め、対応するペア全体を一貫して除外してください。この準備により、スコアが明確な評価標本に対応し、モデル間の比較にも意味を持たせられます。
R²の計算方法をご確認ください
計算機は最初に観測値の平均を求めます。次に、各観測値と平均との差を二乗して合計し、説明対象となる変動を表す全平方和を計算します。その後、観測値と対応する予測値との差を二乗して合計し、残差平方和を求めます。
R²は、1から残差平方和を全平方和で割った値を引いたものです。値が1なら、入力されたすべてのペアで予測が完全に一致しています。0なら、この二乗誤差の比較では、常に観測標本の平均を使う場合より予測が優れていないことを示します。
予測誤差が平均値を基準にした誤差より大きい場合、値は負になることがあります。負の値も有効であり、0に切り上げるべきではありません。すべての観測値が同じ場合は全平方和が0となり、比率が定義できないためエラーになります。
応答には両方の平方和と平均が含まれ、計算の再現や想定外の結果の調査にご利用いただけます。
適切な文脈で結果をご解釈ください
R²は入力されたペアに対する適合度を要約しますが、因果関係を証明するものではなく、将来の予測性能や誤差パターンの妥当性も保証しません。訓練データで高い値を得ても過学習している場合があるため、汎化性能を測る際は検証用またはテスト用データの予測値をご使用ください。目的変数、標本、評価手順が同等の場合に限ってスコアを比較してください。
分野の事情も重要です。 ノイズの多い現象では中程度の値でも有用な一方、精密な工学制御では非常に高い値でも不十分な場合があります。R²だけでなく、残差プロット、平均絶対誤差、二乗平均平方根誤差なども確認してください。これらは単一の割合では分からない誤差の大きさや系統的な偏りを示します。
本実装は観測値の平均に基づく一般的な非加重の定義を使用し、切片の追加、回帰の当てはめ、説明変数数による補正、自由度調整済みR²の計算は行いません。
活用例
モデルの改訂版を比較します
特徴量やパラメーターの変更前後に、固定した評価標本で同じ適合度指標を計算できます。
報告されたスコアを監査します
誤差平方和、変動平方和、観測平均を使い、R²の結果を再現して確認できます。
よくある質問
R²は何を測る指標ですか?
予測の二乗誤差を観測平均まわりの変動と比較します。この定義では1が完全一致、0が平均値による基準と同等です。
R²が負になることはありますか?
はい。 負の値は、入力された予測の二乗誤差が、全項目に観測標本の平均を使う場合より大きいことを示します。
配列の長さを同じにする必要があるのはなぜですか?
各観測値には位置が同じ予測値が1つ必要です。長さが異なると、対応する値がない項目が生じます。
一定の観測値が拒否されるのはなぜですか?
すべての観測値が等しいと全平方和が0になり、R²の比率を定義できないためです。
自由度調整済みR²も計算しますか?
いいえ。 結果と予測から通常のR²を計算し、説明変数の数による補正は行いません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/stat/coefficient-determination \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"observed":[3,5,7,9],"predicted":[2.5,5.5,6.5,9.5]}'const res = await fetch("https://api.kit.forhosting.com/stat/coefficient-determination", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"observed": [
3,
5,
7,
9
],
"predicted": [
2.5,
5.5,
6.5,
9.5
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/coefficient-determination",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"observed": [
3,
5,
7,
9
],
"predicted": [
2.5,
5.5,
6.5,
9.5
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/coefficient-determination", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"observed":[3,5,7,9],"predicted":[2.5,5.5,6.5,9.5]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"observed":[3,5,7,9],"predicted":[2.5,5.5,6.5,9.5]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/coefficient-determination", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"observed": [
3,
5,
7,
9
],
"predicted": [
2.5,
5.5,
6.5,
9.5
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.coefficient_determination",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
対応する観測値と予測値をご用意ください
測定した結果をobservedに、対応するモデルの出力をpredictedに入力してください。
適切な文脈で結果をご解釈ください
ブラウザーでは直接計算でき、自動APIリクエストの料金は$0.002です。
連携の活用例
回帰テストデータを評価します
保留したレコードへの予測が、観測結果の変動をどの程度説明するか測定できます。
技術的な質問
APIリクエストの料金はいくらですか?
APIリクエストは1回$0.002です。ブラウザーでも計算を実行できます。