From c146541193af32d51c45cbf3dd97870a66994e8a Mon Sep 17 00:00:00 2001
From: benjas <909336740@qq.com>
Date: Wed, 18 Nov 2020 22:56:36 +0800
Subject: [PATCH] =?UTF-8?q?Add=20=E5=AE=9E=E6=93=8D=E5=81=87=E8=AE=BE?=
=?UTF-8?q?=E6=A3=80=E9=AA=8C=E5=AE=9E=E4=BE=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../假设检验实例-checkpoint.ipynb | 429 ++++++++++++++++++
.../假设检验章节/normtemp.dat.txt | 131 ++++++
.../假设检验实例.ipynb | 429 ++++++++++++++++++
3 files changed, 989 insertions(+)
create mode 100644 notebook_必备数学基础/假设检验章节/.ipynb_checkpoints/假设检验实例-checkpoint.ipynb
create mode 100644 notebook_必备数学基础/假设检验章节/normtemp.dat.txt
create mode 100644 notebook_必备数学基础/假设检验章节/假设检验实例.ipynb
diff --git a/notebook_必备数学基础/假设检验章节/.ipynb_checkpoints/假设检验实例-checkpoint.ipynb b/notebook_必备数学基础/假设检验章节/.ipynb_checkpoints/假设检验实例-checkpoint.ipynb
new file mode 100644
index 0000000..3cedcc9
--- /dev/null
+++ b/notebook_必备数学基础/假设检验章节/.ipynb_checkpoints/假设检验实例-checkpoint.ipynb
@@ -0,0 +1,429 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "数据集下载地址:https://ww2.amstat.org/publications/jse/jse_data_archive.htm\n",
+ "
数据集描述:https://ww2.amstat.org/publications/jse/datasets/normtemp.txt\n",
+ "
数据:normtemp.dat.txt "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd\n",
+ "import pylab\n",
+ "import math\n",
+ "import numpy as np\n",
+ "import matplotlib.pyplot as plt\n",
+ "%matplotlib inline\n",
+ "from scipy.stats import norm\n",
+ "import scipy.stats\n",
+ "import warnings\n",
+ "warnings.filterwarnings(\"ignore\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 39,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "df = pd.read_csv('normtemp.dat.txt', sep= ' ',\n",
+ " names=['Temperature','Gender','Heart Rate'])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 40,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Temperature | \n",
+ " Gender | \n",
+ " Heart Rate | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " count | \n",
+ " 130.000000 | \n",
+ " 130.000000 | \n",
+ " 130.000000 | \n",
+ "
\n",
+ " \n",
+ " mean | \n",
+ " 98.249231 | \n",
+ " 1.500000 | \n",
+ " 73.761538 | \n",
+ "
\n",
+ " \n",
+ " std | \n",
+ " 0.733183 | \n",
+ " 0.501934 | \n",
+ " 7.062077 | \n",
+ "
\n",
+ " \n",
+ " min | \n",
+ " 96.300000 | \n",
+ " 1.000000 | \n",
+ " 57.000000 | \n",
+ "
\n",
+ " \n",
+ " 25% | \n",
+ " 97.800000 | \n",
+ " 1.000000 | \n",
+ " 69.000000 | \n",
+ "
\n",
+ " \n",
+ " 50% | \n",
+ " 98.300000 | \n",
+ " 1.500000 | \n",
+ " 74.000000 | \n",
+ "
\n",
+ " \n",
+ " 75% | \n",
+ " 98.700000 | \n",
+ " 2.000000 | \n",
+ " 79.000000 | \n",
+ "
\n",
+ " \n",
+ " max | \n",
+ " 100.800000 | \n",
+ " 2.000000 | \n",
+ " 89.000000 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Temperature Gender Heart Rate\n",
+ "count 130.000000 130.000000 130.000000\n",
+ "mean 98.249231 1.500000 73.761538\n",
+ "std 0.733183 0.501934 7.062077\n",
+ "min 96.300000 1.000000 57.000000\n",
+ "25% 97.800000 1.000000 69.000000\n",
+ "50% 98.300000 1.500000 74.000000\n",
+ "75% 98.700000 2.000000 79.000000\n",
+ "max 100.800000 2.000000 89.000000"
+ ]
+ },
+ "execution_count": 40,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.describe()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 42,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Temperature | \n",
+ " Gender | \n",
+ " Heart Rate | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " 96.3 | \n",
+ " 1 | \n",
+ " 70 | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " 96.7 | \n",
+ " 1 | \n",
+ " 71 | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " 96.9 | \n",
+ " 1 | \n",
+ " 74 | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " 97.0 | \n",
+ " 1 | \n",
+ " 80 | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " 97.1 | \n",
+ " 1 | \n",
+ " 73 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Temperature Gender Heart Rate\n",
+ "0 96.3 1 70\n",
+ "1 96.7 1 71\n",
+ "2 96.9 1 74\n",
+ "3 97.0 1 80\n",
+ "4 97.1 1 73"
+ ]
+ },
+ "execution_count": 42,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.head() #Temperature温度,Gender男女,Heart Rate心跳频率"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### 体温的分布是正态的吗?"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 43,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Average (Mu):98.24923076923076/Standard Deviation: 0.7303577789050376\n"
+ ]
+ }
+ ],
+ "source": [
+ "observed_temperatures = df['Temperature'].sort_values()\n",
+ "bin_val = np.arange(start=observed_temperatures.min(), \n",
+ " stop=observed_temperatures.max(), step=.05)\n",
+ "# 计算均值和标准差\n",
+ "mu, std = np.mean(observed_temperatures), np.std(observed_temperatures)\n",
+ "\n",
+ "#基于均值和标准差画\n",
+ "p = norm.pdf(observed_temperatures, mu, std)\n",
+ "\n",
+ "plt.hist(observed_temperatures, bins=bin_val, normed=True, stacked=True)\n",
+ "plt.plot(observed_temperatures, p, color='red')\n",
+ "plt.xticks(np.arange(95.75,101.25,0.25),rotation=90)\n",
+ "plt.xlabel('Human Body Temperature Distributions')\n",
+ "plt.xlabel('human body temperature')\n",
+ "plt.show()\n",
+ "\n",
+ "print('Average (Mu):'+str(mu)+'/' 'Standard Deviation: '+str(std))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### 正态检验"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 44,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Shapiro-Wilk Stat: 0.9865769743919373 Shapiro-Wilk p_Value: 0.2331680953502655\n",
+ "p: 0.2587479863488212\n"
+ ]
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "x = observed_temperatures\n",
+ "\n",
+ "shapiro_test, shapiro_p = scipy.stats.shapiro(x)\n",
+ "print('Shapiro-Wilk Stat:', shapiro_test, 'Shapiro-Wilk p_Value:', shapiro_p)\n",
+ "\n",
+ "k2, p = scipy.stats.normaltest(observed_temperatures)\n",
+ "print('p:',p) #大于0.05即可接受为正态分布\n",
+ "\n",
+ "scipy.stats.probplot(observed_temperatures, dist='norm', plot=pylab)\n",
+ "pylab.show() #越接近斜线,越符合正态分布"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### 第二种检验正态分布方法"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 47,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Mean temperature : 98.24923076923076 with standard deviation of +/- 0.730357778905038\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 47,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfEAAAE9CAYAAAAbGFuyAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3deXxU1f3/8ddnZrIRdgKCEAggKDtiBNGioLV1xX2tilJLv1rtt9blq7+qRexitVZraxetC7VudS0q7kUFZVdE9jWQyBa2SMg+c35/3ElIQlbMZGaS9/Px4HHn3ntm8sk15pPPueeeY845REREJP74oh2AiIiIHBolcRERkTilJC4iIhKnlMRFRETilJK4iIhInFISFxERiVOBaAfQWGlpaS4jIyPaYYiIiDSLxYsX73TOda3pXNwl8YyMDBYtWhTtMERERJqFmW2q7Zy600VEROKUkriIiEicUhIXERGJU3F3T7wmpaWl5OTkUFRUFO1QJEYkJyfTq1cvEhISoh2KiEjEtIgknpOTQ7t27cjIyMDMoh2ORJlzjl27dpGTk0Pfvn2jHY6ISMS0iO70oqIiunTpogQuAJgZXbp0Uc+MiLR4LSKJA0rgUoV+HkSkNYhYEjezJ81sh5ktq+W8mdkjZrbOzJaa2ahIxdIczIybb765Yv/3v/89U6dObdYYrr76al5++eUaj/ft25cRI0YwcOBArrrqKr7++uuK82eccQZ79+6t9XMffvhhCgoKaj1/7bXXsmLFCgDatm3bqJiXLFnCzJkzK/ZnzJjBfffd16jPEBFprSJZiT8NnFbH+dOBAeF/U4C/RjCWiEtKSuLVV19l586dh/T+srKyJo6oqgceeIAvv/yS1atXc/TRRzNhwgRKSkoAmDlzJh07dqz1vXUl8WAwyD/+8Q8GDx58SHFVT+ITJ07k9ttvP6TPEhFpMtkLYPaD3jaGRWxgm3PuEzPLqKPJOcA/nXMOmGdmHc2sh3Nua6RiiqRAIMCUKVN46KGH+PWvf13l3KZNm5g8eTK5ubl07dqVp556it69e3P11VfTuXNnvvjiC0aNGkW7du3YuHEjW7duZc2aNfzhD39g3rx5vP322/Ts2ZM33niDhIQEpk2bxhtvvEFhYSHHH388f//73xvcfWxm3HTTTbz22mu8/fbbnHPOORWz4KWkpHDxxReTk5NDMBjkrrvuYvv27WzZsoUJEyaQlpbGrFmzaNu2LT//+c959913efDBB7nzzjv5/e9/T2ZmJgA333wzs2bNolOnTrzwwgt07dqV8ePHV7TZuXMnmZmZrFmzhrvvvpvCwkLmzJnDHXfcQWFhIYsWLeLPf/5zndetffv2LFq0iG3btnH//fdz4YUXNvl/UxGJPuccpUFHSTBESZn3L+QcDgiFHM5ByLnwP6+9I3ws5G0rt3Hhzww57/3l7wk5cHjbtrmfM/K/V2HBEpw/kYUnPs3eLiO997jK7/G+RvnXK/+cgM+4KDO9Wa5PNEen9wSyK+3nhI8dlMTNbApetU7v3r2bJbhD8ZOf/IThw4dz2223VTl+ww03cNVVVzFp0iSefPJJfvrTn/L6668DsGbNGj744AP8fj9Tp05l/fr1zJo1ixUrVjB27FheeeUV7r//fs477zzeeustzj33XG644QbuvvtuAK688krefPNNzj777EbFOmrUKFatWsU555xTceydd97h8MMP56233gIgLy+PDh068Ic//IFZs2aRlpYGwP79+xk6dCjTpk076HP379/PqFGjePDBB5k2bRr33HMPf/7zn2uMITExkWnTplUkbYCnn366Qddt69atzJkzh1WrVjFx4kQlcZFIyl4AWbMhYxykj65yyjlHfnEZewtK2VdURl5hKTvzi9lbWEpeQQl7CkrJKyylNJyES4MhisPb0qCrOFZSFqpI1Afaesm7uV3v/w8jAiX4LURZWQmfvPcaf2lEHO2TA60iiddUOrqaGjrnHgMeA8jMzKyxTbl73ljOii3ffPvoKhl8eHt+efaQetu1b9+eq666ikceeYSUlJSK43PnzuXVV18FvKRbOclfdNFF+P3+iv3TTz+dhIQEhg0bRjAY5LTTvDsSw4YNIysrC4BZs2Zx//33U1BQwO7duxkyZEijk7jXAVLVsGHDuOWWW/i///s/zjrrLMaNG1fje/1+PxdccEGN53w+H5dccgkAV1xxBeeff36j4qqsrut27rnn4vP5GDx4MNu3bz/kryEiNSspC7Ezv5j96z6j39uXY8ESgr4Enuz/Rz4PDSB3XzG5+cXk7iumqLT2BNcm0U/75ASSEnwk+H0k+n0kBHwk+X0kJ/honxzwjge8c4kBX8X+geNWsZ+c4McAnxlm3tbnK9+3inM+83oefVa1bcV7KrU5cMzbb5ubhO/t/+BCpfj8CVx47qWc3T3zoM+t6fPL42ku0UziOUDlP1V6AVuiFEuT+dnPfsaoUaO45ppram1Tues7NTW1yrmkpCTAS4YJCQkVbX0+H2VlZRQVFXH99dezaNEi0tPTmTp16iE9SvXFF19wyimnVDk2cOBAFi9ezMyZM7njjjv43ve+V1HxV5acnFzlD4+6lMcfCAQIhbz/0Q/10a/K1638OkHNf5CISN3yi8vYkJvPhtz9FG+cR4cd85gfGsx/92eQV1jK3oJSwKtKfx6uSkPBUkrWfcLG9ofTtV0Sx/TuRLf2yaS1TaRjm0TaJwdon5xAl7ZJdEpNoENKAkmBhv2uiCl9vguHvQFZs7GMcfSr1vsQS6KZxGcAN5jZC8AYIK8p7oc3pGKOpM6dO3PxxRfzxBNPMHnyZACOP/54XnjhBa688kqeffZZvvOd7xzy55cnwLS0NPLz83n55Zcb1ZXsnONPf/oTW7durajyy23ZsoXOnTtzxRVX0LZt24qu7Xbt2rFv376K7vS6hEIhXn75ZS699FKee+65iu81IyODxYsXM3r06Coj6Ms/uyZNed1EWquCkjK+ysljXW4+a7fnsz43n3U78tma5/0uGWVreDbxNyRYGeMJEEz7HaX9j6VHh2S6tkviiCI/vo+9qtQfSOTGSddwYwwntSaTPvqgWwexKGJJ3MyeB8YDaWaWA/wSSABwzv0NmAmcAawDCoDaS9c4c/PNN1e5D/zII48wefJkHnjggYoBWoeqY8eO/OhHP2LYsGFkZGRw7LHHNuh9t956K/feey8FBQUcd9xxzJo1i8TExCptvvrqK2699daKXoC//tV7YGDKlCmcfvrp9OjRg1mzZtX5dVJTU1m+fDnHHHMMHTp04MUXXwTglltu4eKLL+aZZ57h5JNPrmg/YcIE7rvvPkaOHMkdd9xR5bOa8rqJxIU67j03hHOOFVu/YWlOHiu3fsOXOXms2JJHadDrrWqT6OeIbm0Z268L/bu1pX/XtmRmLyV5QRBzIQIWZNqIPTBuWKVP7Q193/hWcUnkWLx1RWZmZrrq64mvXLmSQYMGRSkiiVX6uZC4kr0Apk+EYAn4E2HSjAYlzJKyEIuydvPhqh28s2wbX+8tBCAlwc+Qw9tzdO+OHN8/jYHd29GjfTI+X7XhSIf4daX5mNli51xmTedaxNzpIiJxoa5KO2u2l0hd0Ntmza41me7YV8S7y7YxZ91OZq/dSUFJkES/j3ED0vjZdwdwTJ9O9OmSir96wq5J+mgvcavSjktK4iIizaG+ijdjnHe8/HxG1adD1ufm8/LiHOas3clXX+cB0LNjCucd3ZPxR3ZjbP8utE06xF/pcXL/Vw6mJC4i0hyyZkOwGFzI21avtGuoiIvLgsxYsoUn5mxk1TZvAGi/tFRu+u5AzhjWnQGHtYvSNyOxQklcRKQ5pHTxEjh425QuB7dJH43rdSzrc/N57d1V/HtRDrn7ijmqezt+efZgvj+kO4d3TDn4fdJqKYmLiDSVuu55F+7CW64i5G0Ld1U5vXt/Ca9+nsMLC7NZtyMfn8GJA7sy+YS+fOeItIMHpImgJC4i0jQacs87kHTQPe89+0v47dsreeXzrwmGHEf37sjUswdz2tAedO+QHKVvRuJFi1lPPNp+/etfM2TIEIYPH87IkSOZP39+RL/e+PHjqf6oXUNlZWUxdOjQets899xzh/T5Iq1SxT3v4IF73pWV3/M++RcwaQYlPTL559wsTn7wI179/GuuGNObmT8dx2vXn8DVJ/RVApcGUSXeBObOncubb77J559/TlJSEjt37qxY5jNelSfxyy+/PNqhiMSHBt7zDvY8lte/+JqHnvuInD2FjOnbmakThzCoR/tmDVdaBlXiTWDr1q2kpaVVzOedlpbG4YcfDsC0adM49thjGTp0KFOmTKmY53v8+PHcdNNNnHjiiQwaNIiFCxdy/vnnM2DAAO68807AS6RHHXUUkyZNYvjw4Vx44YU1ruv93nvvMXbsWEaNGsVFF11Efn7+QW0WL17MiBEjGDt2LI8++mjF8aysLMaNG8eoUaMYNWoUn332GQC33347s2fPZuTIkTz00EO1thNpdWpbZ7rinjfUdM8bYO32fZz5yGxufulLOqQk8PQ1x/LClOOUwOXQufAaqPHy75hjjnHVrVix4qBj9do837lPfu9tv6V9+/a5ESNGuAEDBrjrrrvOffTRRxXndu3aVfH6iiuucDNmzHDOOXfSSSe52267zTnn3MMPP+x69OjhtmzZ4oqKilzPnj3dzp073caNGx3g5syZ45xz7pprrnEPPPBAxfsXLlzocnNz3bhx41x+fr5zzrn77rvP3XPPPQfFOGzYsIq4brnlFjdkyBDnnHP79+93hYWFzjnn1qxZ48qv76xZs9yZZ55Z8f7a2sWyQ/q5EKnL5vnOTevq3C87eNvKvz82z3fu3sOcm9rJ21Y69/mm3W7KPxe6jNvfdMN++Y6bseRrFwyGovANSDwCFrlacmLr7E5v4mkG27Zty+LFi5k9ezazZs3ikksu4b777uPqq6+uc9nQiRMnAt4SoEOGDKFHjx4A9OvXj+zsbDp27Eh6ejonnHAC4C3t+cgjj3DLLbdUfO158+axYsWKijYlJSWMHTu2Snx5eXns3buXk046CfCW9Xz77bcBKC0t5YYbbmDJkiX4/X7WrFlT4/fY0HYiLdqXz3v3u8Hbfvn8gd8dNTznvSE3nwffW8NbX20lKeDjB2N689NTBtCtne53S9NonUm8EdMbNpTf72f8+PGMHz+eYcOGMX36dC699NI6lw2tvOxo5aU1y5cdharLb9a075zj1FNP5fnnn681NufcQe8r99BDD3HYYYfx5ZdfEgqFSE6u+ZdLQ9uJtGzV15qoth+e+SxnTwF3PbWAj9fkkhjwcf34/vz4xP50aJPQbJFK69A674mXT29o/hqnN2ys1atXs3bt2or9JUuW0KdPnxqXDW2szZs3M3fuXACef/75g5bjPO644/j0009Zt24dAAUFBQdVyR07dqRDhw7MmTMHgGeffbbiXF5eHj169MDn8/HMM88QDAaBg5cIra2dSKvSfWTd+8B7y7dx+sOzWZi1h+vHH8Ent07gttOOUgKXiGidlXgTT/ifn5/PjTfeyN69ewkEAhxxxBE89thjh7xsaGWDBg1i+vTp/PjHP2bAgAFcd911Vc537dqVp59+mssuu4ziYq+b71e/+hUDBw6s0u6pp55i8uTJtGnThu9///sVx6+//nouuOACXnrpJSZMmEBqaioAw4cPJxAIMGLECK6++upa24m0OIc4YcvWvEKenLORx2dvZGjP9vz1B8eQ3rlNc0YurZCWIo1hWVlZnHXWWSxbtizaocSllvpzIRFU33iZGs6XHZ7Jwx+s5S8frSPk4PxRPfnt+cNICvij931Ii6KlSEVEGqKRi5QsCh7BnX+aw6pt+5hwZFfuPnsIfdPUSyXNR0k8hmVkZKgKF2lODZywJdTzWH711kqe/HQuh7VP4i8/GMXpQ7vXOoBUJFKUxEVEyhXuAgxv1LnVOGFLfnEZP3vhCz5YuYMrj+vDbacdSbtkDVqT6GgxSbyux6ik9Ym3sR4SI1K6cOCxMXdQJT5/wy5++sIX5O4r5pdnD+bq4zP0e0eiqkU8YpacnMyuXbv0i1sAL4Hv2rVLz7JLzWqbNhXqnDr134uy+cE/5pOaFODl647nmhP6KoFL1LWISrxXr17k5OSQm5sb7VAkRiQnJ9OrV69ohyGx5hCWCy0sCTJ1xnJeXJTNuAFp/PnyUXRIUfe5xIYWkcQTEhLo27dvtMMQkVjXyNHny3xHcstfPmX19n1MGtuHX5w5mMRAi+jAlBaiRSRxEZEGaeDoc9JHM2ftTn44/TPapyTw+JWZfHfwYc0bq0gDKImLSOvRgNHnAAuzdnPtPxfSNy2Vf107hrS2STW2E4k29QuJSOtRz+hzgLeWbuUHj8+nS2qSErjEPFXiItJ61FGJO+d4Ys5G7n93NcN6deCxK4+hixK4xDglcRFpPWqpxJ1z/HLGcv45dxMnH9WNBy8aQafUxKiFKdJQSuIi0nrUUok/PnsD/5y7iR9+py+/OGMQPp+e/5b4oHviItLy1DahSw2V+Mdrcvnt26s4bUh37jxTCVziiypxEWlZ6prQpdp64Os3b+K6JYvp2yWVP1wyQjOwSdxRJS4iLUvFhC7BAxO6lCufkc38lPkSuHVhe/p0SeWFKcfRJlE1jcQf/dSKSMtS14Qu4RnZ5s/6D79bmUaPYSfx4EUjSE7wRydWkW9JlbiIxJ9DXMQE4PGNaVyy4nh6Dh/PHy8ZqQQucU2VuIjEl0NYxKTcP2Zv4NczV3Lm8B48dPEIAn7VMRLflMRFJL40chGT8nMvLtzMr95ayZnDevDHS0YqgUuLoCQuIvGlEYuYlNu4cz9TZ6xg3IA0Hr5UCVxaDv0ki0h8qZiwBepaxKRcUWmQm15cQmLAxwMXjiBBCVxaEFXiIhJfGrCISWW/nbmSJdl7+esPRtG9Q3LEwxNpTvqTVETiSyMq8Q9Xbmf63E1MPqEvpw/r0SzhiTQnJXERiS8NrMR35Rdz28tLOap7O2477chmC0+kOUU0iZvZaWa22szWmdntNZzvbWazzOwLM1tqZmdEMh4RaQEaUInvKyrl6qcWsq+ojIcv1bPg0nJFLImbmR94FDgdGAxcZmaDqzW7E/i3c+5o4FLgL5GKR0RaiHoq8T37S7j0sXms3PoNf71iFEd1b9/sIYo0l0hW4qOBdc65Dc65EuAF4JxqbRxQ/n9YB2BLBOMRkZagjko8GHLc9O8lrN2ezx8vPZpTBh0WlRBFmkskR6f3BLIr7ecAY6q1mQq8Z2Y3AqnAdyMYj4i0BHVU4s/MzeKj1bnce+5QzhyugWzS8kWyEq9pTT9Xbf8y4GnnXC/gDOAZMzsoJjObYmaLzGxRbm5uBEIVkbhRSyWetXM/v39vDd85Io0rxvSOWngizSmSSTwHSK+034uDu8t/CPwbwDk3F0gG0qp/kHPuMedcpnMus2vXrhEKV0TiQg2VeGkwxI3Pf0HAb/z2/GFaF1xajUgm8YXAADPra2aJeAPXZlRrsxk4BcDMBuElcZXaIlK7GirxR2et46uv8/jtecNI79wmmtGJNKuIJXHnXBlwA/AusBJvFPpyM5tmZhPDzW4GfmRmXwLPA1c756p3uYuIHFCtEl/9TSJ//HAt5448XBO6SKsT0WlXnXMzgZnVjt1d6fUK4IRIxiAiLcy2LyteOmDJwo8Z0G04vzpvWPRiEokSzdgmInGmamedD3hi0rG0TdJSENL6KImLSHzpPhIIp3IHfYaO1X1wabWUxEUkNmUvgNkPetvKCncRwjAgZEZmt6hEJxIT1P8kIrEnewFMnwjBEvAnwqQZkD4agKWBYQxwCSRYGf5AEtZ3XJSDFYkeJXERiT1ZsyFYDC7kbbNmQ/poduUXc+1/fYxJ/RW/P/YbAkecVJHcRVojJXERiT0pXbwEDt42pQuhkOOWl75kb0Ep1/3kMpIO18ImIronLiKxp5YJXWatzuWuswYxWAlcBFAlLiKxqNqELjlFKTw8ay0TRxzOFcf1iWZkIjFFlbiIxJ5KlbjDeGPeMrq1S+Lec4ZqXnSRSpTERST2hCtxrxZ3bC1pw+NXZdKhTUJ04xKJMepOF5HYE67EDUeZg8uGtWVQzw7Rjkok5iiJi0jsSeni1eEO/AaD+mVEOyKRmKTudBGJOfv2bCcEeLe/LVyZi0h1SuIiElMKS4I8+UUePq8Qx3Dhe+QiUp2SuIjElL9+vJ7ivJ1gFh6frkpcpDZK4iISM+Zv8CZ1Se/Vy6vAAVSJi9RKSVxEYsLu/SXc+PwX9O7chvOPSqH6jG0icjAlcRGJjkpLjTrnuOPVpewtKOXRy0eR1K4rqBIXqZceMROR5ldtqdFZY/7Bu8uNO04/ypsXff0uvBoj5G1ViYvUSJW4iDS/iqVGg7iyYpbOeZPRfTtz7bh+3vmMcRBIAvN72wytGS5SE1XiItL8wkuNeh3mIfbQjgcvGoHfF74Pnj4aJs3wkn3GOK0ZLlILJXERaX7VplW9cFAK6Z3bVG2TPlrJW6QeSuIi0vyqTas69Ii+0Y5IJC7pnriINLuS/Nwq06pa4e4oRyQSn5TERaTZzdoc1LSqIk1ASVxEmlX27gJWbcjCGZpWVeRbUhIXkWZTGgwx+emF7KFdxXxsmsxF5NApiYtIs/nn3E2s3ZHPJYNTMU2rKvKtKYmLSLNYn5vP795exclHdeOofn3QtKoi356SuIg0iz99uBYM7rtgWHg0uipxkW9LSVxEIm7Wqh28vmQLU8b1o1u75HDlrUpc5NtSEheRiAqGHL97ZxUZXdrw01MGeAfDM7Z5VImLHColcRGJqKc+3ciqbfv4+feOJDEQ/pWjSlykSSiJi0jEvLhwM799exWnHNWNs4b1OHBClbhIk1ASF5GImL9hF7e/+hXfOSKNP152ND7fgSfDVYmLNA0lcRFpcsVlQW59eSm9OqXwlx+Mom1StbWWVImLNAklcRFpci8tyiFtzxKmD5hD6o7PD26gSlykSSiJi0iT2l9cxkcfvMXzSb+h79KHYfpEyF5QtVHhLg78+vGpEhc5REriItKkfvXWCo4sWkIiZZgLQrAYsmZXbZQxDgJJYH5vmzEuOsGKxLlA/U1ERBpmac5enl+QzZ8G9sE2h7yDLnRwd3n6aJg0w0vuGeO8fRFptIhW4mZ2mpmtNrN1ZnZ7LW0uNrMVZrbczJ6LZDwiEjklZSFue3kpXdslcWpGIvUOXEsfDeNuVgIX+RYiVombmR94FDgVyAEWmtkM59yKSm0GAHcAJzjn9phZt0jFIyKR9a95m1i1bR9/vvxokkty0MA1kciLZHf6aGCdc24DgJm9AJwDrKjU5kfAo865PQDOuR0RjEdEmlr2AsiaTX6Psfzpv/l854g0zhzWA+aUD1wLoYFrIpETySTeE8iutJ8DjKnWZiCAmX0K+IGpzrl3IhiTiDSV7AXeyPNgCUkWoG/hHdx++mTM7MDAtWAJ+BM1cE0kQiKZxK2GY67afgAYAIwHegGzzWyoc25vlQ8ymwJMAejdu3fTRyoijZc12xt57kL4QiEm9/qaoT07eOc0cE2kWUQyiecA6ZX2ewFbamgzzzlXCmw0s9V4SX1h5UbOuceAxwAyMzOr/yEgItGQ0gVcCAf4cBw/bGDV8+mjlbxFIiySo9MXAgPMrK+ZJQKXAjOqtXkdmABgZml43esbIhiTiDSVwl04DAOcGZ1tX7QjEml1IpbEnXNlwA3Au8BK4N/OueVmNs3MJoabvQvsMrMVwCzgVuecRsCIxIPw1KkOMI1AF4mKiE724pybCcysduzuSq8d8PPwPxGJI+s3bybDgd9Ai5iIRIemXRWRRtuzv4QXl+3HZ+WjVVWJi0SDkriINNrdM5aTVLoXwvfEVYmLRIeSuIg0yqKs3by1dAuD+md498IBVeIi0aEkLiIN5pxj6hvL6douiVP6BKh3fnQRiSglcRFpsMWb9rDs62+48eQBJLXriuZHF4kuJXERaRDnHH/8cC2dUxM57+ie4cpblbhINCmJi0iDzFq9g9lrd3L9+P6kJgUqnhP3qBIXiQYlcRGpV1FpkF+/tZI+Xdpw1dgM76AqcZGoqzOJm1lEJ4MRkfjw0PtrWJ+7n3smDiExEP61oUpcJOrqq8QXlL8wsz9FOBYRiUFZO/fz1GdZXHhML8Yf2e3AiW1fVm1YfV9EIq6+SrvycqInRDIQEYk9bvN85r/8PGMC/bnp1PHVz9azLyKRVl8S1/+VIq1V9gJC0ydyQVkJF/gTCOwbAx0rLS064nL44lkIloI/wdsXkWZVXxI/ysyW4lXk/cOvCe8759zwiEYnIlFTvO5jAsFiAuZwrhSyZlddHzx9NFz9lnc8Y5zWDheJgvqS+KBmiUJEYs47G0qY6BzOwFyo5oFr6aOVvEWiqM4k7pzbBGBmHYEB4cNrnHN5kQ5MRKJnZ34x6zdtxvnKR7/qETKRWFRnEjezROAx4FxgI143eh8zew34H+dcSeRDFJHm9uB7a/CF2mIVz6/oETKRWFTfI2Z3AglAunPuaOfcSKA3XvK/K9LBiUjzW7N9Hy8u3MyE3oGKhUZViYvEpvqS+PnAj5xz+8oPhF9fD5wXycBEJDoeen8NqYkBxg4ZgCZzEYlt9SXxkHOuoPpB51w+evxMpMWZs3Ynby/bxjUnZJAaykPTqorEtnqfEzezTlSd9KVcKALxiEiUOOe4/91V9O7chusnHAFfalpVkVhXXxLvACym5iSuSlwk3mUvqHjOe25JP5bm5PGb84aRnOAPV94+vL/XfarERWJQfY+YZTRTHCLS3LIXwPSJECwBfyL/TbuPLqk9OX9UT+98xjgIJFWcJ2NcdOMVkYPU94jZ94F2zrmXqx2/HMh1zr0fyeBEJIKyZkOwGFwIV1ZMYvZnXH3yrV4VDt4kLpNmaEY2kRhWX3f6PcDZNRz/L/AaoCQuEq9SungJHIAQRQkduO6EjKptNCObSEyrb3R6G+dcbvWDzrltQGpkQhKRZlG4C8JPggcdTByYQrvkhGhHJSKNUF8STzazg6p1M0sAUiITkog0i5QuOBwO8BsMH9A32hGJSBLAcbEAABpsSURBVCPVl8RfBR43s4qqO/z6b+FzIhKvCnfhKH/0xPAV7Y5uPCLSaA2ZdnU7sMnMFpvZYiALyA2fE5E4tTPUFnOEE7meAxeJR/U9YlYG3G5m9wBHhA+vc84VRjwyEYkY5xxfLviYk6k0CcS2L6MYkYgcijorcTO7DSCctI9yzn1VnsDN7DfNEJ+IRMCML7ewNa+o2jROmr9JJN7U151+aaXXd1Q7d1oTxyIizaCoNMh9b69iT/tBVU90HxmdgETkkNWXxK2W1zXti0gceGbuJrbmFTFxYLKWGhWJc/UlcVfL65r2RSTG7S8u428fr2fcgDT69EpHC5yIxLf6ZmwbYWbf4FXdKeHXhPeTIxqZiDS56XOz2LW/hJtOHQib5uD9rxx+0EyVuEjcqW90ur+5AhGRyNqxr4i/f7yB8Ud2ZVTvTrBDS42KxLv6utNFpIV4YvZG9heX8f/OCA9oC0+76lElLhKPlMRFWoGCkjJeWpzD+CO7MfCwdt7BFFXiIvFOSVykFXhm7iZ27y/huvH9DxxUJS4S95TERVq47N0FPPTBGiYc2ZVj+nQ6cEKVuEjcUxIXacFCIcdfn3me//H9h/tGF1U9WbiLA78CfKrEReJQfY+YiUgce+edGdy1+3aSrAzfa69D+xmQPto7mTEOAkkQLAF/orcvInElopW4mZ1mZqvNbJ2Z3V5HuwvNzJlZZiTjEWlNduUXs2b+2yRZKT5CECyGrNkHGqSPhkkz4ORfeNvy5C4icSNilbiZ+YFHgVOBHGChmc1wzq2o1q4d8FNgfqRiEWmNHv5gLcFgKhYI3/d2oYPve6ePVvIWiWORrMRH4y1busE5VwK8AJxTQ7t7gfuBohrOicghWLdjH88t2MyEdL/mRxdpwSKZxHsC2ZX2c8LHKpjZ0UC6c+7NCMYh0uo89MFakgM+jh86EI1AF2m5IpnEa1rlrGLRFDPzAQ8BN9f7QWZTzGyRmS3Kzc1twhBFWoDsBTD7QW8LzFq1g7eWbuWH4/qRGspDI9BFWq5Ijk7PAdIr7fcCtlTabwcMBT4yM4DuwAwzm+icW1T5g5xzjwGPAWRmZmr1NJFy2Qvg6bMqRpiXXPkf7nmjiP5dU/nJhP6wVSPQRVqySCbxhcAAM+sLfA1cClxeftI5lwekle+b2UfALdUTuIjU4cvnvVHnAMFiVr/7OFm7LuCfk0eTFPAfGIGeNdtL4BrEJtKiRCyJO+fKzOwG4F3ADzzpnFtuZtOARc65GZH62iKth6vyatnXeZw2pDsnDux6oIlGoIu0WBGd7MU5NxOYWe3Y3bW0HR/JWERapO4jq+yucBncedagKAUjIs1N066KxLNKi5gEHZzaN5FendpENyYRaTaadlUknqV0wYW71P0GowcfEeWARKQ5qRIXiWeFu3Dh6VwcRnLp3mhHJCLNSElcJI5942uHhWtx02QuIq2OkrhIHPvoi9WEnHdX3DStqkiroyQuEqfeW76Nz7Y4fBVzI6oSF2ltlMRF4lBeYSl3/WcZR7YvBS1wItJqKYmLxKFfv7WCnfklnHrMIO9eOKBKXKT1URIXiTOPfbKefy/K4Ufj+tEruRBV4iKtl5K4SBzZs7+ERz5cx4Qju/LzUweGK29V4iKtlZK4SBy5543lFJUGue20o0gM+KrM2KZKXKT1URIXiRPvLd/G60u2cMPJRzCoR3vvoCpxkVZNSVwkDuwtKOEXry9jUI/2XD++0tSqqsRFWjXNnS4SB+59cyV79pfw1NXHet3o5VSJi7RqqsRFYtxn63fyyuc5/Pikfgzt2aHqSVXiIq2akrhIDCsqDfLcyy9zR7uZ/HTgnoMbqBIXadXUnS4Sw156/VUeKLiLZCvDnn0FJs2A9NEHGhTuwvtbPORtVYmLtCqqxEVi1Lod+Wxf+j5JVooRgmAxZM2u2ihjHASSwPzeNmNcdIIVkahQJS4Sg4Ihx/++8AVj/B0OTKvqQgd3l6eP9qrzrNleAq9cpYtIi6ckLhKDHnp/Dcu3fMP9R7fBVhqEVwyvsbs8fbSSt0grpe50kRjz2fqdPPrROi4Y1YvB/TPQwDURqY2SuEgMKSwJcvsrX9GrUwr3njsEK9yNHiETkdqoO10khjz56UY27y7gmR+Opk1iQI+QiUidVImLxIgNufn8+b/rOHXwYYwb0NU7qMlcRKQOSuIiMaC4LMhPX/iCBL9x7zlDD5xQJS4idVASF4kBL776Kidue4bHTw7RvUPygRMVk7mAJnMRkep0T1wkyrKWzOKi5deTmFCG/5MZ0LfSrGzlk7kES8CfqMlcRKQKJXGRKHLO8dkHr3OJleLHHZiVrTyJazIXEamDkrhIFE3/LItVu/1clljPrGxK3iJSA90TF4mSpTl7ufetlRzTLTwbG6AR6CLSGEriIlFQVBrkpheX0K1dEmeOGXpgfnSNQBeRRlASF4mC+99Zzfrc/dx/4XDalO1FlbiIHAolcZFmNm/DLp78dCNXHtfHm9RFz4KLyCFSEhdpRmXBEHe9voz0zin8vzMGeQc1K5uIHCIlcZFm9NSnWazdkc8vzhhESqLfO6hKXEQOkZK4SDP5eE0u972zilOO6sZpQ3scOLHty6oNq++LiNRCSVykGWzatZ8bn/ucAd3a8sfLjq521tWzLyJSMyVxkQgrKg3y42cWY2Y8flUmbZOqzbHUfWTd+yIitVASF4mgUMhxx6tf0Wb7Yl4dNo/0/csObqRFTkTkECmJi0TQ3z5Zz6Yls3gx5bf0/+phmD4RshdUbVS+yIn5va0WORGRBopoEjez08xstZmtM7Pbazj/czNbYWZLzexDM+sTyXhEmtPnm/fw8PtrmXR4DgFXCi54YIGTysoXOTn5F95W86SLSANFbAEUM/MDjwKnAjnAQjOb4ZxbUanZF0Cmc67AzK4D7gcuiVRMIs1l+ZY8rnlqIT06JnPKqKOw90PeiZoWOAEtciIihySSlfhoYJ1zboNzrgR4ATincgPn3CznXEF4dx7QK4LxiDSLr/cWcsU/5pOa6OdfPxxD29A3aDIXEYmESCbxnkB2pf2c8LHa/BB4O4LxiETc3oISrp2+iNKg41/XjiG9cxtN5iIiERPJ9cSthmM1PgBrZlcAmcBJtZyfAkwB6N27d1PFJ9J0shdA1myeWncY63Z05vGrMunXta13rmL0eQiNPheRphTJJJ4DpFfa7wVsqd7IzL4L/AI4yTlXXNMHOeceAx4DyMzM1EwYEluyF8D0iYTKivkfF6D7qL8w/shuB86Xjz4PloA/UaPPRaTJRDKJLwQGmFlf4GvgUuDyyg3M7Gjg78BpzrkdEYxFJHKyZuPKivERItHKuKTr5qrny0efZ832ErgGsIlIE4lYEnfOlZnZDcC7gB940jm33MymAYucczOAB4C2wEtmBrDZOTcxUjGJRMJu145OhHCAjxDWRqPPRaR5RLISxzk3E5hZ7djdlV5/N5JfXyTSvt5byLufLmWSA7+BRp+LSHPSjG0ih2hvQQlXPTGfrIJkfBXDODX6XESaj5K4yCHI3l3ApY/NI3t3IddmdsD0HLiIRIGSuEgj5RWUcuUT89myt5DHJ2XSu2c6eg5cRKIhovfERVqU7AUUrvmIqUs6krOnF89eO4Yx/brAbD0HLiLRoSQu0hDZC3BPn0VSsIT7nJ8rz3yOUf3CFbeeAxeRKFESF2kAt+Q5CBbjAxKtjFF73gG+753Uc+AiEiVK4iLlwlOn1pSI12zPZ6ADrHw+4WoTB+o5cBGJAg1sE4GKqVP576+9bfaCilPLvs7jzo1DKbUEHOZ1mY+4vI4PExFpHqrERcCrwIPF3nrfwWJvP300c9bu5Lp/LaZN6lDyL3iNzjsWqMtcRGKGkrgIeI+FuZD32oUgpQufrd/JNU8vIKNLKtMnj6ZzxxQ4UoPWRCR2KImLQPixMMO7121syslmyhuL6ZuWyks/Pp4ObRKiHKCIyMF0T1wEwhO0eIPVHI4nP8+jW7sk/jl5jBK4iMQsJXERqFSJe1O29Egs5Jlrx9C9Q3JUwxIRqYu600UAUrrgcODAZ3DJiSPo1DEl2lGJiNRJlbgIsGHzZkIOLLycaCfbF+2QRETqpSQurd7Krd8wfck3+Kx8WJsWMRGR+KAkLq1L9gKY/WDFZC5Lc/Zyyd/nclhCAeAL3xXXIiYiEh90T1xaj/JZ2YIlOH8in53wJNd97Kd9SgIXnHUp9tqrWsREROKKkri0LHXMf+7NylYCLkiorJhPP3idXt2u5O9XHsNhndtAey1iIiLxRUlcWo5KlTb+RG9lscrJOGMcIV8CoaCj1AUYMOY0fn7mCQT84btKWsREROKMkri0HLXMfw5QFgzx6OpOzCm+g1OS13Lq6Rdw3jEnRzlgEZFvR0lcWo4a5j8H2P5NEf/7whfM27CbM4efyEUTr6NL26QoBioi0jSUxKXlqDb/OYW7WPZ1Htc9u5hteUX85rxhXD6md5SDFBFpOkriEl/qGrhWbf7zN9cW8b8z59CtXTIvTDmOY/p0bv54RUQiSElc4kd9A9cKd+FNfRAiiLFy/SYuHzORm089kk6pidGKWkQkYpTEJX7UMXANYF2bkaSTgN+VUmoBxp16LmPHD4tiwCIikaUkLvGjjoFrv35rJW8sLeLE5Lv4Sb9tDD3hLMb2HxvFYEVEIk9JXOJHDQPXPlu3k//512JKgiGuH9+fKeO+p/W/RaTVUBKX+BEeuFY+dO3Jz/O4d+t8+nVN5fGrMunftW104xMRaWZK4hJ7ahuBXrgLhw8jRJkzSr7Zya3fP5KrxvahXbKqbxFpfZTEJbbUMgJ9Q24+n27rzYUuQAJl4E9gylWT8Pc5ItoRi4hEjZK4NL8GLlLigiUs+eQNHigIMXfDLpxrw9b+D/KTfttIHThe85yLSKunJC7NqwGLlDh/AqEyR0nIz73LOrO3SxE3TDiCK47rw2Htk6MXu4hIjFESl6bXwEqbYEmVZ73XbN/HS0vbsrL0TkYEvyLpiJO4+5QzGdGrA2YWhW9ERCS2KYlL02pApY0/seJ84eHH8+zsDbzy+des3PoNAZ/x/aEncO4pVzPgsHZR+zZEROKBkrgcmtqq7ToqbcB7PWkG+as/4j97+3L/v/aRV7ibIYe3Z+rZgzljeA+6tVOXuYhIQyiJS+PVVW1Xq7TJGFfxtryCUt5dsY03l8Jn64YSdI7vD+7ClJP6Map3pyh9MyIi8UtJXBqvrjnMw5U2WbMp7nU86/xH8sW8TXy4cjtz1u2kNOhI75zCteP6cVFmL03QIiLyLSiJS+PVMId5KORYl5vP4k17WL4lheVbjmPp23sIhuYA0LNjCpNP6MuZw3swrKcGqomINAUl8ZasrlHih8g5R/7e7aRi+HAEMZ797+c88GYP9hWVAdA+OUD/bm358Yn9OKpHe0b26kh65xQlbhGRJqYk3lLVN0q8DqGQY+f+YrbnFZOzp4CcPYVs3LWfFVu+YdOu/fQtTOTZxAQSKKPMAqxPHck5Aw9nZHonjunTiYwubZSwRUSaQUSTuJmdBvwR8AP/cM7dV+18EvBP4BhgF3CJcy4rkjG1KIf4PDZAWTBEXmEpewpKyd5dQM6eAhZm7eGL7D1s3VtEWchV+bh2SQGG9uzAaUN7cFT3gWzwD6X//iUkDziJezRzmohIVEQsiZuZH3gUOBXIARaa2Qzn3IpKzX4I7HHOHWFmlwK/Ay6JVEwtQWkwRGFpkLKseXR8+UIsWIrzJbDsu8+wMWUI+4uDFJUG6bi7L2dbAJ+DIAHuW9aFxV/OYU9BKXsKSiq6vivr2i6J0RmdOXt4G7p3SOaw9sn06pRCr05t6JBSfYGRDLz/tCIiEi2RrMRHA+uccxsAzOwF4BygchI/B5gafv0y8GczM+dc1TIwQnL2FLBiyzd4Racj5MA5CDlHKBxCyLnwMe814a2rdM658veGt5S/9vbLgiFKgo6yYIjSYIjSoKMsFKK0zFEaClEWdBSXBSkqDVFcFqS4LHTgdXhbVBqiqDRYUSFf7/8PPw+UELAQwTLHO2++zF+CpZW+uyT+ZXdwQmAVq1NGsLXsCDq2SaBPl1Q6tUmgY5tEOrVJoFNqIoe1T6ZPlzZ0b5+sbnARkTgSySTeE8iutJ8DjKmtjXOuzMzygC7AzsqNzGwKMAWgd+/eTRbgp+t28n+vfNVkn1efBL8R8PlI8BsJfh8Jfh+B8OukgI+kBD9JAR/tkhNIa+sdSw4fSwr4SUn0kZLgJznBT6/8ICz8D6FQKRZI4IwzLuL8vseRmhQgOeC1SQycgd+npCwi0lJFMonXlD2qV9gNaYNz7jHgMYDMzMwmq9JPHdydIYd3wAx8ZhVbL+95WwvvG+HzPsM40L7ivVWOVf2sBL+PgM+auMrtB0O7V9wTH6r70iIirU4kk3gOkF5pvxewpZY2OWYWADoAuyMYUxWdUxPpnJrYXF+u6aWP1nKcIiKtmC+Cn70QGGBmfc0sEbgUmFGtzQxgUvj1hcB/m+t+uIiISLyLWCUevsd9A/Au3iNmTzrnlpvZNGCRc24G8ATwjJmtw6vAL41UPCIiIi1NRJ8Td87NBGZWO3Z3pddFwEWRjEFERKSlimR3uoiIiESQkriIiEicUhIXERGJU0riIiIicUpJXEREJE4piYuIiMQpJXEREZE4ZfE2QZqZ5QKboh1HI6VRbVEXqZeuWePoejWOrlfj6Zo1TlNerz7Oua41nYi7JB6PzGyRcy4z2nHEE12zxtH1ahxdr8bTNWuc5rpe6k4XERGJU0riIiIicUpJvHk8Fu0A4pCuWePoejWOrlfj6Zo1TrNcL90TFxERiVOqxEVEROKUkngTM7P/NbNlZrbczH5W6fiNZrY6fPz+aMYYa2q6Zmb2opktCf/LMrMl0Y4zVtRyvUaa2bzw9VpkZqOjHWcsqeWajTCzuWb2lZm9YWbtox1nNJnZk2a2w8yWVTrW2czeN7O14W2n8HEzs0fMbJ2ZLTWzUdGLPDoaeb2OCv+sFZvZLU0Zh5J4EzKzocCPgNHACOAsMxtgZhOAc4DhzrkhwO+jGGZMqe2aOecucc6NdM6NBF4BXo1mnLGitusF3A/cE75ed4f3hTqv2T+A251zw4DXgFujF2VMeBo4rdqx24EPnXMDgA/D+wCnAwPC/6YAf22mGGPJ0zT8eu0GfkoEfvcriTetQcA851yBc64M+Bg4D7gOuM85VwzgnNsRxRhjTW3XDPD+4gcuBp6PUnyxprbr5YDySrIDsCVK8cWi2q7ZkcAn4TbvAxdEKb6Y4Jz7BC/ZVHYOMD38ejpwbqXj/3SeeUBHM+vRPJHGhsZcL+fcDufcQqC0qeNQEm9ay4ATzayLmbUBzgDSgYHAODObb2Yfm9mxUY0yttR2zcqNA7Y759ZGJbrYU9v1+hnwgJll4/21f0cUY4w1tV2zZcDEcJuLqPpzJ57DnHNbAcLbbuHjPYHsSu1ywsdau9quV8QEIv0FWhPn3Eoz+x3eX/X5wJdAGd517gQcBxwL/NvM+jk9GlDXNSt3GarCK9Rxva4DbnLOvWJmFwNPAN+NXqSxo45rNhl4xMzuBmYAJdGLMu5YDcda/e+zaFAl3sScc08450Y5507E62pZi/dX6qvhrqcFQAhvXl2h1muGmQWA84EXoxlfrKnlek3iwLiBl/Du/0pYTdfMObfKOfc959wxeH8oro9ulDFpe3k3eXhbfiswh6o9F73QLRyo/XpFjJJ4EzOzbuFtb7wE9DzwOnBy+PhAIBEtJFChlmsGXiW5yjmXE63YYlEt12sLcFK4ycmE/xAST03XrNIxH3An8LfoRRizZuD9gUh4+59Kx68Kj1I/Dsgr70Zu5Wq7XhGj7vSm94qZdcEbwPAT59weM3sSeDL8KEIJMEld6VUcdM3Cxy9FXek1qeln7EfAH8O9F0V4I4blgJqu2f+a2U/C518FnopeeNFnZs8D44E0M8sBfgnch3f774fAZryxAwAz8cYWrAMKgGuaPeAoa8z1MrPuwCK8waeh8GOOg51z33zrOJRLRERE4pO600VEROKUkriIiEicUhIXERGJU0riIiIicUpJXEREJE7pETOROBF+ROrD8G53IAjkhvdHO+dibsYxM5sMzHTObYt2LCItkR4xE4lDZjYVyHfORX1FPDPzO+eCtZybA9zgnGvwUrJmFggvVCIi9VB3ukgLYGaTzGxBeD3xv5iZz8wCZrbXzB4ws8/N7F0zGxNehGeDmZ0Rfu+1ZvZa+PxqM7uzgZ/7KzNbAIw2s3vMbKF5a3b/LTyT1yXASKB8bfhEM8sxs47hzz7OzD4Iv/6Vmf3dzN4Hngp/jT+Ev/ZSM7u2+a+qSOxTEheJc+H1ss8Djg+vJx7Am+0OvGVJ33POjcKbLXAqcAreTFLTKn3M6PB7RgGXm9nIBnzu58650c65ucAfnXPHAsPC505zzr0ILAHK14avr7v/aOBs59yVeDPO7XDOjcZbNOgn4SlTRaQS3RMXiX/fxUt0i7zl10nhwDKRhc6598Ovv8Kb47rMzL4CMip9xrvl092a2evAd/B+P9T2uSXAa5Xef4qZ3Qok4y3usxh4u5Hfx3+cc0Xh198DBplZ5T8aBuBNZSkiYUriIvHPgCedc3dVOejNo165+g0BxZVeV/7/v/rgGFfP5xaWz/8fXqP7z8Ao59zXZvYrvGRekzIO9ABWb7O/2vd0vXPuQ0SkVupOF4l/HwAXm1kaeKPYD6Hr+Xtm1jGckM8BPm3E56bg/VGw08zaARdUOrcPaFdpPws4Jvy6crvq3gWuD//BgJkdaWYpjfyeRFo8VeIicc4595WZ3QN8EF5WsxT4Hxq3vvMc4DmgP/BM+Wjyhnyuc26XmU0HlgGbgPmVTj8F/MPMCvHuu08FHjezbcCCOuL5O9AbWBLuyt+B98eFiFSiR8xEWrnwyO+hzrmfRTsWEWkcdaeLiIjEKVXiIiIicUqVuIiISJxSEhcREYlTSuIiIiJxSklcREQkTimJi4iIxCklcRERkTj1/wHm/6UzgLGuMwAAAABJRU5ErkJggg==\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "def ecdf(data):\n",
+ " n = len(data)\n",
+ " x = np.sort(data)\n",
+ " y = np.arange(1, n+1)/n\n",
+ " return x,y\n",
+ "\n",
+ "# Compute empirical mean and standard deviationg \n",
+ "\n",
+ "# Number of sample\n",
+ "n = len(df['Temperature'])\n",
+ "#Sample mean \n",
+ "mu = np.mean(df['Temperature'])\n",
+ "#Sample standard deviation\n",
+ "std = np.std(df['Temperature'])\n",
+ "print('Mean temperature :', mu, 'with standard deviation of +/-',std)\n",
+ "\n",
+ "# Random sampling of the data based off of the mean of the data.\n",
+ "normalized_sample = np.random.normal(mu,std,size=10000)\n",
+ "x_temperature,y_temperature = ecdf(df['Temperature'])\n",
+ "normalized_x, normalized_y = ecdf(normalized_sample)\n",
+ "\n",
+ "#Plot the ECDFs\n",
+ "fig = plt.figure(figsize=(8,5))\n",
+ "plt.plot(normalized_x, normalized_y)\n",
+ "plt.plot(x_temperature, y_temperature,marker='.', linestyle='none')\n",
+ "plt.ylabel('ECDF')\n",
+ "plt.xlabel('Temperature')\n",
+ "plt.legend(('Normal Distribution', 'Sample data'))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.7.3"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/notebook_必备数学基础/假设检验章节/normtemp.dat.txt b/notebook_必备数学基础/假设检验章节/normtemp.dat.txt
new file mode 100644
index 0000000..8ee1898
--- /dev/null
+++ b/notebook_必备数学基础/假设检验章节/normtemp.dat.txt
@@ -0,0 +1,131 @@
+96.3 1 70
+96.7 1 71
+96.9 1 74
+97.0 1 80
+97.1 1 73
+97.1 1 75
+97.1 1 82
+97.2 1 64
+97.3 1 69
+97.4 1 70
+97.4 1 68
+97.4 1 72
+97.4 1 78
+97.5 1 70
+97.5 1 75
+97.6 1 74
+97.6 1 69
+97.6 1 73
+97.7 1 77
+97.8 1 58
+97.8 1 73
+97.8 1 65
+97.8 1 74
+97.9 1 76
+97.9 1 72
+98.0 1 78
+98.0 1 71
+98.0 1 74
+98.0 1 67
+98.0 1 64
+98.0 1 78
+98.1 1 73
+98.1 1 67
+98.2 1 66
+98.2 1 64
+98.2 1 71
+98.2 1 72
+98.3 1 86
+98.3 1 72
+98.4 1 68
+98.4 1 70
+98.4 1 82
+98.4 1 84
+98.5 1 68
+98.5 1 71
+98.6 1 77
+98.6 1 78
+98.6 1 83
+98.6 1 66
+98.6 1 70
+98.6 1 82
+98.7 1 73
+98.7 1 78
+98.8 1 78
+98.8 1 81
+98.8 1 78
+98.9 1 80
+99.0 1 75
+99.0 1 79
+99.0 1 81
+99.1 1 71
+99.2 1 83
+99.3 1 63
+99.4 1 70
+99.5 1 75
+96.4 2 69
+96.7 2 62
+96.8 2 75
+97.2 2 66
+97.2 2 68
+97.4 2 57
+97.6 2 61
+97.7 2 84
+97.7 2 61
+97.8 2 77
+97.8 2 62
+97.8 2 71
+97.9 2 68
+97.9 2 69
+97.9 2 79
+98.0 2 76
+98.0 2 87
+98.0 2 78
+98.0 2 73
+98.0 2 89
+98.1 2 81
+98.2 2 73
+98.2 2 64
+98.2 2 65
+98.2 2 73
+98.2 2 69
+98.2 2 57
+98.3 2 79
+98.3 2 78
+98.3 2 80
+98.4 2 79
+98.4 2 81
+98.4 2 73
+98.4 2 74
+98.4 2 84
+98.5 2 83
+98.6 2 82
+98.6 2 85
+98.6 2 86
+98.6 2 77
+98.7 2 72
+98.7 2 79
+98.7 2 59
+98.7 2 64
+98.7 2 65
+98.7 2 82
+98.8 2 64
+98.8 2 70
+98.8 2 83
+98.8 2 89
+98.8 2 69
+98.8 2 73
+98.8 2 84
+98.9 2 76
+99.0 2 79
+99.0 2 81
+99.1 2 80
+99.1 2 74
+99.2 2 77
+99.2 2 66
+99.3 2 68
+99.4 2 77
+99.9 2 79
+100.0 2 78
+100.8 2 77
+
diff --git a/notebook_必备数学基础/假设检验章节/假设检验实例.ipynb b/notebook_必备数学基础/假设检验章节/假设检验实例.ipynb
new file mode 100644
index 0000000..3cedcc9
--- /dev/null
+++ b/notebook_必备数学基础/假设检验章节/假设检验实例.ipynb
@@ -0,0 +1,429 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "数据集下载地址:https://ww2.amstat.org/publications/jse/jse_data_archive.htm\n",
+ "
数据集描述:https://ww2.amstat.org/publications/jse/datasets/normtemp.txt\n",
+ "
数据:normtemp.dat.txt "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd\n",
+ "import pylab\n",
+ "import math\n",
+ "import numpy as np\n",
+ "import matplotlib.pyplot as plt\n",
+ "%matplotlib inline\n",
+ "from scipy.stats import norm\n",
+ "import scipy.stats\n",
+ "import warnings\n",
+ "warnings.filterwarnings(\"ignore\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 39,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "df = pd.read_csv('normtemp.dat.txt', sep= ' ',\n",
+ " names=['Temperature','Gender','Heart Rate'])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 40,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Temperature | \n",
+ " Gender | \n",
+ " Heart Rate | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " count | \n",
+ " 130.000000 | \n",
+ " 130.000000 | \n",
+ " 130.000000 | \n",
+ "
\n",
+ " \n",
+ " mean | \n",
+ " 98.249231 | \n",
+ " 1.500000 | \n",
+ " 73.761538 | \n",
+ "
\n",
+ " \n",
+ " std | \n",
+ " 0.733183 | \n",
+ " 0.501934 | \n",
+ " 7.062077 | \n",
+ "
\n",
+ " \n",
+ " min | \n",
+ " 96.300000 | \n",
+ " 1.000000 | \n",
+ " 57.000000 | \n",
+ "
\n",
+ " \n",
+ " 25% | \n",
+ " 97.800000 | \n",
+ " 1.000000 | \n",
+ " 69.000000 | \n",
+ "
\n",
+ " \n",
+ " 50% | \n",
+ " 98.300000 | \n",
+ " 1.500000 | \n",
+ " 74.000000 | \n",
+ "
\n",
+ " \n",
+ " 75% | \n",
+ " 98.700000 | \n",
+ " 2.000000 | \n",
+ " 79.000000 | \n",
+ "
\n",
+ " \n",
+ " max | \n",
+ " 100.800000 | \n",
+ " 2.000000 | \n",
+ " 89.000000 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Temperature Gender Heart Rate\n",
+ "count 130.000000 130.000000 130.000000\n",
+ "mean 98.249231 1.500000 73.761538\n",
+ "std 0.733183 0.501934 7.062077\n",
+ "min 96.300000 1.000000 57.000000\n",
+ "25% 97.800000 1.000000 69.000000\n",
+ "50% 98.300000 1.500000 74.000000\n",
+ "75% 98.700000 2.000000 79.000000\n",
+ "max 100.800000 2.000000 89.000000"
+ ]
+ },
+ "execution_count": 40,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.describe()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 42,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Temperature | \n",
+ " Gender | \n",
+ " Heart Rate | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " 96.3 | \n",
+ " 1 | \n",
+ " 70 | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " 96.7 | \n",
+ " 1 | \n",
+ " 71 | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " 96.9 | \n",
+ " 1 | \n",
+ " 74 | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " 97.0 | \n",
+ " 1 | \n",
+ " 80 | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " 97.1 | \n",
+ " 1 | \n",
+ " 73 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Temperature Gender Heart Rate\n",
+ "0 96.3 1 70\n",
+ "1 96.7 1 71\n",
+ "2 96.9 1 74\n",
+ "3 97.0 1 80\n",
+ "4 97.1 1 73"
+ ]
+ },
+ "execution_count": 42,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.head() #Temperature温度,Gender男女,Heart Rate心跳频率"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### 体温的分布是正态的吗?"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 43,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Average (Mu):98.24923076923076/Standard Deviation: 0.7303577789050376\n"
+ ]
+ }
+ ],
+ "source": [
+ "observed_temperatures = df['Temperature'].sort_values()\n",
+ "bin_val = np.arange(start=observed_temperatures.min(), \n",
+ " stop=observed_temperatures.max(), step=.05)\n",
+ "# 计算均值和标准差\n",
+ "mu, std = np.mean(observed_temperatures), np.std(observed_temperatures)\n",
+ "\n",
+ "#基于均值和标准差画\n",
+ "p = norm.pdf(observed_temperatures, mu, std)\n",
+ "\n",
+ "plt.hist(observed_temperatures, bins=bin_val, normed=True, stacked=True)\n",
+ "plt.plot(observed_temperatures, p, color='red')\n",
+ "plt.xticks(np.arange(95.75,101.25,0.25),rotation=90)\n",
+ "plt.xlabel('Human Body Temperature Distributions')\n",
+ "plt.xlabel('human body temperature')\n",
+ "plt.show()\n",
+ "\n",
+ "print('Average (Mu):'+str(mu)+'/' 'Standard Deviation: '+str(std))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### 正态检验"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 44,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Shapiro-Wilk Stat: 0.9865769743919373 Shapiro-Wilk p_Value: 0.2331680953502655\n",
+ "p: 0.2587479863488212\n"
+ ]
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "x = observed_temperatures\n",
+ "\n",
+ "shapiro_test, shapiro_p = scipy.stats.shapiro(x)\n",
+ "print('Shapiro-Wilk Stat:', shapiro_test, 'Shapiro-Wilk p_Value:', shapiro_p)\n",
+ "\n",
+ "k2, p = scipy.stats.normaltest(observed_temperatures)\n",
+ "print('p:',p) #大于0.05即可接受为正态分布\n",
+ "\n",
+ "scipy.stats.probplot(observed_temperatures, dist='norm', plot=pylab)\n",
+ "pylab.show() #越接近斜线,越符合正态分布"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### 第二种检验正态分布方法"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 47,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Mean temperature : 98.24923076923076 with standard deviation of +/- 0.730357778905038\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 47,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfEAAAE9CAYAAAAbGFuyAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3deXxU1f3/8ddnZrIRdgKCEAggKDtiBNGioLV1xX2tilJLv1rtt9blq7+qRexitVZraxetC7VudS0q7kUFZVdE9jWQyBa2SMg+c35/3ElIQlbMZGaS9/Px4HHn3ntm8sk15pPPueeeY845REREJP74oh2AiIiIHBolcRERkTilJC4iIhKnlMRFRETilJK4iIhInFISFxERiVOBaAfQWGlpaS4jIyPaYYiIiDSLxYsX73TOda3pXNwl8YyMDBYtWhTtMERERJqFmW2q7Zy600VEROKUkriIiEicUhIXERGJU3F3T7wmpaWl5OTkUFRUFO1QJEYkJyfTq1cvEhISoh2KiEjEtIgknpOTQ7t27cjIyMDMoh2ORJlzjl27dpGTk0Pfvn2jHY6ISMS0iO70oqIiunTpogQuAJgZXbp0Uc+MiLR4LSKJA0rgUoV+HkSkNYhYEjezJ81sh5ktq+W8mdkjZrbOzJaa2ahIxdIczIybb765Yv/3v/89U6dObdYYrr76al5++eUaj/ft25cRI0YwcOBArrrqKr7++uuK82eccQZ79+6t9XMffvhhCgoKaj1/7bXXsmLFCgDatm3bqJiXLFnCzJkzK/ZnzJjBfffd16jPEBFprSJZiT8NnFbH+dOBAeF/U4C/RjCWiEtKSuLVV19l586dh/T+srKyJo6oqgceeIAvv/yS1atXc/TRRzNhwgRKSkoAmDlzJh07dqz1vXUl8WAwyD/+8Q8GDx58SHFVT+ITJ07k9ttvP6TPEhFpMtkLYPaD3jaGRWxgm3PuEzPLqKPJOcA/nXMOmGdmHc2sh3Nua6RiiqRAIMCUKVN46KGH+PWvf13l3KZNm5g8eTK5ubl07dqVp556it69e3P11VfTuXNnvvjiC0aNGkW7du3YuHEjW7duZc2aNfzhD39g3rx5vP322/Ts2ZM33niDhIQEpk2bxhtvvEFhYSHHH388f//73xvcfWxm3HTTTbz22mu8/fbbnHPOORWz4KWkpHDxxReTk5NDMBjkrrvuYvv27WzZsoUJEyaQlpbGrFmzaNu2LT//+c959913efDBB7nzzjv5/e9/T2ZmJgA333wzs2bNolOnTrzwwgt07dqV8ePHV7TZuXMnmZmZrFmzhrvvvpvCwkLmzJnDHXfcQWFhIYsWLeLPf/5zndetffv2LFq0iG3btnH//fdz4YUXNvl/UxGJPuccpUFHSTBESZn3L+QcDgiFHM5ByLnwP6+9I3ws5G0rt3Hhzww57/3l7wk5cHjbtrmfM/K/V2HBEpw/kYUnPs3eLiO997jK7/G+RvnXK/+cgM+4KDO9Wa5PNEen9wSyK+3nhI8dlMTNbApetU7v3r2bJbhD8ZOf/IThw4dz2223VTl+ww03cNVVVzFp0iSefPJJfvrTn/L6668DsGbNGj744AP8fj9Tp05l/fr1zJo1ixUrVjB27FheeeUV7r//fs477zzeeustzj33XG644QbuvvtuAK688krefPNNzj777EbFOmrUKFatWsU555xTceydd97h8MMP56233gIgLy+PDh068Ic//IFZs2aRlpYGwP79+xk6dCjTpk076HP379/PqFGjePDBB5k2bRr33HMPf/7zn2uMITExkWnTplUkbYCnn366Qddt69atzJkzh1WrVjFx4kQlcZFIyl4AWbMhYxykj65yyjlHfnEZewtK2VdURl5hKTvzi9lbWEpeQQl7CkrJKyylNJyES4MhisPb0qCrOFZSFqpI1Afaesm7uV3v/w8jAiX4LURZWQmfvPcaf2lEHO2TA60iiddUOrqaGjrnHgMeA8jMzKyxTbl73ljOii3ffPvoKhl8eHt+efaQetu1b9+eq666ikceeYSUlJSK43PnzuXVV18FvKRbOclfdNFF+P3+iv3TTz+dhIQEhg0bRjAY5LTTvDsSw4YNIysrC4BZs2Zx//33U1BQwO7duxkyZEijk7jXAVLVsGHDuOWWW/i///s/zjrrLMaNG1fje/1+PxdccEGN53w+H5dccgkAV1xxBeeff36j4qqsrut27rnn4vP5GDx4MNu3bz/kryEiNSspC7Ezv5j96z6j39uXY8ESgr4Enuz/Rz4PDSB3XzG5+cXk7iumqLT2BNcm0U/75ASSEnwk+H0k+n0kBHwk+X0kJ/honxzwjge8c4kBX8X+geNWsZ+c4McAnxlm3tbnK9+3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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "def ecdf(data):\n",
+ " n = len(data)\n",
+ " x = np.sort(data)\n",
+ " y = np.arange(1, n+1)/n\n",
+ " return x,y\n",
+ "\n",
+ "# Compute empirical mean and standard deviationg \n",
+ "\n",
+ "# Number of sample\n",
+ "n = len(df['Temperature'])\n",
+ "#Sample mean \n",
+ "mu = np.mean(df['Temperature'])\n",
+ "#Sample standard deviation\n",
+ "std = np.std(df['Temperature'])\n",
+ "print('Mean temperature :', mu, 'with standard deviation of +/-',std)\n",
+ "\n",
+ "# Random sampling of the data based off of the mean of the data.\n",
+ "normalized_sample = np.random.normal(mu,std,size=10000)\n",
+ "x_temperature,y_temperature = ecdf(df['Temperature'])\n",
+ "normalized_x, normalized_y = ecdf(normalized_sample)\n",
+ "\n",
+ "#Plot the ECDFs\n",
+ "fig = plt.figure(figsize=(8,5))\n",
+ "plt.plot(normalized_x, normalized_y)\n",
+ "plt.plot(x_temperature, y_temperature,marker='.', linestyle='none')\n",
+ "plt.ylabel('ECDF')\n",
+ "plt.xlabel('Temperature')\n",
+ "plt.legend(('Normal Distribution', 'Sample data'))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.7.3"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}