{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Estimation and Hypothesis Testing" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Registered S3 methods overwritten by 'ggplot2':\n", " method from \n", " [.quosures rlang\n", " c.quosures rlang\n", " print.quosures rlang\n", "── \u001b[1mAttaching packages\u001b[22m ─────────────────────────────────────── tidyverse 1.2.1 ──\n", "\u001b[32m✔\u001b[39m \u001b[34mggplot2\u001b[39m 3.1.1 \u001b[32m✔\u001b[39m \u001b[34mpurrr \u001b[39m 0.3.2\n", "\u001b[32m✔\u001b[39m \u001b[34mtibble \u001b[39m 2.1.2 \u001b[32m✔\u001b[39m \u001b[34mdplyr \u001b[39m 0.8.1\n", "\u001b[32m✔\u001b[39m \u001b[34mtidyr \u001b[39m 0.8.3 \u001b[32m✔\u001b[39m \u001b[34mstringr\u001b[39m 1.4.0\n", "\u001b[32m✔\u001b[39m \u001b[34mreadr \u001b[39m 1.3.1 \u001b[32m✔\u001b[39m \u001b[34mforcats\u001b[39m 0.4.0\n", "── \u001b[1mConflicts\u001b[22m ────────────────────────────────────────── tidyverse_conflicts() ──\n", "\u001b[31m✖\u001b[39m \u001b[34mdplyr\u001b[39m::\u001b[32mfilter()\u001b[39m masks \u001b[34mstats\u001b[39m::filter()\n", "\u001b[31m✖\u001b[39m \u001b[34mdplyr\u001b[39m::\u001b[32mlag()\u001b[39m masks \u001b[34mstats\u001b[39m::lag()\n" ] } ], "source": [ "library(tidyverse)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "options(repr.plot.width=4, repr.plot.height=3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Set random number seed for reproucibility" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "set.seed(42)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Functions around probability distributions" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Random numbers" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
    \n", "\t
  1. 1.37095844714667
  2. \n", "\t
  3. -0.564698171396089
  4. \n", "\t
  5. 0.363128411337339
  6. \n", "\t
  7. 0.63286260496104
  8. \n", "\t
  9. 0.404268323140999
  10. \n", "
\n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item 1.37095844714667\n", "\\item -0.564698171396089\n", "\\item 0.363128411337339\n", "\\item 0.63286260496104\n", "\\item 0.404268323140999\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. 1.37095844714667\n", "2. -0.564698171396089\n", "3. 0.363128411337339\n", "4. 0.63286260496104\n", "5. 0.404268323140999\n", "\n", "\n" ], "text/plain": [ "[1] 1.3709584 -0.5646982 0.3631284 0.6328626 0.4042683" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "rnorm(5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "PDF" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAMAAAC46dgSAAAC8VBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUW\nFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJyco\nKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6\nOjo7Ozs8PDw9PT0+Pj4/Pz9AQEBCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tMTExN\nTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1fX19g\nYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhqampra2tsbGxtbW1ubm5vb29wcHBxcXFycnJz\nc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGCgoKDg4OEhISF\nhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCSkpKTk5OUlJSVlZWWlpaXl5eY\nmJiZmZmampqbm5ucnJydnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWmpqanp6eoqKipqamq\nqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4uLi5ubm6urq7u7u8\nvLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXHx8fIyMjJycnKysrLy8vMzMzNzc3Ozs7P\nz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc3Nzd3d3e3t7f39/g4ODh\n4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u7u7v7+/w8PDx8fHy8vLz\n8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7////KlgXfAAAACXBIWXMAABJ0\nAAASdAHeZh94AAASYUlEQVR4nO2deXwURRaAK3NlIOGYBCJgDiV4RIgRQTCAgBBAZEGQI8gZ\nTiOghENJlhiCiICgRsF1RZR4ALKsFyIgsqtouMyyIhJkQc7IEUDJRY75azMTkpnJ0dPVXVXd\nefO+P2byI/2qqusjfVR1vyJ2BDRE6wYgfEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHB\nwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHB\nwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHB\nwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHB\nwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHB\nwEHBwEHBwEHBwEHBwEHBwFEveNVPDJqB8EK9YPIWg2YgvFAsOLkK8mjFB8smISxRLJh4wLJJ\nCEsUqxlF+mcdcUDSKz5YNglhifK/vQ9sEbudJeA5WM+oOLieHWBIKkLBOkfV2fONgPYHUbC+\nUXd5dKyb+SWvgrP3I4zIplek8vq3dInFm+B9BGHGPmpDqm9wsudkSW+whxSrrQOppJjsoY7h\nfweLgpmBgoGjmeCIiBr/kP/y0mqmNATB1/LyrmndBu9oJrjWUOW5Hp2qiSB/sqiDG3mZCbFB\njguYoNiEzDytWyOJZoILCyV+uUbPgm9kPmyyjUjfmLV/f9bG9BE208OZN7RuU/3o8xysY8HX\nV4YHJn5d4vqHkq8TA8NXXteuRdIIF1x4ZO/eo97OsPoVvDG01ZJax+S8Ja1CN2rRGhmIFVzw\nckeD49RljH2rRGo7vQrO6eu/IL+uX+Qv8O+bI7o1shAq+EpHYoubNHPmxN6NSa8CiQ11Kvjd\nwLij9f3uaFzguyLbIhehgp8yvnHzcuR6GnlWYkNdCi6YaUotq//X5a9Yxumw1UIF35rg+nnU\nbRIb6lHwqei2XgZYs9pGnxLTFgqECja/7Pr5RYvEhjoUfKBNb683vHm92xwQ0RYahAoOm+D6\neXS4xIb6E/xF4FgZg2vFYwO/4N8WKoQKnmFYffPiuXCZX5LEhroTvMWSUi5nu/IUyxbebaFD\nqOC8aBLUf/LTsyb1aUoelFKoN8Efm9Plbrrc9D7PllAj9j74+tJoP8d9sKHza5IHPJ0J3mhe\nJn/jZWZdjXkIH8nKP/xD1s9S49AO9CX4S/MKms1XmL/k1RIF4Fi0V7ICU+gCkht/x6clSkDB\n3sgJmUIb8lTwzzxaoggU7IXciMdKaWNKH4vI5dEWJaBgaQpju3q7YKgrqmusgiguoGBJyse2\nOaMk7nzYSFn3zfxBwZK80GivssAfA5awbYlSULAUXxg3Kw3dbNTHoCUKluBksIq31BfYjrNr\niXJQcP0UdnqY+gLaRVn/mDof/hAMCq6fhLALasIv3z6WVUtUgILr5R2Llwl+b2RZ3mHTEjWg\n4PrIabJSbREvB2g/ooWC66Go4yOq72TLB3eQerRQCCi4HhJvvai+kMvhT6kvRB0ouG4+MX7D\nophvjJ+wKEYFKLhOfr+FcoqwPpJbnGdTkFJQcF2UD7qf0furJV37azsojYLrIqPxL6yKOhb4\nOquiFKEfwWe7ud4PDid/cKlDJr80ZijldXb/WZSgH8EFK11v+A/V9C+4tKv6OyQX5Y90VTHg\nqRr9CHZH20P04uanWRZ3LugFlsVRgoJrcdjK+MnmTMt/2BZIAwquSUmnIayLHBGjXU4ZFFyT\nhSGq5pDq4kLIQtZFygYF1yDb/DH7Qj8x7WdfqDxQsCclnUbxKHZkjFaJeFCwJ8+3+J1HsRdD\n0ngUKwMU7MEhy0d8Cv7IcohPwd5Awe6UdB7Gq+hhnSXzCnEDBbuztLmix9zlcD7oJV5FS4KC\n3TjaiGMmpHX+mjy/g4JdlD3Uh+fU3oBYiSRM3FAl+HteWYO0EZzR5CTP4k82yeBZfD2oEkzm\nO7+M89i1pxJNBP/GW0BGk9/4VlAXLAQTqYQ5itBE8F94H0LLHnqEbwV1gYKreM//MO8qjlrX\n866iFij4JhdbCnjf84Vg4W/+o+CbxN8nYLT4xn3x/CvxBAVX8qmY+Z79pk9FVOOGWMFHpnQf\n/EHlvWaq1N20cMHXQueLqWhe6ytiKqpCneBeLzogDzm/vAceC3SkuXvE+cSkvgRPvUPQS0RF\nUdPEVFSFOsEeeA8cY1x96VSSX3dHZ+pK8G7DTnFV7RBVlRNVgt/ywHvg7WMcnxuMj5XpS3DB\nHdPFVTZd1MGiEqFj0dZFzq/VjpO2ngQntRF4YrwWNkdcZUwE/yn7/qLdyMrv2WSFngRniX0F\ncKuBvsuVo1LwjTd7WolfyCh5KYMSDWudD/mXjSGz5+lGcHEHwbk0xkQViatMneDcBwgJ7tCu\nMSFD5azTeD6UDHL+UPak9EWZUMGpLZg/JyvNpVtSxVWmSnBZDzLM8dD+jW1dyCA5U6m506pu\nNzdF6kXwIcsGYXXdZIPAB7RUCd5Eqq4+y4YTlo8TCxRc0nmwqKpcPC5iXLQSVYKHNa/2cK3J\nAEYtciBQ8GLx4/92+4WWwt5HUyU4bLjrH0eHqm3KuePVLBYm+AjrN83kken/X0E1qRJsdXuU\n4zkDXSG1VgD/1c99WEyQ4NKuGhygHQwW9dKwuqFKt6tByfvaugqptf0pDf6CX7SdFVNRTc7a\nZIzds0AzwbpYAfywNVNIPXWw3l/MlbQ6wXHLq4lj+TCtIMGaXEFXIehKWuhskgM9rQD+vJZJ\nrC6IeR9NleDVHsiI1NcK4AfMwoc43NlgFrFUqQ+vAF4U/Tj/SqSIjxIwcejDK4DPanOZfyVS\nXAl7mn8l6gQfHXlLswflv1GrqxXA/23cyr0OL+wwfs29DlWCT9iIIYAQ2Utz6mkF8Kvhibyr\n8E5i+FXeVagSnECWFNqz7/GXO5qrpxXAR9+tgyUz8u8ezbsKdWPR3R2fO4nc4VwdrQD+rlnh\nildsOWh5j3MNqgSbnBcJ18hymYH6WQH8eFOqJYH5sTwwh28FLIYqiexhVb2sAF4S20uLl7Hr\noKzvA3wHtMQKtutkBfDnWmg0x1Cbsy2e41q+cMGy4Cx4l+YrKbix1fgVz+JZTDaQgc4vhq3i\nKzi31VyOpVMzJ4Tn4UT4ZIMsuAou69tFu+SvdVDSrRfHyX+xkw1y4Sp4oe0Ev8KVcMLGMRmt\n76VR2m78B7eyFfIZx7WGfU7wyRYq1gTmBce1hn1NsLo1gXlR1j+G18yhrwmeoG5NYF5ccB+m\nZ4qPCV5pVbkmMC8ONl7Fp2DfErzDtJZLuQzI5DQ97VOC/9eCedJFdsy1HeNRrC8JzosaoMML\nrCpKB0TlcSjWhwTf6HuP4BRGdPwR05PDi+E+JHh8aw2SvdJwJnQ0+3zVviM4LUCztYvksj+A\n/bPwPiP4TeFJBBXwqelN1kX6iuB/mv7OuEQurDdtZFyifgQXvf1mNWNYC97lv5RtgbxY6r+L\nbYH6EXy6i/sK4GwF7wmczbQ8jswOZJtFSz+C3WF8iD5oS+C5nApTyp9synQ01RcEZwdN0Mkz\nlHIon9ZsH8PifEDwvuBxDciv3V42LpihYfiCv202XscDlHVROr7Zt8wKAy94d5NpDerv10H5\nrMbbWZUFXfAm65wGc33lonyOdROjooALftUoMO8nS14xyn4pVxrQgsvmWDRLk6SWTMscJqcW\nyIL/GNJM7PoITNnRbMgfDIoBLPjU/e24L1bHk5y7OzB4mBau4G3B/Xg8ISGQvH7B21QXAlVw\naYpxXgO7/a1N6TxjitqdACr4TO+gz9g0RVs+C+p9Rl0JMAV/aIvlupi3OE7G2j5UVQBEwZfj\nzemSmRIbEiXp5ng1CdsACs4MaS8iCaQwDrQPUXE3D05wTj9ruq7e71ZPcbq1n+JcPMAEX02y\n9OGcl0gLcvpYkhTmxBMumGe+6OKMlpGblQTqn82RLTMUHZjECuaaL7rk7YigZQIXjRNL0bKg\niLcVXDqCyRdd8Hrbpqly1tdrsFxLbdr2der3xIHkiz6b2rJlmsbpn/lzOa1ly1TKnEtCBXPK\nF122c7j5zgwdJI/lT37GnebhO2nmEYUK5pIv+peUcNPQ7Q3wsQ1llG8fagpP+UX29kIFs88X\nfXjRvSRmpQarD2pJ7soYcu8imVOhQgWzzRd9fWtiW9Lh+Z+UtqYh89PzHUjbxK3XvW8pVDC7\nfNF5W5O7m639XgE4qCGXnFf6Wc3dk7d6mfQWex/MIl903u5V46L8rN2TdwpYlEbfFOxM7m71\nixq3anf9loWPZCnPF1187KuMmXFtiLH92FXfAxtuVk7x96vGtjeSNnEzM746VkevNICx6FO7\n3l81O75HqIFYoobMXbfPJ+6H6Mjft27ukCgLMYT2iJ+96v1dp1y/agCCI42tYx6dmrZu98kG\n/wwOX0pP7l6XNvXRmNbGSNc/aia41gLRuQP7VhNF3J4YLfSZe1xWlLudAjUTXCuB+J8L51cz\niuA5lhGaCZZcIHoPCmaFPs/BKJgZ+pzw30cQZtC/Tc5/wt+evd+FNWk9La0TqEPaD6EO6dmT\nOmRIe+qQhNbUIUlWt+7LptfEf8Lfg4DPqSu6aw11SN8U6pAJ9Em8U/pSh6y5izrk8wDqEA/4\nT/h7gIJp0Uyw7Al/D1AwLZoJlj3h7wEKpkUzwbIn/D1AwbRoJlj2hL8HKJgWzQTLnvD3AAXT\noplg2RP+HqBgWrQTbJc54e8BCqZFU8H0oGBaGphgG31av+i11CED6ZdLmDqVOiRtIHXI2mjq\nkO026hAPBAs+QZ8Q7DT9ZFSujEdQa5BHn8XnOv0j3MWnqUPKTlCHeCBYMCIaFAwcFAwcFAwc\nFAwcFAwcFAwcFAwcFAwcFAwcFAwcFAwcFAwcFAwcFAwcFAwc0YJ/HX+7NXIC1RpCv8+4s1Hb\nMb9SVVP0tF8fis3zZoRZwmZc4VmFXdGOKOiuGggWfKSZNWFRvLHpUfkhuWGGEWlPGJvIz/hn\ntx++tzmh6P3r0YbxKyYaOtLkcqKswq5oRxR0V00ECx7k913F5xtkuvyQ6WRtxedqMkV+yLlG\nPY7R9P5SsrriM4Os5FeFXdGOKOiumggWnPik4/Mc6S8/ZN4gR0KeS6S7/JDjz5UW0vR+dJDj\nJY3i5h35VWFXtCMKuqsmmlxkfUueog05RQZTbU/T+/l+lR0YZ6B6xptWcCW0O2JX1F0uNBB8\nZWu7EOqlruaSD6i2p+n9w2Sy83sSOcKrChe0O6Ksu1yIF2wkfpPP0wZ97NefLsMWTe//QJ52\nfs8iWbyqqIZ6RxR1lxviBS+Y3oPEUTZ5jbEb5RIOSgTPJHt5VVEF/Y4o6S53BAm+4swRU3Wj\nucUg46rBFVI+lwyRldTSrRaa3v+ZTHJ+TyRUtyP0gmXviCeyuqs+BAkumOWg+j6zk5/3dw+q\nQ8rHkyR5L0S41ULT+4WGym17G6leoqAWLH9HaiCnu+pD7CH6TMfKv5VO5JL8oESygr4mqt7v\n3NSxRFN+QCy/KhxQ74ii7qqB4HNweKNDFZ97TZFet6xmE5mtoCKq3n/V2fOLyd/4VWFXtCMK\nuqsmggVvMwZMTk+wGrbID4kkc1OdyA/ZkZqaTG6vCJF5wivq4vfE0njSi2IxMtoq7Ip2REF3\n1UT0VfTexyPMQQP/RRFRncZPfsj8qpCLMgOuPRNqiXiW5vqHugpFO6Kgu2rVqiIWaQCgYOCg\nYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCg\nYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCg4Are\nJ0kVnwlERbYi3YKCHfRodM5+3BSndTN4gIId/GiYYZ9o+lnrZvAABTuZ5v+N6RmtG8EFFOzk\noq1xyFWtG8EFFFzJMPKE1k3gAwp2csAQaczWuhFcQMFOerQ6F9xT60ZwAQU7+IC8Zl9GPtS6\nGTxAwRXkh91WbC9oE6pgPQXdg4Ir+CtZV/G5hiRr3RAOoGDgoGDgoGDgoGDgoGDgoGDgoGDg\noGDgoGDgoGDgoGDgoGDgoGDgoGDgoGDgoGDgoGDgoGDgoGDgoGDgoGDgoGDgoGDgoGDgoGDg\noGDgoGDgoGDgoGDgoGDgoGDg/B+dkJU7s03iUAAAAABJRU5ErkJggg==", "text/plain": [ "plot without title" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x <- seq(-3, 3, length.out = 100)\n", "plot(x, dnorm(x), type=\"l\", ylab=\"PDF\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "CDF " ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAMAAAC46dgSAAAC4lBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUW\nFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJycp\nKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6Ojo7Ozs8\nPDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tMTExNTU1O\nTk5PT09RUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1eXl5fX19gYGBh\nYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhqampra2tsbGxtbW1ubm5vb29wcHBxcXFycnJzc3N0\ndHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+BgYGCgoKDg4OEhISFhYWGhoaH\nh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCSkpKTk5OUlJSVlZWWlpaXl5eYmJiZmZma\nmpqbm5ucnJydnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWmpqanp6eoqKipqamqqqqrq6us\nrKytra2urq6vr6+ysrKzs7O0tLS1tbW2tra3t7e4uLi5ubm6urq7u7u8vLy9vb2/v7/AwMDB\nwcHCwsLDw8PExMTFxcXHx8fIyMjJycnKysrLy8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU\n1NTV1dXW1tbX19fY2NjZ2dna2trb29vc3Nzd3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm\n5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u7u7v7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4\n+Pj5+fn6+vr7+/v8/Pz9/f3+/v7////kklJAAAAACXBIWXMAABJ0AAASdAHeZh94AAAQrElE\nQVR4nO2deUBVVR7HD+89FAVJ0kRZIsEpM0w0sSRsRhyXcJyUzKVUVMZSXNM0tzKltMYlFBfM\nbNTRmrRpzG1azAWSMm0cpZImtwwxRRaR9/+89xAeIFzuudu598f388d9z8f53fO75yOPe8+5\n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\nM1PetUUVrioAAAAASUVORK5CYII=", "text/plain": [ "plot without title" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x <- seq(-3, 3, length.out = 100)\n", "plot(x, pnorm(x), type=\"l\", ylab=\"CDF\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Quantiles (inverse CDF)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAMAAAC46dgSAAAC8VBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUW\nFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJyco\nKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6\nOjo7Ozs8PDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tM\nTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1e\nXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29w\ncHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGC\ngoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OU\nlJSVlZWWlpaXl5eYmJiZmZmampqbm5ucnJyenp6fn5+goKChoaGioqKjo6OkpKSlpaWmpqan\np6eoqKipqamqqqqrq6usrKytra2wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4uLi5ubm6urq7\nu7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnKysrLy8vMzMzN\nzc3Ozs7Pz8/Q0NDS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc3Nzd3d3e3t7f39/g\n4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozu7u7v7+/w8PDx8fHy8vLz\n8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7///9hjutTAAAACXBIWXMAABJ0\nAAASdAHeZh94AAASpklEQVR4nO2de1wU5d7An92FZXEBRQ1vEEcB9c1Q8XIUL+RJjUxEUvNo\nHkvkaB4vYHDEjtbhaKEcD6l5etO0Xk0zkt701Sx6O920jMzwhlfsWF7KJFMEFJi/zs5y3SvP\nzPPM7M5vf9/Ph53ZZ+c3z4/5fnZ2Zp5nniECAhri6QQQZUHBwEHBwEHBwEHBwEHBwEHBwEHB\nwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHB\nwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHB\nwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHB\nwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHB\nwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwEHBwFFBcMlh\nhBMl0re+8oK/Jgg3vpa8+ZUXfJBUK16Hj1BNDkqOQcEaAgUDBwWD447NOxQMjW0DbN6iYGgM\nzrR5i4KB8S05YfMeBQNjzoO271EwLH4Nftu2QF3BpXOGJ++ss87muFsLCpbLy53stpyqgs8G\niZfOxv0qzqNgRei/zK5AVcEzDBt/vpilG35bQMHKcEB/wa5EVcHdZ4ivbxtSalGwItQMmWJf\npKpg00rrZCPJciL4nF/LJpAKuXX4NOtCvrcvUlVw9NT6aSbJd/INbtEGvIzclFuHL/PvoI0O\nZaoKXqB/vUac1s4gmdnu1rIJBcthwtBahzJVBV8JJ0nWmdr5lr2wmwVRsBxeDyh1LFT3PPjq\nU0sb5gqjUDBnDpjWOyn1zitZKFg6ZWFpzopRMBBu3P/QXWflKBgG5fH3/+L0AxQMgmsD7rvs\n/BMUDIHLfQZcc/ERCgbAkcj4clefoWDts8s8zfWVXRSsde5k+61x8zEK1jinB4e97+5zFKxp\n6l4Neviq2yVQsJY5M6rNS3XuF0HB2qUqN3DM+dYWQsGaZXd02NZWvr4CCtYsR8b6Zzq/OGkL\nCtYk56brk500/jqBh+CblySvohVQsFvOz/YfSauNWfBPGfeSAEF44XPJq3EDCnbDyVl+8fup\nl2YV/H046drbIriXSfpQEK5BwS75IkWf8IGE5VkFzzLvEf7HIvha90nSVlLhqvlDBAU7527B\nUP3ELySFsAru/FfBKljI7yJtJW47vqNgZ1zNjTD/6ZTEIFbBfgUNgncYpa0EBUuj7tPHjT3W\n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\nWSAlODtJHKn2ZzJcTrCFhyO/ohTsEJ1HPhInVF8jh+CBOrHgBlXe5/9SU2kjWMoWs0N5wRW6\nROt0rL7SRYGU4AYukmQZNVt4Rf9JKZ1gx+gxZupRkB2DpxPxISTHSSrdCmwES9li9igv+AT5\no3WaRkpdFEgJbmAJ2SmjZkE4Z84SKAU7RneLPTOxbWDCJ7KCvzWPOFp5PCHkJE3ddoKlbDF7\nlBd8iCy2TjPIVy4KpATX844ukeKRw47BNcP6VNEKdow29ew6d9PSYL+P5AQLR2IIIb1oB2Gw\nESxli9mjnuB0UuyiQEqwlU2GYTQD1joGr/I/IkgV3BxtIFvFct0gOcFnYrqs2rkq/F6qo2gX\ngmm2mD3KCz5J0qzTVHLaRYGUYAt1S8hEh8dAUAWXGP8uUAt2rDrEzzpK3wDdrzKCh5u/s7xe\nDBpMU7edYClbzB7lBVfq61MdZah2USAl2OL3SZJFd5+BQ/Cfm4YjWicjWuhrtNb7CLkkPfgX\n8qB1+gChu1phI1jKFrNHhdOkQSGWs0ehwhzvskBKsLCA5Mut+astIs+T8VtodpQOVc8jR8XJ\nff5V0oMvk5HW6VByhSp129MkKVvMDhUEb7AaeYFsdlkgJbiQZMqv2QrlLtox+hBJtpwn7SM0\nD/VyCI4ItO6iAyOp6rYTLGWL2aGC4Krf6h7Pm0YeuCumHWlbID04iizJsSIn2AqtYMfo+ST+\nhaeMQUflBBfqu61+a02k7h2K4A9zcpaT7pb/sULGFrNDjcaGG0+HGyOfEY+LGjZUc4H04Kaf\nUVk1i9AKdoyu3dAnIPRRuuNgh+DPkjoY2j/yMU3s0sb/8ZqcLWYLNhcCBwUDBwUDBwUDBwUD\nBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUD\nBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwUDBwVbmEBuzO9k7POm\np/NQAhRsYRIZn/jKio5kj6cTUQAUbGEyGV0nCMVkmKcTUQAULIiCC8VJjIyxPr0eFCyIgq0j\nqSeS7zydCX9QsCAK/kGcPCpjxHyvBwULouDz4iSR/NvTmfAHBQui4P3ipKdRxmiu3g4KFkTB\n0yyvJWSMpxNRABQsiIITJm9b30X/L08nogAoWBAFn5vf2Rj7v57OQwlQsCAKpnuQghZBwQIK\nBg8KBg4KRjQLCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYO\nCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgYOCgbOfwAhKr3JgKHLaAAAAABJRU5ErkJg\ngg==", "text/plain": [ "plot without title" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "p = seq(0, 1, length.out = 101)\n", "plot(p, qnorm(p), type=\"l\", ylab=\"Quantile\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Point estimates" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "x <- rnorm(10)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
    \n", "\t
  1. -0.106124516091484
  2. \n", "\t
  3. 1.51152199743894
  4. \n", "\t
  5. -0.0946590384130976
  6. \n", "\t
  7. 2.01842371387704
  8. \n", "\t
  9. -0.062714099052421
  10. \n", "\t
  11. 1.30486965422349
  12. \n", "\t
  13. 2.28664539270111
  14. \n", "\t
  15. -1.38886070111234
  16. \n", "\t
  17. -0.278788766817371
  18. \n", "\t
  19. -0.133321336393658
  20. \n", "
\n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item -0.106124516091484\n", "\\item 1.51152199743894\n", "\\item -0.0946590384130976\n", "\\item 2.01842371387704\n", "\\item -0.062714099052421\n", "\\item 1.30486965422349\n", "\\item 2.28664539270111\n", "\\item -1.38886070111234\n", "\\item -0.278788766817371\n", "\\item -0.133321336393658\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. -0.106124516091484\n", "2. 1.51152199743894\n", "3. -0.0946590384130976\n", "4. 2.01842371387704\n", "5. -0.062714099052421\n", "6. 1.30486965422349\n", "7. 2.28664539270111\n", "8. -1.38886070111234\n", "9. -0.278788766817371\n", "10. -0.133321336393658\n", "\n", "\n" ], "text/plain": [ " [1] -0.10612452 1.51152200 -0.09465904 2.01842371 -0.06271410 1.30486965\n", " [7] 2.28664539 -1.38886070 -0.27878877 -0.13332134" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Mean" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Manual calculation" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/html": [ "0.50569923003602" ], "text/latex": [ "0.50569923003602" ], "text/markdown": [ "0.50569923003602" ], "text/plain": [ "[1] 0.5056992" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sum(x)/length(x)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Using built-in function" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/html": [ "0.50569923003602" ], "text/latex": [ "0.50569923003602" ], "text/markdown": [ "0.50569923003602" ], "text/plain": [ "[1] 0.5056992" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "mean(x)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Median" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Manual calculation" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "x_sorted <- sort(x)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "10" ], "text/latex": [ "10" ], "text/markdown": [ "10" ], "text/plain": [ "[1] 10" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "length(x)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Since there are an even number of observations, we need the average of the middle two data poitns" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ "-0.0786865687327593" ], "text/latex": [ "-0.0786865687327593" ], "text/markdown": [ "-0.0786865687327593" ], "text/plain": [ "[1] -0.07868657" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sum(x_sorted[5:6])/2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Using built-in function" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ "-0.0786865687327593" ], "text/latex": [ "-0.0786865687327593" ], "text/markdown": [ "-0.0786865687327593" ], "text/plain": [ "[1] -0.07868657" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "median(x)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Quantiles\n", "\n", "The mean is just the $50^{th}$ percentile. We can use R to get any percentile we like." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ "50%: -0.0786865687327593" ], "text/latex": [ "\\textbf{50\\textbackslash{}\\%:} -0.0786865687327593" ], "text/markdown": [ "**50%:** -0.0786865687327593" ], "text/plain": [ " 50% \n", "-0.07868657 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "quantile(x, 0.5)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\t
0%
\n", "\t\t
-1.38886070111234
\n", "\t
25%
\n", "\t\t
-0.126522131318115
\n", "\t
50%
\n", "\t\t
-0.0786865687327593
\n", "\t
75%
\n", "\t\t
1.45985891163508
\n", "\t
100%
\n", "\t\t
2.28664539270111
\n", "
\n" ], "text/latex": [ "\\begin{description*}\n", "\\item[0\\textbackslash{}\\%] -1.38886070111234\n", "\\item[25\\textbackslash{}\\%] -0.126522131318115\n", "\\item[50\\textbackslash{}\\%] -0.0786865687327593\n", "\\item[75\\textbackslash{}\\%] 1.45985891163508\n", "\\item[100\\textbackslash{}\\%] 2.28664539270111\n", "\\end{description*}\n" ], "text/markdown": [ "0%\n", ": -1.3888607011123425%\n", ": -0.12652213131811550%\n", ": -0.078686568732759375%\n", ": 1.45985891163508100%\n", ": 2.28664539270111\n", "\n" ], "text/plain": [ " 0% 25% 50% 75% 100% \n", "-1.38886070 -0.12652213 -0.07868657 1.45985891 2.28664539 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "quantile(x, seq(0,1,length.out = 5))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise**\n", "\n", "Gene X is known to have a normal distribution with a mean of 100 units and a standard deviation of 15 units in the US population. With respect to this population," ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- (1) What is the medan value for gene X?" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ "100" ], "text/latex": [ "100" ], "text/markdown": [ "100" ], "text/plain": [ "[1] 100" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "100" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- (2) What is the probability of finding a value of more than 130 for gene X if you pick a person at random?" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "m <- 100\n", "s <- 15" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/html": [ "0.0227501319481792" ], "text/latex": [ "0.0227501319481792" ], "text/markdown": [ "0.0227501319481792" ], "text/plain": [ "[1] 0.02275013" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "1 - pnorm(130, m, s)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- (3) If you measure gene X and find that it is in the 95th percentile for this population, what is the measured value?" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/html": [ "124.672804404272" ], "text/latex": [ "124.672804404272" ], "text/markdown": [ "124.672804404272" ], "text/plain": [ "[1] 124.6728" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "qnorm(0.95, m, s)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- (4) Find answers to questions (1), (2) and (3) by simulating 1 million people sampled from the US population. Do they agree with the theoretical calculated values?" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "n <- 1e6\n", "x <- rnorm(n, m, s)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/html": [ "100.020793858963" ], "text/latex": [ "100.020793858963" ], "text/markdown": [ "100.020793858963" ], "text/plain": [ "[1] 100.0208" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "median(x)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/html": [ "0.022838" ], "text/latex": [ "0.022838" ], "text/markdown": [ "0.022838" ], "text/plain": [ "[1] 0.022838" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sum(x > 130)/n" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/html": [ "95%: 124.695020504446" ], "text/latex": [ "\\textbf{95\\textbackslash{}\\%:} 124.695020504446" ], "text/markdown": [ "**95%:** 124.695020504446" ], "text/plain": [ " 95% \n", "124.695 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "quantile(x, 0.95)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- (5) Plot the PDF of gene X using `ggplot2` for values between 50 and 150. Give it a title of `PDF of N(100, 15)`, a subtile of `I made this!`, and label the x-axis as `Gene X` and y-axis as `PDF`. Make the PDF blue, and fill the region under the curve blue with a transparency of 50%." ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nrfVmWVnZnTt37ApP8ku9azIYDGaz2d5+Tkfw9fVlGKasrEzqQGTUXenl5UWSpL0nmCMolUql\nUimTM1alUpWWlkres02SpIeHR2lpqbRhwH87CSuatpPQUd88fn5+lZWV1ljFVOjv729LGVse\nixBCLs9RCTosLIwkydzcXPHmmTNnaJru1KmTLWVseSxCCLk8RyVorVbbv3//9PT0y5cvX7p0\nae3atQMHDtRoNAAwb9682bNnN1CmgccihJD7cODIgQkTJqxcufLNN98EgJSUlHHjxtlexpbH\nIoSQa8O5OGTR5YKdhLVgJ+H95NZJWFJSgp2EVg66klAWA2UQQgjdDxM0QgjJFCZohBCSKVdo\ng34AhYWFa9asiY+Pf/TRR6WORS54nl+4cGGrVq3GjBkjdSwykpaWVl5e/o9//EPqQGRk165d\nZ8+enTJlSgONp+7m6NGjWVlZ//d//xcaGtqET+umNeiSkpIdO3b8+uuvUgciI4Ig7NixIycn\nR+pA5CUzM3P37t1SRyEvx48f37FjR1VVldSByMjvv/++Y8eOa9euNe3TummCRggh+cMEjRBC\nMoUJGiGEZMpNOwkRQkj+sAaNEEIyhQkaIYRkChM0QgjJlPTr4DWPKVOm1Byi2LZt2yVLlgCA\nyWRKS0s7duwYACQnJ0+aNEmtVksWZTM6deqUOOlrTe+++25sbGx9x8qFXbt2bdGiRdevX9+6\ndat1Y33nhpucM3Uek5KSkvT09JMnTwJARETExIkTfX19of7Pl4up85g4NLe4S4I2mUzjx4/v\n3r27eJOm773w5cuXX7t2LTU1laKojz76KC0tberUqdKF2XzCw8NXrVplvZmXl7d06dJ27dpB\n/cfKVWVnZ69evTosLOz69es1t9d3brjDOVPfMZk3bx5JkvPmzSMI4t///vfixYvF5Zvd4Zyp\n75g4NLe4SxPH3bt3AwIC/P/D29sbACoqKnJycsaNGxcSEhIUFDRu3LisrCw3uT5KqVRaj4af\nn99XX301fPhwo9EI9RwrF3b16tUFCxYkJibW3FjfueEm50ydx6SsrIwkyUmTJrVp06Z169Yj\nR448e/asOCWsO5wzdR4TcHBucYsELc4srNVqa22/cOECAISFhYk3Q0NDeZ7Py8tr7vikduTI\nkdu3bw8dOhTqP1YubPTo0YGBgbU21nduuMk5U+cx8fT0TE1Nbd++vXiToiiCIHied5Nzps5j\n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\nYII=", "text/plain": [ "plot without title" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x <- 50:150\n", "df <- data.frame(x=x, y=dnorm(x, m, s))\n", "ggplot(df, aes(x=x, y=y)) +\n", "geom_line(color='blue') +\n", "geom_polygon(fill='blue', alpha=0.5) +\n", "labs(title='PDF of N(100, 15)',\n", " subtitle='I made this!',\n", " x='Gene X',\n", " y='PDF')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Interval estimates" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Confidence intervals" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "ci = 0.95" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
    \n", "\t
  1. 94.215778757373
  2. \n", "\t
  3. 105.784221242627
  4. \n", "
\n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item 94.215778757373\n", "\\item 105.784221242627\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. 94.215778757373\n", "2. 105.784221242627\n", "\n", "\n" ], "text/plain": [ "[1] 94.21578 105.78422" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "alpha = (1-ci)\n", "n <- length(x)\n", "m <- mean(x)\n", "s <- sd(x)\n", "se <- s/sqrt(n)\n", "me <- qt(1-alpha/2, df=n-1) * se\n", "c(m - me, m + me)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note that confidence intervals get larger as the confidence required increases." ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "ci = 0.99" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
    \n", "\t
  1. 92.3442793441823
  2. \n", "\t
  3. 107.655720655818
  4. \n", "
\n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item 92.3442793441823\n", "\\item 107.655720655818\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. 92.3442793441823\n", "2. 107.655720655818\n", "\n", "\n" ], "text/plain": [ "[1] 92.34428 107.65572" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "alpha = (1-ci)\n", "n <- length(x)\n", "m <- mean(x)\n", "s <- sd(x)\n", "se <- s/sqrt(n)\n", "me <- qt(1-alpha/2, df=n-1) * se\n", "c(m - me, m + me)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Making a function" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Review of R custom functions" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "f <- function(a, b=1) {\n", " a + b\n", "}" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/html": [ "3" ], "text/latex": [ "3" ], "text/markdown": [ "3" ], "text/plain": [ "[1] 3" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "f(2)" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/html": [ "5" ], "text/latex": [ "5" ], "text/markdown": [ "5" ], "text/plain": [ "[1] 5" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "f(2,3)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "text/html": [ "5" ], "text/latex": [ "5" ], "text/markdown": [ "5" ], "text/plain": [ "[1] 5" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "f(b=4, a=1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise**\n", "\n", "Make a function called `conf` for calculating confidence intervals for the sample mean that takes two arguments \n", "\n", "- x is the vector of sample values\n", "- ci is the confidence interval with a default of 0.95\n", "\n", "The funciton should return a vector of two numbers indicating the lwoer and upper limeit of the confidence interval\n", "\n", "Check that it gives the same answer as the example above." ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [], "source": [ "conf <- function(x, ci=0.95) {\n", " alpha = (1-ci)\n", " n <- length(x)\n", " m <- mean(x)\n", " s <- sd(x)\n", " se <- s/sqrt(n)\n", " me <- qt(1-alpha/2, df=n-1) * se\n", " c(m - me, m + me) \n", "}" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
    \n", "\t
  1. 94.215778757373
  2. \n", "\t
  3. 105.784221242627
  4. \n", "
\n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item 94.215778757373\n", "\\item 105.784221242627\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. 94.215778757373\n", "2. 105.784221242627\n", "\n", "\n" ], "text/plain": [ "[1] 94.21578 105.78422" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "conf(x)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Coverage\n", "\n", "In 1,000 experiments, we expect the true mean (0) to lie within the estimated 95% CIs 950 times." ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "n_expt <- 1000\n", "n <- 10\n", "cls <- t(replicate(n_expt, conf(rnorm(n))))" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "data": { "text/html": [ "960" ], "text/latex": [ "960" ], "text/markdown": [ "960" ], "text/plain": [ "[1] 960" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sum(cls[,1] < 0 & 0 < cls[,2])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Hypothesis testing" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Binomial test" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "tosses\n", " H T \n", "27 23 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "set.seed(123)\n", "\n", "n = 50\n", "tosses = sample(c('H', 'T'), n, replace=TRUE, prob=c(0.55, 0.45))\n", "t = table(tosses)\n", "t" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "\tExact binomial test\n", "\n", "data: table(tosses)\n", "number of successes = 27, number of trials = 50, p-value = 0.6718\n", "alternative hypothesis: true probability of success is not equal to 0.5\n", "95 percent confidence interval:\n", " 0.3932420 0.6818508\n", "sample estimates:\n", "probability of success \n", " 0.54 \n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "binom.test(table(tosses))" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "tosses\n", " H T \n", "139 111 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "set.seed(123)\n", "\n", "n = 250\n", "tosses = sample(c('H', 'T'), n, replace=TRUE, prob=c(0.55, 0.45))\n", "t = table(tosses)\n", "t" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "\tExact binomial test\n", "\n", "data: t\n", "number of successes = 139, number of trials = 250, p-value = 0.0875\n", "alternative hypothesis: true probability of success is not equal to 0.5\n", "95 percent confidence interval:\n", " 0.4920569 0.6185995\n", "sample estimates:\n", "probability of success \n", " 0.556 \n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "binom.test(t)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### What happens if we choose a one-sided test?" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "\tExact binomial test\n", "\n", "data: t\n", "number of successes = 139, number of trials = 250, p-value = 0.04375\n", "alternative hypothesis: true probability of success is greater than 0.5\n", "95 percent confidence interval:\n", " 0.5020197 1.0000000\n", "sample estimates:\n", "probability of success \n", " 0.556 \n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "binom.test(t, alternative = \"greater\")" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "\tExact binomial test\n", "\n", "data: t\n", "number of successes = 139, number of trials = 250, p-value = 0.9668\n", "alternative hypothesis: true probability of success is less than 0.5\n", "95 percent confidence interval:\n", " 0.0000000 0.6089811\n", "sample estimates:\n", "probability of success \n", " 0.556 \n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "binom.test(t, alternative = \"less\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### What happens if we change our null hypothesis?" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "\tExact binomial test\n", "\n", "data: t\n", "number of successes = 139, number of trials = 250, p-value = 0.8989\n", "alternative hypothesis: true probability of success is not equal to 0.55\n", "95 percent confidence interval:\n", " 0.4920569 0.6185995\n", "sample estimates:\n", "probability of success \n", " 0.556 \n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "binom.test(t, p = 0.55)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Two-sample model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Welch t-test" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [], "source": [ "set.seed(123)\n", "\n", "n <- 10\n", "x1 <- rnorm(n, 0, 1)\n", "x2 <- rnorm(n, 1, 1)" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "\tWelch Two Sample t-test\n", "\n", "data: x1 and x2\n", "t = -2.5438, df = 17.872, p-value = 0.02044\n", "alternative hypothesis: true difference in means is not equal to 0\n", "95 percent confidence interval:\n", " -2.0710488 -0.1969438\n", "sample estimates:\n", " mean of x mean of y \n", "0.07462564 1.20862196 \n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t.test(x1, x2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Standard t-test" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "\tTwo Sample t-test\n", "\n", "data: x1 and x2\n", "t = -2.5438, df = 18, p-value = 0.02036\n", "alternative hypothesis: true difference in means is not equal to 0\n", "95 percent confidence interval:\n", " -2.0705694 -0.1974232\n", "sample estimates:\n", " mean of x mean of y \n", "0.07462564 1.20862196 \n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t.test(x1, x2, var.equal = TRUE)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Power of t-test" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [], "source": [ "d <- 1 # Effect size is ratio of difference in means to standard deviation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "```R\n", "library(pwr)\n", "pwr.t.test(d = d, sig.level = 0.05, power = 0.9)\n", "```\n", "\n", "gives output\n", "\n", "```\n", " Two-sample t test power calculation \n", "\n", " n = 22.02109\n", " d = 1\n", " sig.level = 0.05\n", " power = 0.9\n", " alternative = two.sided\n", "\n", "NOTE: n is number in *each* group\n", "```" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Interpretation of the power calculaiton\n", "\n", "If we did many experiments with `n=23` per group where the effect size is as specified and the test assumptions are valid, we expect that at least 90% of them will have a p-value less than the nominal significance level (0.05). If we used `n=22` we would expect that just under 90% of the experiments will have a p-value less than the nomial significance level (0.05).\n", "\n", "In particular notet that about 1-power of the experiments will fail to show a statistically significant p value even if the assumptionss are met (false negative)." ] }, { "cell_type": "code", "execution_count": 50, "metadata": {}, "outputs": [ { "data": { "text/html": [ "0.901" ], "text/latex": [ "0.901" ], "text/markdown": [ "0.901" ], "text/plain": [ "[1] 0.901" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n_expts <- 10000\n", "n <- 22\n", "alpha = 0.05\n", "sum(replicate(n_expts, t.test(rnorm(n, 0, 1), rnorm(n, 1, 1))$p.value) < alpha)/n_expts" ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [ { "data": { "text/html": [ "0.9125" ], "text/latex": [ "0.9125" ], "text/markdown": [ "0.9125" ], "text/plain": [ "[1] 0.9125" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n_expts <- 10000\n", "n <- 23\n", "alpha = 0.05\n", "sum(replicate(n_expts, t.test(rnorm(n, 0, 1), rnorm(n, 1, 1))$p.value) < alpha)/n_expts" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Distribution of p-values under the null is uniform\n", "\n", "That meas that you expect $\\alpha$ of the experiments to be false positives." ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [], "source": [ "n_expt <- 10000\n", "n <- 50\n", "ps <- replicate(n_expts, t.test(rnorm(n), rnorm(n))$p.value)" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "data": { "text/html": [ "0.0478" ], "text/latex": [ "0.0478" ], "text/markdown": [ "0.0478" ], "text/plain": [ "[1] 0.0478" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sum(ps < alpha)/n_expts" ] }, { "cell_type": "code", "execution_count": 54, "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAMAAAC46dgSAAADAFBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUW\nFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJyco\nKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6\nOjo7Ozs8PDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tM\nTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1e\nXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29w\ncHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGC\ngoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OU\nlJSVlZWWlpaXl5eYmJiZmZmampqbm5ucnJydnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWm\npqanp6eoqKipqamqqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4\nuLi5ubm6urq7u7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnK\nysrLy8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc\n3Nzd3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u\n7u7v7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7////i\nsF19AAAACXBIWXMAABJ0AAASdAHeZh94AAAUo0lEQVR4nO2deWBU1bnAv5lJJjsQWcIWkN2a\nhkJZyiZRoARZpRRRoTV5YFB2oYAtKkUoIAKC+FhFLRVkrWApWHkuz9iHIArlsSirRQ2oGBYJ\n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\nNTIHVle6wkjyFphsfs8qOk/RvtkfwUD+Penv0MdMcnKMeoqOaaxr3xrBRo6YhhAILujoeGj+\nA5B2U6l2Y3GF8eRmMHWmiplkFb2CfbPHQOc5o93xh80kb3E2mPf6gsaOrTqS98ycOQOa8PeY\nZ+KIaQjFjw1XHm/obvyEcl/kOVDlK4wnl11GTe1ZQa9g3+yiF1KiEgfruw/2Sf6gf03XbX3f\n05M7vfQ9fmfmiInQz4XIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHI\nIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHIIcHI\nIcHIIcHIIcHIIcHIIcHIudUFD4ArY5LcKev5bMGzqdXiU+fp7jI4PLjVBf8K+qUvn1UL3mTs\nYch85ZXhMNruKgWWW13wEOhZzNh+6MKKo7orK54eoa8jzHCBBG9RJi1cN1h8vRy7axMESLDa\niXo6fMHmQML9q8/ZXaFAQ4K/UiaDFc87+0WDI13PoDlhBAk+rUzS4d/K5PqeDEdz430yywwJ\n3q1MWrpLO3IdY6LbfJkhwQ/w10PQi+1tqg7kMh4+sblKgYUEdx/y5yX1nO+yGz+JHr/2pcdc\nnXWM5xJGkOBTY+q6U7fx2W8ntohL+OnsqkfcCCtIsL4xFMIWEkyCUUOCkUOCifCGBCOHBCOH\nBCOHBCOHBCOHBCOHBCOHBCOHBCOHBCOHBCOHBCOHBCOHBCOHBCOHBCOHBCOHBCOHBCOHBCOH\nBCOHBCOHBCOHBCOHBCOHBCPnP9adArGCVrRVAAAAAElFTkSuQmCC", "text/plain": [ "Plot with title “Histogram of ps”" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "hist(ps)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Paired and one-sample t-tests\n", "\n", "A paired t-test is commonly used to evaluate if paired measuremetns (e..g. weight before and after a diet for the same person) has changed. The paired t-test is equivalent to a one-sample t-test that compares the difference in measurements for the paired values with a fixed number (usually 0). " ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [], "source": [ "x1 <- rnorm(10, 100, 15)\n", "x2 <- rnorm(10, 100, 15)\n", "delta <- x1 - x2" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "\tPaired t-test\n", "\n", "data: x1 and x2\n", "t = -2.4618, df = 9, p-value = 0.03605\n", "alternative hypothesis: true difference in means is not equal to 0\n", "95 percent confidence interval:\n", " -12.3446069 -0.5215923\n", "sample estimates:\n", "mean of the differences \n", " -6.4331 \n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t.test(x1, x2, paired=TRUE)" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\n", "\tOne Sample t-test\n", "\n", "data: delta\n", "t = -2.4618, df = 9, p-value = 0.03605\n", "alternative hypothesis: true mean is not equal to 0\n", "95 percent confidence interval:\n", " -12.3446069 -0.5215923\n", "sample estimates:\n", "mean of x \n", " -6.4331 \n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t.test(delta, mu=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise**\n", "\n", "Suppose that the null hypotehsis is that there is no difference in the paired measurements and the standard deviation of the differene is 2.\n", "\n", "- Run a simulation for 100,000 experiments with `n=25` per experiment to show the distributon of the p values using a paired or one -sample t-test under the null.\n", "- If the significance level is 0.05, how many false positive results were observed?" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [], "source": [ "n_expt <- 100000\n", "n <- 25\n", "s <- 2\n", "ps <- replicate(n_expts, t.test(rnorm(10, 0, s), mu=0)$p.value)" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAMAAAC46dgSAAADAFBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUW\nFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJyco\nKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6\nOjo7Ozs8PDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tM\nTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1e\nXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29w\ncHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGC\ngoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OU\nlJSVlZWWlpaXl5eYmJiZmZmampqbm5ucnJydnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWm\npqanp6eoqKipqamqqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4\nuLi5ubm6urq7u7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnK\nysrLy8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc\n3Nzd3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u\n7u7v7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7////i\nsF19AAAACXBIWXMAABJ0AAASdAHeZh94AAAUt0lEQVR4nO2de2AU1bnAv90kS55A5BHCUyAJ\nVgwFAeUlUaGE96OIgGBNLhiUt1DAFhURCoiAQXoBQcRSAVHsBZuClSrU9F4EUSiXh/ISEQMo\nRkAgQUhOz8xukj2zyWQeuzuzX77fH/P8vjNn55edx8nOHGAEasDqChCBhQQjhwQjhwQjhwQj\nhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQj\nhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjhwQjJ8QE\nLwOAAnnqJz61grFcPvrRqtosTY2Na37dqq1rA6Xg82FwNAiVeQ0kfgrClkwQ6oLzli1bdkMZ\n9QoERfAQgDv/vvNWELZkglAXXC6dgyO4G8CUIGzGHKEuuOQQXbikY82Ixj22FDPWRz5ywiS+\n9NrLabXC4zvO+cGd/XaXuNh7/sxSATYx9iJA/5/6R45jrHhLehNXrZ7vSyH/DfAge7NlVNJL\njO3oGFM764r35r3LG+PeTOkhej1AI7ate62o1quLmVgjK0Ei+Hp7z+4eXuwl+GiSZ2nCbinl\nBffMvPoA78kq06YADGXFwzxRr/CYdQBt1slzSz52SaO+XlsXylMK3gpQY7VDXjSNiTWyEiSC\nl3AvW/ZsaAywnh3muxrW555il5sBJL7810UJAHUvMPZvJ0CL17eOiIgA2MbYKn4GrVG93Xj2\nFoDj1QOTAKIuMrYRoEG9kRO42yZt2k7n5cHB0o2L5Z3IbQcwLDe3yLN2G0BY9JB319zBi/tU\nrJGVhKDgMsoE8y/hq3z1u7f9ch5j58B9Dp4HEHmMj8/EAcxkbDxA9Ld8dhBfvZ2x1XzUUfr6\nPdOycQ/GbkQCvCsLhicZW8hHLa6zg3y0vHTjivKkc/DUsqpt57H9+Pg8XztGUSMLQSKYHy+b\nrjvnCSoRfLd0AJZ4DKAVY60AhkhzO8sEf1Ra8M2ChrJLSfC/GfuCjxbwxbcDPFsaoyivHMH/\nkCZGANylqJGFhKDgZs0lmgmCc52S8GaPb5dOeCWCXW5JjC0CcDHGv1mzpbkfygT/LK/e1ruu\nnA7LZMEOvvQSn/srX9UBYEbpxhXllSP4ojTxB4A4RY0sJAQFl3sVvamO+0t9z/lSwYVuZZyV\nfOoGCwNYLM0VO0sEx8trF/O18a07VCsRHMOXFfBluXyc5iVYWZ6vYKc8kc1PxooaWQgWwaww\n56l7+dUTDCr7BlcrOb7yM2o1xmIBXpDmLpZ+gxOk2Uv85JvFr5QaVCZYWV4532C5JnP45bSi\nRhaCRrC87Fl+7CwuFdwWYIC8nF/wtGfsTs8p9ENRsDR7mHsOr1SworxyBH/sWdtaUSMLwSH4\n+iOtk2/yhdcd4LzFzvNl/+Jz8wHCT/Dx8SiAhYyN5u7y+OwAUfBHfHa3/L2DReqCFeWVI/hh\nPj7HjxQTFTWyEByCpX09cNvevw8FSGPsFv8ypv1lB7vSFKDxyg+W1gdIucrYbunWZ81fhkY6\nBcF5Dn679NZkZzJAt2MFaoIV5ZVzDnZlbnuTHyjC/l9RIwtBIvh4w5I2piN8XU9pqg9jR5t7\nlt5xXEqZ6J5ZGi4IZhny0h57pOF+NcHK8nwEOxa7V89nyhpZBxLBLO+3rWKdcW2flW9Uzg6s\nGdVMal+4uqRzfHit+5e5/2dbvLJVZPwDW6Wr6B1egq89Vd+VNPtntrRlg/vOqApWlOd7iL61\nuXNcTOfN8rxQI+sIMcH+QLoG+9z/xUqCb/q/WLNUIcGHZo7sIZ06l/Mvqc+/kM1Dgq3mWBjA\nA+//30vRgfk3Lgm2nKVOz3VPj4IAlE6CrWf/k7+oEVGv9/qAtDyQYMIKSDBySDBySDBySDBy\nSDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDBy\nSDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDBySDByTAkuOLp375cBeKcY\n4T+MC76+uI383qmwjqtt+PYgwoNhwT+2gfhfjZo4MfP+aEizeQeN9qYgX6So8hQdGBY8Pmy5\nu0sLdnU2PO2v6lRFGoDIJL+Wblhwg/8qmx56uz+qUlWJyd7nTd8Mv5ZuWHDE4rLp+S5/VKWq\nEpMjzGbYRHAjr3oMb+yPqlRVbCp4gnOF5+K5YKFjqnpsFWfLEBHFFYtNBeenwm3poydPGtWt\nOnQIUC/Y6xaI7A3MZgJNRkqWNz1jxNU2FcyuLkiVO1N1tvPtgttPxLbu7k2ifz960FAoywkR\nwZxrhz/ZcyQQL9f2EMiPPjtLJKfyFKOErmB/N1WeHiqerMLXCqv9+tFjegp+UwJ4dAhRwQFo\nqsyJmCEAzwur/Ss4oLtVreycaLHlKtqeggPRVKn827ZQ8NcnBb7WVfbAtgK17hXWLlS0XMFL\nqjUxia2aKvUJPjNMPKAP/0bPttQF71RK2KWr7PGvelMnSVg7C4SWq32B/DMOVFPl1efLjrNT\n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\n7pPHHeCcpqqLt0l69piCIAh+RTYyF1ZVuEBP8jswxfiWZTQeon2zP4H+/D7pb9DTSHKjKPkQ\nHdVE07YVgvXsMQVBEFx4j+ORBcMg7aZU7SbiAv3JzWHaLBkjyTJaBftmj4WOc8e4Yg8aSX7H\n2WD+xoVNHJs1JO+YNWsmNOWf8ZqBPaYgGP9suPxUQ1eTp6XrIs+OKlugP7n0NGpoyxJaBftm\nF73Sslr8IG3XwT7JH/etFXZb751acmeUfMbvjewxEfp3IXJIMHJIMHJIMHJIMHJIMHJIMHJI\nMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJI\nMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHJIMHKquuB+cHlsgqvlej5Z+GJq9djU\n+ZpfGRwaVHXBv4Y+6ctn14b3GHsMMteuHQFjrK6Sf6nqggdDt2LG9kInVlytq7TguZHaXoQZ\nKpDgd6RRctgNFpuYZ3VtAgAJll+ing6n2VyIe3jVGasr5G9I8FlpNEjynNMnEhzpWjrNCSFI\n8ElplA5fS6PrOzIcSfrfyWxnSPB2aZTiKnmR61gDr823MyR4GB8egO5sdzO5I5cJ8JnFVfIv\nJLjr4D9lJzo/Yjd+ETlhzWtPhnXU0J9LCEGCT4yt50p9l09+Nyk5Ju6uOZX3uBFSkGBtfSiE\nLCSYBKOGBCOHBBOhDQlGDglGDglGDglGDglGDglGDglGDglGDglGDglGDglGDglGDglGDglG\nDglGDglGDglGDglGDglGDglGDglGDglGDglGDglGDglGDglGzn8AsA9RYVT3TiYAAAAASUVO\nRK5CYII=", "text/plain": [ "Plot with title “Histogram of ps”" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "hist(ps)" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "data": { "text/html": [ "2.00293039283011" ], "text/latex": [ "2.00293039283011" ], "text/markdown": [ "2.00293039283011" ], "text/plain": [ "[1] 2.00293" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n <- 100000\n", "s <- sqrt(2)\n", "sd(rnorm(n, 0, s) - rnorm(n, 0, s))" ] } ], "metadata": { "kernelspec": { "display_name": "R", "language": "R", "name": "ir" }, "language_info": { "codemirror_mode": "r", "file_extension": ".r", "mimetype": "text/x-r-source", "name": "R", "pygments_lexer": "r", "version": "3.6.0" } }, "nbformat": 4, "nbformat_minor": 2 }