学校データの増減率計算
学校向け増減率計算ツールは、元の値と後の値を比較し、差を数量と符号付きパーセントで示します。正の結果は増加、負の結果は減少、ゼロは変化なしを表します。在籍者数、出席数、テスト平均、読書量、活動参加者数など、有効な基準値を持つ非負の学校データにご利用いただけます。計算の意味を理解しやすい説明文も結果に含まれます。
無料で実行
元の値と新しい値を正しい順序で入力してください
増減率は、出発点から後の時点までの動きを表します。先に測った数値を元の値、後に測った数値を新しい値として入力してください。図書館の貸出数が先月は 800、今月は 920 なら、800 が元の値、920 が新しい値です。順序を逆にすると分母が変わるため、別の問いへの答えになります。2つの値は、同じ量、単位、対象集団、期間を表している必要があります。週単位の出席数と月単位の出席数、1学年の人数と学校全体の人数などは、条件をそろえずに比較しないでください。このツールでは非負の学校データを扱えますが、元の値はゼロより大きくなければなりません。基準がゼロの場合、通常の増減率はゼロ除算になるため定義できません。その際は数値そのものの増加量を示すか、誤解を招く割合ではなく別の比較方法をご利用ください。
符号付き増減率の式をご確認ください
最初に、新しい値から元の値を引きます。その差を元の値で割り、100 を掛けます。式は「(新しい値 - 元の値) / 元の値 × 100」です。平均読書時間が 40 から 50 になった場合、差は 10 です。10 を 40 で割ると 0.25 なので、増減率は +25 パーセントです。50 から 40 になった場合は差が -10、結果は -20 パーセントです。基準となる値が異なるため、この2つは単純な正負の反転にはなりません。符号は方向を示し、正なら増加、負なら減少、ゼロなら変化なしです。応答では percentage_change に符号を残し、increase、decrease、no_change のラベルも返します。指定した小数桁数への丸めは、表示する差と割合にだけ適用されます。同じ入力からは常に安定した結果が得られます。
学習課題では結果を明確に説明してください
適切な説明には、対象となる量、比較した期間、変化の方向、変化の大きさを含めます。たとえば「補習に参加した生徒数は、9月の 48 人から10月の 60 人へ増え、増加率は 25 パーセントでした」と書けます。「25 パーセント」だけでは、何がどちらへ変わったか分かりません。データを保存したり計算を続けたりする場合は符号を残してください。減少の並べ替え、グラフ化、集計が容易になります。文章では、絶対値と「増えた」「減った」を組み合わせると自然です。また、増減率とパーセントポイントは異なります。出席率が 80 パーセントから 90 パーセントになれば、差は 10 パーセントポイントですが、相対的な増減率は 12.5 パーセントです。課題が求める指標をご確認ください。同じ決定論的な計算をブラウザーで実行でき、自動化した API リクエストは $0.002 です。
活用例
在籍者数を比較する
以前の人数を基準に、2つの年度間で在籍者数がどれほど増減したか測定できます。
授業参加を追跡する
同じ長さの期間について、完了課題数、読書時間、クラブ参加者数などを比較できます。
表の傾向を説明する
学校データについて明確な文を書くために、符号付き結果と変化の方向を確認できます。
よくある質問
どの計算式を使用しますか?
((新しい値 - 元の値) / 元の値) × 100 を計算し、符号付きの結果を返します。
元の値をゼロより大きくする理由は何ですか?
元の値が分母になるためです。基準がゼロではゼロ除算となり、通常の増減率は定義できません。
負のパーセントは何を意味しますか?
新しい値が元の値より小さいことを示し、方向フィールドでは減少として分類されます。
増減率とパーセントポイントは同じですか?
異なります。増減率は元の値に対する相対値で、パーセントポイントは2つの割合の直接的な差です。
丸める桁数を選べますか?
はい。decimals に 0 から 10 の整数をご指定ください。初期値は小数第2位までです。
料金はいくらですか?
ブラウザーでの計算は無料で、API リクエスト1回の基本料金は $0.002 です。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/edu/percent-change-school \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"old_value":40,"new_value":50}'const res = await fetch("https://api.kit.forhosting.com/edu/percent-change-school", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"old_value": 40,
"new_value": 50
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/percent-change-school",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"old_value": 40,
"new_value": 50
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/percent-change-school", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"old_value":40,"new_value":50}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"old_value":40,"new_value":50}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/percent-change-school", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"old_value": 40,
"new_value": 50
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.percent_change_school",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_abs_value | 1000000000000000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |