ベイズの定理を r に適用する方法


ベイズの定理は、 2 つのイベントABについて次のように述べています

P(A|B) = P(A)*P(B|A) / P(B)

金:

  • P(A|B): イベント B が与えられた場合にイベント A が発生する確率。
  • P(B|A): イベント A が発生した場合に、イベント B が発生する確率。
  • P(A): イベント A の確率。
  • P(B): イベント B の確率。

たとえば、天気が曇りである確率が 40% であるとします。また、特定の日に雨が降る確率が 20%、雨の日に雲が発生する確率が 85% であると仮定します。

特定の日に外が曇っている場合、その日に雨が降る確率はどれくらいですか?

解決策:

  • P(曇り) = 0.40
  • P(雨) = 0.20
  • P(曇り | 雨) = 0.85

したがって、次のように計算できます。

  • P(雨 | 曇り) = P(雨) * P(曇り | 雨) / P(曇り)
  • P(雨 | 曇り) = 0.20 * 0.85 / 0.40
  • P(雨 | 曇り) = 0.425

特定の日に外が曇りの場合、その日に雨が降る確率は42.5%です。

R でベイズの定理を適用する次の単純な関数を作成できます。

 bayesTheorem <- function (pA, pB, pBA) {
  pAB <- pA * pBA / pB
  return (pAB)
}

次の例は、この関数を実際に使用する方法を示しています。

例: R のベイズの定理

次の確率がわかっているとします。

  • P(雨) = 0.20
  • P(曇り) = 0.40
  • P(曇り | 雨) = 0.85

P(雨 | 曇り) を計算するには、次の構文を使用できます。

 #define function for Bayes' Theorem
bayesTheorem <- function (pA, pB, pBA) {
  pAB <- pA * pBA / pB
  return (pAB)
}

#define probabilities
pRain <- 0.2
pCloudy <- 0.4
pCloudyRain <- .85

#use function to calculate conditional probability
bayesTheorem(pRain, pCloudy, pCloudyRain)

[1] 0.425

これは、特定の日に外が曇っている場合、その日に雨が降る確率は0.425または42.5%であることを示しています。

これは、以前に手動で計算した値と一致します。

追加リソース

次のチュートリアルでは、R で他の確率を計算する方法を説明します。

R で条件付き確率を計算する方法
R で条件付き平均を計算する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です