Bayesian Statistics - William M. Bolstad(2판) 16장


viewimage.php?id=29b8d536b4&no=24b0d769e1d32ca73fe787fa1bd62531549b8405571e3d98064c1c8058d7ce51945d80fcb5addbaad0d919d8daafdee8fedb7c6fe4ce3d03968d3e1a1ee6d68349




#혼합분포

x=seq(0,0.99,0.05)

n=100

y=25

w1=0.95

w2=1-w1


#사전분포 후보1

a1=14.4

b1=9.6

A1=(x^(a1-1))*((1-x)^(b1-1))

B1=(x^y)*((1-x)^(n-y))

C1=A1*B1

sumC1 = sum(C1)

D1=choose(n,y)

N1=gamma(a1+b1)/(gamma(a1)*gamma(b1))

res1=w1*N1*D1*sumC1



#사전분포 후보2

a2=1

b2=1

A2=(x^(a2-1))*((1-x)^(b2-1))

B2=(x^y)*((1-x)^(n-y))

C2=A2*B2

sumC2 = sum(C2)

D2=choose(n,y)

N2=gamma(a2+b2)/(gamma(a2)*gamma(b2))

res2=w2*N2*D2*sumC2


tot = res1+res2

tot

res1/tot

res2/tot


#검산

check1 = w1*(gamma(a1+b1)/(gamma(a1)*gamma(b1)))*choose(n,y)*((gamma(a1+y)*gamma(b1+n-y))/gamma(a1+b1+n))

check2 = w2*(gamma(a2+b2)/(gamma(a2)*gamma(b2)))*choose(n,y)*((gamma(y+1)*gamma(n-y+1))/gamma(n+2))

t=check1+check2

t

check1/t

check2/t