Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import matplotlib.pyplot as plt
- n = 10
- p = 0.5
- values = list(range(n+1))
- #print(values)
- def fact(n):
- mul = 1
- for i in range(1,n+1):
- mul*=i
- return mul
- def nCr(n,r):
- return (int) (fact(n) ) / ( fact(r) * fact(n-r) )
- #print(nCr(5,2))
- def PMF(r, n):
- cur = nCr(n,r) * pow(p,r) * pow(1-p,n-r)
- return cur
- dist = [PMF(r,n) for r in values]
- width = 0.8
- plt.bar(values,dist,width)
- plt.xlabel('Binomial')
- plt.ylabel('Frequency')
- plt.show()
- cdfs = []
- sum = 0.0
- for i in range(0,n+1):
- sum+=PMF(i,n)
- cdfs.append(sum)
- plt.scatter(values,cdfs)
- plt.plot(values,cdfs)
- plt.xlabel('Binomial')
- plt.ylabel('cdf val')
- plt.show()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement