2つの事象のうち1つだけが起こる確率計算ツール
2つの事象のうち1つだけが起こる確率計算ツールは、事象Aが起こってBが起こらない場合、またはBが起こってAが起こらない場合の確率を求めます。P(A)、P(B)、共通部分P(AかつB)を、ゼロから1までの小数で入力してください。両方の確率から共通する結果を除き、AだけとBだけの確率を表示して合計します。指定された共通部分を用いるため、事象が従属、独立、重複、排反のいずれであっても、関係を勝手に仮定せず計算できます。
無料で実行
1つだけが起こるという意味を理解する
1つだけが起こるとは、Aが起こってBが起こらない、またはBが起こってAが起こらないことです。どちらも起こらない結果と、両方が同時に起こる結果は含みません。ベン図では、求める領域は2つの円が重ならない左右の部分であり、中央の共通部分ではありません。まずP(A)からP(AかつB)を引くとP(Aのみ)が得られます。同様にP(B)から共通部分を引くとP(Bのみ)が得られます。この2つの排他的な領域は重ならないため、最後に確率を足せます。まとめると、式はP(ちょうど一方) = P(A) + P(B) − 2 × P(AかつB)です。共通部分を2回引くのは、それぞれの周辺確率に1回ずつ含まれている一方、答えには一度も含めてはならないためです。少なくとも一方が起こる確率では共通部分を1回だけ引いて残すので、計算が異なります。このツールは、片方が起こり、両方ではないという厳密な確率上の定義を採用しています。
有効な確率を入力して結果を読み取る
3つの入力値はすべて、ゼロ以上1以下の有限な小数で指定してください。六十パーセントは0.6、五パーセントは0.05と入力し、パーセント記号や整数の百分率は入力しません。共通部分は、2つの周辺確率と同じ実験、母集団、期間において両方の事象が起こる確率でなければなりません。有効な共通部分はP(A)またはP(B)を超えません。共通する結果は各事象の内側に含まれるからです。また、P(AまたはB)が1を超えるほど小さい値にもできません。計算ツールは、成立しない組み合わせからもっともらしい数値を返すのではなく、これらの規則を検査します。応答には受理した入力、P(Aのみ)、P(Bのみ)、P(ちょうど一方)、式が表示されます。P(A)が0.6、P(B)が0.5、P(AかつB)が0.2なら、P(Aのみ)は0.4、P(Bのみ)は0.3で、合計は0.7です。境界値も有効です。結果がゼロなら一方だけに属する結果がなく、1なら必ずちょうど一方が起こります。
隠れた仮定を置かず、与えられた共通部分を使う
この計算では、AとBが独立である必要はありません。独立性が確認されていればP(A) × P(B)から共通部分を導けますが、この機能はP(AかつB)を直接受け取ります。表、実験、調査、モデル、問題文に示された共通部分を使用してください。また、2つの事象が本当に同時発生しない場合を除き、共通部分をゼロにしないでください。実際には重なりがあるのにゼロとすると、共有される結果を両方の排他的領域へ誤って割り当てるため、ちょうど一方の確率が過大になります。自動処理の前に、3つの値が同じ分母と事象定義を使っていることをご確認ください。月間リスクと年間リスク、または異なる母集団の比率は、それぞれがゼロから1の範囲でも有意な組み合わせにはなりません。結果はアンケートの分類、信頼性研究、医療検査の要約、品質管理、学習課題に活用できますが、定義された事象だけを表し、因果関係や依存関係を推定しません。この決定的計算は外部データ、ネットワーク、乱数、推定を使用しません。ブラウザーでは無料で利用でき、自動化したAPIリクエストは1回あたり$0.002です。同じ入力からは常に同じ出力が得られます。
活用例
アンケート回答者を分類する
2つの選択率と重複率が分かっているとき、片方だけを選んだ回答者の割合を求めます。
排他的なリスクを計算する
2つの条件を独立と仮定せず、そのうち1つだけが起こる可能性を測定します。
確率問題の答えを確認する
排他的な事象の式を適用し、AのみとBのみの成分を個別に確認できます。
よくある質問
2つの事象のうち1つだけが起こる確率の式は何ですか?
P(ちょうど一方) = P(A) + P(B) − 2 × P(AかつB)を使用します。
共通部分を2回引くのはなぜですか?
共通部分はP(A)とP(B)に1回ずつ含まれますが、両方が起こる結果は完全に除外する必要があるためです。
AとBは独立でなければなりませんか?
いいえ。入力された共通部分を使用するため、独立性は仮定しません。
確率がゼロから1の範囲外の場合はどうなりますか?
確率はゼロ未満または1より大きくできないため、無効な入力としてエラーを返します。
APIでの計算料金はいくらですか?
API料金は1回のリクエストにつき$0.002です。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/stat/probability-exactly-one \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"p_a":0.6,"p_b":0.5,"p_a_and_b":0.2}'const res = await fetch("https://api.kit.forhosting.com/stat/probability-exactly-one", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"p_a": 0.6,
"p_b": 0.5,
"p_a_and_b": 0.2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/probability-exactly-one",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"p_a": 0.6,
"p_b": 0.5,
"p_a_and_b": 0.2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/probability-exactly-one", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"p_a":0.6,"p_b":0.5,"p_a_and_b":0.2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"p_a":0.6,"p_b":0.5,"p_a_and_b":0.2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/probability-exactly-one", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"p_a": 0.6,
"p_b": 0.5,
"p_a_and_b": 0.2
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.probability_exactly_one",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |