四分位数・IQR計算
1から9の数ではQ1が2.5、中央値が5、Q3が7.5なので、IQRは5、フェンスは−5と15です。リストを貼り付けると、四分位数、IQR、フェンス、外れ値がまとめて分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
四分位数は順序付けた標本をおよそ四等分し、あらゆる箱ひげ図と頑健なばらつき要約の中心に位置します。第1四分位数Q1は順序データの25パーセンタイル付近を、第2四分位数Q2は中央値を、第3四分位数Q3は75パーセンタイル付近を示します。その差が四分位範囲(IQR)で、極端な裾を無視する耐性のあるばらつき測度です。Q1から1.5倍IQRを引いた点とQ3に1.5倍IQRを足した点の古典的Tukeyフェンスは、正規分布を仮定せず軽度の外れ値を示します。本機能は有限数の非空リストを受け取り、Q1・Q2・Q3・IQR・両フェンス・ソート済み標本・最小・最大およびフェンス外の値を、一つの決定的な呼び出しで返します。
数値リストにおけるQ1・Q2・Q3・IQRと外れ値フェンスの意味
標本を昇順に並べた後、第2四分位数Q2は全体の中央値です。個数nが奇数なら中央の値、偶数なら中央二つの平均です。本計算は外側四分位にTukeyの排他的ヒンジを使います。
下半分は最初の floor(n/2) 観測、上半分は最後の floor(n/2) で、nが奇数のときは全体中央値を両半分から除き、Q1とQ3が中心で二重計上されないようにします。Q1は下半分の中央値、Q3は上半分の中央値です。四分位範囲は単にQ3マイナスQ1で、データの中央五十パーセントの幅を測ります。
軽度外れ値フェンスは教科書どおり、下限はQ1から一点五倍IQRを引き、上限はQ3に一点五倍IQRを足します。下限より厳密に小さい、または上限より厳密に大きい観測は outliers 配列に報告されます。
ヒンジは順序統計のみに依存するため、極端な一点が min や max を動かしても、平均ほど激しくQ1・Q2・Q3を引きずらず、歪んだ標本や汚染標本では箱ひげ図とIQR要約が好まれます。教室の古典例:一から九の整数はQ1が二点五、Q2が五、Q3が七点五、IQRが五、下フェンスがマイナス五、上フェンスが十五で、九点とも外れ値ではありません。
九を百に置き換えると同じヒンジが百を上側外れ値と判定します。一元リストは三つの四分位をその値に、IQRを零に、両フェンスを同じ値にします。データなしで四分位を作らず、空入力は常に拒否してください。
実務のヒント、制限、関連検索
十万個の有限数は教室集合と大半の運用標本に十分です。授業では一から九の例に、一・二・三・四・五・六のような偶数長リストを組み合わせて平均ヒンジを示し、百のような明確な外れ値を入れて、平均ほどQ1・Q3を動かさずに極端を捉えるフェンスを示してください。
転記ミスやまれなスパイクがあり得る標本では範囲よりIQRとフェンスを、平均と最頻値が要るときは四分位フェンスより兄弟の平均中央値最頻値計算を優先してください。本ページは素の数値リスト上の四分位数計算・IQR計算・四分位範囲と外れ値フェンスを探す人向けで、CSV全体の多列探索プロファイルではありません。
活用例
パイプラインでの素早い頑健な標本要約
各サービスにフル統計ライブラリを入れずに、センサーバッチ・クイズ得点・実験セルを四分位とIQRで要約します。
分析前の外れ値スクリーニング
より深いモデル化や表計算のダッシュボード投入の前に、素のリスト上でTukey 1.5×IQRフェンス外の値をフラグします。
よくある質問
どの四分位法が使われますか?
Tukey 排他ヒンジ:Q2 は標本中央値、Q1 と Q3 は下半と上半の中央値で、n が奇数のとき全体中央値は除きます。
外れ値フェンスはどう定義されますか?
下フェンスは Q1 − 1.5×IQR、上フェンスは Q3 + 1.5×IQR です。いずれかの外に厳密に出る標本値が outliers に現れます。
データの個数が奇数のとき中央値はどう扱いますか?
下半分にも上半分にも含めません。Q1は下半分の中央値、Q3は上半分の中央値となり、中央の値を二重に数えることはありません。
平均や標準偏差ではなく四分位数を使うのはなぜですか?
極端な値が1つあっても、最小値や最大値は動きますが、Q1、Q2、Q3は平均ほど大きく動かないためです。箱ひげ図が偏ったデータに向くのはこのためです。
値が1つだけのリストではどうなりますか?
3つの四分位数はすべてその値になり、IQRはゼロ、2つのフェンスも同じ値になります。空のリストは、データがないため受け付けません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/stat/quartiles \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"numbers":[1,2,3,4,5,6,7,8,9]}'const res = await fetch("https://api.kit.forhosting.com/stat/quartiles", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"numbers": [
1,
2,
3,
4,
5,
6,
7,
8,
9
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/quartiles",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"numbers": [
1,
2,
3,
4,
5,
6,
7,
8,
9
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/quartiles", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"numbers":[1,2,3,4,5,6,7,8,9]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"numbers":[1,2,3,4,5,6,7,8,9]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/quartiles", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"numbers": [
1,
2,
3,
4,
5,
6,
7,
8,
9
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.quartiles",
"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 で拒否され課金されません。
APIの呼び出し方と返却内容
配列内の数値文字列は変換され、単純なテキストフォーム向けにカンマまたは空白区切り文字列も受け付けます。宿題チェッカー、表計算の強化、センサー標本要約、素早い頑健な中心とばらつきを要する品質管理ダッシュボード、各マシンに統計パッケージを入れずに四分位とIQRが欲しい任意の流れに使えます。必須フィールド numbers を含む JSON 本体を送ってください。有限数の非空配列です。 エイリアス values・data・list も同じ挙動で受け付けます。成功時の応答には count(n)、ヒンジ用の昇順ソートコピー numbers、標本の min と max、q1・q2・q3、q2 の別名 median、q3 マイナス q1 の iqr、一点五倍の lower_fence と upper_fence、fence_k(一点五)、用いたヒンジ規約を示す method(tukey_exclusive)、フェンス外の標本値のソートリスト outliers、その長さ outlier_count が含まれます。検証失敗—numbers 欠落、空リスト、非有限要素、十万超—は invalid_input を返し課金されません。料金は成功リクエストあたり固定の $0.002 で、単位は item、限界単価は零です。
実務のヒント、制限、関連検索
対話的な Worker とブラウザ経路を速く保つため、リストは公開サイズ上限内に収めてください。極端に大きい大きさはヒンジ算術を有限 IEEE 浮動小数点の外へ押し出すことがあり、その場合ハンドラは無限大ではなく invalid_input を返します。invalid_input を返す失敗タスクは前払い残高を消費せず、学生が誤って空配列を打っても探索スクリプトを安く保てます。複数ツールを継ぐより、生リストを一度送り一つの応答からQ1・Q2・Q3・IQRと両フェンスを読む方がよく、契約は一つ、課金単位は一つ、ブラウザとAPIで同一結果です。
連携の活用例
宿題・試験の解答キー
短い数値標本を学生に渡し、手計算のQ1・Q2・Q3・IQRとフェンスを決定的なブラウザまたはAPI結果と照合します。
技術的な質問
この四分位数・IQR計算は何を返しますか?
非空リストに対し count、ソート済み numbers、min、max、q1、q2、q3(と q2 の別名 median)、iqr、lower_fence、upper_fence、fence_k、method、outliers、outlier_count を返します。
リストが空の場合はどうなりますか?
空リストは invalid_input で拒否されます。無から四分位はなく、検証失敗は課金されません。
四分位数計算は無料ですか?
ブラウザツールは無料でローカル実行です。API 呼び出しは成功リクエストあたり $0.002 の前払い KIT 残高を使い、失敗タスクは課金されません。