#| BUGS book, 3.3.2 in Racket Gamble. Example 3.3.2 Surgery (continued): beta-binomial analysis using BUGS var : p_crit #f: 0.5850000000000004 #t: 0.4150000000000003 mean: 0.4150000000000003 Min: 0 Mean: 0.44 Max: 1 Variance: 0.2464 Stddev: 0.4963869458396343 Credible interval (0.84): 0..1 var : y_pred 0: 0.2950000000000002 1: 0.2900000000000002 2: 0.22400000000000017 3: 0.10800000000000007 4: 0.05400000000000002 5: 0.01799999999999999 6: 0.007999999999999995 8: 0.0019999999999999987 7: 0.0009999999999999994 mean: 1.4390000000000007 Min: 0 Mean: 1.528 Max: 7 Variance: 2.139216 Stddev: 1.4626058936022375 Credible interval (0.84): 0..3 var : theta 0.11358878049205051: 0.0009999999999999994 0.2044581574146713: 0.0009999999999999994 0.03559794917668811: 0.0009999999999999994 0.09538904980935774: 0.0009999999999999994 0.023888109644223086: 0.0009999999999999994 0.14115320693653635: 0.0009999999999999994 0.06753741906450797: 0.0009999999999999994 0.0914887633211163: 0.0009999999999999994 0.0651717446685267: 0.0009999999999999994 0.0556042259094008: 0.0009999999999999994 0.056270702337000496: 0.0009999999999999994 0.08012999711622149: 0.0009999999999999994 0.03221692824899702: 0.0009999999999999994 0.04946764613231722: 0.0009999999999999994 0.060797802307496734: 0.0009999999999999994 ... 0.010547518854914352: 0.0009999999999999994 0.03640752092362645: 0.0009999999999999994 0.04242600842765503: 0.0009999999999999994 0.05705981955277175: 0.0009999999999999994 0.07008151787016471: 0.0009999999999999994 0.07591665245329911: 0.0009999999999999994 0.050485341509400684: 0.0009999999999999994 0.044794708702821755: 0.0009999999999999994 0.1386426607793571: 0.0009999999999999994 0.05183508392111952: 0.0009999999999999994 0.05957614898765729: 0.0009999999999999994 0.10093068159790196: 0.0009999999999999994 0.0884172841474261: 0.0009999999999999994 0.040899588765462035: 0.0009999999999999994 0.0502601564597627: 0.0009999999999999994 mean: 0.07465483246394995 Min: 0.005793805261303277 Mean: 0.07665855066080236 Max: 0.2547678006621886 Variance: 0.0016365676361203279 Stddev: 0.040454513173690865 Credible interval (0.84): 0.01793537221166915..0.12315574171372284 This program was created by Hakan Kjellerstrand, hakank@gmail.com See also my Racket page: http://www.hakank.org/racket/ |# #lang gamble (require racket) (require "gamble_utils.rkt") (define (bugs-book-3-3-2) (rejection-sampler ; importance-sampler ; mh-sampler (define a 3) (define b 27) (define n 10) (define n_pred 20) (define n_crit 2) (define theta (beta a b)) (define y (binomial n theta)) (define y_pred (binomial n_pred theta)) (define p_crit (> (+ y_pred 0.5) n_crit)) ;; toReal(y_pred - n_crit) + 0.5 > 0.0; (observe/fail y 0) (list p_crit y_pred theta) ) ) (show-marginals (bugs-book-3-3-2) (list "p_crit" "y_pred" "theta") #:truncate-output 15 #:show-stats? #t #:credible-interval 0.84 )