{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "CDF:\n", "$$\n", "F(x) = \\begin{cases}\n", "0 & x <0,\\\\\n", "x & 0 \\leq x < 0.5,\\\\\n", "\\frac{x}{2} + 0.5 & 0.5 \\leq x \\leq 1\\\\\n", "1 & x>2\n", "\\end{cases}\n", "$$\n", "\n", "P*D*F:\n", "\n", "$$\n", "f(x) = \\begin{cases}\n", "0 & x <0,\\\\\n", "1 & 0 \\leq x < 0.5,\\\\\n", "\\frac{1}{2} & 0.5 \\leq x \\leq 1\\\\\n", "0 & x>2\n", "\\end{cases}\n", "$$\n", "\n", "$\\int f(t) dt = 0.75$??\n", "\n", "What's missing?\n", "\n", "p[X=0.5] = 0.25. But defining such a probability should be $0$ for a P*D*F.[It's technically a 'PMF'. The mass at 0.5 being 1/4]" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/saket/anaconda/lib/python2.7/site-packages/ipykernel/__main__.py:19: DeprecationWarning: converting an array with ndim > 0 to an index will result in an error in the future\n" ] }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "from __future__ import division\n", "def F(x):\n", " if x<0:\n", " return 0\n", " if x<0.5:\n", " return x\n", " if x>=0.5 and x<=1:\n", " return x/2+0.5\n", " return 1\n", " \n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "x = np.linspace(-2,2, num=100)\n", "fx =[F(i) for i in x]\n", "pos = np.where((x<=0.51) & (x>=0.49))[0]\n", "\n", "x[pos] = np.nan\n", "fx[pos] = np.nan\n", "plt.plot(x,fx)\n", "\n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.10" } }, "nbformat": 4, "nbformat_minor": 0 }