- 876 名前:arameter 関数:
指定された信頼区間 [L, U] に、指定された信頼度 credMass(例: 95%)の確率質量を持つ ベータ分布のパラメータ α, β を算出する。 *) betaParameter[L_: 1/7, U_: 1/5, credMass_: 0.95] := Module[ {α, β}, (* f[α] は、PDF[BetaDistribution[α, β], L] == PDF[BetaDistribution[α, β], U] を満たすように β を α に基づいて算出する関数。 *) f[α_] := 1 + ((α - 1) * Log[U / L]) / Log[(1 - L) / (1 - U)]; (* g[α] は、ベータ分布 Beta[α, f[α]] の区間 [L, U] に 含まれる確率(CDFの差)を返す関数。 *) g[α_] := CDF[BetaDistribution[α, f[α]], U] - CDF[BetaDistribution[α, f[α]], L]; (* g[α] = credMass を満たす α を数値的に求める *) α = α /. FindRoot[g[α] == credMass, {α, 1, 1*^5}]; (* 対応する β を算出 *) β = f[α]; (* 結果を返す *) {α, β} ] (* 関数を実行して α, β を取得 *) {α, β} = betaParameter[] (* g[α] を評価して、[L, U] に credMass の質量があることを確認 *) g[α] [] - [ここ壊れてます]
|

|