{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "tags": [ "remove_input" ] }, "outputs": [], "source": [ "path_data = '../../data/'\n", "\n", "import numpy as np\n", "import pandas as pd\n", "from scipy import stats\n", "\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "plt.style.use('fivethirtyeight')\n", "\n", "import warnings\n", "warnings.filterwarnings('ignore')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# The Variability of the Sample Mean\n", "By the Central Limit Theorem, the probability distribution of the mean of a large random sample is roughly normal. The bell curve is centered at the population mean. Some of the sample means are higher, and some lower, but the deviations from the population mean are roughly symmetric on either side, as we have seen repeatedly. Formally, probability theory shows that the sample mean is an *unbiased* estimate of the population mean.\n", "\n", "In our simulations, we also noticed that the means of larger samples tend to be more tightly clustered around the population mean than means of smaller samples. In this section, we will quantify the variability of the sample mean and develop a relation between the variability and the sample size." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's start with our table of flight delays. The mean delay is about 16.7 minutes, and the distribution of delays is skewed to the right." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Delay
0257
128
2-3
30
464
......
13820-4
138218
138223
13823-1
13824-2
\n", "

13825 rows × 1 columns

\n", "
" ], "text/plain": [ " Delay\n", "0 257\n", "1 28\n", "2 -3\n", "3 0\n", "4 64\n", "... ...\n", "13820 -4\n", "13821 8\n", "13822 3\n", "13823 -1\n", "13824 -2\n", "\n", "[13825 rows x 1 columns]" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "united = pd.read_csv(path_data + 'united_summer2015.csv')\n", "delay = united[['Delay']]\n", "delay" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Delay 16.658156\n", "dtype: float64" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pop_mean = np.mean(delay)\n", "pop_mean" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "tags": [ "remove_input" ] }, "outputs": [ { "data": { "image/png": "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7p6vd+HCBb388st6/PHH1bRpU7Vs2VKRkZH65z//WbZNXl6emjZtqjlz5lRon5OToyZNmujPf/6zYwYI1FIEPYAykZGRkqS9e/dKkk6fPq0BAwboq6++0owZMxQXF6egoCC98MILWrVqVZWvdfz4caWlpWno0KGKi4vTtGnTdPz4cQ0ePLjs18saNmyo3/72t9q6datu375drv0HH3yg4uLispoA2IdD9wDKNG/eXA0bNtTZs2cl/XQu/85vZT/wwAOSpEmTJmnixImKi4vTM888Ix8fn7u+1sCBAzV8+PByyyIjI/WrX/1Kf/vb3zRr1ixJP/2C3ebNm7V3715FRESUbZucnKywsDB17NjRGUMFag326AGUc+f3wXNycvTpp59qxIgRunXrlrKyssoeTz31lG7evKnjx49X+jp3/jCQpB9++EHZ2dl68MEHFRwcrBMnTpSt69u3r5o1a6ZNmzaVLTt//rwOHz6scePGOWWMQG3CHj2AcvLz8/XQQw/pu+++k8Vi0ZIlS7RkyZK7bnv9+vVKX6ewsFBvvvmmkpOTdfXq1XLrAgICyv5dp04djR07VqtXr9bNmzfVoEEDJScny2QyafTo0Y4ZFFCLEfQAyly6dEl5eXlq06aNSktLJUnTp08vd0j958LCwip9rZiYGK1du1bPPfecevbsqYYNG6pOnTqKjY0te+07oqKi9N///d/avn27oqOjtXnzZvXp00fNmjVz3OCAWoqgB1DmzuHz/v37q1WrVpKkunXrqm/fvja/1tatWzVu3DgtXry43PKcnBw1atSo3LK2bdvqscce06ZNm9SuXTv961//0ksvvWTXGACUxzl6AJKk/fv3a+nSpXr44Yc1duxYNW7cWH369NFf//pXXbx4scL2VR22lyQPDw9ZLJZyy7Zs2aIrV67cdfuoqCgdOHBAK1askI+Pj4YOHWr/YACUYY8eqIU++eQTnTlzRrdv39b333+vzz77TPv27VNQUJA2btwob29vSdLy5cs1aNAg9e7dW88884yCg4OVlZWlr776Snv37lVGRkalfTz99NP6+9//rgYNGigsLEzp6enaunVr2ZGCXxo9erTmzp2rbdu2aezYsfL19XXG0IFah6AHaqE7h9O9vLzk7++vsLAwxcXFafz48WrQoEHZdiEhIfr000/11ltvafPmzbp+/boCAgLUtm1bLVq06J59eHp66oMPPtC6devUuXNnpaSkaN68eXfd3t/fX4MGDdL27du52h5wIFNOTo7l3psBgPNNmjRJaWlp+uabb+Th4eHqcgBD4Bw9gBohKytLH330kcaOHUvIAw7EoXsALnXu3Dl98cUX2rBhgywWiyZPnuzqkgBDIegBuFRaWppmzJihFi1aKCEhQS1btnR1SYChcI4eAAAD4xw9AAAGRtADAGBgBD0AAAZG0AMAYGAEPQAABkbQAwBgYP8HF3JUZHFalZYAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "source = delay\n", "\n", "source_col = ''\n", "\n", "bins = np.arange(-20, 300, 10)\n", "\n", "if source_col =='':\n", " source = source\n", "else:\n", " source = source[source_col]\n", "\n", "unit = ''\n", "\n", "fig, ax = plt.subplots(figsize=(7,5))\n", "\n", "ax.hist(source, bins=bins, density=True, color=('darkblue'), alpha=0.8, ec='white', zorder=5)\n", "\n", "ax.scatter(pop_mean, -0.0008, marker='^', color='darkblue', s=60, \n", " zorder=15).set_clip_on(False)\n", "\n", "y_vals = ax.get_yticks()\n", "\n", "y_label = 'Percent per ' + (unit if unit else 'unit')\n", "\n", "x_label = 'Delay'\n", "\n", "ax.set_yticklabels(['{:g}'.format(x * 100) for x in y_vals])\n", "\n", "plt.ylim(-0.004, 0.04)\n", "\n", "plt.ylabel(y_label)\n", "\n", "plt.xlabel(x_label)\n", "\n", "plt.title('');\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now let's take random samples and look at the probability distribution of the sample mean. As usual, we will use simulation to get an empirical approximation to this distribution.\n", "\n", "We will define a function `simulate_sample_mean` to do this, because we are going to vary the sample size later. The arguments are the name of the table, the label of the column containing the variable, the sample size, and the number of simulations." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "\"\"\"Empirical distribution of random sample means\"\"\"\n", "\n", "def simulate_sample_mean(table, label, sample_size, repetitions):\n", " \n", " means = make_array([])\n", "\n", " for i in range(repetitions):\n", " new_sample = table.sample(sample_size)\n", " new_sample_mean = np.mean(new_sample.column(label))\n", " means = np.append(means, new_sample_mean)\n", "\n", " sample_means = Table().with_column('Sample Means', means)\n", " \n", " # Display empirical histogram and print all relevant quantities\n", " sample_means.hist(bins=20)\n", " plots.xlabel('Sample Means')\n", " plots.title('Sample Size ' + str(sample_size))\n", " print(\"Sample size: \", sample_size)\n", " print(\"Population mean:\", np.mean(table.column(label)))\n", " print(\"Average of sample means: \", np.mean(means))\n", " print(\"Population SD:\", np.std(table.column(label)))\n", " print(\"SD of sample means:\", np.std(means))" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "\"\"\"Empirical distribution of random sample means\"\"\"\n", "\n", "def simulate_sample_mean(table, label, sample_size, repetitions, xlim=(), ylim=()):\n", " \n", " means = np.array([])\n", "\n", " for i in range(repetitions):\n", " new_sample = table.sample(sample_size, replace=True)\n", " new_sample_mean = np.mean(new_sample[label])\n", " means = np.append(means, new_sample_mean)\n", "\n", " sample_means = pd.DataFrame({'Sample Means':means})\n", " \n", " # Display empirical histogram and print all relevant quantities\n", "\n", " unit = ''\n", "\n", " fig, ax = plt.subplots(figsize=(8,5))\n", "\n", " ax.hist(sample_means, bins=(20), density=True, color='blue', alpha=0.8, ec='white', zorder=5)\n", "\n", " y_label = 'Percent per ' + (unit if unit else 'unit')\n", "\n", " x_label = 'Sample Means'\n", " \n", " plt.xlim(xlim)\n", " \n", " plt.ylim(ylim)\n", " \n", " y_vals = ax.get_yticks()\n", "\n", " ax.set_yticklabels(['{:g}'.format(x * 100) for x in y_vals])\n", "\n", " plt.ylabel(y_label)\n", "\n", " plt.xlabel(x_label)\n", "\n", " plt.title('Sample Size ' + str(sample_size))\n", "\n", " print(\"Sample size: \", sample_size)\n", " print(\"Population mean:\", np.mean(table[label]))\n", " print(\"Average of sample means: \", np.mean(means))\n", " print(\"Population SD:\", np.std(table[label]))\n", " print(\"SD of sample means:\", np.std(means))\n", "\n", " plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let us simulate the mean of a random sample of 100 delays, then of 400 delays, and finally of 625 delays. We will perform 10,000 repetitions of each of these process. The `xlim` and `ylim` lines set the axes consistently in all the plots for ease of comparison. If we knew that the limits would not change we could set the limits as default values in teh function `simulate_sample_mean`." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Sample size: 100\n", "Population mean: 16.658155515370705\n", "Average of sample means: 16.68989\n", "Population SD: 39.48019985160957\n", "SD of sample means: 3.9832359769288086\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAFuCAYAAAB9QTkMAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Il7ecAAAACXBIWXMAAAsTAAALEwEAmpwYAAA7p0lEQVR4nO3deVxU9f7H8feIiogYZYiICAooaKYpqankGqUpYmqK1s1sMdTK+llCVuaKC3nb0Cyzm1ct14rUMks0c7tprlleXHBFTBQURSxnfn/4YK4T2yAzDEyv5+PB4+Gc9TPfTvL2e77newyZmZkmAQAAOIlKji4AAADAlgg3AADAqRBuAACAUyHcAAAAp0K4AQAAToVwAwAAnArhBoDNbNy4UZ6enoqPj3d0KRY8PT314IMPOroMAGWEcAOUEaPRqPnz56tnz55q0KCBbr/9dgUGBuqee+5RTEyMli9f7ugSK4wNGzbo0UcfVWhoqLy8vFS/fn21bNlSgwcP1rvvvqvc3FxHl1io5ORkjR07VpGRkQoICJCnp6e6detW7H4nT57UyJEjFRISotq1a6tZs2aKjY1VZmZmofscOHBAQ4YMUVBQkLy9vRUWFqYpU6YoJyfHht8IKH8qO7oA4O/AaDQqOjpaa9asUc2aNfXAAw+obt26ysrK0pEjR5SUlKTt27erb9++ji613Hvrrbf0xhtvqHLlyuratasCAwNlNBp19OhRbd++XatWrdLDDz8sb29v8z7/+c9/5Obm5sCq/+fDDz/U6tWrVa1aNTVs2LDIcJInNTVVEREROnPmjHr06KFGjRppx44dev/99/X9999rzZo1uu222yz22bFjhyIjI3X16lX17t1bvr6++uGHHzR9+nT98MMP+vLLL+Xq6mqnbwk4FuEGKAPLli3TmjVrdMcdd2jVqlW65ZZbLNZfuXJFW7ZscVB1Fcfx48c1ceJEeXh46Ouvv9Ydd9xhsd5kMmnjxo2qUaOGxfJGjRqVZZlFGjVqlF577TU1atRIJ06cUPPmzYvd58UXX9SZM2c0bdo0DRs2zLz8lVde0axZszRx4kT985//NC+/du2ahg8frkuXLmnRokXq0aOHpOshe8iQIUpKStKsWbP0wgsv2P4LAuUAt6WAMrBt2zZJ0qBBg/IFG0mqVq2aOnfubLHs6tWr+uCDD9SvXz/dcccdql27tvz9/RUZGak1a9YUeJ5mzZrJ09NTf/zxh6ZNm6YWLVqYb0d88skn5u0+/PBD3XPPPapTp46aNGmiKVOmyGg0Whzr6NGj5rEqaWlpevrppxUYGKg6deqoU6dOWrFiRYnaICsrS5MnT9Y999wjHx8f1atXTw888IC++OILq4+xfft2Xbt2TeHh4fmCjSQZDAbde++9cnd3t1j+1zE3eWODivpZuHChxTHS09MVGxurli1bytvbW/7+/urTp482bNhQonZo3bq1QkND5eLiYtX2qampWrdunfz9/fXUU09ZrIuLi5O7u7sWL16sS5cumZf/+OOPOnDggNq3b28ONpJUqVIlTZgwQZI0b948mUy8fQfOiZ4boAzk3TI4dOiQ1fucP39esbGxatOmjTp37qzbb79dp0+f1urVqzVgwAC99dZbGjJkSIH7Dh06VLt27dJ9990nk8mk5cuX6/nnn5eLi4v27Nmjzz//XPfff786dOigpKQkTZ8+XdWrV9eoUaPyHSszM1P333+/brnlFj3yyCPKzMzU559/rqFDhyotLU0jRowo9rucOnVKvXr10qFDh3TPPfdoyJAhunz5sr799lsNGTJEY8aMUVxcXLHHyWvH1NRUXbt2zeqA8Ff169fXmDFj8i03mUx6//33deHCBVWvXt28/JdfflGfPn30+++/q0uXLurRo4fOnTunVatWKSoqSu+8844effTRm6qlOD/88IMkqUuXLqpUyfLfox4eHmrTpo3WrVun7du3q2PHjpKuhzdJBY7lCQgIUFBQkA4ePKjU1FQ1aNDALnUDjkS4AcpAr1699NZbb2nevHm6cOGCunfvrhYtWqhBgwYyGAwF7uPp6am9e/fK19fXYnle2HjjjTc0YMCAAseSpKena/PmzfLw8JAkRUdHKyIiQq+88opq166tzZs3y8vLS5I0cuRIhYWF6d1339XIkSNVubLlXwt5v9g/+ugj8y/XUaNGqWPHjho/frx69eql+vXrF/n9Y2JidPjwYc2dO1f9+vUzL79w4YJ69uyp6dOn68EHH9Sdd95Z5HHCwsLk5+en/fv3q2fPnhowYIBatmyp0NBQValSpch9b+Tv719gmBo7dqwuXLig3r17KyoqStL1WzyPPfaYsrKy9NVXX6lDhw7m7U+fPq2uXbvqpZde0v3336/atWtbXYO1UlJSJEkNGzYscH1gYKDWrVungwcPmsONNfscPHhQBw8eJNzAKXFbCigDd955pz744APVrl1bS5cu1dChQ9WyZUsFBARowIAB+uKLL/LdInB1dc0XbKTroSevB+Xnn38u8Hyvv/66OdhI12+FBAQE6MKFC/q///s/c7CRrv+iv+eee5SRkaFTp07lO5aLi4vGjRtn0WvQoEEDPfnkk7p69aqWLFlS5Hf/5ZdftGHDBj344IMWwUaSatasqdjYWJlMJi1durTI40iSu7u7Pv30UzVr1kxbtmzRqFGjdO+995pvcSUmJlrcnimJDz74QImJiWrbtq3mzJljDp3ffvutDh48qCeeeMIi2EhSnTp19Oyzz+rKlSv68ssvb+q8xblw4YIkFXg7U7rehtL1236l2QdwJvTcAGWkT58+6tmzpzZu3KgtW7bol19+0datW7VmzRqtWbNGERERWrBggapWrWre59dff9U777yjzZs36/Tp0/kecU5LSyvwXAX1gNSpU0epqalq1qxZgeuk67eP/toLU69ePQUEBOTbp3379po5c6b27NlT5PfOG2908eLFAue/ycjIkCT997//LfI4ee644w5t3LhRO3fu1MaNG7V3715t375dW7du1datWzV37lwlJSXJz8/PquNJ0qpVqxQbG6ugoCAtWrRI1apVy1f/iRMnCqz/8OHDJarf1vJCcWE9gLbaB6hICDdAGapSpYq6dOmiLl26SLr+9EpSUpJGjBihb7/9VvPmzdMzzzwjSfrpp58UGRmpP//8Ux07dlT37t3l4eGhSpUqae/evVq9enWh87nk/cv8RnnjU27s0fnruj/++CPfusJuteT1/uT1EhTm3Llzkq7PTVPU4NuS9rjcdddduuuuu8yfd+7cqWHDhum///2v4uLitGDBAquOs2PHDj311FOqVauWli1blu+R6rz6k5KSlJSUZLP6rVVcL8vFixcttrvZfQBnQrgBHKhSpUqKiorSvn37lJCQoPXr15vDTUJCgnJycvTVV18pPDzcYr+ZM2dq9erVZVLjmTNnClz++++/Syr+F2Te+kmTJmnkyJG2Le4Gd911l6ZPn66oqCirn2BKTU3VwIEDJUmfffZZgT1UefXPnz9fkZGRNqvXWsHBwZIKH4yetzwoKKhU+wDOhDE3QDmQ15ty47ibw4cP69Zbb80XbCRp06ZNZVbbiRMndPTo0UJrKG4QcOvWrSWpTObxKagdC3Pu3Dn169dPGRkZ+vDDD9WqVasCt7v77rsllU39Bcn7779u3bp8j+tfvHhR27Ztk5ubm8LCwvLt89133+U7Xmpqqg4ePCg/P78CwxzgDAg3QBlYtmyZkpOT8/1ykq4/2TR//nxJ18ex5Klfv77Onz+vffv2WWw/f/58ff/99/Yt+AbXrl3TG2+8YVH7kSNHNHfuXFWpUkX9+/cvcv8WLVqoffv2Wr16tT755JMCg8fBgwd1/PjxYmvZsWOHFi5cWODrA/744w+99dZbkqR27doVeZwrV64oOjpaBw8e1NSpU4t871SPHj3UsGFDffzxx4X2lu3evdt8+8rWGjRooC5duujYsWP68MMPLdbFx8fr0qVLGjhwoMXcPh06dFDjxo21efNmi5qNRqPGjRsn6fp0AYy5gbPithRQBrZv3673339f3t7eatu2rfz9/SVdnyjv22+/VU5Ojlq3bm0xSVtMTIy+//57de/eXVFRUapZs6Z27typrVu3qnfv3nZ7OuevmjZtqh07dqhTp07q0qWLzp8/r88//1wXLlzQ5MmTzd+lKHPnzlXv3r31/PPPa86cObr77rt166236tSpU/rtt9+0Z88eLViwoNhBwHnz6rz88stq27atGjVqJDc3N50+fVrff/+90tPTVbt2bU2ePLnI48yZM0fbtm1TvXr1lJGRUeBA4bxH06tUqaIFCxbooYce0qBBgxQWFqbmzZvL3d1dJ0+e1J49e5SSkqIffvgh33idgmzZssUcZvPG6Rw5ckQxMTHmbSZNmqRatWqZP7/55puKiIjQmDFjtGHDBjVu3Fjbt2/Xxo0bFRQUpNdee83iHC4uLkpMTFRkZKQee+wx9e7dW/Xq1dOGDRu0c+dOtW3bVsOHDy+2VqCiItwAZeDZZ59VcHCwkpOTtX//fiUnJ+vy5cu69dZb1bp1a0VFRemRRx6xmKulW7du+uyzz5SQkKDPP/9clSpVUqtWrfTVV18pNTW1zMKNp6enli1bpnHjxunf//63srOzFRISoueee87qd2H5+PgoOTlZH374ob788kstX75cf/zxh2rXrq2goCBNnTo132PWBenYsaM++ugjJScna+fOndq9e7fOnz8vd3d3BQYG6h//+IeeeeYZi2BQkMuXL0u6fstt2rRpBW5Tv3598y23Jk2a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lSTl5uaqV69eatq0aZkUBgAAcDOKDDc3io2NtWcdAAAANlFouPn0008lSQMHDpTBYDB/Lk50dLRtKgMAALgJhYab4cOHy2AwqG/fvqpataqGDx9e7MEMBgPhBgAAOFSh4Wb37t2SpKpVq1p8BgAAKM8KDTf169cv8jMAAEB5xJTCAADAqVj9tJQkrV+/Xp988olSU1N1/vz5fK9kMBgM2rVrly3rAwAAKBGrw83s2bM1duxY3X777QoLC1NoaKg96wIAALgpVoebxMREtW/fXsuXLzcPMgYAAChvrB5zk5GRoYceeohgAwAAyjWrw02LFi107Ngxe9YCAABQalaHm8mTJ2vRokX64Ycf7FkPAABAqVg95iY+Pl41a9ZUVFSUAgMD5efnJxcXF4ttDAaDlixZYvMiAQAArGV1uPntt99kMBhUr1495ebm6uDBg/m2MRgMNi0OAACgpKwON3v37rVnHQAAADbBDMUAAMCpWN1zc/z4cau28/Pzu+liAAAASsvqcHPnnXdaNabm3LlzpSoIAACgNKwON++9916+cHPt2jUdPXpUn332mWrXrq0nn3zS5gUCAACUhNXhZvDgwYWuGzVqlLp06aLs7GybFAUAAHCzbDKguEaNGho8eLBmzZpli8MBAADcNJs9LVWlShWlpaXZ6nAAAAA3xSbhZu/evXr//ffVuHFjWxwOAADgppX6aamsrCxduHBBNWrUUGJiok2LAwAAKCmrw0379u3zhRuDwSBPT081bNhQffv2laenp63rAwAAKBGrw83s2bPtWQcAAIBNOPT1C5s2bdLAgQMVGhoqT09PLVy40GJ9TEyMPD09LX66devmoGoBAEBFYHXPjT1cunRJTZo0UXR0tJ555pkCt+nUqZPmzJlj/ly1atWyKg8AAFRADg03ERERioiIkCQNHz68wG1cXV3l7e1dlmUBAIAKrNy/FXzLli0KCgpSq1at9Nxzz+n33393dEkAAKAcM2RmZpocXYQk+fr6avr06RaveVi+fLnc3Nzk7++vY8eOadKkSTIajVq/fr1cXV0LPE5KSkpZlQwAAOwgODi4VPtbdVvqypUrevvtt3X33XerS5cupTphSfTt29f856ZNm6pFixZq1qyZ1qxZo8jIyAL3KW2D4LqUlBTa0kZoS9uiPW2L9rQd2rL8sOq2VLVq1fTPf/5TJ06csHc9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SpUqqVKlwjdPT0+Xm5tbiU4eERGh119/Xb179853bJPJpNmzZ2vUqFHq3bu3mjRpotmzZys7O1vLli0r0XkAAMDfh9U9Ny1atNA333yjYcOG5Vt39epVLV26VK1bt7ZZYUePHlV6erq6dOliXubm5qZ27dpp27Ztevzxx212LqC8MxhctH176W5tFYdbXwCchdXh5sUXX1S/fv00cuRI9e/fX5J0+vRpfffdd0pISNCRI0eUmJhos8LybnF5eXlZLPfy8lJaWlqh+6WkpNishr872tI6Fy4EKDe36F7L3NzcUp0jLc1FkydfK9UxijN5co6ys1Pteg5b4dq0LdrTdmhL2wgODi7V/laHm86dO2vOnDl66aWXtGjRIklSTEyMTCaTbrnlFs2dO1d33313qYopyF9nRTaZTEXOlFzaBsF1KSkptKWVsrKqFTmmJjc3V66urqU6R5Uqkqur1f+73pSaNStXiP/mXJu2RXvaDm1ZfpTob8t+/fqpR48eSk5O1qFDh2Q0GtWgQQN17dpVNWrUsGlh3t7ekqQzZ86oXr165uVnz57N15sDAACQp8T/FKxevboefPBBe9Riwd/fX97e3kpOTlbLli0lSVeuXNGWLVs0YcIEu58fAABUTFY/LbV69Wq99NJLha5/6aWX9M0335To5NnZ2dqzZ4/27Nkjo9GoEydOaM+ePTp+/LgMBoNiYmL01ltvKSkpSfv379fw4cPl7u6ufv36leg8AADg78PqcPPuu+8WOL9NnitXrujtt98u0cl37type++9V/fee69ycnIUHx+ve++9V1OmTJEkPf/88xo+fLheeuklde7cWadPn9aKFSuY4wYAABTK6ttS+/fv10MPPVTo+ubNm2vlypUlOnl4eLgyMzMLXW8wGBQXF8cbyQEAgNWs7rn5888/lZOTU+j6nJycUj/uCgAAUFpWh5smTZooKSlJRqMx3zqj0aikpCSFhITYtDgAAICSsjrcPPPMM9qxY4eio6O1a9cu5ebmKjc3V7t27dKgQYO0Y8eOAmcvBgAAKEtWj7np27evjhw5ovj4eK1du1bS9TExeZPqjRkzRgMGDLBboQAAANYo0Tw3o0ePVr9+/fTVV18pNTVVJpNJDRo0UK9evRQQEGCnEgEAAKxnVbjJycnRww8/rAEDBuiRRx7Rs88+a++6AAAAbopVY27c3Ny0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EhIS1KRJEwdUW74V1ZYzZ87U4MGDtWfPHmVlZcnb21vh4eEaO3as6tWr54Bqy7e/PsWTZ8yYMYqLi5Mkrs0SKK49c3JyuD6tFBMTo40bN+rMmTOqWbOmmjZtqueee05du3aVxHVZUkW1Z2mvywodbgAAAP7KqcbcAAAAEG4AAIBTIdwAAACnQrgBAABOhXADAACcCuEGAAA4FcINAIeKj48vdC4WALgZhBvACfzyyy8aMmSImjVrJm9vb4WEhKhHjx6Kj493dGkO4enpKU9PTz3zzDMFrp87d655m59++qmMqwNgb4QboILbunWrOnfurB07dmjQoEGaMWOGHn/8cbm7uyshIcHR5TlMtWrVtGrVKuXk5ORbt3TpUlWrVs0BVQEoCxX63VIApJkzZ6p69epav369atWqZbEuLS3NQVU5XteuXfXNN99o9erV6tu3r3l5amqqtm3bpt69e+vLL790YIUA7IWeG6CCO3LkiEJDQ/MFG0ny8fGx+Lx69WoNGDBAoaGhql27tu644w6NGzdOubm5FtvFxMTI29tbp06d0qBBg1SvXj01btxY7733niTp0KFD6tu3r3x9fRUaGqqPP/7YYv+NGzfK09NTS5Ys0ZQpUxQSEiIfHx9FRUUpJSXFqu+VnJysnj17ql69eqpbt6569uypbdu2Wd0utWvXVseOHbVkyRKL5UuXLlWtWrXUpUuXAvc7dOiQhg4dqsDAQNWuXVvt2rXTggULLLa5evWqJk+erE6dOsnf31916tRR165dtXr16nzH8/T01AsvvKC1a9cqPDxc3t7eatmypZYtW2ax3Z9//qkZM2aoVatWqlOnjho2bKiIiAgCGHATCDdABVe/fn3t3btXe/fuLXbbBQsWyMXFRU8//bSmTZumDh066N1339WIESPybWs0GtWvXz95eXlp/PjxCgoK0quvvqr58+crKipKjRo10vjx4+Xt7a0XXnhBu3fvzneMt956S0lJSRo5cqRGjBihHTt2qFevXjp37lyRdS5btkx9+/aVi4uLxo4dq7Fjx+rcuXOKjIzU9u3brW6b/v37a926dRbnW7p0qfr06aPKlfN3XB84cEBdu3bV7t27NWLECMXHx8vPz08jR47UrFmzzNtdvHhRH3/8se6++2699tprGjt2rP744w8NHjxY33//fb7j/vTTTxoxYoR69OihiRMnqnr16nr66ad14MAB8zZTp07VlClT1L59e02bNk2jR49Ww4YNS/R9AVzHizOBCm7Dhg3q06ePJOmuu+7SPffco/DwcHXs2DHfuJLLly+revXqFstmzJihKVOmaN++ffL19ZV0vefm008/1SuvvKKXX35ZkpSdna3Q0FBlZ2frnXfe0aOPPirp+q2vO+64Q0OHDtWMGTMk/e8t6V5eXvrpp5/MT0Nt2LBBvXv31osvvqjXX39d0vWnpaZNm6bMzExJ0qVLl9S0aVN1795ds2fPtqi9bdu2CggIUFJSUpFt4unpqccff1wTJkxQo0aNNHHiRD355JPatWuXOnXqpDVr1ujgwYMaMWKE1q5dq7vvvluS1KdPH506dUrJyckW7fT444/ru+++02+//SZ3d3ddu3ZNf/75p1xdXc3bXL16VeHh4fLx8dEXX3xhUUvlypW1adMmNW7cWJJ05swZ3XHHHRo2bJgmTpwoSQoPD1fdunW1ePHiIr8bgOLRcwNUcB07dtTXX3+tBx54QAcOHNB7772nAQMGqFGjRvlup+T9wjYajcrKylJGRobatWsnk8lUYM/LP/7xD/Ofa9SooZCQELm4uGjgwIHm5T4+PvL19VVqamq+/QcOHGjxmHfHjh0VGhqqb7/9ttDvk5ycrMzMTD388MPKyMgw/+Tk5KhTp07asmWL/vjjD6vaxsPDQ927d9fSpUslSUuWLJG/v7/atGmTb9vMzEytX79eUVFRysnJsTh3t27ddPHiRe3cuVOS5OLiYg42V69e1fnz53Xx4kW1b99eu3btynfs8PBwc7CRrt8yCw4OtmgzDw8P/frrrzp48KBV3w1A4RhQDDiBNm3aaNGiRbp27Zr27dunNWvW6L333tPIkSPl5+enjh07SpJ+/fVXvf766/rxxx/zPUWUlZVl8blKlSqqU6eOxbKaNWvK29tbVapUybc8r+flRoGBgQUu27hxY6Hf5dChQ5Jk7o0qSFZWlm6//fZC19+of//+io6O1uHDh7VixQo98sgjhZ7XZDJp2rRpmjZtWoHbnD171vzn+fPna9asWTpw4IBMpv91gBsMhnz7+fn55Vvm6emp8+fPmz/HxcXpkUceUVhYmEJCQtSlSxf169dPLVu2tOp7Avgfwg3gRFxcXNS8eXM1b95cbdq0Ue/evbVkyRJ17NhRWVlZ6tWrl9zc3PTaa6+pQYMGcnNz06lTpzR8+HAZjUaLY1WqVHDHbmHLb/wFn6egX/QFbXejvDpmzZqlunXrFrhNzZo1izzGjbp166bbbrtNzz//vE6fPq3+/fsXed7hw4crIiKiwG2aNGki6fqYoOeee07du3fX888/Ly8vL1WuXFkLFy409xLdyMXFpcDj3dgW4eHh2r17t77++mslJyfrs88+0+zZs/Xaa6/pxRdftPr7AiDcAE6rVatWkqTTp09Luj4O5uzZs1q5cqU6dOhg3i45OdluNRR0i+Xw4cMF9mTkadCggSTp9ttvV6dOnUpdQ5UqVRQVFaV58+bpzjvvtLg9dKOAgABJUuXKlYs974oVKxQQEKBFixZZBLiFCxeWqlZPT09FR0crOjpaOTk56tevn6ZNm6bnn3++0IAEID/G3AAV3IYNG/L1ukjS2rVrJUnBwcGS/td7cGNvgdFoVGJiot1q++yzzyxuV23YsEG//vqr7rvvvkL36dq1q2655RYlJCTke0Rdsrw1ZK1hw4ZpzJgxGj9+fKHbeHl56d5779W//vUvnThxosjzFtSWqampWrlyZYlry/PXJ8jc3NzUuHFj5ebm6vLlyzd9XODviJ4boIKLjY1Vdna2evbsqcaNG8toNGr37t1avHixbrvtNsXExEiS2rZta/48bNgwVa5cWUlJScrOzrZbbV5eXnrggQf0yCOPKCsrS++//75q166tkSNHFrqPh4eH3n77bT3xxBPq0KGD+vfvL29vb508eVIbN26Uu7t7vjliitO4cWPFxcUVu93MmTN1//33q3379nrssccUGBiojIwM7d69W+vWrdPx48clSd27d9dXX32l6Ohode/eXadOndJHH32kwMBA7du3r0S15WndurXatWunli1b6rbbbtO+ffs0f/583X///fLw8LipYwJ/V4QboIKbOHGikpKStG7dOi1YsEC5ubmqU6eO+vfvr//7v/+Tv7+/JOnWW2/VkiVL9Oqrryo+Pl7u7u6KjIzU0KFD1b59e7vUNmrUKKWkpOi9995TZmam2rRpo+nTpxc44eCNoqKi5OPjo5kzZ2rWrFnKycmRt7e3wsLCLJ7gsrWgoCCtX79e06dP19KlS3X27FnVqlVLjRs3Nj+yLUmDBg3S2bNn9dFHH2n9+vVq2LChpkyZosOHD990uImJidHXX3+tH374QVeuXJGvr69GjRqlUaNG2ejbAX8fzHMDwOby5rn56KOPLF59AABlgTE3AADAqRBuAACAUyHcAAAAp8KYGwAA4FTouQEAAE6FcAMAAJwK4QYAADgVwg0AAHAqhBsAAOBUCDcAAMCp/D+DnhbgzZ88GQAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "simulate_sample_mean(delay, 'Delay', 100, 10000, (5,35), (0, 0.25))" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Sample size: 400\n", "Population mean: 16.658155515370705\n", "Average of sample means: 16.68210625\n", "Population SD: 39.48019985160957\n", "SD of sample means: 1.9733464148714328\n" ] }, { "data": { "image/png": "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GoaO/+qrr+rUqVNatmzZLQNaYmKiJOm+++7Lc72vr6/Wr1+vgwcPWsKNkW0OHjyogwcPEm7gkLgtBZSAZs2a6eOPP1aNGjW0bNkyDRs2TC1btlTdunU1cOBAff3117luETg7O+cKNtKN0JNzBeW///1vnsd74403LMFGklq3bq26devq/Pnz+sc//mEJNtKNX/QPPvigUlNTdfLkyVz7cnJy0sSJE62uGtSrV0/PPPOMrly5oqVLlxb43X/99Vdt3LhRPXv2tAo2klStWjVFRETIbDZr2bJlBe5HklxdXfXFF1+oadOm2rp1q8aOHauHHnrIcosrJibG6vZMYXz88ceKiYlR27ZtNXfuXEvo/OGHH3Tw4EE9/fTTVsFGkmrWrKkXXnhBly9f1jfffGPoOGvWrNGCBQv0xhtvyM/P75btz58/L0l53s6UbvShdOO2X1G2ARwJV26AEtK3b1/16tVL8fHx2rp1q3799Vdt27ZNa9eu1dq1axUcHKyFCxeqYsWKlm1+++03vf/++9qyZYtOnTqV6xHn5OTkPI+V1xWQmjVrKikpSU2bNs1znXTj9tFfr8J4eXmpbt26ubZp3769Zs2apT179hT4vXPGG124cCHP+W9SU1MlSf/73/8K3E+OJk2aKD4+Xjt37lR8fLz27t2rhIQEbdu2Tdu2bdO8efMUGxsrb29vQ/uTpNWrVysiIkJ+fn5avHixKlWqlKv+48eP51n/4cOHDdf/559/avTo0erQoYOef/55w/UVJCcU53cF0FbbAGUJ4QYoQRUqVFCXLl3UpUsXSTeeXomNjdXIkSP1ww8/aP78+ZZfer/88otCQkJ07do1dezYUd27d1fVqlVVrlw57d27V2vWrMl3Ppecf5nfLOf2x81XdP667urVq7nW5XerJefqT85VgvycPXtW0o25aQoafFvYKy7333+/7r//fsvnnTt3avjw4frf//6nyMhILVy40NB+duzYoWeffVbVq1fX8uXLcz1SnVN/bGysYmNji1T/Sy+9pKysLMXExBgOFre6ynLhwgWrdre7DeBICDeAHZUrV06hoaHat2+foqOjtWHDBku4iY6OVmZmpr799lsFBQVZbTdr1iytWbOmRGo8ffp0nsv//PNPSbf+BZmz/u2339aoUaNsW9xN7r//fs2YMUOhoaGGn2BKSkrSoEGDJElffvllnleocupfsGCBQkJCilTjrl27dOHCBTVv3jzP9StXrtTKlSvVpEkTbdq0SZLk7+8vKf/B6DnLb77FdTvbAI6EcAOUAjlXU24ed3P48GHdfffduYKNJG3evLnEajt+/LiOHDkiHx+fPGu41SDg1q1bS5K2bt1arOFGyrsf83P27Fn1799fqamp+ve//61WrVrl2e6BBx6QdKP+ooabfv36WW7D3SwlJUU//PCD6tatq6CgIHl5eVnW5fz3X79+vbKzs63GPl24cEHbt2+Xi4uLAgMDrbaJjo7Wjz/+qJdeesnqWElJSTp48KC8vb3zDHOAIyDcACVg+fLlql69ujp27Jjrcd6UlBQtWLBA0o1xLDnq1KmjxMRE7du3z2pOlwULFuinn34qmcJ142mhN9980+ppqT/++EPz5s1ThQoVNGDAgAK3b9Gihdq3b681a9bo888/19///vdct2QOHjwoZ2fnW46T2bFjh37//Xc99thjuZ4Su3r1qt59911JUrt27Qrcz+XLlxUWFqaDBw9antTKT48ePXTffffps88+U1BQkNW8MTl2794tb2/vXLe0/urNN9/Mc3l8fLx++OEHtWzZUh988IHVunr16qlLly5av369PvnkE6tJ/KKionTx4kU99dRTVnP7dOjQQQ0aNNCWLVu0Zs0aq0n8Jk6cKOnGdAGMuYGjItwAJSAhIUEfffSRPDw81LZtW8tVkCNHjuiHH35QZmamWrdubTVJW3h4uH766Sd1795doaGhqlatmnbu3Klt27apT58+hp/OKarGjRtrx44d6tSpk7p06aJz587pq6++0vnz5zVlypRcV3TyMm/ePPXp00djxozR3Llz9cADD+juu+/WyZMn9fvvv2vPnj1auHDhLcNNzrw6r7zyitq2bav69evLxcVFp06d0k8//aSUlBTVqFFDU6ZMKXA/c+fO1fbt2+Xl5aXU1NQ8BwrnPJpeoUIFLVy4UI899pgGDx6swMBANW/eXK6urjpx4oT27NmjxMRE/fzzz7cMN7frnXfeUXBwsMaPH6+NGzeqQYMGSkhIUHx8vPz8/PT6669btXdyclJMTIxCQkL05JNPqk+fPvLy8tLGjRu1c+dOtW3bViNGjCiWWoHSgHADlIAXXnhB/v7+iouL0/79+xUXF6dLly7p7rvvVuvWrRUaGqonnnjCaq6Wbt266csvv1R0dLS++uorlStXTq1atdK3336rpKSkEgs3bm5uWr58uSZOnKh///vfysjIUEBAgEaPHm34XVienp6Ki4vTJ598om+++UYrVqzQ1atXVaNGDfn5+WnatGm5HrPOS8eOHfXpp58qLi5OO3fu1O7du3Xu3Dm5urrK19dXf//73/X888+revXqBe7n0qVLkm7ccps+fXqeberUqWO55daoUSNt3rxZc+bM0Zo1a/TFF1/IbDbLw8NDAQEBlv++xaVevXrasGGDpk6dqh9//FHr1q2Th4eHhg8froiICN199925tgkMDNT69es1bdo0xcXF6cKFC/L29tYrr7yiF198kfdKwaGZ0tLSmH8bQC5HjhxR8+bN1b59e61evdre5QCAYUziBwAAHIrdws2sWbPUuXNneXt7y9fXVwMHDtT+/fut2oSHh+d6mV1e70oBAADIYbcxN5s2bdLTTz+tli1bymw2a+rUqQoNDdX27dut7h936tRJc+fOtXy+efZWAACAv7JbuFm5cqXV57lz56pOnTratm2bunfvblnu7OwsDw+Pki4PuOP5+PgoLS3N3mUAQKGVmjE3GRkZys7Olpubm9XyrVu3ys/PT61atdLo0aMts6ICAADkpdQ8LTV06FAdOnRIGzZssLznZsWKFXJxcZGPj4+OHj2qt99+W9nZ2dqwYQOPMQIAgDyVinDz6quvauXKlfr+++8LnA48OTlZTZs21fz584s8DToAAHBMdr8tFRkZqRUrVig2NvaW7znx9PRUrVq1dPjw4ZIp7g6WmJho7xIcBn1pW/SnbdGftkNflh52naF4/PjxWrlypVatWqX69evfsn1qaqqSk5MZYAwAAPJlt3Azbtw4LVmyRAsXLpSbm5tSUlIkSa6urqpSpYoyMjI0bdo0hYSEyMPDQ0ePHtWkSZPk7u6uXr162atsAABQytkt3MybN0+S1KdPH6vl48ePV2RkpJycnLR//359+eWXSk9Pl4eHh4KCgvTZZ5+patWq9igZAACUAXYLN7eaP8PFxSXXXDgAAAC3YvcBxQAAALZEuAEAAA6FcAMAABwK4QYAADgUwg0AAHAohBsAAOBQCDcAAMChEG4AAIBDIdwAAACHQrgBAAAOhXADAAAcCuEGAAA4FMINAABwKIQbAADgUAg3AADAoRBuAACAQyHcAAAAh0K4AQAADoVwAwAA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ysvNfH1981wWHx+f73c5dOiQJFmuRuUlPT1d9957b77rbzZgwACFhYXp8OHDWrlypZ544ol8j2s2mzV9+nRNnz49zzZnzpyx/HnBggWaPXu2Dhw4ILP5/y6Am0ymXNt5e3vnWubm5qZz585ZPkdGRuqJJ55QYGCgAgIC1KVLF/Xv318tW7Y09D0B/B/CDeBAnJyc1Lx5czVv3lxt2rRRnz59tHTpUnXs2FHp6enq3bu3XFxc9Prrr6tevXpycXHRyZMnNWLECGVnZ1vtq1y5vC/s5rf85l/wOfL6RZ9Xu5vl1DF79mzVqlUrzzbVqlUrcB8369atm+655x6NGTNGp06d0oABAwo87ogRIxQcHJxnm0aNGkm6MSZo9OjR6t69u8aMGSN3d3eVL19eixYtslwlupmTk1Oe+7u5L4KCgrR792599913iouL05dffqk5c+bo9ddf10svvWT4+wIg3AAOq1WrVpKkU6dOSboxDubMmTNatWqVOnToYGkXFxdXbDXkdYvl8OHDeV7JyFGvXj1J0r333qtOnToVuYYKFSooNDRU8+fPV7NmzaxuD92sbt26kqTy5cvf8rgrV65U3bp1tXjxYqsAt2jRoiLV6ubmprCwMIWFhSkzM1P9+/fX9OnTNWbMmHwDEoDcGHMDlHEbN27MddVFktatWydJ8vf3l/R/Vw9uvlqQnZ2tmJiYYqvtyy+/tLpdtXHjRv322296+OGH892ma9euuuuuuxQdHZ3rEXXJ+taQUcOHD9f48eP11ltv5dvG3d1dDz30kP71r3/p+PHjBR43r75MSkrSqlWrCl1bjr8+Qebi4qIGDRooKytLly5duu39AncirtwAZVxERIQyMjLUq1cvNWjQQNnZ2dq9e7eWLFmie+65R+Hh4ZKktm3bWj4PHz5c5cuXV2xsrDIyMoqtNnd3dz366KN64oknlJ6ero8++kg1atTQqFGj8t2matWqeu+99/T000+rQ4cOGjBggDw8PHTixAnFx8fL1dU11xwxt9KgQQNFRkbest2sWbP0yCOPqH379nryySfl6+ur1NRU7d69W+vXr9exY8ckSd27d9e3336rsLAwde/eXSdPntSnn34qX19f7du3r1C15WjdurXatWunli1b6p577tG+ffu0YMECPfLII6patept7RO4UxFugDJu8uTJio2N1fr167Vw4UJlZWWpZs2aGjBggP7xj3/Ix8dHknT33Xdr6dKleu211xQVFSVXV1eFhIRo2LBhat++fbHUNnbsWCUmJurDDz9UWlqa2rRpoxkzZuQ54eDNQkND5enpqVmzZmn27NnKzMyUh4eHAgMDrZ7gsjU/Pz9t2LBBM2bM0LJly3TmzBlVr15dDRo0sDyyLUmDBw/WmTNn9Omnn2rDhg267777NHXqVB0+fPi2w014eLi+++47/fzzz7p8+bJq166tsWPHauzYsTb6dsCdg3luANhczjw3n376qdWrDwCgJDDmBgAAOBTCDQAAcCiEGwAA4FAYcwMAABwKV24AAIBDIdwAAACHQrgBAAAOhXADAAAcCuEGAAA4FMINAABwKP8PM794zz9fVBkAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "simulate_sample_mean(delay, 'Delay', 400, 10000, (5,35), (0, 0.25))" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Sample size: 625\n", "Population mean: 16.658155515370705\n", "Average of sample means: 16.640637920000003\n", "Population SD: 39.48019985160957\n", "SD of sample means: 1.5679866294436549\n" ] }, { "data": { "image/png": "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WMricJOSkqJu3bpp5MiR+vbbb7Vx40YlJSVJklxcXDRp0iR9+umnRVYoAACAJSwON++8845+++03LV++XPv27ZPRaDStc3BwUJ8+fbRx48YiKRIAAMBSFoebdevW6fnnn1fXrl1zvSvKx8dHZ86csWpxAAAAhWVxuElOTla9evXyXG80GnXjRtG9TwYAAMASFoebOnXq6MiRI3mu3759u3x9fa1SFAAAwN2yONwMHDhQixYt0vbt203Lsi9PLViwQGvXrtWQIUOsXyEAAEAhWPwQv5dfflm7d+9W37595evrK4PBoIkTJ+rSpUtKSEhQr169NHLkyKKsFQAAoEAWh5ty5copKipKy5cv1+rVq2UwGHTr1i01bdpUTzzxhJ588slCv34BAADA2iwON9kGDhyogQMHFkUtAAAA96zQ4UaSDh06ZLrt28vLS40bN2bUBgAAlAiFCjcrV67U5MmTdf78edND/AwGg2rVqqXJkyczogMAAGzO4nCzePFijRkzRn5+fnrnnXfk6+sro9Go48ePa9GiRRo5cqRu3LihoUOHFmW9AAAA+bI43MyePVstWrTQ2rVrVaFCBbN1zz33nHr27KnZs2cTbgAAgE1Z/Jybc+fOaeDAgTmCjSRVqFBBgwYN0vnz561aHAAAQGFZHG78/f0VHx+f5/rz58+rQYMGVikKAADgblkcbqZMmaKvvvpK33zzTY51K1eu1KJFizR16lSrFgcAAFBYFs+5+fjjj1WtWjU9++yzmjhxourVqyeDwaATJ07ozz//lI+Pjz766CN99NFHpm0MBoOioqKKpHAAAIDcWBxufvvtNxkMBnl6ekqSaX6No6OjPD09lZGRoWPHjpltw7NvAABAcbM43Bw8eLAo6wAAALAKi+fcAAAAlAaEGwAAYFcINwAAwK4QbgAAgF0h3AAAALtCuAEAAHbF4nDTtGlTrV+/Ps/133//vZo2bWqVogAAAO6WxeHm9OnTunbtWp7rr127pjNnzlilKAAAgLtVqMtS+T1x+I8//pCLi8s9FwQAAHAv8n1C8ZIlS/T111+bPs+aNUtfffVVjnbJyck6cuSIHn/8cetXCAAAUAj5hptr164pISHB9DklJUVZWVlmbQwGgypWrKinnnpKEydOLJoqAQAALJRvuHnuuef03HPPSZKaNGmiadOmqWfPnsVSGAAAwN2w+MWZBw4cKMo6AAAArMLicJPt6tWrOnv2rC5fviyj0Zhjfbt27axSGAAAwN2wONxcvnxZEyZM0DfffKPMzMwc641GowwGgy5dumTVAgEAAArD4nDz8ssva+3atXruuefUrl07ubq6FmFZAAAAd8ficLNp0yaNHDlS7733XlHWAwAAcE8sDjfly5eXj49PUdYClHjx8eV17pxlz75MS3Mo4moAALmxONz069dPGzdu1PDhw4uyHqBEO3eujMaPtyy0hIcXcTEAgFxZ/PqFF198URcuXNALL7ygX375RRcuXNCff/6Z4wcAAMCWLB65adGihQwGg/bt26eoqKg823G3FAAAsCWLw83rr7+e74szAQAASgKLw004EwgAAEApYPGcmztlZmbq0qVLunXrlrXrAQAAuCeFCje//vqrgoODVatWLfn6+mr79u2SpKSkJD355JPaunVrkRQJAABgKYvDzf/+9z/17NlTJ0+e1ODBg83eK1WtWjWlpqbqP//5T5EUCQAAYCmLw83UqVPl4+OjXbt26e23386xPigoSLt37y7Uwbdv367BgwerYcOGcnV11eLFi83WG41GRUREyN/fXzVr1lSvXr109OjRQh0DAADcXywON7/++quGDRumChUq5HrXVO3atZWQkFCog1+7dk2NGjXStGnT5OTklGP9hx9+qLlz52r69OnavHmz3Nzc1L9/f129erVQxwEAAPcPi8NNmTJlVKZM3s0TEhJyDSj56datm95++23169cvx76NRqPmz5+vcePGqV+/fmrUqJHmz5+v1NRUrVixolDHAQAA9w+Lw02zZs30/fff57ruxo0bWr58uVq1amW1wk6dOqWEhAR17tzZtMzJyUlt27bVrl27rHYcAABgXyx+zs0rr7yikJAQjRkzRgMHDpQkXbhwQZs2bdKsWbN08uRJzZ0712qFZV/icnNzM1vu5uam+Pj4PLeLjY21Wg33O/oypytX6iojw7IRyps3HZSRkSlJysjIsKidpfuzVtui2OeVK2mKjY2zaJ93i3PTuuhP66EvrcPPz++etrc43HTq1EkLFizQa6+9piVLlkiSwsLCZDQaVaVKFS1cuFAtW7a8p2Jy89f5PUajMd8nJd9rh+C22NhY+jIXKSkV5Oho2Yszy5WTHB3LKiMjQ46OjgW2s3R/hTm2LfZZuXLZIj13ODeti/60Hvqy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UUMdOnRQVFSU2fLly5erWrVq6ty5c67bHT9+XMOHD5ePj49q1Kihtm3bKjIy0qzNjRs39N5776ljx47y9vZWzZo11aVLF61fvz7H/lxdXfXyyy9r48aNCgoKkru7u5o3b64VK1aYtbt165ZmzpypFi1aqGbNmnrwwQfVrVs3AhhwFwg3QClXp04dHTx4UAcPHiywbWRkpBwcHPT8889r+vTpevTRR/Xxxx9r9OjROdpmZWUpJCREbm5ueuedd+Tr66s333xTixYtUnBwsOrXr6933nlH7u7uevnll7V///4c+/jggw8UHR2tMWPGaPTo0dqzZ4/69OmjS5cu5VvnihUrNGDAADk4OGjSpEmaNGmSLl26pL59+2r37t0W983AgQO1efNms+MtX75c/fv3V9myOQeujx07pi5dumj//v0aPXq0IiIi5OXlpTFjxmjevHmmdlevXtWXX36pli1b6q233tKkSZN08+ZNDR06VD/++GOO/f7yyy8aPXq0evbsqalTp6pixYp6/vnndezYMVObadOm6f3331e7du00ffp0jR8/Xg8++GChvi+A23hxJlDKbd26Vf3795ckPfzww3rkkUcUFBSkDh065JhXcv36dVWsWNFs2cyZM/X+++/r0KFDql27tqTbIzdff/213njjDb3++uuSpNTUVDVs2FCpqan66KOP9Le//U3S7UtfDz30kIYPH66ZM2dK+r+3pLu5uemXX34x3Q21detW9evXT6+88orefvttSbfvlpo+fbqSk5MlSdeuXVPjxo3Vo0cPzZ8/36z2Nm3aqG7duoqOjs63T1xdXfXMM89oypQpql+/vqZOnaoRI0Zo37596tixozZs2KA//vhDo0eP1saNG9WyZUtJUv/+/XX+/HnFxMSY9dMzzzyjTZs26bfffpOzs7MyMzN169YtOTo6mtrcuHFDQUFB8vDw0OrVq81qKVu2rLZv364GDRpIki5evKiHHnpII0eO1NSpUyVJQUFBqlWrlpYtW5bvdwNQMEZugFKuQ4cO+u6779S9e3cdO3ZMc+bM0aBBg1S/fv0cl1Oyf2FnZWUpJSVFSUlJatu2rYxGY64jL3//+99Nf65UqZL8/f3l4OCgwYMHm5Z7eHiodu3aiouLy7H94MGDzW7z7tChgxo2bKgffvghz+8TExOj5ORkPfnkk0pKSjL9pKWlqWPHjtqxY4du3rxpUd+4uLioR48eWr58uSQpKipK3t7eat26dY62ycnJ2rJli4KDg5WWlmZ27K5du+rq1avau3evJMnBwcEUbG7cuKHLly/r6tWrateunfbt25dj30FBQaZgI92+ZObn52fWZy4uLjp69Kj++OMPi74bgLwxoRiwA61bt9aSJUuUmZmpQ4cOacOGDZozZ47GjBkjLy8vdejQQZJ09OhRvf322/rpp59y3EWUkpJi9rlcuXKqWbOm2bLKlSvL3d1d5cqVy7E8e+TlTj4+Prku27ZtW57f5fjx45JkGo3KTUpKiqpXr57n+jsNHDhQoaGhOnHihFatWqVhw4bleVyj0ajp06dr+vTpubZJTEw0/XnRokWaN2+ejh07JqPx/wbADQZDju28vLxyLHN1ddXly5dNn8PDwzVs2DAFBgbK399fnTt3VkhIiJo3b27R9wTwfwg3gB1xcHBQ06ZN1bRpU7Vu3Vr9+vVTVFSUOnTooJSUFPXp00dOTk566623VK9ePTk5Oen8+fMaNWqUsrKyzPZVpkzuA7t5Lb/zF3y23H7R59buTtl1zJs3T7Vq1cq1TeXKlfPdx526du2qqlWr6qWXXtKFCxc0cODAfI87atQodevWLdc2jRo1knR7TtDYsWPVo0cPvfTSS3Jzc1PZsmW1ePFi0yjRnRwcHHLd3519ERQUpP379+u7775TTEyMli5dqvnz5+utt97SK6+8YvH3BUC4AexWixYtJEkXLlyQdHseTGJiotauXatHH33U1C4mJqbIasjtEsuJEydyHcnIVq9ePUlS9erV1bFjx3uuoVy5cgoODtYXX3yhJk2amF0eulPdunUlSWXLli3wuKtWrVLdunW1ZMkSswC3ePHie6rV1dVVoaGhCg0NVVpamkJCQjR9+nS99NJLeQYkADkx5wYo5bZu3Zpj1EWSNm7cKEny8/OT9H+jB3eOFmRlZWnu3LlFVtvSpUvNLldt3bpVR48e1WOPPZbnNl26dFGVKlU0a9asHLeoS+aXhiw1cuRITZgwQe+8806ebdzc3NS+fXv9+9//1tmzZ/M9bm59GRcXp7Vr1xa6tmx/vYPMyclJDRo0UEZGhq5fv37X+wXuR4zcAKXcxIkTlZqaqt69e6tBgwbKysrS/v37tWzZMlWtWlVhYWGSpDZt2pg+jxw5UmXLllV0dLRSU1OLrDY3Nzd1795dw4YNU0pKij755BPVqFFDY8aMyXMbFxcXffjhh3r22Wf16KOPauDAgXJ3d9e5c+e0bds2OTs753hGTEEaNGig8PDwAtvNnj1bjz/+uNq1a6ennnpKPj4+SkpK0v79+7V582adOXNGktSjRw+tWbNGoaGh6tGjh86fP6/PP/9cPj4+OnToUKFqy9aqVSu1bdtWzZs3V9WqVXXo0CEtWrRIjz/+uFxcXO5qn8D9inADlHJTp05VdHS0Nm/erMjISGVkZKhmzZoaOHCgXn31VXl7e0uSHnjgAUVFRenNN99URESEnJ2d1bdvXw0fPlzt2rUrktrGjRun2NhYzZkzR8nJyWrdurVmzJiR6wMH7xQcHCwPDw/Nnj1b8+bNU1pamtzd3RUYGGh2B5e1+fr6asuWLZoxY4aWL1+uxMREVatWTQ0aNDDdsi1JQ4YMUWJioj7//HNt2bJFDz74oN5//32dOHHirsNNWFiYvvvuO/33v/9Venq6ateurXHjxmncuHFW+nbA/YPn3ACwuuzn3Hz++edmrz4AgOLAnBsAAGBXCDcAAMCuEG4AAIBdYc4NAACwK4zcAAAAu0K4AQAAdoVwAwAA7ArhBgAA2BXCDQAAsCuEGwAAYFf+H43FrjMOGOQ4AAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "simulate_sample_mean(delay, 'Delay', 625, 10000, (5,35), (0, 0.25))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can see the Central Limit Theorem in action – the histograms of the sample means are roughly normal, even though the histogram of the delays themselves is far from normal.\n", "\n", "You can also see that each of the three histograms of the sample means is centered very close to the population mean. In each case, the \"average of sample means\" is very close to 16.66 minutes, the population mean. Both values are provided in the printout above each histogram. As expected, the sample mean is an unbiased estimate of the population mean." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## The SD of All the Sample Means\n", "You can also see that the histograms get narrower, and hence taller, as the sample size increases. We have seen that before, but now we will pay closer attention to the measure of spread.\n", "\n", "The SD of the population of all delays is about 40 minutes." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "39.48019985160957" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pop_sd = np.std(delay['Delay'])\n", "pop_sd" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Take a look at the SDs in the sample mean histograms above. In all three of them, the SD of the population of delays is about 40 minutes, because all the samples were taken from the same population.\n", "\n", "Now look at the SD of all 10,000 sample means, when the sample size is 100. That SD is about one-tenth of the population SD. When the sample size is 400, the SD of all the sample means is about one-twentieth of the population SD. When the sample size is 625, the SD of the sample means is about one-twentyfifth of the population SD.\n", "\n", "It seems like a good idea to compare the SD of the empirical distribution of the sample means to the quantity \"population SD divided by the square root of the sample size.\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here are the numerical values. For each sample size in the first column, 10,000 random samples of that size were drawn, and the 10,000 sample means were calculated. The second column contains the SD of those 10,000 sample means. The third column contains the result of the calculation \"population SD divided by the square root of the sample size.\"\n", "\n", "The cell takes a while to run, as it's a large simulation. But you'll soon see that it's worth the wait." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "repetitions = 10000\n", "sample_sizes = np.arange(25, 626, 25)\n", "\n", "sd_means = np.array([])\n", "\n", "for n in sample_sizes:\n", " means = np.array([])\n", " for i in np.arange(repetitions):\n", " means = np.append(means, np.mean(delay['Delay'].sample(n, replace=True)))\n", " sd_means = np.append(sd_means, np.std(means))\n", "\n", "sd_comparison = pd.DataFrame(\n", " {'Sample Size n':sample_sizes,\n", " 'SD of 10,000 Sample Means':sd_means,\n", " 'pop_sd/sqrt(n)':pop_sd/np.sqrt(sample_sizes)}\n", ")" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Sample Size nSD of 10,000 Sample Meanspop_sd/sqrt(n)
0258.0359557.896040
1505.6074075.583343
2754.5925384.558781
31003.9776413.948020
41253.5344293.531216
51503.2226883.223545
61753.0168422.984423
72002.8082122.791672
82252.6671002.632013
92502.5100932.496947
\n", "
" ], "text/plain": [ " Sample Size n SD of 10,000 Sample Means pop_sd/sqrt(n)\n", "0 25 8.035955 7.896040\n", "1 50 5.607407 5.583343\n", "2 75 4.592538 4.558781\n", "3 100 3.977641 3.948020\n", "4 125 3.534429 3.531216\n", "5 150 3.222688 3.223545\n", "6 175 3.016842 2.984423\n", "7 200 2.808212 2.791672\n", "8 225 2.667100 2.632013\n", "9 250 2.510093 2.496947" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sd_comparison.head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The values in the second and third columns are very close. If we plot each of those columns with the sample size on the horizontal axis, the two graphs are essentially indistinguishable." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA14AAAFZCAYAAACIQv5jAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Il7ecAAAACXBIWXMAAAsTAAALEwEAmpwYAABzUklEQVR4nO3dd3gVVf7H8ffckh6SEEIooRMIIEVBQXCpq1JEiihgXVxFQV2xoCKKK5ZIU0EjqOBvLVgQWUVFXV0CC4iIBUHUGKW3QAIJ6bllfn8EbrgkgQSS3JB8Xs8zD7lnzsx85xjvw5cz5ztGenq6iYiIiIiIiFQai68DEBERERERqemUeImIiIiIiFQyJV4iIiIiIiKVTImXiIiIiIhIJVPiJSIiIiIiUsmUeImIiIiIiFQyJV4iIiIiIiKVTImXiIiIiIhIJavViVdycrKvQzinaLzKR+NVPhqv8tF4lY/Gq3w0XiIiFa9WJ14iIiIiIiJVQYmXiIiIiIhIJVPiJSIiIiIiUsmUeImIiIiIiFQym68DEBEREanunE4n2dnZvg5DRKqx4OBgbLbS0yslXiIiIiKn4HQ6yczMJDw8HMMwfB2OiFRDpmmSnp5OaGhoqcmXHjUUEREROYXs7GwlXSJySoZhEB4efsqZcZ8lXi6XiyeffJJOnToRHR1Np06dePLJJ3E6nZ4+pmkSHx9PXFwcDRo0YMiQIfz6669e58nPz2fy5Mm0bNmSRo0aMWbMGPbu3VvVtyMiIiI1mJIuETmd031P+Czxev7551m4cCEzZszg22+/5ZlnnuHVV1/l2Wef9fSZO3cuCQkJzJgxg5UrVxIVFcWIESPIzMz09JkyZQoff/wxixYtYsWKFWRmZjJ69GhcLpcvbktERERERKQYn63x+vbbbxk4cCCDBg0CoFmzZgwaNIjvv/8eKJztmj9/PpMmTWLYsGEAzJ8/n9jYWJYuXcq4cePIyMjgzTffJCEhgX79+gHw8ssv07FjR1atWsWAAQOq5mZME8O1C6tzCxCAM+CvVXNdERERERE5J/hsxqtHjx6sXbuW33//HYDffvuNNWvWcOmllwKwc+dOUlJS6N+/v+eYwMBAevbsyYYNGwDYtGkTDofDq09MTAxt27b19KlMFsdmgtOGEprSgjqHOhN85Hr8s5+r9OuKiIiInM6QIUMIDw8nPDycjRs3+jqcU/rXv/7FeeedR0REBPHx8b4OR46Jj4/n4osv9nUY1ULHjh09/z+lpaWd0Tl8NuM1adIksrKy6N69O1arFafTyf33388tt9wCQEpKCgBRUVFex0VFRbF//34ADh48iNVqJTIyslifgwcPlnrt5OTkEn8uL3/jIB2D13g35v9EcvLvQM18Fvxsxqs20niVj8arfDRe5aPxKp/qPF6xsbG+DuGccd111zFt2jTq1q3raQsPD+enn36iWbNmAHzyySfMnTuXpKQkXC4XjRo1okePHrzwwgsArFmzhqFDhwKFa1hCQkJo0qQJf/nLX5gwYQLNmzc/qxjT09O5//77eeqppxg2bBghISEl9vvXv/7F0qVL2bx5M0ePHvW6hxPP9cADD/D5558DMHDgQGbOnEl4ePgpY1i4cCHz5s0jJSWFuLg44uPj6dmzp2e/aZo888wzvP7666Snp9O1a1dmz55Nu3btPH3y8/N55JFH+OCDD8jLy6N3797MmTOHxo0bl3rdnJwcZs+ezb///W/27dtHcHAwsbGx3HrrrYwaNep0Q3dOWLx4MXfccQctW7bkhx9+8Nr3n//8h2uuuYbg4OBqV6NhyJAhXHvttVx33XUAJCYm8vXXX3PjjTee8Tl9lngtW7aMd999l4ULFxIXF8eWLVt46KGHaNq0qdcNnbxIzTTN0y5cO12f41/YycnJZ/flbbbCTAnGMIuql9iMLNq08MO0NT/z81ZTZz1etYzGq3w0XuWj8SofjVf5aLxqjqCgIKKjo0vdv3r1av72t78xZcoUEhISsFqt/P7773z66afF+n7zzTdERESQnZ3Nli1bWLBgAb169eK9997jkksuOeMYd+3ahdPp5PLLL6dBgwal9svJyaF///4MHjyYhx9+uMQ+t9xyC3v27OH999/HMAz+8Y9/cNttt/Hee++Vet5ly5bx0EMPMWfOHHr06MHChQu5+uqr+eabb2jSpAlQVHcgISGB2NhYZs6cyYgRI9i4cSOhoaFAYd2BFStWsGjRIiIiIpg6dSqjR49m9erVWK3WEq99zz33sGHDBp555hnatWvHkSNH+P777zly5EhZh++cEBAQQEZGBmvXrvX6XXnrrbeIiYk5J+63Xr16REREnNU5fPao4bRp07jzzju56qqr6NChA2PGjOGOO+7guecKH9U7/iVx8sxVamqqZxas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5513ytz/0KFDtGrVir17956y34n/HX/88cezDVN8RIlXBXLV6ezdkHuspLxp+iYgERERqfWuu+46kpKS6NKlCwDh4eHs3LnTt0FVknvuuafS300VHh7ORx99VKz9iy++YO/evVxzzTVlPldUVBRjxowhPj7eq33ChAlebW+99RYrV64886ClWlDiVYHcIXGYBBQ15IJhHsVw1cwvNxEREan+goKCiI6Oxm63+zqUSmWaJp9//jmDBw+ulPMXFBSccv+CBQu49tprsVqt5Trvddddx/vvv8+RI0dK7RMREUFkZGS5zivVj83XAdQkZnAILltrbM6fCxtOKLDhtDX3WVwiIiJS8SybNlXp9dzHZqwq0po1axg6dCjvvvsuTz75JMnJycTFxTF37lzPDBnA8uXLeeaZZ/jjjz+Iiopi3Lhx3HfffRiGAUDHjh259tpr2b59O59++inBwcHcdddd3HXXXWWK4//+7/948cUX2bNnDyEhIXTu3JklS5Zgs9lwuVw89thjvPnmmwCMHTsWl8tV7Bw//PADeXl5XHzxxWd0zoKCApKSkvj000+Bwsf72rZtS1BQEO+88w5NmzYlNTUVgJtuugmAJk2asGXLFlJTU1m1ahVPPPGEV0zh4eE8//zzJCYm8uWXXxIVFcXDDz/M6NGjPX3at29PgwYN+Pjjj7nxxhvLNF5ybtKMV0UKCMBtP6GyoQpsiIiIyDng0Ucf5fHHHycxMZHmzZtzzTXXkJOTA8CmTZv429/+xhVXXMHXX3/NY489xnPPPccrr7zidY6XXnqJNm3asHr1aqZMmcL06dNZvnz5aa/9448/cv/99/Pggw+yceNGPvzwQwYMGODZ/+KLL/LGG2/w/PPP8+WXX+JyuXj//feLnefTTz/lsssuw2azVdg5lyxZgmmafPbZZyxYsIDExEQA5s2bR1JSkufz+vXr8ff3p127dsXOMXPmTAYPHszatWsZOXIkd955J7t27fLq07VrV9auXXvasZJzm2a8KpJh4ArpALkfFrXlHVvnJSIiIlINpKenF2ubPHmyJzFJSEigffv2LF26lBtvvJGEhAR69erFww8/DEDr1q35888/mTt3LrfddpvnHF27duX+++/39Pnhhx946aWXuPLKK08Zz+7duwkODmbQoEGEhoYChTNox82fP59//OMfjBgxAoAZM2aUuN5p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eriIiIiIiJy9MhfX8PPzo1WrVpUZi1SWgABy2s/DZWlY1HZ8vVfOIuy5y3wWmoiIiIhIbVDmxGvYsGF8+eWXlRmLVKaIpuS2mot54iRnFnAIAjP+gcX5p89CExERERGp6cqceN11110cOHCA22+/nY0bN3LgwAEOHTpUbJPqy9X0UvKj7vVuPAhGVhZBR24CM9c3gYmIiIiI1HBlXuPVtWtXDMNg06ZNLFmypNR+qmpYjRkG+XH3Yc3aiD03sah9D1j9fybg6MPkhT3nu/hERERERGqoMideDzzwAIZhVGYsUhX8/cnpMI+QHy7H6t5X2OYE9oB/s/879n6vUT4NUURERESkpilz4jVlypTKjEOqUngTclvPI/j3MUXv98qmcL2XZdKx93vF+jREEREREZGapMxrvE7kcrk4fPgwTqezouORKuJqMoD8qPu8Gw8dX+/1N633EhERERGpQOVKvH744QeGDx9Oo0aNaN26NevWrQMgLS2Na665htWrV1dKkFIJDIP8dvfhCOzv3b4brLlbCcx4yDdxiYiIiIjUQGVOvL799lsGDx7M9u3bGTNmDKZpevZFRkaSlZXFm2++WSlBSiXx8yPnvBdxWWKK2lzAHvDLeR17bulFVEREREREpOzKnHg98cQTtGrVig0bNjBt2rRi+//yl7/w3XffVWhwUgXCGpEbOw8Te1FbDnAQAjPuweL83WehiYiIiIjUFGVOvH744Qeuv/56AgICSqxu2LhxY1JSUio0OKkarph+5EdP9m5MBeNo9rH1Xjk+iUtEREREpKYoc+JlsViwWErvnpKSQmBgYIUEJVXMMMiPuwdH0F+92/eCNecXAjMe9E1cIiIiIiI1RJkTry5duvD555+XuK+goID333+fiy66qMICkypmtxeu97KWtN7rTew57/osNBERERGRc12ZE697772X//3vf9x5551s2bIFgAMHDvDVV19x5ZVXsn37du67777TnKV0c+bMITw8nMmTix55M02T+Ph44uLiaNCgAUOGDOHXX3/1Oi4/P5/JkyfTsmVLGjVqxJgxY9i7d+8Zx1Gr1WlAbmwCJn5FbblACgQevZcAY7vPQhMREREROZeVOfHq168fL7/8Mp9++ikjRowAYMKECVx99dX89ttvLFy4kAsvvPCMgti4cSOvv/46HTp08GqfO3cuCQkJzJgxg5Ur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Noa78LPb1r7y7kFE5ByjxEtERETKx/DDNPyACEyrr4MRETk3WHwdgIiIiIiISE2nxEtERERERKSSKfESERERERGpZEq8REREREREKpkSLxERERERkUqmxEtERERERKSSKfESERERERGpZEq8REREREREKpmRnp5u+joIERERERGRmkwzXiIiIiIiIpVMiZeIiIiIiEglU+IlIiIiIiJSyZR4iYiIiIiIVDIlXiIiIiIiIpWs1iZeCxcupFOnTkRHR9OnTx++/vprX4dU5datW8eYMWNo164d4eHhLF682Gu/aZrEx8cTFxdHgwYNGDJkCL/++qtXn/z8fCZPnkzLli1p1KgRY8aMYe/evVV5G1Xm2WefpV+/fjRp0oRWrVoxevRofvnlF68+GrMir776Kj179qRJkyY0adKESy+9lC+++MKzX2NVujlz5hAeHs7kyZM9bRovb/Hx8YSHh3ttbdq08ezXeHk7cOAAt99+O61atSI6Opru3buzdu1az36Nl4hI5auVideyZct46KGHuO+++/jf//7HRRddxNVXX83u3bt9HVqVys7Opn379jzzzDMEBgYW2z937lwSEhKYMWMGK1euJCoqihEjRpCZmenpM2XKFD7++GMWLVrEihUryMzMZPTo0bhcrqq8lSqxdu1a/v73v/PFF1+wfPlybDYbw4cP58iRI54+GrMijRo14vHHH2f16tUkJibSu3dvrrvuOn7++WdAY1WajRs38vrrr9OhQwevdo1XcbGxsSQlJXm2E/8BTeNVJD09ncsvvxzTNFmyZAkbNmxg5syZREVFefpovEREKl+tfI/XgAED6NChA/PmzfO0XXDBBQwbNozHHnvMh5H5TuPGjZk5cybXXXcdUPivn3Fxcdx6663cf//9AOTm5hIbG8sTTzzBuHHjyMjIoHXr1iQkJHDNNdcAsGfPHjp27MjSpUsZMGCAz+6nKmRlZdG0aVMWL17MoEGDNGZl0Lx5cx577DH+9re/aaxKkJGRQZ8+fZg7dy4zZ86kffv2zJo1S79bJYiPj2f58uWsX7++2D6Nl7fp06ezbt06rxnnE2m8RESqRq2b8SooKGDTpk3079/fq71///5s2LDBR1FVPzt37iQlJcVrnAIDA+nZs6dnnDZt2oTD4fDqExMTQ9u2bWvFWGZlZeF2uwkPDwc0Zqficrn44IMPyM7O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eeSRR3jjjTcYPnw4bdq04fHHHyc6Opp77rmHn376qdg5nn/+eZYvX86dd97JHXfcwffff8/QoUM5fPjwKeNcunQpV111FVarlalTpzJ16lQOHz7MlVdeyXfffXfa8QB45513ME3ztGNyorZt2/Lyyy97bTNmzMButxMVFVUh8R330Ucf8fTTTzN27Fj++c9/kpmZyfXXX8+RI0fKFbOIiIj4lpGenl6+v3GIyDlp9erVjBgxAoDzzz+fiy++mL/85S/06dOHgIAAr745OTkEBQV5tc2aNYunn36an3/+mcaNGwOFM17vvPMODz/8MA888AAAWVlZtGvXjqysLObNm+d5jG///v2cd9553HzzzcyaNQsonDkaOnQoUVFRbNy40VO1cPXq1QwbNox7772XadOmAYVVDWfMmEF6ejoA2dnZdOjQgUGDBjF//nyv2Hv06EHz5s1Zvnx5qeORl5dH7969+f3334mJiaFXr15cfPHFXHbZZTRq1Mir7+LFi7njjjv46aefaNasWbFzud1urrnmGr755hu++uor4uLizjq+nTt30rlzZ8LCwvj++++pV68eAJs3b6Z3797MmjWLW2+9tdTjRUREpHrRjJdILdGnTx8+++wzBg4cSFJSEi+++CKjR4+mTZs2vPXWW159jyddbrebjIwM0tLS6NmzJ6ZpljhjdeONN3p+DgkJIS4uDqvVypgxYzztDRs2pHHjxuzYsaPY8WPGjPEqFd+nTx/atWvHf/7zn1LvJzExkfT0dK655hrS0tI8W25uLn379mX9+vU4HI5Sjw8ICODzzz/nH//4B4Zh8N577zFp0iQ6dOjA+PHjOXr0aKnHnuyJJ57gq6++IiEhgbi4uAqJ77jhw4d7ki6ATp06UadOnRLHUURERKovFdcQqUW6d+/O22+/jcvl4ueff+aLL77gxRdf5M4776RJkyb06dMHgF9//ZVp06axdu1acnNzvc6RkZHh9dlut9OgQQOvtjp16hAdHY3dbi/WfnzG6kStWrUqsW3NmjWl3suff/4J4JnFK0lGRoZX0nKyunXrMn36dKZPn87evXtZs2YNr7zyCkuWLMFisbBgwYJSjz3uww8/5LnnnuPee+9l2LBhFRofQJMmTYq1hYWF6VFDERGRc4wSL5FayGq10rlzZzp37kz37t0ZNmwYS5YsoU+fPmRkZDB06FACAwN59NFHadGiBYGBgezbt4+JEyfidru9zmWxlDxxXlp7SeupDMMoU78THY/jpZdeKvZo4HF16tQ55TlO1LhxY8aMGcPIkSPp0aMHy5Yt48UXX8RmK/1rcuvWrdxxxx0MGDCARx55pFLiK62aYnnXpYmIiIhvKfESqeW6du0KwIEDB4DCdVepqal88sknXhX/EhMTKy2GP/74o1jbtm3bSpztOa5FixYA1KtXj759+1ZYLH5+fpx33nls27aNtLQ0oqOjS+yXnp7OddddR1RUFIsWLSqWaFZWfCIiInJu0hovkVpi9erVxWarAL788ksAYmNjgaIZlhNnVNxuNwkJCZUW27vvvuv1COLq1av59ddfufTSS0s9ZsCAAYSFhTF79uxiZe4BUlNTT3nNLVu2lNgnPT2djRs3EhERUepjgG63m5tvvpmDBw/y1ltvea1Pq6j4REREpGbRjJdILfHQQw+RlZXFFVdcQdu2bXG73fz000+899571K1blwkTJgDQo0cPz+fbbrsNm83G8uXLycrKqrTYoqKiGDhwINdffz0ZGRksWLCA+vXrc+edd5Z6TGhoKHPnzuXvf/87l1xyCVdffTXR0dGetVrBwcEsXbq01ONXrVrFU089xcCBA7nwwgupU6cOe/fu5d1332X//v3MmDGj1Mf8XnvtNVauXMmVV17J1q1b2bp1q2dfcHAwV1xxxVnHJyIiIjWLEi+RWuKJJ55g+fLlrFy5krfeeov8/HwaNGjA1VdfzX333ecpkx4REcGSJUt45JFHiI+PJzg4mCuvvJKbb76ZXr16VUpskyZNIjk5mRdffJH09HS6d+/OzJkzS3zZ84mGDx9Ow4YNefbZZ3nppZfIzc0lOjqabt26eVVaLMnQoUPJzs4mMTGRuXPncvjwYUJDQ+ncuTNPPvkkV1xxRanHHjp0CIDly5cXKwnfpEkTz7FnE5+IiIjULHqPl4j4zPH3eC1atIirrrrK1+GIiIiIVBqt8RIREREREalkSrxEREREREQqmRIvERERERGRSqY1XiIiIiIiIpVMM14iIiIiIiKVTImXiIiIiIhIJVPiJSIiIiIiUsmUeImIiIiIiFQyJV4iIiIiIiKVTImXiIiIiIhIJft/I1YplsJ95VEAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "unit = ''\n", "\n", "fig, ax = plt.subplots(figsize=(8,5))\n", "\n", "ax.plot(sd_comparison['Sample Size n'], sd_comparison[['SD of 10,000 Sample Means']],\n", " label=['SD of 10,000 Sample Means'], lw=5\n", " , color='gold', zorder=10)\n", "\n", "ax.plot(sd_comparison['Sample Size n'], sd_comparison[['pop_sd/sqrt(n)']],\n", " label=['pop_sd/sqrt(n)'], alpha=0.2, color='red', zorder=10)\n", "\n", "x_label = 'Sample Size n'\n", "\n", "y_vals = ax.get_yticks()\n", "\n", "ax.set_yticklabels(['{:g}'.format(x * 100) for x in y_vals])\n", "\n", "plt.ylabel(y_label)\n", "\n", "plt.xlabel(x_label)\n", "\n", "ax.legend(bbox_to_anchor=(1.04,1), loc=\"upper left\")\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There really are two curves there. But they are so close to each other that it looks as though there is just one.\n", "\n", "What we are seeing is an instance of a general result. Remember that the graph above is based on 10,000 replications for each sample size. But there are many more than 10,000 samples of each size. The probability distribution of the sample mean is based on the means of *all possible samples* of a fixed size.\n", "\n", "**Fix a sample size.** If the samples are drawn at random with replacement from the population, then\n", "\n", "$$\n", "{\\mbox{SD of all possible sample means}} ~=~\n", "\\frac{\\mbox{Population SD}}{\\sqrt{\\mbox{sample size}}}\n", "$$\n", "\n", "This is the standard deviation of the averages of all the possible samples that could be drawn. **It measures roughly how far off the sample means are from the population mean.**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### The Central Limit Theorem for the Sample Mean\n", "If you draw a large random sample with replacement from a population, then, regardless of the distribution of the population, the probability distribution of the sample mean is roughly normal, centered at the population mean, with an SD equal to the population SD divided by the square root of the sample size." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### The Accuracy of the Sample Mean\n", "The SD of all possible sample means measures how variable the sample mean can be. As such, it is taken as a measure of the accuracy of the sample mean as an estimate of the population mean. The smaller the SD, the more accurate the estimate.\n", "\n", "The formula shows that:\n", "- The population size doesn't affect the accuracy of the sample mean. The population size doesn't appear anywhere in the formula.\n", "- The population SD is a constant; it's the same for every sample drawn from the population. The sample size can be varied. Because the sample size appears in the denominator, the variability of the sample mean *decreases* as the sample size increases, and hence the accuracy increases." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### The Square Root Law\n", "From the table of SD comparisons, you can see that the SD of the means of random samples of 25 flight delays is about 8 minutes. If you multiply the sample size by 4, you'll get samples of size 100. The SD of the means of all of those samples is about 4 minutes. That's smaller than 8 minutes, but it's not 4 times as small; it's only 2 times as small. That's because the sample size in the denominator has a square root over it. The sample size increased by a factor of 4, but the SD went down by a factor of $2 = \\sqrt{4}$. In other words, the accuracy went up by a factor of $2 = \\sqrt{4}$.\n", "\n", "In general, when you multiply the sample size by a factor, the accuracy of the sample mean goes up by the square root of that factor.\n", "\n", "So to increase accuracy by a factor of 10, you have to multiply sample size by a factor of 100. Accuracy doesn't come cheap!" ] } ], "metadata": { "anaconda-cloud": {}, "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.12" } }, "nbformat": 4, "nbformat_minor": 2 }