{ "metadata": { "name": "4.Throwing darts.ipynb" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Geometric Distribution\n", "## *If I throw 100 darts at the number line between 1 and 1000, how far apart do we expect them to be?*" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import random\n", "import math\n", "\n", "line_len = 1000\n", "num_darts = 100\n", "\n", "line = [0 for x in xrange(line_len)]\n", "\n", "print \"throwing darts...\"\n", "for i in xrange(num_darts):\n", " pos = random.randint(0,line_len-1)\n", " line[pos] += 1\n", " \n", " if (i < 10):\n", " print \"%d: %d\" % (i, pos)\n", " \n", "\n", "print \"The maximum number of darts at one position was %d\" % (max(line))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "throwing darts...\n", "0: 287\n", "1: 2521\n", "2: 5384\n", "3: 6135\n", "4: 576\n", "5: 7624\n", "6: 1546\n", "7: 2526\n", "8: 4493\n", "9: 9576\n", "The maximum number of darts at one position was 2\n" ] } ], "prompt_number": 111 }, { "cell_type": "code", "collapsed": false, "input": [ "plt.figure(figsize=(15,4), dpi=100)\n", "plt.bar(range(line_len), line)\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\nqAMAAEiYUAcAAJAwoQ4AACBhQh0AAEDChDoAAICECXUAAAAJE+oAAAASJtQBAAAkTKgDAABImFAH\nAACQMKEOAAAgYUIdAABAwoQ6AACAhAl1AAAACRPqAAAAEibUAQAAJEyoAwAASJhQBwAAkDChDgAA\nIGFCHQAAQMKEOgAAgIQJdQAAAAkT6gAAABIm1AEAACRMqAMAAEiYUAcAAJAwoQ4AACBhQh0AAEDC\nhDoAAICECXUAAAAJqxvqVqxYEVOmTInzzjuv6jq33357zJw5MxYuXBg7d+5saoEAAABUVzfUXX/9\n9fHUU09VfXxgYCA2b94cW7dujbVr18batWubWiAAAADV1Q11S5cujdNOO63q4/39/XH11VdHW1tb\n9PT0xI4dO5paIAAAANWN+j11AwMD0d7ePvjzGWecEbt37x5tswAAAOQw6lCXZVlkWTZkWaFQqLhu\nb29vdHd3R29vb/T19cWMGTOiu7t78LGi4jrFf2u1Vf59aVuVHi/vr7X1pGhtnRjd3d1Dvnp7e4f0\nXV5Ha+tJQ+otrbu89vL+K42pdN0ZM2YM67+4bek4i+tXqrV0Wek21eoq3zel6xS/TjmlLQqFY1Nm\nxowZw7apt21r68TBfdfaOjF6e3ujpeXEOOWUtmG1dXd3D9sPp5zSFqec0jZs/5bOl9LaijW0tJwY\nH/tYS8X5UF5v6ePFn4t1lNZe/L5Ye+n2xfVbWk4cXLdYU+lxKh9Psc2Pfaxl8N9KtZbPs/L2S9ep\nNc7S41A670v3e/Gx0nXL91H5nC6dU8V9dMopbYPjKR138at0v5bvz+K+Kr+uVKqhdD+U1lx6bFpa\nToxCYcKwbUqVz8tSp5566pD5Wb7fi1+trSdFofDxaG2dOGT+l9ZTrKn8eJbOnUr7rLSW0v1R+lVp\nPxYfK57L5Y8Vx1U+f0qvd6XjLq2ztK/yfVE+tkLhhGhtnTi4nysdh/K5VV5rsY4JE1qjUDghCoUT\nhtVQuk2l/RHx/9fV8uNQOoZizYXCxyu2U3oeVqq5OBeL50Oxn/LnwPJ+K7VVXFY8p2bMmDHkmFTa\nR9Wu08V5Wpzr1fZX6VfpcSye0+Xzrvy4l25Xuq9Kl5f2VanW0jlSaUzFYxgx9HpRXK94DlWrr9J5\nUl5feV3F63T5Nb/aPCqtp9I4i+dzrX1ZOv7ya3Ppz8X1Ss+r8hrKx1SqfH+V75dq86Jc+bZD12sZ\n9lxQWlN3d/dgHaXnQuk+qVR7+ZjK505R8fgVr0Plz32l17fSukv7Lm5T2v6ECa2D4youq/T7Qulz\nRGnfpb9flZ8TpfOqdDyV9n+lfV++r0vPm1rtl35fqZ7S41T6WHlf5fugfE6W/lteW+m179j1eMKQ\n5+rSfsrHW3oOlo+xfHzFdYtjKhROGHY8i+uU1lvabvl1p6OjY3D5hAktw45VsxSy8kRWwZ49e2L5\n8uXx0ksvDXvswQcfjP/9739x6623RkTErFmzKr5SVygUIsuywX+LyyKi6vJSeYJj6falbVbqp/yx\nahpts9L25etWG0+lNkrXq/RYvWX19nml9ertk2rbVBtrI201um3e8dbrp9r4661f/L7YV61j0kht\njRjJHBxpX7XqrLcfRtLHSOZpnv1QrfaiRtoezXGr1Feec6Ha/KvWfq1ra546650DpT+P5NiU11yt\n1rzjqHetbaStev0U2xjNNTXPfsnTVp7ni3pzKu9zbTOvVbV+J8hzfjRyXW/G+dqs8eetv9r4R1t7\npWtE0UieMxr9faNWG/X6qDS+WvU3OpY848pbW625Xq/PPG3XOnfz7us87VdbVq/2kfQ90vZG2lbe\nOdHIOVnvGFaat6M1YbQNdHV1xe9+97t4/fXX49FHH4158+Y1oy4AAAByqPsaYE9PTzz77LNx8ODB\nmDZtWtx5551x9OjRiIhYtWpVLF68OJYsWRKLFi2Ktra2WL9+/ZgXDQAAwDF1Q92vf/3ruo2sW7cu\n1q1b15SCAAAAyG/Ut18CAAAwfoQ6AACAhAl1AAAACRPqAAAAEibUAQAAJEyoAwAASJhQBwAAkDCh\nDgAAIGFCHQAAQMKEOgAAgIQJdQAAAAkT6gAAABIm1AEAACRMqAMAAEiYUAcAAJAwoQ4AACBhQh0A\nAEDChDoAAICECXUAAAAJE+oAAAASJtQBAAAkTKgDAABImFAHAACQMKEOAAAgYUIdAABAwoQ6AACA\nhAl1AAAACRPqAAAAEibUAQAAJEyoAwAASJhQBwAAkDChDgAAIGFCHQAAQMKEOgAAgIQJdQAAAAkT\n6gAAABIm1AEAACRMqAMAAEiYUAcAAJAwoQ4AACBhQh0AAEDChDoAAICECXUAAAAJE+oAAAASJtQB\nAAAkTKgDAABImFAHAACQsLqh7rnnnot58+bFOeecEw8++OCwx/v6+mLSpEnR2dkZnZ2dcdddd41J\noQAAAAzXUm+F1atXx8MPPxzTp0+Pyy67LHp6emLy5MlD1lm2bFls2LBhzIoEAACgspqv1B06dCgi\nIi655JKYPn16XHrppdHf3z9svSzLxqY6AAAAaqoZ6rZs2RJz584d/Lm9vT1eeOGFIesUCoV4/vnn\no6OjI9asWRO7d+8em0oBAAAYZtQflHLBBRfEvn37YsuWLdHe3h6rV6+uum5vb+/gv319faPtGgAA\n4LhWzEBjqZDVuHfy0KFD0d3dHS+++GJERNx0001x+eWXxxe/+MWK62dZFlOnTo29e/dGa2vr0I4K\nhciybPDf4rLidpWWl7dd3l61dcr7qtRP+WPVNNpmpe3L1602nkptlK5X6bF6y+rt80rr1dsn1bap\nNtZG2mp027zjrddPtfHXW7/4fbGvWsekkdoaMZI5ONK+atVZbz+MpI+RzNM8+6Fa7UWNtD2a41ap\nrzznQrX5V639WtfWPHXWOwdKfx7JsSmvuVqtecdR71rbSFv1+im2MZprap79kqetPM8X9eZU3ufa\nZl6rav1OkOf8aOS63ozztVnjz1t/tfGPtvZK14iikTxnNPr7Rq026vVRaXy16m90LHnGlbe2WnO9\nXp952q517ubd13nar7asXu0j6Xuk7Y20rbxzopFzst4xrDRvR6vmK3WTJk2KiGOfgLlnz554+umn\no6ura8g6+/fvHyzsiSeeiAULFgwLdAAAAIyNup9++cADD8SqVavi6NGjcfPNN8fkyZPj4YcfjoiI\nVatWxeOPPx4PPfRQtLS0xIIFC+K+++4b86IBAAA4pubtl03tqMbtZ3le2s57S0ilvqq9bJz3Jd1G\n2qy0fbXbAKrtn2rjzvOSb61bgErbGM2tQtW2Gc0tLiPdNu946/VT67agerfF1Lstp9otEs24raZW\n7bXGMNK+atXZjNuTyvsYyTwdye0Vea4v1dpoxu1c1drLe0yrtVNcnveWn2p15rk1rBm35dS63pU+\n3uitPaXq7bdG1JrzjT7P5LllaDT7L+91Iu9zbTOvVbV+J8hzfjRyXW/G+dqs8eetv9r4R1t7pWtE\n0UieMxr9faNWG/X6qDS+WvU3OpY848pbW625Xq/PPG3XOnfz7us87VdbVq/2kfQ90vZG2lbeOdHI\nOVnvGFaat6M16g9KAQAAYPwIdQAAAAkT6gAAABIm1AEAACRMqAMAAEiYUAcAAJAwoQ4AACBhQh0A\nAEDChDoAAICECXUAAAAJE+oAAAASJtQBAAAkTKgDAABImFAHAACQMKEOAAAgYUIdAABAwoQ6AACA\nhAl1AAAACRPqAAAAEibUAQAAJEyoAwAASJhQBwAAkDChDgAAIGFCHQAAQMKEOgAAgIQJdQAAAAkT\n6gAAABIm1AEAACRMqAMAAEiYUAcAAJAwoQ4AACBhQh0AAEDChDoAAICECXUAAAAJE+oAAAASJtQB\nAAAkTKgDAABImFAHAACQMKEOAAAgYUIdAABAwoQ6AACAhAl1AAAACRPqAAAAEibUAQAAJEyoAwAA\nSJhQBwAAkLC6oe65556LefPmxTnnnBMPPvhgxXVuv/32mDlzZixcuDB27tzZ9CIBAACorG6oW716\ndTz88MPxzDPPxE9+8pM4ePDgkMcHBgZi8+bNsXXr1li7dm2sXbt2zIoFAABgqJqh7tChQxERcckl\nl8T06dPj0ksvjf7+/iHr9Pf3x9VXXx1tbW3R09MTO3bsGLtqAQAAGKJmqNuyZUvMnTt38Of29vZ4\n4YUXhqwzMDAQ7e3tgz+fccYZsXv37iaXCQAAQCWj/qCULMsiy7IhywqFwmibBQAAIIeaoe7CCy8c\n8sEn27Zti4suumjIOl1dXbF9+/bBnw8cOBAzZ84c1tasWbMGw16hUBgS/KotL1V8LM865W1W6qf8\nsWoabbPS9tW+Lx9PpTZqjTnPsnr7PO84KsmzXxpta6Q1VKqp3v7JcxzrrV/eV60+G6mtESOZg6P5\nj5dGzr/R9jGSeZpnP1R6rN71pVobozlujczRWuvUunbUWidvnXlqG82xKX087zW+kZortTuafVKp\njdFcU/Psl7zr1ZtX9eZU3ufakai1r/Jep+qt18jjjdY+2utbtefMvOfYSPuuVnula0Qjx6JabdXa\nyDOGvOdC+bJ69ZfX14i819E8x2sk17B6bdc6hnnrzXvNaMZ1Pk/fI21vpG3lnRONnJO1juGsWbNy\n9deolloPTpo0KSKOfQLmWWedFU8//XT84Ac/GLJOV1dXrFmzJq677rrYtGlTzJs3r2Jbu3btalLJ\nAAAAFNUMdRERDzzwQKxatSqOHj0aN998c0yePDkefvjhiIhYtWpVLF68OJYsWRKLFi2Ktra2WL9+\n/ZgXDQAAwDGFrPwNcQAAACRj1B+UUk+eP14OzbRv37743Oc+F/Pnz4/u7u549NFHIyLi8OHDceWV\nV8ZZZ50VX/7yl+Ott94a3ObHP/5xnHPOOdHe3h5//vOfB5fv2LEjLrjggpg5c2Z8//vf/8DHwofT\ne++9F52dnbF8+fKIMDc5frz99tvxzW9+Mz7zmc9Ee3t79Pf3m58cF372s5/FZz/72Vi4cGHccsst\nEeHayfhZsWJFTJkyJc4777zBZc2cj0ePHo2VK1fG9OnTo7u7O1577bX6RWVjrKOjI3v22WezPXv2\nZHPmzMkOHDgw1l3yEffqq69mL774YpZlWXbgwIHs7LPPzt58883snnvuyb7zne9k77zzTnbjjTdm\n9957b5ZlWbZ///5szpw52b/+9a+sr68v6+zsHGzriiuuyB577LHs4MGD2cUXX5xt2bJlXMbEh8t9\n992Xff3rX8+WL1+eZVlmbnLcuO2227I77rgjO3LkSHb06NHs3//+t/nJuHv99dezGTNmZG+99Vb2\n3nvvZVdccUX21FNPmZuMm+eeey7729/+lp177rmDy5o5H3/zm99kV111Vfb2229nP/zhD7Mbb7yx\nbk1j+kpdnj9eDs02derU6OjoiIiIyZMnx/z582PLli0xMDAQK1eujNbW1lixYsXgXOzv74/LL788\nzjrrrFi2bFlkWTb4vysvv/xyXHPNNXH66afHV77yFfOXUXvllVfij3/8Y3zrW98a/HMw5ibHi2ee\neSa+973vxYknnhgtLS0xadIk85NxN3HixMiyLA4dOhRHjhyJ//znP3Hqqaeam4ybpUuXxmmnnTZk\nWTPnY39/f3zjG9+IT3ziE/Htb3871zwd01CX54+Xw1jatWtXbNu2LRYvXjxkPs6dOzcGBgYi4tiJ\nU/qprXPmzIn+/v7YtWtXnHnmmYPLzV+a4dZbb4177703Jkz4/8uvucnx4JVXXol33nknbrjhhujq\n6op77rknjhw5Yn4y7iZOnBgPPfRQzJgxI6ZOnRoXX3xxdHV1mZscV5o5HwcGBqK9vT0iItra2mL/\n/v3x7rvv1ux/zN9TB+Pl8OHDcc0118T9998fJ5100uCrInlU+rsjjWwPlWzcuDHOPPPM6OzsHDKf\nzE2OB++880784x//iKuuuir6+vpi27Zt8dvf/tb8ZNwdOHAgbrjhhti+fXvs2bMn/vrXv8bGjRvN\nTY4rzZiPxeVZljX8e8KYhro8f7wcxsLRo0fjqquuimuvvTauvPLKiDg2H3fs2BERx96YeuGFF0bE\nsb+1uH379sFtd+7cGRdeeGHMnj079u/fP7h8+/bt5i+j8vzzz8eGDRvi7LPPjp6envjTn/4U1157\nrbnJcWH27NkxZ86cWL58eUycODF6enriqaeeMj8ZdwMDA3HRRRfF7Nmz4/TTT4+vfvWrsXnzZnOT\n40oz5mNXV9ewbd54442YMmVKtLa21ux/TENd6R8v37NnTzz99NODxcJYybIsVq5cGeeee+7gJ2RF\nHDtBHnnkkThy5Eg88sgjgxfyxYsXx6ZNm2Lv3r3R19cXEyZMiJNPPjkijr18/thjj8XBgwfj97//\nvfnLqNx9992xb9+++Oc//xmPPfZYfP7zn49f/vKX5ibHjXPOOSf6+/vj/fffjz/84Q/xhS98wfxk\n3C1dujS2bt0ab7zxRrz77rvx5JNPxqWXXmpuclxp5nzs6uqK9evXx9tvvx0//elP8/3nw4g/9iWn\nvr6+bO7cudmsWbOyH/3oR2PdHWSbN2/OCoVCdv7552cdHR1ZR0dH9uSTT2Zvvvlm9qUvfSmbNm1a\nduWVV2aHDx8e3OaBBx7IZs2alc2bNy977rnnBpdv27Yt6+zszGbMmJF997vfHY/h8CHV19c3+OmX\n5ibHi5dffjnr6urKzj///Oy2227L3nrrLfOT48LPf/7z7JJLLskWLVqU3XHHHdl7771nbjJuvva1\nr2Wf+tSnso9//OPZpz/96eyRRx5p6nz873//m11//fXZtGnTsmXLlmWvvvpq3Zr88XEAAICE+aAU\nAACAhAl1AAAACRPqAAAAEibUAQAAJEyoAwAASJhQBwAAkDChDgAAIGFCHQAAQML+D6/Mvhb5k+gL\nAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 112 }, { "cell_type": "code", "collapsed": false, "input": [ "## compute the distances between darts\n", "\n", "distances = []\n", "\n", "last_dart = -1\n", "left_distance = line_len\n", "\n", "for i in xrange(line_len):\n", " if (line[i] > 0):\n", " right_dist = i - last_dart\n", " min_dist = right_dist\n", " if (left_distance < min_dist):\n", " min_distance = left_distance\n", " \n", " if (last_dart != -1):\n", " distances.append(min_dist)\n", " \n", " if (line[i] > 1):\n", " for dd in xrange(line[i]-1):\n", " distances.append(0)\n", " left_distance = 0\n", " else:\n", " left_distance = right_dist\n", " \n", " last_dart = i\n", "\n", "distances.append(last_distance)\n", "\n", "mean = (sum(distances) + 0.) / len(distances)\n", "expected_mean = float(line_len) / num_darts\n", "print \"The observed mean distance was %.02f and the expected mean was %.02f\" % (mean, expected_mean)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The observed mean distance was 9.97 and the expected mean was 10.00\n" ] } ], "prompt_number": 113 }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "The expected mean distance is intuitive, but what do we expect for the standard deviation and the shape of the distribution?" ] }, { "cell_type": "code", "collapsed": false, "input": [ "sumdiff = 0.0\n", "for d in distances:\n", " diff = (d - mean) ** 2\n", " sumdiff += diff\n", "\n", "sumdiff /= len(distances)\n", "stdev = math.sqrt(sumdiff)\n", "\n", "print \"The range in distances was %d to %d\" % (min(distances), max(distances))\n", "print \"The average distance between darts was: %.02f +/- %.02f\" % (mean, stdev)\n", "print \"The expected distances was %.02f\" % (float(line_len) / num_darts)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The range in distances was 0 to 70\n", "The average distance between darts was: 9.97 +/- 9.69\n", "The expected distances was 10.00\n" ] } ], "prompt_number": 114 }, { "cell_type": "code", "collapsed": false, "input": [ "plt.figure()\n", "plt.hist(distances)\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 115 }, { "cell_type": "code", "collapsed": false, "input": [ "plt.figure()\n", "plt.hist(distances, bins=range(max(distances)+1), normed=True)\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n8fGSRu6qSUpKUn19vXbv3h3Sxuv16plnntHGjRv1/vvvKzMzU5L0ta99LeKxknTmzJnxSgAATIOI\nwzh79+6Vz+fT8PCwqqqqlJCQoJqaGkmSz+dTfn6+CgsLlZubK7fbrdra2nGPBQDMPpcZPeAOAJh3\nYvoJWqd96OqJJ57QN77xDX3zm98MbhsYGNC6deuUlJSk73//+xocHIxhhTd2/vx53XvvvVq5cqWK\ni4tVV1cnyTn1Dw0Nyev1KisrS/fcc4/27NkjyTn1f+HatWvKzs5WefnITQlOqn/ZsmVavXq1srOz\nlZ+fL8lZ9V+6dEmbNm3S3XffLY/Ho0Ag4Jj6P/74Y2VnZweX+Ph4vfTSSxocHIy6/piG/ZYtW1RT\nU6OGhgbt379fvb29sSwnoscff1zHjh0L2XbgwAElJSXp9OnTuvPOO/WrX/0qRtWN76abbtKePXvU\n3t6u3/72t9q1a5cGBgYcU//ChQv1wQcf6G9/+5saGxv12muv6fTp046p/wv79u2Tx+MJ3rHmpPpd\nLpf8fr/a2trU0tIiyVn17969W0lJSTp58qROnjypjIwMx9Sfnp6utrY2tbW16S9/+YtuvfVWPfzw\nw3r55Zejrj9mYe/ED1195zvf0ZIlS0K2tbS0aPPmzbrlllv0xBNPzNnXsHTpUmVlZUmSEhIStHLl\nSrW2tjqmfkm69dZbJUmDg4O6evWqbrnlFkfVf+HCBR05ckRPPvlk8HZlJ9Uvacxt1k6qv6GhQc89\n95wWLlyouLg4xcfHO6r+LzQ0NGjFihW66667Jlb/hO7dmUb19fVmw4YNwfUDBw6YXbt2xaqcqJ07\nd86sWrUquJ6UlGSuXLlijDHm0qVLJikpKValRe306dNm+fLlZmBgwFH1X7t2zaxevdp85StfMdXV\n1cYYZ/38KyoqzF//+lfj9/vNgw8+aIxxVv3Lly83q1evNuvWrTO///3vjTHOqf/8+fMmPT3dbNq0\nyeTn55uf/vSn5vLly46p/3qPP/642b9/vzFmYj9/Zr2cIuOw69sDAwN69NFHtWfPHt12222Oqn/B\nggX66KOPdObMGb388stqa2tzTP2HDh3S7bffruzs7JCanVK/JH344Yf66KOP9MILL+iZZ57Rp59+\n6pj6h4aG9Mknn2j9+vXy+/1qb2/X22+/7Zj6v/D555/rvffe0yOPPCJpYv9+Yhb2eXl5ITNktre3\n65577olVOZOWl5cXnA+oo6NDeXl5Ma7oxoaHh7V+/Xo99thjWrdunSRn1f+FZcuW6YEHHlAgEHBM\n/X/+85/17rvvavny5aqsrNQf//hHPfbYY46pX5LuuOMOSVJmZqYeeughvffee46pf8WKFUpPT1d5\nebkWLVqkyspKHTt2zDH1f+Ho0aPKyclRYmKipIn9/41Z2F//ga3u7m7V19fL6/XGqpxJ83q9Onjw\noK5cuaKDBw/O2T9Yxhht3rxZq1at0tatW4PbnVJ/b2+vPvvsM0lSX1+f/vCHP2jdunWOqf8nP/mJ\nzp8/r3Pnzumtt97SfffdpzfeeMMx9V++fFkDAwOSpJ6eHr3//vsqLS11TP2SlJaWpkAgoP/85z86\nfPiw7r//fkfVL0m/+c1vVFlZGVyfUP0zObYUid/vNxkZGSY1NdXs27cvlqVEZcOGDeaOO+4wN998\ns7nzzjvNwYMHzcWLF81DDz1k7rrrLrNu3TozMDAQ6zLDOn78uHG5XGbNmjUmKyvLZGVlmaNHjzqm\n/pMnT5rs7GyzevVqU1JSYn79618bY4xj6r+e3+835eXlxhjn1H/27FmzZs0as2bNGnPfffeZ1157\nzRjjnPqNMebjjz82Xq/XrFmzxjz77LNmcHDQUfUPDg6ar3/96+bixYvBbROpnw9VAYAFuEALABYg\n7AHAAoQ9AFiAsAcACxD2AGABwh4ALEDYA4AFCHsAsMD/A/rh+kVm3zDRAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 116 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "What happens if you increase the number of darts or the length of the number line?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Notice that the probability of a given dart landing at a given spot is \n", "\n", "$$\n", "p = \\text{line_len} / \\text{num_darts} \\text{ (10%)}\n", "$$\n", "\n", "So the probability of a given dart not landing at the next position is\n", "\n", "$$\n", "1-p \\text{ (90%)}\n", "$$\n", "\n", "And the probability of not having 2 darts in a row is\n", "\n", "$$\n", "(1-p)^2 \\text{ (90% * 90% = .81%) }\n", "$$\n", "\n", "And not having 3 in a row\n", "\n", "$$\n", "(1-p)^3 \\text{ (90% * 90% * 90% = 72.9%) }\n", "$$\n", "\n", "So the probability of not having several darts in a row followed by 1 dart is\n", "\n", "$$\n", "pdf = (1-p)^{k} p\n", "$$\n", "\n", "## This is called the geometric distribution" ] }, { "cell_type": "code", "collapsed": false, "input": [ "p = .1\n", "geom_dist = []\n", "for i in xrange(max(distances)+1):\n", " geom_prob = (1-p)**i * p\n", " geom_dist.append(geom_prob)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 117 }, { "cell_type": "code", "collapsed": false, "input": [ "plt.figure()\n", "plt.bar(range(len(geom_dist)), geom_dist, color=\"green\")\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\ntbW16fbt27p165YmTZo0sBr7Pa9niFRUVJhVq1YF2wcOHDDbt2+PVDmPuHjxopkzZ06wHR8fb27f\nvm2MMebmzZsmPj4+UqU94uzZs2b69Ommo6MjKuu8e/eumTt3rnnqqadMaWmpMSY6/z6XL19u/v3v\nfxufz2d+9rOfGWOis87p06ebuXPnmvz8fPPXv/7VGBN9dTY3N5tZs2aZtWvXmszMTLN3715z69at\nqKuzuzfeeMPs37/fGBN9f5/Hjh0zY8aMMePHjzfbtm0zxgysRm6P3EcmSs9td3R0aOXKldq3b5/G\njx8flXWOGjVKp06d0rlz5/Tee+/p5MmTUVfnkSNH9Nxzzyk1NTWktmirU5K++uornTp1Snv27NGm\nTZt05cqVqKuzs7NTZ86c0bJly+Tz+VRfX6+PPvoo6up84LvvvtOnn36qFStWSIquf/eWlhatX79e\nDQ0NunTpkv75z3/qyJEjA6oxYoGfkZERcmfN+vp6zZ8/P1LlhJWRkRG8T1BjY6MyMjIiXJHU1dWl\nZcuWafXq1crPz5cUnXU+MG3aNP3kJz+R3++Pujr/8Y9/6JNPPtH06dNVUFCgv//971q9enXU1SlJ\nzz//vCTJ5XLptdde06effhp1dc6cOVOzZs3S0qVLNW7cOBUUFOizzz6LujofOH78uNLS0hQXFycp\nuv4fBQIBzZ8/XzNnztSUKVO0YsUKVVdXD6jGiAV+94u6Ll26pIqKCnk8nkiVE5bH49HBgwd1+/Zt\nHTx4MOIfTsYYrVu3TnPmzAmetZeir87W1lZdv35dknT16lX97W9/U35+ftTVuXv3bjU3N+vixYv6\n8MMPtWjRIv3pT3+Kujpv3bqljo77tyJoaWnRiRMnlJeXF3V1SlJSUpL8fr/u3buno0ePavHixVFZ\npyT9+c9/VkFBQbAdTXW++uqrqqur07Vr13Tnzh0dP35cubm5A6vxMRxu6jOfz2eSk5PNjBkzTElJ\nSSRLCbFq1Srz/PPPmx/84AfmhRdeMAcPHjTt7e3mtddeMy+++KLJz883HR0dEa2xurraOBwOM2/e\nPJOSkmJSUlLM8ePHo67O06dPm9TUVDN37lyTm5tr/vCHPxhjTNTV2Z3P5zNLly41xkRfnRcuXDDz\n5s0z8+bNM4sWLTIffPBBVNZpjDHffPON8Xg8Zt68eWbz5s3mxo0bUVnnjRs3zJQpU0x7e3twWbTV\n+fvf/95kZ2eb9PR0s337dnP37t0B1ciFVwBgCU7aAoAlCHwAsASBDwCWIPABwBIEPgBYgsAHAEsQ\n+ABgCQIfACzxf0ypZheQr3AxAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 118 }, { "cell_type": "code", "collapsed": false, "input": [ "plt.figure()\n", "plt.hist(distances, bins=range(max(distances)+1), normed=True, label=\"Observed\")\n", "plt.plot(range(len(geom_dist)), geom_dist, color=\"green\", linewidth=4, label=\"Geometric\")\n", "plt.legend()\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n/neOHDlCbm4uGo2Ga9euceLECYqLi3F3d8fT0xOAjz/+mP/5n/9h2LBhdO/encWLFxtepd9ya0lB\nOzs7HnroIY4cOWJ4zA8++IApU6ZgY2PDyZMnuXr1KosXL8bJyYlJkyZx7733smPHDqD8fxCLFi2i\nd+/ePPjgg4wbN84kdxk1izdoFYrvznxn6jKEEGakR48e6PV6jh8/Xm3f/v37cXd3B2DgwIGG/s6d\nO+Pl5UViYiJdu3Zl48aNrFy5ku7du/P000+Tk5MDlC8z+NRTT6HT6dDpdISGhpKVlWW0pmzlJQXt\n7e2ZNGmS4dX9Rx99xKOPPmoYKzMz0zCWTqfjm2++Yd++fej1etLS0oyWH2ytlamqqjPshw4dSnp6\nuqGdmppqtKZjs527F1YsX8GyZcuIj49v0PhCiLZtwIABODk5sX37dqP+CxcukJKSwujRo1FKcfTo\nUcO+goICMjIyDEE9ceJE9uzZw/Hjx8nMzOQf//gHUL7M4DvvvMPly5cNW2FhId26dTOMVXVJwVtT\nOQcOHKCoqIjQ0FDDWF5eXkZj5efn8+abb2Jvb4+Pjw8pKSmGcQ4fPnxb0zjx8fEsW7bMsDWaqkdA\nQID67rvvVGZmpurXr5/Kycmp8bilS5eq1157rdHnAoplKP81/vWVIoRoAVVjAFCgWnCrN3YM1q5d\nq3Q6nVq6dKn67bff1ObNm9Xdd9+tRo4cqZQqzx0bGxv1xhtvqN9//13Nnz9fDR8+XCml1C+//KK+\n+eYbVVRUpC5fvqymTp2q/va3vymllNq+fbsaPHiw2rdvnyopKVG///67+uKLL5RSSmVmZiqNRqNK\nS0uNarl+/brS6XTq/vvvVwsWLDDaN3ToUPXqq6+q8+fPqxs3bqikpCSVlpamlFLqmWeeURMmTFCn\nT59WX375perevbu65557bvvPp77+Wsep74D4+Hjl4+OjvLy81OrVq5VSSq1bt06tW7dOKaXU+fPn\nVY8ePZSDg4NycnJSPXv2VHq9vtZzayqYZeXbBf2FRhUvhGi6qqFhb69ruesuQdnb6xpV35YtW9Sw\nYcOUo6Oj6tu3r1qwYIG6du2aUkqpZcuWqYiICPXEE0+obt26qdmzZ6szZ84opZQ6duyYCgoKUvb2\n9srLy0vNnj1b5efnK6WUKisrU9u3b1fTpk1TOp1OeXl5qeeff14pVR72Wq22WtgrpdSsWbOUVqtV\n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\n", "text": [ "" ] } ], "prompt_number": 119 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### The mean of the geometric distribution is 1/p (also p = 1/expected_mean)\n", "### The stdev is sqrt((1-p)/p^2)" ] }, { "cell_type": "code", "collapsed": false, "input": [ "expected_stdev = math.sqrt((1-p)/(p**2))\n", "print \"The expected stdev was %.02f and we observed %.02f\" % (expected_stdev, stdev)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The expected stdev was 9.49 and we observed 9.69\n" ] } ], "prompt_number": 120 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The geometric distribution can be well approximated by an exponential distribution\n", "\n", "$$\n", "pdf(x) = p * e^{-p * x}\n", "$$" ] }, { "cell_type": "code", "collapsed": false, "input": [ "p = .1\n", "exp_dist = []\n", "for i in xrange(max(distances)+1):\n", " exp_prob = p * math.exp(-p * i)\n", " exp_dist.append(exp_prob)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 121 }, { "cell_type": "code", "collapsed": false, "input": [ "plt.figure()\n", "plt.bar(range(len(exp_dist)), exp_dist, color=\"orange\")\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\nvF6vvF5vqF1eXj7icww5pBMXFyfp2kyd06dPq76+Xh6PJ2wfj8ej/fv36+zZs6qtrZXL5ZIk5ebm\nqrW1VefOndPXX3+tw4cPKz8/f8QFAgDGR8QhnYqKCvl8Pg0MDKi0tFROp1PV1dWSJJ/Pp5ycHOXm\n5iorK0sJCQmqqamRdO3LYvv27Xrqqad06dIlFRYWatmyZbf30wAAvpPD3DwAf6cLcDhk3ryh/Ytr\nf17fNlg7yiUDQNQ5HI4RZyF32gKAJQh8ALAEgQ8AliDwAcASBD4AWILABwBLTMjAZ/VMABi5Ma+l\nEw3XV8+UJMcvWD0TAIZjQvbwAQAjR+ADgCUIfACwBIEPAJYg8AHAEgQ+AFiCwAcASxD4AGAJAh8A\nLEHgA4AlCHwAsMSkCHwWUwOAyCbk4mk3YzE1AIhsUvTwAQCREfgAYAkCHwAsQeADgCUIfACwBIEP\nAJYg8AHAEhEDv7GxUS6XS6mpqaqqqhp0n61btyolJUWZmZnq7OwMbb948aLWrVunRx55RG63W83N\nzeNXOQBgRCIG/oYNG1RdXa2Ghgbt3btXPT09Ya8Hg0E1NTWptbVVZWVlKisrC722Y8cOJSUl6dix\nYzp27JhcLtf4fwIAwLAMGfi9vb2SpLy8PCUnJys/P1+BQCBsn0AgoOLiYiUkJKikpEQdHR2h1xoa\nGrRt2zZNnz5dU6dOVVxc3G34CACA4Rgy8FtaWpSWlhZqDzYsEwwG5Xa7Q+3ExER9+umn+uKLL9Tf\n36/nn39eHo9Hv/71r9Xf3z/O5Q/uxrV1WF8HAK4Z81o6xhgZY27Z3t/fr+PHj+vFF1/U8uXL5fP5\n9Pbbb2vt2rW37PvC/rFWEe7GtXUk1tcBMPH5/X75/f4xnWPIwM/OztaWLVtC7ba2NhUWFobt4/F4\n1N7eroKCAklSd3e3UlJSJEnz58/XihUrJEklJSV64403Bg/8ld8+L39ndB8EACYzr9crr9cbapeX\nl4/4HEMO6Vwfc29sbNTp06dVX18vj8cTto/H49H+/ft19uxZ1dbWhl2YTU1NVSAQ0NWrV3Xw4EEt\nX758xAUCAMZHxCGdiooK+Xw+DQwMqLS0VE6nU9XV1ZIkn8+nnJwc5ebmKisrSwkJCaqpqQkd+5vf\n/EZr165Vf3+/li9frtWrV9++TwIAGJLDDDYAfycLcDhuGm+/9ue369uPrX19W5Q/JgCMK4fDMeJc\n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\noaFB27Zt0/Tp0zV16lTFxcXFZJ3XNTQ0aN68eXrooYdiqs4ZM2bIGKPe3l5dvnxZly5d0r333ju6\nGkc8r2ec1NfXm9WrV4fa+/btM9u3b49WObf47LPPzMKFC0PtpKQkc/nyZWOMMRcvXjRJSUnRKu0W\nJ06cMA8//LDp6+uLyTqvXLliFi1aZL73ve+ZqqoqY0xs/n0WFxeb//73v8bv95uf/exnxpjYrPPh\nhx82ixYtMkVFReavf/2rMSb26uzq6jLz588369atMzk5OWb37t3m0qVLMVfnjZ555hmzd+9eY0zs\n/X0eOnTITJs2zcycOdNs27bNGDO6GvkFKMNkYvTadl9fn55++mnt2bNHM2fOjMk6p0yZoqNHj+rk\nyZN65ZVXdOTIkZir88CBA7r//vuVkZERVlus1SlJH330kY4ePapdu3Zp06ZNOnPmTMzV2d/fr+PH\nj2vlypXy+/1qa2vT22+/HXN1Xve///1P77//vlatWiUptv7du7u79fzzz6u9vV2nT5/Wv//9bx04\ncGBUNUYt8LOzs8NW1mxra9OSJUuiVU5E2dnZoXWCOjo6lJ2dHeWKpIGBAa1cuVJr1qxRUVGRpNis\n87o5c+boJz/5iQKBQMzV+a9//UvvvfeeHn74YZWUlOjvf/+71qxZE3N1StIDDzwgSXK5XHryySf1\n/vvvx1yd8+bN0/z587VixQrNmDFDJSUl+uCDD2KuzusOHz6szMxMJSYmSoqt/0fBYFBLlizRvHnz\ndN9992nVqlVqamoaVY1RC/wbb+o6ffq06uvr5fF4olVORB6PR6+//rouX76s119/PepfTsYYrV+/\nXgsXLgxdtZdir86enh599dVXkqSzZ8/qb3/7m4qKimKuzp07d6qrq0ufffaZ3nrrLT3xxBP605/+\nFHN1Xrp0SX1915YW6O7uVl1dnQoLC2OuTklKTU1VIBDQ1atXdfDgQS1fvjwm65SkP//5zyopKQm1\nY6nOxx9/XK2trTp37py+/vprHT58WPn5+aOr8TYMNw2b3+83aWlpZu7cuaaysjKapYRZvXq1eeCB\nB8z3v/998+CDD5rXX3/dnD9/3jz55JPmoYceMkVFRaavry+qNTY1NRmHw2EWL15s0tPTTXp6ujl8\n+HDM1Xns2DGTkZFhFi1aZPLz880f//hHY4yJuTpv5Pf7zYoVK4wxsVfnp59+ahYvXmwWL15snnji\nCfPaa6/FZJ3GGPPJJ58Yj8djFi9ebDZv3mwuXLgQk3VeuHDB3Hfffeb8+fOhbbFW5x/+8AeTl5dn\nsrKyzPbt282VK1dGVSM3XgGAJbhoCwCWIPABwBIEPgBYgsAHAEsQ+ABgCQIfACxB4AOAJQh8ALDE\n/wECULBiVHMxaQAAAABJRU5ErkJggg==\n", "text": [ "" ] } ], "prompt_number": 122 }, { "cell_type": "code", "collapsed": false, "input": [ "plt.figure()\n", "plt.hist(distances, bins=range(max(distances)+1), normed=True, label=\"Observed\")\n", "plt.plot(range(len(geom_dist)), geom_dist, color=\"green\", linewidth=4, label=\"Geometric\")\n", "plt.plot(range(len(exp_dist)), exp_dist, color=\"orange\", linewidth=4, linestyle=\"dashed\", label=\"Exponential\")\n", "plt.legend()\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\nAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 123 }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Try to set the number of darts so that the average spacing is 42\n", "## *What does this imply when we see \"clusters\" of events?*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Further reading\n", "* http://www.matplotlib.org - The project web page for matplotlib.\n", "* http://matplotlib.org/gallery.html - A large gallery showcaseing various types of plots matplotlib can create. Highly recommended!\n", "* http://www.loria.fr/~rougier/teaching/matplotlib - A good matplotlib tutorial.\n", "* http://scipy-lectures.github.io/matplotlib/matplotlib.html - Another good matplotlib reference.\n", "* https://docs.python.org/2/tutorial/ Python Tutorial\n", "* http://en.wikipedia.org/wiki/Probability_distribution Probability distributions\n", "* https://schatzlab.cshl.edu/teaching All my teaching materials" ] } ], "metadata": {} } ] }