{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Chapter 5: Continuous Random Variables\n", " \n", "This Jupyter notebook is the Python equivalent of the R code in section 5.9 R, pp. 253 - 255, [Introduction to Probability, Second Edition](https://www.crcpress.com/Introduction-to-Probability-Second-Edition/Blitzstein-Hwang/p/book/9781138369917), Blitzstein & Hwang.\n", "\n", "----" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Python, SciPy and Matplotlib\n", "\n", "In this section we will introduce continuous distributions in Python and SciPy, learn how to make basic plots, demonstrate the universality of the Uniform by simulation, and simulate arrival times in a Poisson process." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Uniform, Normal, and Exponential distributions \n", "\n", "For [continuous distributions in `scipy.stats`](https://docs.scipy.org/doc/scipy/reference/tutorial/stats/continuous.html), the `pdf` function gives the PDF, the `cdf` function gives the CDF, and the `rvs` function generates random numbers from the continuous distribution. This is in keeping with the application programming interface of the [discrete statistical distributions in `scipy.stats`](https://docs.scipy.org/doc/scipy/reference/tutorial/stats/discrete.html). Thus, we have the following functions: \n", "\n", "### Uniform\n", "[`scipy.stats.uniform`](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.uniform.html#scipy.stats.uniform) provides functions for Uniform continuous random variables. \n", "* To evaluate the $Unif(a, b)$ PDF at $x$, we use `uniform.pdf(x, a, b)`. \n", "* For the CDF, we use `uniform.cdf(x, a, b)`. \n", "* To generate $n$ realizations from the $Unif(a, b)$ distribution, we use `uniform.rvs(a, b, size=n)`. " ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "PDF of Unif(0, 4) evaluated at 3 is 0.25\n", "\n", "CDF of Unif(0, 4) evaluated at 3 is 0.75\n", "\n", "Generating 10 realizations from Unif(0, 4):\n", "[3.24085002 2.48793265 0.69337744 3.98212677 3.53906749 0.19890551\n", " 3.30252222 2.37991343 1.42342695 1.92222338]\n" ] } ], "source": [ "# seed the random number generator\n", "np.random.seed(1597)\n", "\n", "from scipy.stats import uniform\n", "\n", "# to learn more about scipy.stats,uniform un-comment ouf the following line\n", "#print(uniform.__doc__)\n", "\n", "a = 0\n", "b = 4\n", "x = 3\n", "n = 10\n", "\n", "print('PDF of Unif({}, {}) evaluated at {} is {}\\n'.format(a, b, x, uniform.pdf(x, a, b)))\n", "\n", "print('CDF of Unif({}, {}) evaluated at {} is {}\\n'.format(a, b, x, uniform.cdf(x, a, b)))\n", "\n", "print('Generating {} realizations from Unif({}, {}):\\n{}'.format(n, a, b, uniform.rvs(a, b, size=n)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Normal\n", "[`scipy.stats.norm`](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.norm.html#scipy.stats.norm) provides functions for normal continuous random variables. \n", "\n", "* To evaluate the $N(\\mu, \\sigma^2)$ PDF at $x$, we use `norm.pdf(x, loc, scale)`, where the parameter `loc` corresponds to $\\mu$ and `scale` corresponds to standard deviation $\\sigma$ (and **not** variance $\\sigma^2$).\n", "* For the CDF, we use `norm.cdf(x, loc, scale)`. \n", "* To generate $n$ realizations from the $N(\\mu, \\sigma^2)$ distribution, we use `norm.rvs(loc, scale, size=n)`. " ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "PDF of N(0.0, 2.0) evaluated at 1.5 is 0.15056871607740221\n", "\n", "CDF of N(0.0, 2.0) evaluated at 1.5 is 0.7733726476231317\n", "\n", "Generating 10 realizations from N(0.0, 2.0):\n", "[-4.56890553 1.4163793 -0.72812069 1.80610792 -1.5542524 0.4551897\n", " -1.82794816 1.58959742 -3.26902153 -2.71002864]\n" ] } ], "source": [ "np.random.seed(2584)\n", "\n", "from scipy.stats import norm\n", "\n", "# to learn more about scipy.stats,norm un-comment ouf the following line\n", "#print(norm.__doc__)\n", "\n", "mu = 0.0\n", "sigma = 2.0\n", "x = 1.5\n", "\n", "print('PDF of N({}, {}) evaluated at {} is {}\\n'.format(mu, sigma, x, norm.pdf(x, mu, sigma)))\n", "\n", "print('CDF of N({}, {}) evaluated at {} is {}\\n'.format(mu, sigma, x, norm.cdf(x, mu, sigma)))\n", "\n", "print('Generating {} realizations from N({}, {}):\\n{}'.format(n, mu, sigma, norm.rvs(mu, sigma, size=n)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "☣ 5.9.1 (Normal parameters in `scipy.stats.norm`). Note that we have to input the standard deviation for the `scale` parameter value, not the variance! For example, to get the $N(10, 3)$ CDF at 12, we use`norm.cdf(12, 10, np.sqrt(3))`. Ignoring this is a common, disastrous coding error." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "N(10, 1.7320508075688772) CDF at 12 is 0.8758934605050381\n" ] } ], "source": [ "loc = 10\n", "var = 3\n", "scale = np.sqrt(var)\n", "x = 12\n", "\n", "ans = norm.cdf(x, loc, scale)\n", "\n", "print('N({}, {}) CDF at {} is {}'.format(loc, scale, x, ans))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exponential\n", "[`scipy.stats.expon`](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.expon.html#scipy.stats.expon) provides functions for exponential continuous random variables. The probability density function for $Expo(\\lambda)$ is:\n", "\n", "\\begin{align}\n", " f(x) &= e^{-x}\n", "\\end{align}\n", "\n", "\n", "The probability density is defined in the “standardized” form. To shift and/or scale the distribution use the `loc` and `scale` parameters. Specifically, `expon.pdf(x, loc, scale)` is identically equivalent to `expon.pdf(y) / scale` with `y = (x - loc) / scale`.\n", "\n", "* To evaluate the $Expo(\\lambda)$ PDF at $x$, we use `expon.pdf(x, scale=1/lambda)`, where the $\\lambda$ corresponds to `scale=1/lambd`.\n", "* For the CDF, we use `expon.cdf(x, scale=1/lambd)`. \n", "* To generate $n$ realizations from the $Expo(\\lambda)$ distribution, we use `expon.rvs(scale=1/lambd, size=n)`." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "PDF of Expo(2.1) evaluated at 5 is 5.782654363446904e-05\n", "\n", "CDF of Expo(2.1) evaluated at 5 is 0.9999724635506503\n", "\n", "Generating 10 realizations from Expo(2.1):\n", "[0.44907946 0.77554149 1.469014 0.15728342 0.92258566 0.54294386\n", " 0.80347768 0.23157762 0.34759354 1.03891708]\n", "\n" ] } ], "source": [ "np.random.seed(4181)\n", "\n", "from scipy.stats import expon\n", "\n", "# to learn more about scipy.stats,expon un-comment ouf the following line\n", "#print(expon.__doc__)\n", "\n", "lambd = 2.1\n", "x = 5\n", "\n", "expon.pdf(x, scale=1/lambd)\n", "\n", "print('PDF of Expo({}) evaluated at {} is {}\\n'.format(lambd, x, expon.pdf(x, scale=1/lambd)))\n", "\n", "print('CDF of Expo({}) evaluated at {} is {}\\n'.format(lambd, x, expon.cdf(x, scale=1/lambd)))\n", "\n", "print('Generating {} realizations from Expo({}):\\n{}\\n'.format(n, lambd, expon.rvs(scale=1/lambd, size=n)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Due to the importance of location-scale transformations for continuous distributions, SciPy has default parameter settings for each of these three families. The default for the Uniform [`scipy.stats.uniform`](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.uniform.html#scipy.stats.uniform) is `loc=0, scale=1`, the default for the Normal [`scipy.stats.norm`](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.norm.html#scipy.stats.norm) is `loc=0, scale=1`, and the default for the Exponential [`scipy.stats.expon`](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.expon.html#scipy.stats.expon) is `loc=0, scale=1`.\n", "\n", "For example, `uniform.pdf(0.5)`, with no additional inputs, evaluates the $Unif(0, 1)$ PDF at 0.5." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1.0" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "uniform.pdf(0.5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`norm.rvs(size=10)`, with no additional inputs, generates 10 realizations from the $N (0, 1)$ distribution." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([ 0.79839927, -0.69769073, 0.34055804, -0.22043838, 0.79782274,\n", " -2.60292799, -1.53866926, 0.93084378, 0.81590117, -0.42043989])" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "norm.rvs(size=10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This means there are two ways to generate a $N(\\mu, \\sigma^2)$ random variable in SciPy. After choosing our values of $\\mu$ and $\\sigma$," ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "mu = 1\n", "sigma = 2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "we can do either of the following:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "norm.rvs(mu, sigma, size=1) = [1.99342831]\n", "mu + sigma * norm.rvs(size=1) = [1.99342831]\n" ] } ], "source": [ "ans1 = norm.rvs(mu, sigma, size=1, random_state=42)\n", "ans2 = mu + sigma * norm.rvs(size=1, random_state=42)\n", "\n", "print('norm.rvs(mu, sigma, size=1) = {}'.format(ans1))\n", "print('mu + sigma * norm.rvs(size=1) = {}'.format(ans2))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Either way, we end up generating a draw from the $N(\\mu, \\sigma^2)$ distribution." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Plots in Matplotlib\n", "\n", "Plotting in Python within a Jupyter notebook is done in [Matplotlib](https://matplotlib.org/). \n", "\n", "First, we import `matplotlib.pyplot` module. To cut down on typing, we can alias that imported `matplotlib.pyplot` module reference as `plt` for short. We then invoke the `%matplotlib inline%` Jupyter notebook magic command in order to create Matplotlib graphs right in your notebook." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here is how we can create a plot of the standard Normal PDF from −3 to 3 using Matplotlib in Jupyter notebook.\n", "\n", "[`numpy.linspace`](https://docs.scipy.org/doc/numpy-1.15.0/reference/generated/numpy.linspace.html) creates an evenly-spaced numerical sequence, ranging from `start` to `stop`. The third function parameter `num` lets you specify how many numbers in the sequence to generate. \n", "\n", "We use `numpy.linspace(-3, 3, 1000)` to generate 1000 numbers ranging from -3 to 3 as our `x` values in the graph; with 1000 values in the sequence, the curve looks very smooth. If we were to choose `num=20`, the piecewise linearity would become very apparent." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "x = np.linspace(-3, 3, 1000)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can then call `norm.pdf(x)` to generate the `y` values in the graph, and pass both the `x` and `y` values to [`matplotlib.pyplot.plot`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.plot.html). This will render a graph of $N(0,1)$ from -3 to 3. `pyplot.show` will display the graph." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nQmCC\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(x, norm.pdf(x))\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Alternately, we could \"freeze\" an instance of the `scipy.stats.norm` distribution object to fix the shape, location and scale parameters. This might be useful if you are working with multiple distributions with differing shape, location and scale, and wanted to use these distributions throughout your notebook." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "rv1 = norm(0, 1)\n", "rv2 = norm(0.5, 1)\n", "rv3 = norm(1, 1)\n", "\n", "plt.plot(x, rv1.pdf(x), label='norm(0, 1)')\n", "plt.plot(x, rv2.pdf(x), label='norm(0.5, 1)')\n", "plt.plot(x, rv3.pdf(x), label='norm(1, 1)')\n", "\n", "plt.legend()\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can also set the axis labels and plot title with [`pyplot.xlabel`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.xlabel.html), [`pyplot.ylabel`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.ylabel.html), and [`pyplot.title`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.title.html) functions." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nGGOMT/8fkODAHeiH40wAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "rv = norm()\n", "plt.plot(x, rv.pdf(x))\n", "\n", "plt.xlabel('x')\n", "plt.ylabel('norm.pdf(x)')\n", "plt.title('Standard Normal PDF')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The axis limits can be set manually with [`pyplot.xlim`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.xlim.html) and [`pyplot.ylim`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.ylim.html) If, for example, you wanted the vertical axis to range from 0 to 1, you would follow the call to `pyplot.plot` with `pyplot.ylim([0, 1])`." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(x, rv.pdf(x))\n", "plt.ylim([0, 1])\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Finally, to change the color of the plot, add `color=\"orange\"` or `color=\"green\"`, or whatever your favorite color is! (see [Specifying Colors](https://matplotlib.org/users/colors.html) in the Matplotlib documentation)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(x, rv.pdf(x), color='orange')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Universality with Logistic\n", "\n", "We proved in Example 5.3.4 that for $U \\sim Unif(0, 1)$, the r.v. $log\\left(\\frac{U}{1−U}\\right)$ follows a Logistic distribution. In SciPy and `uniform.rvs`, we can simply generate a large number of $Unif(0, 1)$ realizations and transform them." ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([ 2.0197625 , -0.72108035, -1.86938026, ..., -1.2638552 ,\n", " 1.8532956 , 1.46624836])" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "u = uniform.rvs(size=10**4)\n", "x = np.log(u/(1-u))\n", "x" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now `x` contains 104 realizations from the distribution of $log\\left(\\frac{U}{1−U}\\right)$. We can visualize them with a histogram, using [`matplotlib.hist`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.hist.html). The histogram resembles a Logistic PDF, which is reassuring. To control how fine-grained the histogram is, we can set the number of bins in the histogram via the `bins` parameter (the 2nd parameter passed into `pyplot.hist`: `hist(x, 100)` produces a finer histogram, while `hist(x, 10)` produces a coarser histogram.\n", "\n", "To illustrate, we will generate two graphs side-by-side with [`pyplot.figure`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.figure.html), and use a [`pyplot.subplot`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.subplot.html) for each graph." ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAz0AAAF1CAYAAADC/IRdAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvqOYd8AAAIABJREFUeJzt3X+w3XV95/HnqwS1W60EiTQmaLDG\nrtpZkc0iu253KCg/3Ya22sXp1tQym3YKMzrarbF1i1XZidtWt24t3VhSQ8cK1B8lC1iNKGudWZBo\nIRLRJWKU20SSFkRZVrbQ9/5xPpceL+cmJ8k959zzzfMxc+Z8v5/v55z7Pt97bz553c/3R6oKSZIk\nSeqqH5h0AZIkSZI0SoYeSZIkSZ1m6JEkSZLUaYYeSZIkSZ1m6JEkSZLUaYYeSZIkSZ1m6FFnJdmd\n5OUD2n8iyVcnUZMkSfNx3JJGx9Cjo05V/VVV/di4vl6SS5NsT/JIkg8M2H5Wkq8keTjJZ5I8p2/b\nk5NsTvKdJN9K8sZx1S1JWhymadySFitDjzR6e4B3ApvnbkhyAvBR4D8BxwPbgWv6urwNWA08B/hJ\n4NeTnDvieiVJR7cjGbekRcnQo677F0m+nOSBJH+S5ClJzkgyM9uhHU7wa0l2JHkwyTVJntK2nZDk\n+iTfTnJ/kr9Kcki/N1X10ar6C+DvBmz+GWBnVf15VX2PXsh5cZJ/2ra/FnhHVT1QVXcB7wd+8ZD3\ngiRpWkz7uCUtSoYedd3PA+cAPwo8H3jrPP1+DjgXOBn4Z/xjsHgTMAMsA04EfgMogL5BZdDj+iHr\nexFwx+xKVf0f4GvAi5IsBZ7Vv70tv2jI95YkTZ+pHbeG/4jS+C2ZdAHSiP1BVd0LkORy4L8BnxrQ\n771Vtaf1+x/AKa3974HlwHOqahfwV7MvqKpXLkB9TwX2z2l7EHha2za7PnebJKmbpnnckhYtZ3rU\ndff2LX+D3szJIN/qW36YfwwcvwPsAj6Z5J4kGxa4voeAH57T9sPAd9s25myf3SZJ6qZpHrekRcvQ\no647qW/52fROzhxaVX23qt5UVc8F/i3wxiRnAST5eJKH5nl8fMgvsRN48exKkh+id0jDzqp6ANjb\nv70t7zyUzyBJmipTO24dSp3SuBl61HWXJFmZ5Hh6xzUf0hVmkrwyyfOSBPgO8Fh7UFXnVdVT53mc\n1/ceS9oJpscAx7STUmcPLf0Y8ONJfrb1+S1gR1V9pW2/CnhrkqXtJNH/AHzgcHeGJGnRm/ZxS1qU\nDD3quj8DPgnc0x7vPMTXr6Z3LPVDwP8C/rCqbj7E93gr8H+BDcC/b8tvBaiq/cDPApcDDwAvBS7q\ne+1l9E4Q/QbwP4Hfqaq/PMSvL0maHtM+bkmLUqpq0jVIkiRJ0sg40yNJkiSp0ww9kiRJkjrN0CNJ\nkiSp0ww9kiRJkjrN0CNJkiSp05YcvMvonXDCCbVq1apJlyFJR7UvfOELf1tVyyZdx2LkOCVJk3ck\n49SiCD2rVq1i+/btky5Dko5qSb4x6RoWK8cpSZq8IxmnPLxNkiRJUqcZeiRJkiR1mqFHkiRJUqcZ\neiRJkiR1mqFHkiRJUqcZeiRJkiR1mqFHkiRJUqcZeiRJkiR1mqFHkiRJUqcZeiRJkiR1mqFHkiRJ\nUqcZeiRJkiR1mqFHkiRJUqctmXQB0rRateGG71vfvfGCCVUiSVrs5o4Zk+A4paOZMz2SJEmSOs3Q\nI0mSJKnTDD2SJEmSOs3QI0mSJKnTDD2SJEmSOs3QI0mSJKnTDD2SJEmSOs3QI0mSJKnTDD2SJEmS\nOs3QI0mSJKnTDD2SJEmSOs3QI0mSJKnTlky6AGmxW7XhhseXd2+8YIKVSJIk6XAYeqQB+oOOJEmS\nppuHt0mSpkKSpyT5fJI7kuxM8tut/QNJvp7k9vY4pbUnyXuT7EqyI8mpfe+1Lsnd7bFuUp9JkjQe\nzvRIkqbFI8CZVfVQkmOBzyX5eNv2H6vqw3P6nwesbo+XAlcAL01yPHAZsAYo4AtJtlbVA2P5FJKk\nsXOmR5I0FarnobZ6bHvUAV6yFriqve4W4Lgky4FzgG1VdX8LOtuAc0dZuyRpsgw9kqSpkeSYJLcD\n++gFl1vbpsvbIWzvSfLk1rYCuLfv5TOtbb52SVJHeXibNGJe/U1aOFX1GHBKkuOAjyX5ceAtwLeA\nJwGbgDcDbwcy6C0O0P59kqwH1gM8+9nPXpD6JUmTYeiRJE2dqvp2kpuBc6vqd1vzI0n+BPi1tj4D\nnNT3spXAntZ+xpz2mwd8jU30QhRr1qw50GF00lSY9JVJ/cOfJsnQIx2CSQ8Y0tEsyTLg71vg+UHg\n5cC7kiyvqr1JAlwI3NleshW4NMnV9C5k8GDr9wngPydZ2vqdTW+2SJLUUYYeaYF4GJs0csuBLUmO\noXdO6rVVdX2ST7dAFOB24Fda/xuB84FdwMPA6wCq6v4k7wBua/3eXlX3j/FzSJLGzNAjSZoKVbUD\neMmA9jPn6V/AJfNs2wxsXtACJUmLlldvkyRJktRphh5JkiRJnWbokSRJktRphh5JkiRJnWbokSRJ\nktRphh5JkiRJnWbokSRJktRp3qdHGoH+G5VKkiRpspzpkSRJktRphh5JkiRJnWbokSRJktRphh5J\nkiRJneaFDCS88IAkSVKXOdMjSZIkqdMMPZIkSZI6zdAjSZIkqdMMPZIkSZI6zQsZSGM094IJuzde\nMKFKJEmSjh7O9EiSJEnqtKFDT5Jjkvx1kuvb+slJbk1yd5JrkjyptT+5re9q21eNpnRJkiRJOrhD\nmel5PXBX3/q7gPdU1WrgAeDi1n4x8EBVPQ94T+snSZIkSRMxVOhJshK4APjjth7gTODDrcsW4MK2\nvLat07af1fpLkiRJ0tgNO9PzX4FfB/6hrT8D+HZVPdrWZ4AVbXkFcC9A2/5g6/99kqxPsj3J9v37\n9x9m+ZIkSZJ0YAcNPUleCeyrqi/0Nw/oWkNs+8eGqk1Vtaaq1ixbtmyoYiVJkiTpUA1zyeqXAT+V\n5HzgKcAP05v5OS7JkjabsxLY0/rPACcBM0mWAE8H7l/wyiVJkiRpCAed6amqt1TVyqpaBVwEfLqq\nfh74DPCq1m0dcF1b3trWads/XVVPmOmRJEmSpHE4kvv0vBl4Y5Jd9M7ZubK1Xwk8o7W/EdhwZCVK\nkiRJ0uEb5vC2x1XVzcDNbfke4LQBfb4HvHoBapMkSZKkI3YkMz2SJEmStOgZeiRJkiR1mqFHkiRJ\nUqcZeiRJkiR1mqFHkiRJUqcZeiRJUyHJU5J8PskdSXYm+e3WfnKSW5PcneSaJE9q7U9u67va9lV9\n7/WW1v7VJOdM5hNJksblkC5ZLWlhrdpww+PLuzdeMMFKpKnwCHBmVT2U5Fjgc0k+Tu+ecO+pqquT\n/BFwMXBFe36gqp6X5CLgXcC/S/JCejfbfhHwLOBTSZ5fVY9N4kNJkkbPmR5J0lSonofa6rHtUcCZ\nwIdb+xbgwra8tq3Ttp+VJK396qp6pKq+DuxiwH3nJEndYeiRJE2NJMckuR3YB2wDvgZ8u6oebV1m\ngBVteQVwL0Db/iDwjP72Aa+RJHWQoUeSNDWq6rGqOgVYSW925gWDurXnzLNtvvbvk2R9ku1Jtu/f\nv/9wS5YkLQKGHknS1KmqbwM3A6cDxyWZPUd1JbCnLc8AJwG07U8H7u9vH/Ca/q+xqarWVNWaZcuW\njeJjSJLGxNAjSZoKSZYlOa4t/yDwcuAu4DPAq1q3dcB1bXlrW6dt/3RVVWu/qF3d7WRgNfD58XwK\nSdIkePU2SdK0WA5sSXIMvT/aXVtV1yf5MnB1kncCfw1c2fpfCfxpkl30ZnguAqiqnUmuBb4MPApc\n4pXbJKnbDD2SpKlQVTuAlwxov4cBV1+rqu8Br57nvS4HLl/oGiVJi5OHt0mSJEnqNEOPJEmSpE4z\n9EiSJEnqNEOPJEmSpE4z9EiSJEnqNEOPJEmSpE4z9EiSJEnqNEOPJEmSpE4z9EiSJEnqtCWTLkAa\np1Ubbnh8effGCyZYiSRJksbFmR5JkiRJnWbokSRJktRphh5JkiRJnWbokSRJktRphh5JkiRJnWbo\nkSRJktRphh5JkiRJneZ9enTU6r9njyRJkrrLmR5JkiRJneZMj7RI9M887d54wQQrkSRJ6hZneiRJ\nkiR1mqFHkiRJUqcZeiRJkiR1mqFHkiRJUqcZeiRJkiR1mqFHkiRJUqcZeiRJkiR1mqFHkiRJUqcZ\neiRJkiR1mqFHkiRJUqcZeiRJkiR1mqFHkiRJUqcZeiRJkiR1mqFHkjQVkpyU5DNJ7kqyM8nrW/vb\nkvxNktvb4/y+17wlya4kX01yTl/7ua1tV5INk/g8kqTxWTLpAiRJGtKjwJuq6otJngZ8Icm2tu09\nVfW7/Z2TvBC4CHgR8CzgU0me3za/D3gFMAPclmRrVX15LJ9CkjR2hh5J0lSoqr3A3rb83SR3ASsO\n8JK1wNVV9Qjw9SS7gNPatl1VdQ9AkqtbX0OPJHWUh7dJkqZOklXAS4BbW9OlSXYk2ZxkaWtbAdzb\n97KZ1jZf+9yvsT7J9iTb9+/fv8CfQJI0ToYeSdJUSfJU4CPAG6rqO8AVwI8Cp9CbCfq92a4DXl4H\naP/+hqpNVbWmqtYsW7ZsQWqXJE2Gh7dJkqZGkmPpBZ4PVtVHAarqvr7t7weub6szwEl9L18J7GnL\n87VLkjrImR5J0lRIEuBK4K6qendf+/K+bj8N3NmWtwIXJXlykpOB1cDngduA1UlOTvIkehc72DqO\nzyBJmgxneiRJ0+JlwC8AX0pye2v7DeA1SU6hd4jabuCXAapqZ5Jr6V2g4FHgkqp6DCDJpcAngGOA\nzVW1c5wfRJI0XoYeSdJUqKrPMfh8nBsP8JrLgcsHtN94oNdJkrrFw9skSZIkddpBQ0+SpyT5fJI7\n2h2wf7u1n5zk1iR3J7mmHRdNO3b6mnaX61vbZUUlSZIkaSKGmel5BDizql5M73Kg5yY5HXgXvTtg\nrwYeAC5u/S8GHqiq5wHvaf0kHYJVG254/CFJkqQjc9DQUz0PtdVj26OAM4EPt/YtwIVteW1bp20/\nq11xR5IkSZLGbqhzepIc066Usw/YBnwN+HZVPdq69N/N+vE7XbftDwLPWMiiJUmSJGlYQ4Weqnqs\nqk6hdwO304AXDOrWnoe603WS9Um2J9m+f//+YeuVJEmSpENySFdvq6pvAzcDpwPHJZm95HX/3awf\nvwN22/504P4B77WpqtZU1Zply5YdXvWSJEmSdBDDXL1tWZLj2vIPAi8H7gI+A7yqdVsHXNeWt7Z1\n2vZPV9UTZnokSZIkaRyGuTnpcmBLkmPohaRrq+r6JF8Grk7yTuCvgStb/yuBP02yi94Mz0UjqFuS\nJEmShnLQ0FNVO4CXDGi/h975PXPbvwe8ekGqkxaAl32WJEk6uh3SOT2SJEmSNG0MPZIkSZI6zdAj\nSZIkqdMMPZIkSZI6bZirt0maoP4LMezeeMEEK5EkSZpOzvRIkiRJ6jRDjyRJkqROM/RIkiRJ6jRD\njyRJkqROM/RIkiRJ6jRDjyRJkqROM/RIkiRJ6jRDjyRJkqROM/RIkiRJ6jRDjyRJkqROM/RIkiRJ\n6jRDjyRJkqROM/RIkiRJ6jRDjyRJkqROM/RIkiRJ6jRDjyRJkqROM/RIkiRJ6jRDjyRJkqROWzLp\nAqRRWLXhhkmXIGmBJTkJuAr4EeAfgE1V9ftJjgeuAVYBu4Gfq6oHkgT4feB84GHgF6vqi+291gFv\nbW/9zqraMs7PIkkaL2d6JEnT4lHgTVX1AuB04JIkLwQ2ADdV1WrgprYOcB6wuj3WA1cAtJB0GfBS\n4DTgsiRLx/lBJEnjZeiRJE2Fqto7O1NTVd8F7gJWAGuB2ZmaLcCFbXktcFX13AIcl2Q5cA6wraru\nr6oHgG3AuWP8KJKkMTP0SJKmTpJVwEuAW4ETq2ov9IIR8MzWbQVwb9/LZlrbfO1zv8b6JNuTbN+/\nf/9CfwRJ0hh5To+mVv95O7s3XjDBSiSNU5KnAh8B3lBV3+mdujO464C2OkD79zdUbQI2AaxZs+YJ\n2yVJ08PQo07wwgXS0SHJsfQCzwer6qOt+b4ky6tqbzt8bV9rnwFO6nv5SmBPaz9jTvvNo6xbkjRZ\nHt4mSZoK7WpsVwJ3VdW7+zZtBda15XXAdX3tr03P6cCD7fC3TwBnJ1naLmBwdmuTJHWUMz2SpGnx\nMuAXgC8lub21/QawEbg2ycXAN4FXt2030rtc9S56l6x+HUBV3Z/kHcBtrd/bq+r+8XwESdIkGHok\nSVOhqj7H4PNxAM4a0L+AS+Z5r83A5oWrTpK0mBl6pCky99wlL+AgSZJ0cJ7TI0mSJKnTDD2SJEmS\nOs3QI0mSJKnTDD2SJEmSOs3QI0mSJKnTDD2SJEmSOs3QI0mSJKnTDD2SJEmSOs3QI0mSJKnTDD2S\nJEmSOs3QI0mSJKnTDD2SJEmSOs3QI0mSJKnTlky6AEmHb9WGGx5f3r3xgglWIkmStHg50yNJkiSp\n0ww9kiRJkjrN0CNJkiSp0ww9kiRJkjrN0CNJkiSp0ww9kiRJkjrN0CNJkiSp0ww9kiRJkjrN0CNJ\nkiSp0ww9kiRJkjrtoKEnyUlJPpPkriQ7k7y+tR+fZFuSu9vz0taeJO9NsivJjiSnjvpDSJIkSdJ8\nhpnpeRR4U1W9ADgduCTJC4ENwE1VtRq4qa0DnAesbo/1wBULXrUkSZIkDemgoaeq9lbVF9vyd4G7\ngBXAWmBL67YFuLAtrwWuqp5bgOOSLF/wyiVJkiRpCId0Tk+SVcBLgFuBE6tqL/SCEfDM1m0FcG/f\ny2ZamyRJkiSN3dChJ8lTgY8Ab6iq7xyo64C2GvB+65NsT7J9//79w5YhSZIkSYdkqNCT5Fh6geeD\nVfXR1nzf7GFr7Xlfa58BTup7+Upgz9z3rKpNVbWmqtYsW7bscOuXJEmSpAMa5uptAa4E7qqqd/dt\n2gqsa8vrgOv62l/bruJ2OvDg7GFwkiRJkjRuw8z0vAz4BeDMJLe3x/nARuAVSe4GXtHWAW4E7gF2\nAe8HfnXhy5YkHW2SbE6yL8mdfW1vS/I3c8an2W1vabdP+GqSc/raz21tu5JsmPt1JEnds+RgHarq\ncww+TwfgrAH9C7jkCOuSJGmuDwB/AFw1p/09VfW7/Q3t1goXAS8CngV8Ksnz2+b30ftj3QxwW5Kt\nVfXlURYuSZqsg4YeSZIWg6r6bLuK6DDWAldX1SPA15PsAk5r23ZV1T0ASa5ufQ09ktRhh3TJakmS\n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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = plt.figure(figsize=(14, 6))\n", "\n", "ax1 = fig.add_subplot(121)\n", "ax1.hist(x, 100)\n", "ax1.set_title('bins=100')\n", "\n", "ax2 = fig.add_subplot(122)\n", "ax2.hist(x, 10)\n", "ax2.set_title('bins=10')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Poisson process simulation\n", "\n", "To simulate $n$ arrivals in a Poisson process with rate $\\lambda$, we first generate the interarrival times as i.i.d. Exponentials and store them in variable `x`:" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0.17627964 0.01902565 0.02146015 0.19802154 0.16173354 0.02476036\n", " 0.02394206 0.11207592 0.00051518 0.09787187 0.06122226 0.07313865\n", " 0.07720919 0.15936267 0.00195037 0.01965782 0.00122744 0.03186262\n", " 0.13671518 0.29913587 0.05325137 0.1329256 0.18825129 0.31339715\n", " 0.07390052 0.2792474 0.19905106 0.1237123 0.12739159 0.05063309\n", " 0.00787248 0.20327465 0.28319828 0.0039541 0.0084741 0.01842843\n", " 0.00354277 0.08189181 0.07338873 0.03824727 0.02011739 0.0211869\n", " 0.02824106 0.07150573 0.24463567 0.35755971 0.01220348 0.00555063\n", " 0.05732313 0.20553653]\n" ] } ], "source": [ "n = 50\n", "lambd = 10\n", "x = expon.rvs(scale=1/lambd, size=n)\n", "print(x)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then we convert the interarrival times into arrival times using the [`numpy.cumsum`](https://docs.scipy.org/doc/numpy-1.15.0/reference/generated/numpy.cumsum.html) function, which stands for \"cumulative sum\"." ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0.17627964 0.19530529 0.21676545 0.41478698 0.57652053 0.60128088\n", " 0.62522295 0.73729887 0.73781405 0.83568592 0.89690818 0.97004683\n", " 1.04725602 1.20661869 1.20856907 1.22822689 1.22945433 1.26131695\n", " 1.39803213 1.697168 1.75041936 1.88334496 2.07159625 2.38499339\n", " 2.45889391 2.73814132 2.93719238 3.06090468 3.18829627 3.23892936\n", " 3.24680184 3.4500765 3.73327478 3.73722888 3.74570298 3.76413141\n", " 3.76767418 3.849566 3.92295473 3.961202 3.98131938 4.00250628\n", " 4.03074735 4.10225307 4.34688874 4.70444845 4.71665193 4.72220256\n", " 4.77952569 4.98506222]\n" ] } ], "source": [ "t = np.cumsum(x)\n", "print(t)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The array `t` now contains all the simulated arrival times." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "----\n", "\n", "Joseph K. Blitzstein and Jessica Hwang, Harvard University and Stanford University, © 2019 by Taylor and Francis Group, LLC" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.3" }, "notebook_info": { "author": "Joseph K. Blitzstein, Jessica Hwang", "chapter": "5. Continuous Random Variables", "creator": "buruzaemon", "section": "5.9", "title": "Introduction to Probability, 1st Edition" } }, "nbformat": 4, "nbformat_minor": 2 }