Skip to content

Instantly share code, notes, and snippets.

@tanishiking
Last active May 10, 2016 15:20
Show Gist options
  • Save tanishiking/4d460d07ea554f5f939a69455c572abf to your computer and use it in GitHub Desktop.
Save tanishiking/4d460d07ea554f5f939a69455c572abf to your computer and use it in GitHub Desktop.
import numpy as np
import matplotlib
from math import sqrt
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt
def binomial_to_normal(samples, trials, probability, bins=50):
data = []
for i in range(samples):
vals = np.random.binomial(trials, probability, samples)
data.append(np.sum(vals) / sqrt(samples) / np.std(vals))
plt.hist(data, bins, normed=True)
plt.show()
def poisson_to_normal(samples, lambda_num, bins=50):
data = []
for i in range(samples):
vals = np.random.poisson(lambda_num, samples)
data.append(np.sum(vals) / sqrt(samples) / np.std(vals))
plt.hist(data, bins, normed=True)
plt.show()
def main():
samples = 5000
trials = 200
prob = 0.4
poisson_to_normal(samples, 50, 40)
binomial_to_normal(samples, trials, prob, 50)
if __name__ == '__main__':
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment