From 5a1dee15077888f826a34854b40e659eabf0e87a Mon Sep 17 00:00:00 2001 From: gopikagowthaman Date: Mon, 24 Jun 2024 02:04:11 +0200 Subject: [PATCH] Gopika --- .DS_Store | Bin 0 -> 6148 bytes .ipynb_checkpoints/README-checkpoint.md | 18 + .../.ipynb_checkpoints/main-checkpoint.ipynb | 1271 ++++++++++++ your-code/frequency_distribution_1.png | Bin 0 -> 30366 bytes your-code/frequency_distribution_2.png | Bin 0 -> 26804 bytes your-code/main.ipynb | 1793 ++++++++++++----- 6 files changed, 2560 insertions(+), 522 deletions(-) create mode 100644 .DS_Store create mode 100644 .ipynb_checkpoints/README-checkpoint.md create mode 100644 your-code/.ipynb_checkpoints/main-checkpoint.ipynb create mode 100644 your-code/frequency_distribution_1.png create mode 100644 your-code/frequency_distribution_2.png diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..e4ed48b9ba6ba82ae28bfb0dc8998ba17f0a639c GIT binary patch literal 6148 zcmeHK%}T>S5Z-O0O({YS3Oz1(Ef{MR#7l_v1&ruHr6#0kFlI}WnnNk%tS{t~_&m<+ zZp31}ir5+0{pNQ!`$6`HF~tr8CK-|A7*Ux|qEtp;znR!y z2mE%6#Vlk63%`DUG)a@ZaNT#_Xj&VaExToR?Azc$mO&8~v)m7-*JxcxnMSo9MwiLB z968&kGAqI)8&6e15|1I}<|@fzS^9F8#kr~tbii)g?UB=+&j*KYPxM`P(G&CIKInsk zqs5|a@9gfKoR1#Ur%b+RLOJlQWXoU;ub_Oc=Q)^Wsm$)dSLfGxgv0&t*S z6YS3VQa~#w28e+l7{L8OKtuElRvOjT0UchSF>WEEfR1koL}Ab~SZRa^2-l^6x|EwI z2G`}_7bed$SZUPdjH{Vp95ZwMc;RYx@C%jBxTleNVt^P}W}vA}2haaA_+?f;@|R1< zA_jMVYhp+w$=1.0.1 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (1.2.1)\n", + "Requirement already satisfied: cycler>=0.10 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (0.12.1)\n", + "Requirement already satisfied: fonttools>=4.22.0 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (4.53.0)\n", + "Requirement already satisfied: kiwisolver>=1.3.1 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (1.4.5)\n", + "Requirement already satisfied: numpy>=1.23 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (1.26.4)\n", + "Requirement already satisfied: packaging>=20.0 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (24.0)\n", + "Requirement already satisfied: pillow>=8 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (10.3.0)\n", + "Requirement already satisfied: pyparsing>=2.3.1 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (3.1.2)\n", + "Requirement already satisfied: python-dateutil>=2.7 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (2.9.0.post0)\n", + "Requirement already satisfied: six>=1.5 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from python-dateutil>=2.7->matplotlib) (1.16.0)\n", + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m24.0\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.1\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip3 install --upgrade pip\u001b[0m\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "pip install matplotlib" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 1\n", + "#### 1.- Define a function that simulates rolling a dice 10 times. Save the information in a dataframe.\n", + "**Hint**: you can use the *choices* function from module *random* to help you with the simulation." + ] + }, + { + "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", + "
Rolls
05
12
25
35
42
53
61
76
86
91
\n", + "
" + ], + "text/plain": [ + " Rolls\n", + "0 5\n", + "1 2\n", + "2 5\n", + "3 5\n", + "4 2\n", + "5 3\n", + "6 1\n", + "7 6\n", + "8 6\n", + "9 1" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Function to simulate rolling a dice 10 times\n", + "def roll_dice(n=10):\n", + " return pd.DataFrame({\"Rolls\": random.choices(range(1, 7), k=n)})\n", + "\n", + "# Simulate rolling the dice\n", + "dice_df = roll_dice()\n", + "dice_df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2.- Plot the results sorted by value." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "\n", + "# Sort the dataframe and plot\n", + "dice_df_sorted = dice_df.sort_values(by=\"Rolls\").reset_index(drop=True)\n", + "plt.plot(dice_df_sorted.index, dice_df_sorted[\"Rolls\"], marker='o')\n", + "plt.title(\"Dice Rolls Sorted by Value\")\n", + "plt.xlabel(\"Roll Number\")\n", + "plt.ylabel(\"Dice Value\")\n", + "plt.show()\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3.- Calculate the frequency distribution and plot it. What is the relation between this plot and the plot above? Describe it with words." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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CuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYikPDTVRUlO655x65u7urZs2aCgkJ0YEDBwpcJjo6WhaLxebl6upaQhUDAIDSzqHh5vvvv9ewYcP0008/KTY2VpcvX9aDDz6ojIyMApfz8PBQYmKi9RUfH19CFQMAgNKuvCM3vnr1apvp6Oho1axZU9u2bdP999+f73IWi0Xe3t63ujwAAFAGlaoxN6mpqZKkatWqFdgvPT1dvr6+qlu3rvr166e9e/eWRHkAAKAMKDXhJjs7WyNHjlSHDh3UtGnTfPs1aNBACxcu1IoVK/Txxx8rOztb7du31x9//JFn/8zMTKWlpdm8AACAeTn0stS1hg0bpj179mjTpk0F9gsKClJQUJB1un379mrUqJHmzZunyZMn5+ofFRWlyMjIYq8XAACUTqXizM3w4cP1zTffKC4uTnXq1CnSshUqVFDLli11+PDhPOdHREQoNTXV+jp+/HhxlAwAAEoph565MQxDf//73/Xll19qw4YN8vf3L/I6srKytHv3bvXq1SvP+S4uLnJxcbnZUgEAQBnh0HAzbNgwLV68WCtWrJC7u7uSkpIkSZ6ennJzc5MkhYaGqnbt2oqKipIkTZo0Se3atVNAQIDOnj2radOmKT4+XkOGDHHYfgAAgNLDoeFmzpw5kqROnTrZtC9atEiDBw+WJCUkJMjJ6X9Xz/766y8NHTpUSUlJqlq1qlq3bq3NmzercePGJVU2AAAoxSyGYRiOLqIkpaWlydPTU6mpqfLw8HB0OQDgMH6vfOvoEm7asam9HV0CSkhRvr9LxYBiAACA4kK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApuLQcBMVFaV77rlH7u7uqlmzpkJCQnTgwIEbLhcTE6OGDRvK1dVVzZo108qVK0ugWgAAUBY4NNx8//33GjZsmH766SfFxsbq8uXLevDBB5WRkZHvMps3b9bAgQMVHh6uHTt2KCQkRCEhIdqzZ08JVg4AAEori2EYhqOLyJGSkqKaNWvq+++/1/33359nnyeeeEIZGRn65ptvrG3t2rVTYGCg5s6de8NtpKWlydPTU6mpqfLw8Ci22gGgrPF75VtHl3DTjk3t7egSUEKK8v1dqsbcpKamSpKqVauWb58tW7aoa9euNm3du3fXli1b8uyfmZmptLQ0mxcAADCv8o4uIEd2drZGjhypDh06qGnTpvn2S0pKkpeXl02bl5eXkpKS8uwfFRWlyMjIYq21MMzwF5Fkjr+KOBYASjsz/H+qNP0/qtScuRk2bJj27NmjJUuWFOt6IyIilJqaan0dP368WNcPAABKl1Jx5mb48OH65ptvtHHjRtWpU6fAvt7e3kpOTrZpS05Olre3d579XVxc5OLiUmy1AgCA0s2hZ24Mw9Dw4cP15Zdfav369fL397/hMkFBQVq3bp1NW2xsrIKCgm5VmQAAoAxx6JmbYcOGafHixVqxYoXc3d2t42Y8PT3l5uYmSQoNDVXt2rUVFRUlSRoxYoSCg4M1ffp09e7dW0uWLNHWrVs1f/58h+0HAAAoPRx65mbOnDlKTU1Vp06d5OPjY3199tln1j4JCQlKTEy0Trdv316LFy/W/Pnz1aJFCy1btkzLly8vcBAyAAC4fTj0zE1hfmJnw4YNudoee+wxPfbYY7egIgAAUNaVmrulAAAAigPhBgAAmArhBgAAmArhBgAAmArhBgAAmArhBgAAmArhBgAAmArhBgAAmArhBgAAmArhBgAAmIpd4eb3338v7joAAACKhV3hJiAgQA888IA+/vhjXbx4sbhrAgAAsJtd4Wb79u1q3ry5Ro8eLW9vbz3//PP65Zdfirs2AACAIrMr3AQGBmr27Nk6efKkFi5cqMTERHXs2FFNmzbVjBkzlJKSUtx1AgAAFMpNDSguX768+vfvr5iYGL355ps6fPiwxo4dq7p16yo0NFSJiYnFVScAAECh3FS42bp1q1588UX5+PhoxowZGjt2rI4cOaLY2FidPHlS/fr1K646AQAACqW8PQvNmDFDixYt0oEDB9SrVy99+OGH6tWrl5ycrmYlf39/RUdHy8/PrzhrBQAAuCG7ws2cOXP07LPPavDgwfLx8cmzT82aNfWf//znpooDAAAoKrvCzaFDh27Yx9nZWYMGDbJn9QAAAHaza8zNokWLFBMTk6s9JiZGH3zwwU0XBQAAYC+7wk1UVJSqV6+eq71mzZp64403brooAAAAe9kVbhISEuTv75+r3dfXVwkJCTddFAAAgL3sCjc1a9bUr7/+mqt9165duuOOO266KAAAAHvZFW4GDhyof/zjH4qLi1NWVpaysrK0fv16jRgxQgMGDCjuGgEAAArNrrulJk+erGPHjqlLly4qX/7qKrKzsxUaGsqYGwAA4FB2hRtnZ2d99tlnmjx5snbt2iU3Nzc1a9ZMvr6+xV0fAABAkdgVbnLcfffduvvuu4urFgAAgJtmV7jJyspSdHS01q1bp1OnTik7O9tm/vr164ulOAAAgKKyK9yMGDFC0dHR6t27t5o2bSqLxVLcdQEAANjFrnCzZMkSLV26VL169SruegAAAG6KXbeCOzs7KyAgoLhrAQAAuGl2hZsxY8Zo9uzZMgyjuOsBAAC4KXZdltq0aZPi4uK0atUqNWnSRBUqVLCZ/8UXXxRLcQAAAEVlV7ipUqWKHn744eKuBQAA4KbZFW4WLVpU3HUAAAAUC7vG3EjSlStX9N1332nevHk6d+6cJOnkyZNKT08vtuIAAACKyq4zN/Hx8erRo4cSEhKUmZmpbt26yd3dXW+++aYyMzM1d+7c4q4TAACgUOw6czNixAi1adNGf/31l9zc3KztDz/8sNatW1dsxQEAABSVXWdufvjhB23evFnOzs427X5+fjpx4kSxFAYAAGAPu87cZGdnKysrK1f7H3/8IXd395suCgAAwF52hZsHH3xQs2bNsk5bLBalp6drwoQJPJIBAAA4lF2XpaZPn67u3burcePGunjxop588kkdOnRI1atX16efflrcNQIAABSaXeGmTp062rVrl5YsWaJff/1V6enpCg8P11NPPWUzwBgAAKCk2RVuJKl8+fJ6+umni7MWAACAm2ZXuPnwww8LnB8aGmpXMQAAADfLrnAzYsQIm+nLly/r/PnzcnZ2VsWKFQk3AADAYey6W+qvv/6yeaWnp+vAgQPq2LEjA4oBAIBD2f1sqevVr19fU6dOzXVWpyAbN25U3759VatWLVksFi1fvrzA/hs2bJDFYsn1SkpKusnqAQCAWRRbuJGuDjI+efJkoftnZGSoRYsWeu+994q0nQMHDigxMdH6qlmzZlFLBQAAJmXXmJuvvvrKZtowDCUmJurdd99Vhw4dCr2enj17qmfPnkXefs2aNVWlSpUiLwcAAMzPrnATEhJiM22xWFSjRg117txZ06dPL466ChQYGKjMzEw1bdpUEydOLFKgAgAA5mZXuMnOzi7uOgrFx8dHc+fOVZs2bZSZmakFCxaoU6dO+vnnn9WqVas8l8nMzFRmZqZ1Oi0traTKBQAADmD3j/g5QoMGDdSgQQPrdPv27XXkyBHNnDlTH330UZ7LREVFKTIysqRKBAAADmZXuBk9enSh+86YMcOeTRTavffeq02bNuU7PyIiwqbetLQ01a1b95bWBAAAHMeucLNjxw7t2LFDly9ftp5JOXjwoMqVK2dzechisRRPlQXYuXOnfHx88p3v4uIiFxeXW14HAAAoHewKN3379pW7u7s++OADVa1aVdLVH/YLCwvTfffdpzFjxhRqPenp6Tp8+LB1+ujRo9q5c6eqVaumO++8UxERETpx4oT1cQ+zZs2Sv7+/mjRpoosXL2rBggVav3691q5da89uAAAAE7Ir3EyfPl1r1661BhtJqlq1qv75z3/qwQcfLHS42bp1qx544AHrdM7lo0GDBik6OlqJiYlKSEiwzr906ZLGjBmjEydOqGLFimrevLm+++47m3UAAIDbm13hJi0tTSkpKbnaU1JSdO7cuUKvp1OnTjIMI9/50dHRNtMvv/yyXn755UKvHwAA3H7s+oXihx9+WGFhYfriiy/0xx9/6I8//tDnn3+u8PBw9e/fv7hrBAAAKDS7ztzMnTtXY8eO1ZNPPqnLly9fXVH58goPD9e0adOKtUAAAICisCvcVKxYUe+//76mTZumI0eOSJLq1aunSpUqFWtxAAAARXVTD87MeXBl/fr1ValSpQLHzwAAAJQEu8LNn3/+qS5duujuu+9Wr169lJiYKEkKDw8v9J1SAAAAt4Jd4WbUqFGqUKGCEhISVLFiRWv7E088odWrVxdbcQAAAEVl15ibtWvXas2aNapTp45Ne/369RUfH18shQEAANjDrjM3GRkZNmdscpw5c4ZHHQAAAIeyK9zcd9991kciSFefIZWdna1//etf/FowAABwKLsuS/3rX/9Sly5dtHXrVl26dEkvv/yy9u7dqzNnzujHH38s7hoBAAAKza4zN02bNtXBgwfVsWNH9evXTxkZGerfv7927NihevXqFXeNAAAAhVbkMzeXL19Wjx49NHfuXI0fP/5W1AQAAGC3Ip+5qVChgn799ddbUQsAAMBNs+uy1NNPP63//Oc/xV0LAADATbNrQPGVK1e0cOFCfffdd2rdunWuZ0rNmDGjWIoDAAAoqiKFm99//11+fn7as2ePWrVqJUk6ePCgTR+LxVJ81QEAABRRkcJN/fr1lZiYqLi4OElXH7fw9ttvy8vL65YUBwAAUFRFGnNz/VO/V61apYyMjGItCAAA4GbYNaA4x/VhBwAAwNGKFG4sFkuuMTWMsQEAAKVJkcbcGIahwYMHWx+OefHiRf3tb3/LdbfUF198UXwVAgAAFEGRws2gQYNspp9++uliLQYAAOBmFSncLFq06FbVAQAAUCxuakAxAABAaUO4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApuLQcLNx40b17dtXtWrVksVi0fLly2+4zIYNG9SqVSu5uLgoICBA0dHRt7xOAABQdjg03GRkZKhFixZ67733CtX/6NGj6t27tx544AHt3LlTI0eO1JAhQ7RmzZpbXCkAACgryjty4z179lTPnj0L3X/u3Lny9/fX9OnTJUmNGjXSpk2bNHPmTHXv3v1WlQkAAMqQMjXmZsuWLeratatNW/fu3bVlyxYHVQQAAEobh565KaqkpCR5eXnZtHl5eSktLU0XLlyQm5tbrmUyMzOVmZlpnU5LS7vldQIAAMcpU+HGHlFRUYqMjHR0GQAk+b3yraNLKBbHpvZ2dAkAClCmLkt5e3srOTnZpi05OVkeHh55nrWRpIiICKWmplpfx48fL4lSAQCAg5SpMzdBQUFauXKlTVtsbKyCgoLyXcbFxUUuLi63ujQAAFBKOPTMTXp6unbu3KmdO3dKunqr986dO5WQkCDp6lmX0NBQa/+//e1v+v333/Xyyy9r//79ev/997V06VKNGjXKEeUDAIBSyKHhZuvWrWrZsqVatmwpSRo9erRatmyp119/XZKUmJhoDTqS5O/vr2+//VaxsbFq0aKFpk+frgULFnAbOAAAsHLoZalOnTrJMIx85+f168OdOnXSjh07bmFVAACgLCtTA4oBAABuhHADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMpVSEm/fee09+fn5ydXVV27Zt9csvv+TbNzo6WhaLxebl6upagtUCAIDSzOHh5rPPPtPo0aM1YcIEbd++XS1atFD37t116tSpfJfx8PBQYmKi9RUfH1+CFQMAgNLM4eFmxowZGjp0qMLCwtS4cWPNnTtXFStW1MKFC/NdxmKxyNvb2/ry8vIqwYoBAEBp5tBwc+nSJW3btk1du3a1tjk5Oalr167asmVLvsulp6fL19dXdevWVb9+/bR37958+2ZmZiotLc3mBQAAzMuh4eb06dPKysrKdebFy8tLSUlJeS7ToEEDLVy4UCtWrNDHH3+s7OxstW/fXn/88Uee/aOiouTp6Wl91a1bt9j3AwAAlB4OvyxVVEFBQQoNDVVgYKCCg4P1xRdfqEaNGpo3b16e/SMiIpSammp9HT9+vIQrBgAAJam8IzdevXp1lStXTsnJyTbtycnJ8vb2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LBaFh4fL399fbm5uatCggWbPnl3gvvn5+WnWrFm5tjVx4kTr9NmzZzVkyBDVqFFDHh4e6ty5s3bt2lXwmwbgliDcALhlOnfurBYtWuiLL77Ic356erqCg4N14sQJffXVV9q1a5defvll66WsH374QaGhoRoxYoR+++03zZs3T9HR0ZoyZUq+2wwPD9fSpUuVkZFhbduwYYOOHj2qZ599VtnZ2apTp45iYmL022+/6fXXX9e4ceO0dOnSm9rXxx57TKdOndKqVau0bds2tWrVSl26dNGZM2duar0Aio5wA+CWatiwoY4dO5bnvMWLFyslJUXLly9Xx44dFRAQoMcff1xBQUGSpMjISL3yyisaNGiQ7rrrLnXr1k2TJ0/WvHnz8t3ek08+qcuXLysmJsbatmjRInXs2FF33323KlSooMjISLVp00b+/v566qmnFBYWdlPhZtOmTfrll18UExOjNm3aqH79+nrrrbdUpUqVXM/1AXDr8WwpALeUYRj5PrV+586datmypapVq5bn/F27dunHH3+0OVOTlZWlixcv6vz586pYsWKuZapUqaL+/ftr4cKFGjx4sNLS0vT555/rvffes/Z57733tHDhQiUkJOjChQu6dOmSAgMD7d7HXbt2KT09PdeDIS9cuKAjR47YvV4A9iHcALil9u3bJ39//zznubm5Fbhsenq6IiMj1b9//1zzXF1d810uPDxcXbp00eHDhxUXF6dy5crpsccekyQtWbJEY8eO1fTp0xUUFCR3d3dNmzbNZpzP9ZycnHI9nPby5cs2dfr4+GjDhg25lq1SpUqB+wig+BFuANwy69ev1+7duzVq1Kg85zdv3lwLFizQmTNn8jx706pVKx04cEABAQFF2u4DDzwgf39/LVq0SHFxcRowYIAqVaokSfrxxx/Vvn17vfjii9b+Nzq7UqNGDSUmJlqn09LSdPToUZs6k5KSVL58efn5+RWpVgDFjzE3AIpFZmamkpKSdOLECW3fvl1vvPGG+vXrpz59+ig0NDTPZQYOHChvb2+FhIToxx9/1O+//67PP/9cW7ZskSS9/vrr+vDDDxUZGam9e/dq3759WrJkiV599dUCa7FYLHr22Wc1Z84cbdmyReHh4dZ59evX19atW7VmzRodPHhQr732mv773/8WuL7OnTvro48+0g8//KDdu3dr0KBBKleunHV+165dFRQUpJCQEK1du1bHjh3T5s2bNX78eG3durWwbyGAYkK4AVAsVq9eLR8fH/n5+alHjx6Ki4vT22+/rRUrVtgEgWs5Oztr7dq11t+fadasmaZOnWrt3717d33zzTdau3at7rnnHrVr104zZ86Ur6/vDesZPHiwUlNT1aRJE7Vt29ba/vzzz6t///564okn1LZtW/355582Z3HyEhERoeDgYPXp00e9e/dWSEiI6tWrZ51vsVi0cuVK3X///QoLC9Pdd9+tAQMGKD4+Xl5eXoV5+wAUI4tx/YVkAACAMowzNwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFT+HwBqP70J12NMAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Calculate frequency distribution\n", + "freq_dist = dice_df[\"Rolls\"].value_counts().sort_index()\n", + "\n", + "# Plot frequency distribution\n", + "freq_dist.plot(kind=\"bar\")\n", + "plt.title(\"Frequency Distribution of Dice Rolls\")\n", + "plt.xlabel(\"Dice Value\")\n", + "plt.ylabel(\"Frequency\")\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\nThe frequency distribution plot shows how often each dice value appears in the 10 rolls. In comparison, the sorted plot in step 2 displays the actual dice values in ascending order, providing a visual representation of the distribution.\\n'" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "The frequency distribution plot shows how often each dice value appears in the 10 rolls. In comparison, the sorted plot in step 2 displays the actual dice values in ascending order, providing a visual representation of the distribution.\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 2\n", + "Now, using the dice results obtained in *challenge 1*, your are going to define some functions that will help you calculate the mean of your data in two different ways, the median and the four quartiles. \n", + "\n", + "#### 1.- Define a function that computes the mean by summing all the observations and dividing by the total number of observations. You are not allowed to use any methods or functions that directly calculate the mean value. " + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "3.6" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def calculate_mean(data):\n", + " total_sum = sum(data)\n", + " count = len(data)\n", + " return total_sum / count\n", + "\n", + "# Calculate mean of dice rolls\n", + "mean_value = calculate_mean(dice_df[\"Rolls\"])\n", + "mean_value\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2.- First, calculate the frequency distribution. Then, calculate the mean using the values of the frequency distribution you've just computed. You are not allowed to use any methods or functions that directly calculate the mean value. " + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "3.6" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Calculate mean using frequency distribution\n", + "total_sum_freq = sum(value * count for value, count in freq_dist.items())\n", + "count_freq = sum(freq_dist)\n", + "mean_value_freq = total_sum_freq / count_freq\n", + "mean_value_freq\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3.- Define a function to calculate the median. You are not allowed to use any methods or functions that directly calculate the median value. \n", + "**Hint**: you might need to define two computation cases depending on the number of observations used to calculate the median." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "4.0" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def calculate_median(data):\n", + " sorted_data = sorted(data)\n", + " n = len(sorted_data)\n", + " mid = n // 2\n", + " if n % 2 == 0:\n", + " median = (sorted_data[mid - 1] + sorted_data[mid]) / 2\n", + " else:\n", + " median = sorted_data[mid]\n", + " return median\n", + "\n", + "# Calculate median of dice rolls\n", + "median_value = calculate_median(dice_df[\"Rolls\"])\n", + "median_value\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 4.- Define a function to calculate the four quartiles. You can use the function you defined above to compute the median but you are not allowed to use any methods or functions that directly calculate the quartiles. " + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(2, 4.0, 5)" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def calculate_quartiles(data):\n", + " sorted_data = sorted(data)\n", + " n = len(sorted_data)\n", + " q2 = calculate_median(sorted_data)\n", + " if n % 2 == 0:\n", + " lower_half = sorted_data[:n//2]\n", + " upper_half = sorted_data[n//2:]\n", + " else:\n", + " lower_half = sorted_data[:n//2]\n", + " upper_half = sorted_data[n//2+1:]\n", + " q1 = calculate_median(lower_half)\n", + " q3 = calculate_median(upper_half)\n", + " return q1, q2, q3\n", + "\n", + "# Calculate quartiles of dice rolls\n", + "quartiles = calculate_quartiles(dice_df[\"Rolls\"])\n", + "quartiles\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 3\n", + "Read the csv `roll_the_dice_hundred.csv` from the `data` folder.\n", + "#### 1.- Sort the values and plot them. What do you see?" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "ename": "KeyError", + "evalue": "'Rolls'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m/var/folders/73/bp0mdjtd56gc_yr975dw29n00000gn/T/ipykernel_1332/2496653201.py\u001b[0m in \u001b[0;36m?\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0;31m# Read the CSV file\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0mdice_hundred_df\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mpd\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mread_csv\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/roll_the_dice_hundred.csv'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0;31m# Sort the values and plot\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 5\u001b[0;31m \u001b[0mdice_hundred_df_sorted\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdice_hundred_df\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msort_values\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mby\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\"Rolls\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreset_index\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdrop\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 6\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdice_hundred_df_sorted\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdice_hundred_df_sorted\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"Rolls\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmarker\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'o'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtitle\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"Dice Rolls (Hundred) Sorted by Value\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 8\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mxlabel\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"Roll Number\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/pandas/core/frame.py\u001b[0m in \u001b[0;36m?\u001b[0;34m(self, by, axis, ascending, inplace, kind, na_position, ignore_index, key)\u001b[0m\n\u001b[1;32m 7185\u001b[0m \u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7186\u001b[0m \u001b[0;32melif\u001b[0m \u001b[0mlen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mby\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7187\u001b[0m \u001b[0;31m# len(by) == 1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7188\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 7189\u001b[0;31m \u001b[0mk\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_get_label_or_level_values\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mby\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0maxis\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 7190\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7191\u001b[0m \u001b[0;31m# need to rewrap column in Series to apply key function\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7192\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mkey\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/pandas/core/generic.py\u001b[0m in \u001b[0;36m?\u001b[0;34m(self, key, axis)\u001b[0m\n\u001b[1;32m 1907\u001b[0m \u001b[0mvalues\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mxs\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mother_axes\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_values\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1908\u001b[0m \u001b[0;32melif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_is_level_reference\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0maxis\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1909\u001b[0m \u001b[0mvalues\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0maxes\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0maxis\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_level_values\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_values\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1910\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1911\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mKeyError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1912\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1913\u001b[0m \u001b[0;31m# Check for duplicates\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1914\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mvalues\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mndim\u001b[0m \u001b[0;34m>\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mKeyError\u001b[0m: 'Rolls'" + ] + } + ], + "source": [ + "# Read the CSV file\n", + "dice_hundred_df = pd.read_csv('/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/roll_the_dice_hundred.csv')\n", + "\n", + "# Sort the values and plot\n", + "dice_hundred_df_sorted = dice_hundred_df.sort_values(by=\"Rolls\").reset_index(drop=True)\n", + "plt.plot(dice_hundred_df_sorted.index, dice_hundred_df_sorted[\"Rolls\"], marker='o')\n", + "plt.title(\"Dice Rolls (Hundred) Sorted by Value\")\n", + "plt.xlabel(\"Roll Number\")\n", + "plt.ylabel(\"Dice Value\")\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\nyour comments here\\n'" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "your comments here\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2.- Using the functions you defined in *challenge 2*, calculate the mean value of the hundred dice rolls." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "ename": "KeyError", + "evalue": "'Age'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/pandas/core/indexes/base.py:3805\u001b[0m, in \u001b[0;36mIndex.get_loc\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 3804\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m-> 3805\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_engine\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_loc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcasted_key\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 3806\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m err:\n", + "File \u001b[0;32mindex.pyx:167\u001b[0m, in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n", + "File \u001b[0;32mindex.pyx:196\u001b[0m, in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n", + "File \u001b[0;32mpandas/_libs/hashtable_class_helper.pxi:7081\u001b[0m, in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n", + "File \u001b[0;32mpandas/_libs/hashtable_class_helper.pxi:7089\u001b[0m, in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n", + "\u001b[0;31mKeyError\u001b[0m: 'Age'", + "\nThe above exception was the direct cause of the following exception:\n", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn[12], line 5\u001b[0m\n\u001b[1;32m 2\u001b[0m ages_population_df \u001b[38;5;241m=\u001b[39m pd\u001b[38;5;241m.\u001b[39mread_csv(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/roll_the_dice_hundred.csv\u001b[39m\u001b[38;5;124m'\u001b[39m)\n\u001b[1;32m 4\u001b[0m \u001b[38;5;66;03m# Calculate frequency distribution\u001b[39;00m\n\u001b[0;32m----> 5\u001b[0m freq_dist_ages \u001b[38;5;241m=\u001b[39m \u001b[43mages_population_df\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mAge\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m]\u001b[49m\u001b[38;5;241m.\u001b[39mvalue_counts()\u001b[38;5;241m.\u001b[39msort_index()\n\u001b[1;32m 6\u001b[0m freq_dist_ages\n", + "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/pandas/core/frame.py:4102\u001b[0m, in \u001b[0;36mDataFrame.__getitem__\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 4100\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcolumns\u001b[38;5;241m.\u001b[39mnlevels \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m1\u001b[39m:\n\u001b[1;32m 4101\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_getitem_multilevel(key)\n\u001b[0;32m-> 4102\u001b[0m indexer \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcolumns\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_loc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mkey\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 4103\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m is_integer(indexer):\n\u001b[1;32m 4104\u001b[0m indexer \u001b[38;5;241m=\u001b[39m [indexer]\n", + "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/pandas/core/indexes/base.py:3812\u001b[0m, in \u001b[0;36mIndex.get_loc\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 3807\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(casted_key, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;129;01mor\u001b[39;00m (\n\u001b[1;32m 3808\u001b[0m \u001b[38;5;28misinstance\u001b[39m(casted_key, abc\u001b[38;5;241m.\u001b[39mIterable)\n\u001b[1;32m 3809\u001b[0m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28many\u001b[39m(\u001b[38;5;28misinstance\u001b[39m(x, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;28;01mfor\u001b[39;00m x \u001b[38;5;129;01min\u001b[39;00m casted_key)\n\u001b[1;32m 3810\u001b[0m ):\n\u001b[1;32m 3811\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m InvalidIndexError(key)\n\u001b[0;32m-> 3812\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m(key) \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01merr\u001b[39;00m\n\u001b[1;32m 3813\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mTypeError\u001b[39;00m:\n\u001b[1;32m 3814\u001b[0m \u001b[38;5;66;03m# If we have a listlike key, _check_indexing_error will raise\u001b[39;00m\n\u001b[1;32m 3815\u001b[0m \u001b[38;5;66;03m# InvalidIndexError. Otherwise we fall through and re-raise\u001b[39;00m\n\u001b[1;32m 3816\u001b[0m \u001b[38;5;66;03m# the TypeError.\u001b[39;00m\n\u001b[1;32m 3817\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_check_indexing_error(key)\n", + "\u001b[0;31mKeyError\u001b[0m: 'Age'" + ] + } + ], + "source": [ + "# Read the CSV file\n", + "ages_population_df = pd.read_csv('/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/roll_the_dice_hundred.csv')\n", + "\n", + "# Calculate frequency distribution\n", + "freq_dist_ages = ages_population_df['Age'].value_counts().sort_index()\n", + "freq_dist_ages\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3.- Now, calculate the frequency distribution.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "# your code here" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 4.- Plot the histogram. What do you see (shape, values...) ? How can you connect the mean value to the histogram? " + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "# your code here" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\nyour comments here\\n'" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "your comments here\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 5.- Read the `roll_the_dice_thousand.csv` from the `data` folder. Plot the frequency distribution as you did before. Has anything changed? Why do you think it changed?" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "# your code here" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\nyour comments here\\n'" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "your comments here\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 4\n", + "In the `data` folder of this repository you will find three different files with the prefix `ages_population`. These files contain information about a poll answered by a thousand people regarding their age. Each file corresponds to the poll answers in different neighbourhoods of Barcelona.\n", + "\n", + "#### 1.- Read the file `ages_population.csv`. Calculate the frequency distribution and plot it as we did during the lesson. Try to guess the range in which the mean and the standard deviation will be by looking at the plot. " + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0sAAAI0CAYAAADMR7LWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAABwW0lEQVR4nO3deZzN9f////uZfRhjl31GyJKkFImymyyh9JYky5tSb7K10WZLSSW9E6q3tFFSUvJBQklSkaVVhFL21NhnxpzH7w+/OV/HvIZzxjleM9yul8tcOK/zOM/n47U8X/N6zOu8Xi+PmZkAAAAAAH4i3E4AAAAAAPIiiiUAAAAAcECxBAAAAAAOKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAOeUESNGyOPxnJW+mjRpoiZNmvhef/rpp/J4PHr33XfPSv89e/ZUcnLyWekrtw4ePKg+ffqodOnS8ng8GjRokNsphdzJ20E4eTwe9e/f/6z0dSr5YdvLreTkZPXs2TPXn23Xrt1p41599VV5PB6tWrUqV/2ES8+ePZWQkOB2Gn7OZH0AoUCxBAQp65ec08/QoUPdTu+ccvKyjouLU9myZZWSkqL//ve/OnDgQEj62b59u0aMGKG1a9eGpL1Qysu5BeLxxx/Xq6++qrvuuktvvPGGbrvtttN+JjMzU2XLlpXH49H8+fPPQpZ5y4oVKzRixAj9888/ruWQnJyc437u6NGjIe8v2Hnu2bOnPB6PateuLTPL9n5eKSoB5H9RbicA5FejRo1SpUqV/KbVqlXLpWzObVnLOiMjQzt37tSnn36qQYMGafz48frwww9Vu3ZtX+zDDz8cdNG6fft2jRw5UsnJyapTp07An/v444+D6ic3TpXbyy+/LK/XG/YczsSSJUt01VVXafjw4UF9ZseOHUpOTtb06dPVunXrMGZ45kK9HaxYsUIjR45Uz549VaRIkZC2HYw6deronnvuyTY9JiYm5Ntebuf5u+++0+zZs9WpU6eQ5bJhwwZFRPC3ZADHUSwBudS6dWtdccUVAcUePXpUMTEx/ALOpZOX9bBhw7RkyRK1a9dO7du3108//aT4+HhJUlRUlKKiwrtrO3z4sAoUKKCYmJiw9nM60dHRrvYfiN27d6tmzZpBfebNN9/U5Zdfrh49eujBBx/UoUOHVLBgwTBleObc3g7CpVy5curWrZvje4Hsy44dOyav1xu25RMfH68KFSpo1KhRuvHGG0P29dvY2NiQtJOfZP2OApAdR25AiGVdt/L222/r4YcfVrly5VSgQAHt379fkvTVV1/puuuuU+HChVWgQAE1btxYX3zxRbZ2li9friuvvFJxcXGqXLmyXnzxxWzX42zdulUej0evvvpqts97PB6NGDHCb9qff/6pf//737rgggsUGxuriy++WK+88opj/u+8847GjBmj8uXLKy4uTs2bN9emTZuy9fPVV1+pTZs2Klq0qAoWLKjatWvrueeekyRNmzZNHo9Ha9asyfa5xx9/XJGRkfrzzz9Pu0ydNGvWTI888oh+++03vfnmm77pTtcsLVq0SI0aNVKRIkWUkJCgatWq6cEHH/TN75VXXilJ6tWrl++rRlnLtEmTJqpVq5ZWr16ta6+9VgUKFPB9NqdrVTIzM/Xggw+qdOnSKliwoNq3b69t27b5xeT0PfwT2zxdbk7XjRw6dEj33HOPKlSooNjYWFWrVk1PP/10tq8qZX1Nac6cOapVq5Zve1iwYIHzAj/J7t271bt3b11wwQWKi4vTpZdeqtdee833ftZ2tGXLFs2bN8+X+9atW0/Z7pEjR/T++++rS5cu6ty5s44cOaIPPvjAMXbWrFmqWbOm4uLiVKtWLb3//vuOy8Tr9WrChAm6+OKLFRcXpwsuuEB9+/bV33//7Re3atUqpaSkqESJEoqPj1elSpX073//+7TLIqdr1wIdQycaMWKE7rvvPklSpUqVclxugay3QMZ7bp28nLP2RU8//bQmTJigypUrKzY2Vj/++KMk6fnnn9fFF1+sAgUKqGjRorriiis0Y8aMoOb5ZBEREXr44Ye1fv16vf/++6fNOS0tTcOHD1eVKlUUGxurChUq6P7771daWppfnNPYXL9+vRo3bqz4+HiVL19ejz32mG//5pTn8uXLVa9ePcXFxenCCy/U66+/7pjT4cOH1bdvXxUvXlyJiYnq3r17tu1SkiZNmqSLL75YsbGxKlu2rPr165ftK4uB7FOk0/+Oko5vOx07dlRCQoJKliype++9V5mZmX7tBrqvOXbsmEaPHu3bJpKTk/Xggw9mW+5mpscee0zly5dXgQIF1LRpU/3www+Oyw04mzizBORSamqq9u7d6zetRIkSvv+PHj1aMTExuvfee5WWlqaYmBgtWbJErVu3Vt26dTV8+HBFRERo2rRpatasmT7//HPVq1dP0vGvlrRq1UolS5bUiBEjdOzYMQ0fPlwXXHBBrvPdtWuXrrrqKt9BcsmSJTV//nz17t1b+/fvz3bh/dixYxUREaF7771XqampGjdunG699VZ99dVXvphFixapXbt2KlOmjAYOHKjSpUvrp59+0kcffaSBAwfqpptuUr9+/TR9+nRddtllfu1Pnz5dTZo0Ubly5XI9T7fddpsefPBBffzxx7r99tsdY3744Qe1a9dOtWvX1qhRoxQbG6tNmzb5CtQaNWpo1KhRevTRR3XHHXfommuukSRdffXVvjb++usvtW7dWl26dFG3bt1Oux7GjBkjj8ejBx54QLt379aECRPUokULrV271ncGLBCB5HYiM1P79u21dOlS9e7dW3Xq1NHChQt133336c8//9Szzz7rF798+XLNnj1b//nPf1SoUCH997//VadOnfT777+rePHiOeZ15MgRNWnSRJs2bVL//v1VqVIlzZo1Sz179tQ///yjgQMHqkaNGnrjjTc0ePBglS9f3vd1rpIlS55ynj/88EMdPHhQXbp0UenSpdWkSRNNnz5dXbt29YubN2+ebr75Zl1yySV64okn9Pfff6t3796O21Pfvn316quvqlevXhowYIC2bNmiiRMnas2aNfriiy8UHR2t3bt3+8bc0KFDVaRIEW3dulWzZ88+Zb6nEsgYOtmNN96oX375RW+99ZaeffZZ3z7lxOUWyHoLdrw7ycjIyLaPK1CggAoUKJDjZ6ZNm6ajR4/qjjvuUGxsrIoVK6aXX35ZAwYM0E033aSBAwfq6NGjWr9+vb766it17do1oHnOSdeuXTV69GiNGjVKN9xwQ45nl7xer9q3b6/ly5frjjvuUI0aNfTdd9/p2Wef1S+//KI5c+bk2Meff/6ppk2byuPxaNiwYSpYsKD+97//5XgGatOmTbrpppvUu3dv9ejRQ6+88op69uypunXr6uKLL/aL7d+/v4oUKaIRI0Zow4YNmjx5sn777TdfQSMdLyZHjhypFi1a6K677vLFffPNN77tNzecfkdJx//Yk5KSovr16+vpp5/WJ598omeeeUaVK1fWXXfdJSm4fU2fPn302muv6aabbtI999yjr776Sk888YR++uknvyL30Ucf1WOPPaY2bdqoTZs2+vbbb9WqVSulp6fnav6AkDEAQZk2bZpJcvwxM1u6dKlJsgsvvNAOHz7s+5zX67WqVataSkqKeb1e3/TDhw9bpUqVrGXLlr5pHTt2tLi4OPvtt99803788UeLjIy0E4ftli1bTJJNmzYtW56SbPjw4b7XvXv3tjJlytjevXv94rp06WKFCxf25ZqVf40aNSwtLc0X99xzz5kk++6778zM7NixY1apUiVLSkqyv//+26/NE+fvlltusbJly1pmZqZv2rfffptj3ifKWtbffPNNjjGFCxe2yy67zPd6+PDhfsvo2WefNUm2Z8+eHNv45ptvcsyncePGJsmmTJni+F7jxo19r7OWXbly5Wz//v2+6e+8845Jsueee843LSkpyXr06HHaNk+VW48ePSwpKcn3es6cOSbJHnvsMb+4m266yTwej23atMk3TZLFxMT4TVu3bp1Jsueffz5bXyeaMGGCSbI333zTNy09Pd0aNGhgCQkJfvOelJRkbdu2PWV7J2rXrp01bNjQ9/qll16yqKgo2717t1/cJZdcYuXLl7cDBw74pn366acmyW+ZfP755ybJpk+f7vf5BQsW+E1///33T7ut5SSn7eB0YygnTz31lEmyLVu2ZHsv0PUW6HjPSVJSkuM+LmufcvK2l7UvSkxMzLauOnToYBdffHGu59lJjx49rGDBgmZm9tprr5kkmz17tu99SdavXz/f6zfeeMMiIiLs888/92tnypQpJsm++OILv3k/cWzefffd5vF4bM2aNb5pf/31lxUrVixbzlnLbdmyZb5pu3fvttjYWLvnnnt807L2bXXr1rX09HTf9HHjxpkk++CDD3yfjYmJsVatWvntQydOnGiS7JVXXskx7yw5bZ8n/44yO75cJdmoUaP8pl922WVWt25d3+tA9zVr1641SdanTx+/uHvvvdck2ZIlS/zms23btn6/Px588EGT5DhfwNnC1/CAXHrhhRe0aNEiv58T9ejRw+8swtq1a7Vx40Z17dpVf/31l/bu3au9e/fq0KFDat68uZYtWyav16vMzEwtXLhQHTt2VMWKFX2fr1GjhlJSUnKVq5npvffe0/XXXy8z8/W9d+9epaSkKDU1Vd9++63fZ3r16uX3HfassxqbN2+WJK1Zs0ZbtmzRoEGDsl2QfeJfd7t3767t27dr6dKl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9u3LNi3rzF7WWbysZ/g4HWjkxuuvv+53HdW7776rHTt2+D1ctXLlylq5cqXfnZ4++uijbLcYDya3Nm3aKDMzUxMnTvSb/uyzz8rj8YTs4a5t2rTRzp07NXPmTN+0Y8eO6fnnn1dCQkK2YicQWWd+7r//ft10001+P507d1bjxo19MWXLllWtWrX0+uuv+42lzz77TN99951fu507d1ZmZqZGjx6drc9jx475luvff/+dbbs9eTs5W850ewzHeD8Tf/31l9/rmJgY1axZU2bmuz4sFGOwW7duqlKliuPZqs6dO+vPP//Uyy+/nO29I0eO6NChQzm2m5KSoi+//FJr1671Tdu3b1+OZyuD8dJLL/ldIzd58mQdO3bMN1ZbtGihmJgY/fe///XbPqdOnarU1FS1bdvWNy3QfUooBLqvySr6JkyY4BeXdYYvK/8WLVooOjpazz//vN98nvw5wA2cWQLOkoiICP3vf/9T69atdfHFF6tXr14qV66c/vzzTy1dulSJiYmaO3euJGnkyJFasGCBrrnmGv3nP//xHYhefPHFWr9+vV+7ffr00dixY9WnTx9dccUVWrZsmX755Zds/Y8dO1ZLly5V/fr1dfvtt6tmzZrat2+fvv32W33yySeORcXp5mfy5Mm6/vrrVadOHfXq1UtlypTRzz//rB9++CFbYde9e3fde++9khT0V/Dmz5+vn3/+WceOHdOuXbu0ZMkSLVq0SElJSfrwww8VFxeX42dHjRqlZcuWqW3btkpKStLu3bs1adIklS9fXo0aNZJ0/CCjSJEimjJligoVKqSCBQuqfv36OX6n/3SKFSumRo0aqVevXtq1a5cmTJigKlWq+N3evE+fPnr33Xd13XXXqXPnzvr111/15ptv+l24H2xu119/vZo2baqHHnpIW7du1aWXXqqPP/5YH3zwgQYNGpSt7dy644479OKLL6pnz55avXq1kpOT9e677+qLL77QhAkTcnUt2vTp01WnTp0cvw7Vvn173X333fr22291+eWX6/HHH1eHDh3UsGFD9erVS3///bcmTpyoWrVq+RVQjRs3Vt++ffXEE09o7dq1atWqlaKjo7Vx40bNmjVLzz33nG666Sa99tprmjRpkm644QZVrlxZBw4c0Msvv6zExETfAd/ZUrduXUnSQw89pC5duig6OlrXX399UA/mDfV4PxOtWrVS6dKl1bBhQ11wwQX66aefNHHiRLVt29a3rYRiniMjI/XQQw853ozltttu0zvvvKM777xTS5cuVcOGDZWZmamff/5Z77zzjhYuXJjjNaj333+/3nzzTbVs2VJ3332379bhFStW1L59+87orFh6erqaN2+uzp07a8OGDZo0aZIaNWqk9u3bSzp+lnDYsGEaOXKkrrvuOrVv394Xd+WVV/rtSwPdp4RCoPuaSy+9VD169NBLL72kf/75R40bN9bXX3+t1157TR07dvSdVct6ltMTTzyhdu3aqU2bNlqzZo3mz5/v90gOwBVn+/Z7QH53uttZZ92WddasWY7vr1mzxm688UYrXry4xcbGWlJSknXu3NkWL17sF/fZZ59Z3bp1LSYmxi688EKbMmVKtttimx2/9Xjv3r2tcOHCVqhQIevcubPt3r07263Dzcx27dpl/fr1swoVKlh0dLSVLl3amjdvbi+99NJp88/pNuXLly+3li1bWqFChaxgwYJWu3Ztx1tP79ixwyIjI+2iiy5yXC5OTr5Ne0xMjJUuXdpatmxpzz33nN8tqrOcvIwWL15sHTp0sLJly1pMTIyVLVvWbrnlFvvll1/8PvfBBx9YzZo1LSoqym8+GzdunONtj3O6Je9bb71lw4YNs1KlSll8fLy1bdvW7zbwWZ555hkrV66cxcbGWsOGDW3VqlXZ2jxVbiffvtnM7MCBAzZ48GArW7asRUdHW9WqVe2pp57yux2vWfZbK2fJ6fbDJ9u1a5f16tXLSpQoYTExMXbJJZc43t48kFuHr1692iTZI488kmPM1q1bTZINHjzYN+3tt9+26tWrW2xsrNWqVcs+/PBD69Spk1WvXj3b51966SWrW7euxcfHW6FCheySSy6x+++/37Zv325mx29nf8stt1jFihUtNjbWSpUqZe3atbNVq1addlnktB0EOoacjB492sqVK2cRERF+t6cOZr0FMt5zcrr1ltOtw5966qlssS+++KJde+21vn1e5cqV7b777rPU1NSA5jmn/rNuHX6ijIwMq1y5suNySk9PtyeffNIuvvhii42NtaJFi1rdunVt5MiRfrk4Lcs1a9bYNddcY7GxsVa+fHl74okn7L///a9Jsp07d/p91mm5nbyNZO3bPvvsM7vjjjusaNGilpCQYLfeeqv99ddf2T4/ceJEq169ukVHR9sF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AOcSziwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAICDKLcTAADgVJKHzlNspGlcPanWiIVKy/Ro69i2bqcFADgPcGYJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADlwtliZPnqzatWsrMTFRiYmJatCggebPn+97/+jRo+rXr5+KFy+uhIQEderUSbt27XIxYwAAAADnC1eLpfLly2vs2LFavXq1Vq1apWbNmqlDhw764YcfJEmDBw/W3LlzNWvWLH322Wfavn27brzxRjdTBgAAAHCecPXW4ddff73f6zFjxmjy5MlauXKlypcvr6lTp2rGjBlq1qyZJGnatGmqUaOGVq5cqauuusqNlAEAAACcJ/LMNUuZmZl6++23dejQITVo0ECrV69WRkaGWrRo4YupXr26KlasqC+//NLFTAEAAACcD1x/KO13332nBg0a6OjRo0pISND777+vmjVrau3atYqJiVGRIkX84i+44ALt3Lkzx/bS0tKUlpbme71//35JUkZGhjIyMnz/P/HfU3E71u3+g4l1u/9gYt3uP1yxbvcfTKzb/QcT62b/sZF2/N+I//fvqeLdXlaBxsZGmt88nSo+mNhw5Xpi36FYB05t5vSZM409F7aXvNB/MLFu9x+uWLf7DybW7f6DiXW7/2Bi3e4/FLGBfO5EHjOzoD4RYunp6fr999+Vmpqqd999V//73//02Wefae3aterVq5df4SNJ9erVU9OmTfXkk086tjdixAiNHDky2/QZM2aoQIECYZkHAAAAAHnf4cOH1bVrV6WmpioxMfG08a4XSydr0aKFKleurJtvvlnNmzfX33//7Xd2KSkpSYMGDdLgwYMdP+90ZqlChQrau3evb4FkZGRo0aJFatmypaKjo0+Zj9uxbvdPrvkr1u3+yTX0sbVGLJR0/AzB6Cu8emRVhFY/et0Z919rxEK/NtO8Hn0/IuWszleg/Qca67SsgonNabmGYx2caa6hmK9Ac80rsW73f67mGkys2/2Tq/uxbvcfitj9+/erRIkSARdLrn8N72Rer1dpaWmqW7euoqOjtXjxYnXq1EmStGHDBv3+++9q0KBBjp+PjY1VbGxstunR0dHZFqjTtJy4Het2/8HEut1/MLFu9x+uWLf7DybW7f6DiXWj/7RMj/9rryckuZ7YbprXo7TM0LQbaGww/Qca67Ssgok9m+vgTHMNxXwFmmtei3W7/2Bi3e4/XLFu9x9MrNv9BxPrdv/BxLrd/5nEBvqZLK4WS8OGDVPr1q1VsWJFHThwQDNmzNCnn36qhQsXqnDhwurdu7eGDBmiYsWKKTExUXfffbcaNGjAnfAAAAAAhJ2rxdLu3bvVvXt37dixQ4ULF1bt2rW1cOFCtWzZUpL07LPPKiIiQp06dVJaWppSUlI0adIkN1MGAAAAcJ5wtViaOnXqKd+Pi4vTCy+8oBdeeOEsZQQAAAAAx+WZ5ywBAAAAQF5CsQQAAAAADiiWAAAAAMBBnrt1OAAgf0oeOk+SFBtpGlfv+DN/Noxp53JWOFNO6zUt06OtY9u6nBkAhB9nlgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAAAAAcECxBAAAAAAOKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHuSqWNm/eHOo8AADI95KHzlOtEQslSbVGLFTy0HkuZwQAOBO5KpaqVKmipk2b6s0339TRo0dDnRMAAAAAuC5XxdK3336r2rVra8iQISpdurT69u2rr7/+OtS5AQAAAIBrclUs1alTR88995y2b9+uV155RTt27FCjRo1Uq1YtjR8/Xnv27Al1ngAAAABwVp3RDR6ioqJ04403atasWXryySe1adMm3XvvvapQoYK6d++uHTt2hCpPAAAAADirzqhYWrVqlf7zn/+oTJkyGj9+vO699179+uuvWrRokbZv364OHTqEKk8AAAAAOKuicvOh8ePHa9q0adqwYYPatGmj119/XW3atFFExPHaq1KlSnr11VeVnJwcylwBAAAA4KzJVbE0efJk/fvf/1bPnj1VpkwZx5hSpUpp6tSpZ5QcAAAAALglV8XSxo0bTxsTExOjHj165KZ5AAAAAHBdrq5ZmjZtmmbNmpVt+qxZs/Taa6+dcVIAAAAA4LZcFUtPPPGESpQokW16qVKl9Pjjj59xUgBwLkseOk/JQ+ep1oiFkqRaIxYqeeg8l7MCAAAny1Wx9Pvvv6tSpUrZpiclJen3338/46QAAAAAwG25KpZKlSql9evXZ5u+bt06FS9e/IyTAgAAAAC35apYuuWWWzRgwAAtXbpUmZmZyszM1JIlSzRw4EB16dIl1DkCAAAAwFmXq7vhjR49Wlu3blXz5s0VFXW8Ca/Xq+7du3PNEgAAAIBzQq6KpZiYGM2cOVOjR4/WunXrFB8fr0suuURJSUmhzg8AAAAAXJGrYinLRRddpIsuuihUuQAAAABAnpGrYikzM1OvvvqqFi9erN27d8vr9fq9v2TJkpAkBwAAAABuyVWxNHDgQL366qtq27atatWqJY/HE+q8AAAAAMBVuSqW3n77bb3zzjtq06ZNqPMBgDwleeg8xUaaxtU7/vDYtEyPto5t63ZaAADgLMjVrcNjYmJUpUqVUOcCAAAAAHlGroqle+65R88995zMLNT5AAAAAECekKuv4S1fvlxLly7V/PnzdfHFFys6Otrv/dmzZ4ckOQAAAABwS66KpSJFiuiGG24IdS4AAAAAkGfkqliaNm1aqPMAAAAAgDwlV9csSdKxY8f0ySef6MUXX9SBAwckSdu3b9fBgwdDlhwAAAAAuCVXZ5Z+++03XXfddfr999+Vlpamli1bqlChQnryySeVlpamKVOmhDpPAAAAADircnVmaeDAgbriiiv0999/Kz4+3jf9hhtu0OLFi0OWHAAAAAC4JVdnlj7//HOtWLFCMTExftOTk5P1559/hiQxAAAAAHBTroolr9erzMzMbNP/+OMPFSpU6IyTAgAEL3noPMVGmsbVk2qNWKi0TI+2jm3rdloAAORbufoaXqtWrTRhwgTfa4/Ho4MHD2r48OFq06ZNqHIDAAAAANfk6szSM888o5SUFNWsWVNHjx5V165dtXHjRpUoUUJvvfVWqHMEAAAAgLMuV8VS+fLltW7dOr399ttav369Dh48qN69e+vWW2/1u+EDAAAAAORXuSqWJCkqKkrdunULZS4AAAAAkGfkqlh6/fXXT/l+9+7dc5UMAAAAAOQVuSqWBg4c6Pc6IyNDhw8fVkxMjAoUKECxBAAAACDfy9Xd8P7++2+/n4MHD2rDhg1q1KgRN3gAAAAAcE7IVbHkpGrVqho7dmy2s04AAAAAkB+FrFiSjt/0Yfv27aFsEgAAAABckatrlj788EO/12amHTt2aOLEiWrYsGFIEgOAcEkeOk+SFBtpGldPqjVioTaMaedyVsDZlTx0nt8YSMv0aOvYtmfcpqSQtwsAbslVsdSxY0e/1x6PRyVLllSzZs30zDPPhCIvAAAAAHBVroolr9cb6jwAAAAAIE8J6TVLAAAAAHCuyNWZpSFDhgQcO378+Nx0AQAAAACuylWxtGbNGq1Zs0YZGRmqVq2aJOmXX35RZGSkLr/8cl+cx+MJTZYAAAAAcJblqli6/vrrVahQIb322msqWrSopOMPqu3Vq5euueYa3XPPPSFNEgAAAADOtlxds/TMM8/oiSee8BVKklS0aFE99thj3A0PAAAAwDkhV8XS/v37tWfPnmzT9+zZowMHDpxxUgAAAADgtlwVSzfccIN69eql2bNn648//tAff/yh9957T71799aNN94Y6hwBAAAA4KzL1TVLU6ZM0b333quuXbsqIyPjeENRUerdu7eeeuqpkCYIAHBP8tB5kqTYSNO4elKtEQuVlunR1rFtXc4MAIDwy1WxVKBAAU2aNElPPfWUfv31V0lS5cqVVbBgwZAmBwAAAABuOaOH0u7YsUM7duxQ1apVVbBgQZlZqPICAAAAAFflqlj666+/1Lx5c1100UVq06aNduzYIUnq3bs3tw0HAAAAcE7IVbE0ePBgRUdH6/fff1eBAgV802+++WYtWLAgZMkBAAAAgFtydc3Sxx9/rIULF6p8+fJ+06tWrarffvstJIkBAAAAgJtydWbp0KFDfmeUsuzbt0+xsbFnnBQAAAAAuC1XxdI111yj119/3ffa4/HI6/Vq3Lhxatq0aciSAwAAAAC35OpreOPGjVPz5s21atUqpaen6/7779cPP/ygffv26Ysvvgh1jgAAAABw1uXqzFKtWrX0yy+/qFGjRurQoYMOHTqkG2+8UWvWrFHlypVDnSMAAAAAnHVBn1nKyMjQddddpylTpuihhx4KR04AAAAA4LqgzyxFR0dr/fr14cgFAAAAAPKMXH0Nr1u3bpo6dWqocwEAAACAPCNXN3g4duyYXnnlFX3yySeqW7euChYs6Pf++PHjQ5IcAAAAALglqGJp8+bNSk5O1vfff6/LL79ckvTLL7/4xXg8ntBlBwAAAAAuCepreFWrVtXevXu1dOlSLV26VKVKldLbb7/te7106VItWbIk4PaeeOIJXXnllSpUqJBKlSqljh07asOGDX4xR48eVb9+/VS8eHElJCSoU6dO2rVrVzBpAwAAAEDQgiqWzMzv9fz583Xo0KFcd/7ZZ5+pX79+WrlypRYtWqSMjAy1atXKr83Bgwdr7ty5mjVrlj777DNt375dN954Y677BAAAAIBA5OqapSwnF0/BWrBggd/rV199VaVKldLq1at17bXXKjU1VVOnTtWMGTPUrFkzSdK0adNUo0YNrVy5UlddddUZ9Q8AAAAAOQmqWPJ4PNmuSQrlNUqpqamSpGLFikmSVq9erYyMDLVo0cIXU716dVWsWFFffvmlY7GUlpamtLQ03+v9+/dLOv58qIyMDN//T/z3VNyOdbv/YGLd7j+YWLf7D1es2/0HE+tm/7GRx//QExvx//7NKT420vziTtd2bvvP6TPhyjXQWHINz3ydaa6hmi83c82SH/YZwca63X+4Yt3uP5hYt/sPJtbt/oOJdbv/UMQG8rkTeSyI00MRERFq3bq1YmNjJUlz585Vs2bNst0Nb/bs2UElIUler1ft27fXP//8o+XLl0uSZsyYoV69evkVP5JUr149NW3aVE8++WS2dkaMGKGRI0dmmz5jxgwVKFAg6LwAAAAAnBsOHz6srl27KjU1VYmJiaeND+rMUo8ePfxed+vWLbjsTqFfv376/vvvfYVSbg0bNkxDhgzxvd6/f78qVKigVq1a+RZIRkaGFi1apJYtWyo6OvqU7bkd63b/5Jq/Yt3uP7/kWmvEQknH/+o9+gqvHlkVodWPXpdj7IlxaV6Pvh+RElCb4Yo901zP5nydK7mGer7y0/YSrlyz5Id9xrmcazCxbvdPru7Hut1/KGKzvnUWqKCKpWnTpgXVeKD69++vjz76SMuWLVP58uV900uXLq309HT9888/KlKkiG/6rl27VLp0ace2YmNjfWe+ThQdHZ1tgTpNy4nbsW73H0ys2/0HE+t2/+GKdbv/YGLd6D8t0//rw2leT0CxaV6P0jKdY53aDFfsmeYaTCy5sr2EK9eT5eV9Rm5j3e4/XLFu9x9MrNv9BxPrdv/BxLrd/5nEBvqZLEHdDS/UzEz9+/fX+++/ryVLlqhSpUp+79etW1fR0dFavHixb9qGDRv0+++/q0GDBmc7XQAAAADnkTO6G96Z6tevn2bMmKEPPvhAhQoV0s6dOyVJhQsXVnx8vAoXLqzevXtryJAhKlasmBITE3X33XerQYMG3AkPAAAAQFi5WixNnjxZktSkSRO/6dOmTVPPnj0lSc8++6wiIiLUqVMnpaWlKSUlRZMmTTrLmQIAAAA437haLAVyI764uDi98MILeuGFF85CRgAAAABwnKvXLAEAAABAXkWxBAAAAAAOKJYAAAAAwIGr1ywBQKgkD50nSYqNNI2rd/zhmGmZHm0d29blzACcqeSh8wIa2+wHAIQaZ5YAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMBBlNsJAEBOkofOkyTFRprG1ZNqjViotEyPto5t63JmAADgfMCZJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAAAAAcBDldgIAzj/JQ+cpNtI0rp5Ua8RCpWV6tHVsW7fTAnAWJQ+dJ0l++4INY9q5nBUA+OPMEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABD6UFEBI8YBJAfuK0z+IB2QBOxpklAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcUCwBAAAAgAOKJQAAAABwEOV2AgAAADj7kofOkyTFRprG1ZNqjVioDWPauZwVkLdwZgkAAAAAHFAsAQAAAIADiiUAAAAAcECxBAAAAAAOKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxEuZ0AgLyLp7sDQHCSh87z22emZXq0dWxbt9MCkEucWQIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAAAAAcECxBAAAAAAOKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAdRbicA4OxKHjpPknjCPADkE8Hst51iN4xpd1bzBc4lnFkCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHUW4nAAAAcD5KHjpPsZGmcfWkWiMWKi3To61j27qdFoATcGYJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4ICH0iLPSh46T5J4YF+AeLghAABAaHFmCQAAAAAcUCwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAgavF0rJly3T99derbNmy8ng8mjNnjt/7ZqZHH31UZcqUUXx8vFq0aKGNGze6kywAAACA84qrxdKhQ4d06aWX6oUXXnB8f9y4cfrvf/+rKVOm6KuvvlLBggWVkpKio0ePnuVMAQAAAJxvXH3OUuvWrdW6dWvH98xMEyZM0MMPP6wOHTpIkl5//XVdcMEFmjNnjrp06XI2UwUAAABwnsmzD6XdsmWLdu7cqRYtWvimFS5cWPXr19eXX36ZY7GUlpamtLQ03+v9+/dLkjIyMpSRkeH7/4n/norbsW73H0xsqNuMjbTj/0b4/3uqz5yLyzXQ2NhIC2hZBbNcnWJzyiHY2LORa6jm61zL9WzO17mSa6jnKz9tL+T6/4RyX3w25ysU2/aJ/eX134d5of9gYt3uP5hYt/sPRWwgnzuRx8wsqE+Eicfj0fvvv6+OHTtKklasWKGGDRtq+/btKlOmjC+uc+fO8ng8mjlzpmM7I0aM0MiRI7NNnzFjhgoUKBCW3AEAAADkfYcPH1bXrl2VmpqqxMTE08bn2TNLuTVs2DANGTLE93r//v2qUKGCWrVq5VsgGRkZWrRokVq2bKno6OhTtud2rNv9u5lrrRELJR3/S9foK7x6ZFWE0rwefT8i5YzbDXWbZzpfqx+9LiTtBjJfwSzXYHINNvZs5Bqq+TrXcj2b83Wu5Brq+cpP2wu5/j+h/h2Tn7btQOc/r8S63T+55t3YrG+dBSrPFkulS5eWJO3atcvvzNKuXbtUp06dHD8XGxur2NjYbNOjo6OzLVCnaTlxO9bt/oOJDVWbaZke/9dej9IyPWecw4nthqrN3PaflUOo2z3VfAWzXIPJNbex4cw11PN1ruQaTCy5sr2Qa3ah+h2Tn7btE7l9nBFMrNv9BxPrdv/BxLrd/5nEBvqZLHn2OUuVKlVS6dKltXjxYt+0/fv366uvvlKDBg1czAwAAADA+cDVM0sHDx7Upk2bfK+3bNmitWvXqlixYqpYsaIGDRqkxx57TFWrVlWlSpX0yCOPqGzZsr7rmgAAAAAgXFwtllatWqWmTZv6Xmdda9SjRw+9+uqruv/++3Xo0CHdcccd+ueff9SoUSMtWLBAcXFxbqUMAAAA4DzharHUpEkTnepmfB6PR6NGjdKoUaPOYlYAAAAAkIevWQIAAAAAN1EsAQAAAIADiiUAAAAAcJBnn7MEAACQFyQPnSdJio00jat3/GGuG8a0czkrAGcDZ5YAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMBBlNsJAHlZ8tB5fk9sT8v0aOvYto5xkgKKBQAA/O5E/sCZJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADHkoL5GFOD+zbMKady1kBAM435/tD2s/V+cLpcWYJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcRLmdABAKTk/W3jCmnctZAQAAID/jzBIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcUCwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADiIcjsBnF3JQ+dJkmIjTePqSbVGLFRapkdbx7Z1OTMAAAAgb+HMEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOIhyOwEAAADgVJKHzpMkxUaaxtWTao1YqA1j2oW8zbRMj7aObXvG+brpXJ0vt3BmCQAAAAAcUCwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHES5nQDODclD5wX0pGieKg0AABCccB0/ObW7YUy7M873XMKZJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAICD8+6htG4/PDWYh38Fmmu48KAyAACQ3+Sn4ye3c8XpcWYJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcRLmdwLnA6UnNZ/MJzG73DwAAgHNb8tB5AR9rBhobzDGsU+yGMe1y7D/Q2NPhzBIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcUCwBAAAAgIN8USy98MILSk5OVlxcnOrXr6+vv/7a7ZQAAAAAnOPyfLE0c+ZMDRkyRMOHD9e3336rSy+9VCkpKdq9e7fbqQEAAAA4h+X5Ymn8+PG6/fbb1atXL9WsWVNTpkxRgQIF9Morr7idGgAAAIBzWJ5+KG16erpWr16tYcOG+aZFRESoRYsW+vLLLx0/k5aWprS0NN/r1NRUSdK+ffuUkZGhqGOHFOU1HT7sVVRGhDK9Hv3111/Z2ok6duj4v2ch1ikuK5Zc3cv1bM7XqfoP9XydT7mybeftbTs/5Rrq+cpP2wu5sm2fzVzZXvJ/rmdzvnKzbR84cECSZGaOnz2ZxwKNdMH27dtVrlw5rVixQg0aNPBNv//++/XZZ5/pq6++yvaZESNGaOTIkWczTQAAAAD5yLZt21S+fPnTxuXpM0u5MWzYMA0ZMsT32uv1at++fSpevLg8Ho8kaf/+/apQoYK2bdumxMTEU7bndqzb/ZNr/op1u39ydT/W7f7P1VyDiXW7f3J1P9bt/sMV63b/5Op+rNv9hyLWzHTgwAGVLVv2lJ/NkqeLpRIlSigyMlK7du3ym75r1y6VLl3a8TOxsbGKjY31m1akSBHH2MTExNMu5LwS63b/wcS63X8wsW73H65Yt/sPJtbt/oOJdbv/YGLd7j+YWLf7D1es2/0HE+t2/8HEut1/MLFu9x+uWLf7DybW7f6DiXW7/2Bi3e7/TGMLFy4c0OekPH6Dh5iYGNWtW1eLFy/2TfN6vVq8eLHf1/IAAAAAINTy9JklSRoyZIh69OihK664QvXq1dOECRN06NAh9erVy+3UAAAAAJzD8nyxdPPNN2vPnj169NFHtXPnTtWpU0cLFizQBRdckOs2Y2NjNXz48Gxf18uLsW73T675K9bt/snV/Vi3+z9Xcw0m1u3+ydX9WLf7D1es2/2Tq/uxbvcfztic5Om74QEAAACAW/L0NUsAAAAA4BaKJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWMrD0tLSlJaW5mq74coBAAAAyOvy/HOWwiHr4N/pnus//vijJk6cqC+//FI7d+6UJJUuXVoNGjRQ//79VbNmzaDigrVo0SI9++yz+vLLL7V//35JUmJioho0aKAhQ4aoRYsWYW83XDnAXenp6ZozZ062bfbqq69Whw4dFBMT44vdu3evXnnlFcfYnj17qmTJkkG3G0z/4YoNdL7CtayCiUX+wdhibCF8Al23wRyXhWvbCjQ2mDbDNV9uH++GSzj2BefNc5YCKQDmz5+vjh076vLLL1dKSorvwbe7du3SokWLtHr1an3wwQfyer0BxaWkpPj6D2Rje+2119SnTx/ddNNN2dr9+OOP9e6772rq1Km67bbbAm5TUlDtBptDOAam2zuxvDBfweycAondtGmTUlJStH37dtWvX99vvX711VcqX7685s+frypVquibb75RSkqKChQooBYtWvjFLl68WIcPH9bChQt1xRVXBNyupID7DybXcMxXkSJFwrKsgomVAj+oDMfBd16IDdd8hXo/wNg6d8dWuLZDt8dWMPPldnEb6Lrds2dPwMdl4dq2Ao01s4DbDPS4NNj5CtfxrttjK9h9QaDOi2Ip0ALg6aefVocOHTRq1CjHdkaMGKHZs2fL4/EEFLd+/XpJCnijvPvuuzVw4ED169fPsd1Jkybp2Wef1caNG4MaQBdddFHA7QYTG46BWaxYMVd3YsHGhmO+glm3gcY+/fTTKliwoF5//XUlJib6rdP9+/ere/fuOnLkiBYuXKirrrpKl156qaZMmSKPx+MXa2a68847tX79en355Zdq2bJlQO16vd6A+w+0zWBjA52vhISEsCyrYGIDPVD9+++/Q37wHc6DarfnKxz7gWHDhjG2zsGxRXGbN4rbQNft4cOHAz4uC9e2FWismQXc5qWXXhqW+Qq03WCOd90eW1WqVAlqGQTFzgNVq1a1iRMn5vj+Cy+8YFWqVLG4uDj7+eefc4z7+eefLS4uLuC4LLVr17ZHHnkkx/jhw4fbJZdcYrGxsQG3G2ibZhZUu8HE1q9f3+644w7zer3Z4rxer91xxx121VVXBZVvMG3mhdhwzFcw6zbQ2Pj4ePvuu+9yjFu/fr3Fx8ebmVlcXJz99NNPOcb+9NNPvm0g0HaD6T9csYHOV7iWVTCxLVq0sA4dOlhqamq2uNTUVOvQoYO1atUqqO0q0DbzQmy45isc+wHG1rk5tsyC214CbdftsRXMfLk9tswCX7fBHJeFa9sKJtdg2gzXfIX6eNftsZU1X4Eug2CcF8VSoAVA9erV7Zlnnskx7plnnrFq1aoFHJcl0I3t8ssvt/vuuy/HuPvvv98uv/zyoNo0s6DaDTaHcAxMN3dieWW+gtk5BhJbpkwZmzt3bo5xH374oZUpU8bMzJKTk+21117LMfa1116zpKQkM7OA2w2m/3DFBjpf4VpWwcQGelAZjoPvvBAbrvkKx36AsXVuji0zilu3x5ZZ4Os2mOOycG1bgcYG02a45iscx7tujy2z4JZBMM6LGzxcfPHFmjp1qsaNG+f4/iuvvKKaNWtq6NCh6tq1qz799FPH04ILFizQjBkz5PV6A4rLkpycrHnz5qlatWqO/c+bN09JSUl65pln1K5dOy1YsMCx3c2bN2vevHlBtSkpqHaDiS1durS+/vprVa9e3TGHr7/+2vf5QPNNS0sLuM1g+g9XbDjmK5h1G2hs586d1b17dz3yyCNq3rx5tvX62GOP6e6775Yk3Xvvvbrjjju0evVqx9iXX35ZTz/9tCSpT58+AbXr9XoD7j/QNoONDXS+du7cGZZlFUxskSJFtHXrVtWqVctxvW7dulVFihRRbGxswNtVoG3mhdhwzVc49gPdu3dnbJ2DYyvY7SWYdt0eh4HOV3p6uqtjSwp83ZYsWTLg47JwbVuBxppZwG2OGjUqLPMVaLvBHO/mhbEVzDIIStDlVT60dOlSK1iwoF1yySU2ePBgGzt2rI0dO9YGDx5stWvXtoSEBPvss8/MzOyLL76wm2++2SpWrGgxMTEWExNjFStWtJtvvtlWrFjhazPQODOzd955x6Kiouz666+35557zt5++217++237bnnnrP27dtbTEyMvfvuu2ZmtmXLFrv//vvt2muvtYsuusguuugiu/baa+2BBx6wLVu25KrNYNoNJnbixIkWGxtrAwYMsA8++MBWrlxpK1eutA8++MAGDBhg8fHx9sILLwSVbzBt5oXYcMxXMOs2mNixY8damTJlzOPxWEREhEVERJjH47EyZcrYk08+6bcNvP3221a/fn2Liooyj8djHo/HoqKirH79+jZz5ky/2EDbDab/cMUGOl/hWlaBxj7yyCNWtGhRGz9+vK1bt8527txpO3futHXr1tn48eOtWLFiNnz48KC2q0DbzAux4ZqvcO0HGFvn3tgKdhsItF23x1Yw85UXxlYw6zaY47JwbFvBxAbTZrjmK9THu26Prdwsg0CdF8WSWXDFQjgEs7G72WawwjEw3d6J5YX5CmbdBrsdbN682VasWGErVqywzZs357RqzcwsPT3dtm/fbtu3b7f09PRTxgbabjD9hys20PkK17IKJDbQg8pwHHznhdhwzVe49gNmjC2zc2tsmVHc5pWxZRbcdhCoUG9bwcaGY57C2e7puD22ThTKZXBe3A0P4ZeRkaG9e/dKkkqUKKHo6Oiz2mZeiA1UONrEuWvLli1+t0qtVKmSY1ww21WgbeaF2HDNl9v7AbgvXNtLoO26PbaCmS/GFoLh9tgKNYqlIDz44IPauXOnXnnllZDEBatHjx7atm2blixZ4lq74coB7vrggw+Umpqq7t27nzZ20qRJ2rt3rx599NGQtRtM/+GKDXS+wrWsgolF/sHYYmwhfAJdt8Ecl4Vr2wo0Npg2wzVfbh/vhkuu9wVndF7qHNG9e3dr2rTpWY/LMmzYMOvVq1dAcT179gxpm7lpN9DYF154wUaOHBlwu4HkG0ybeSE2HPMV7LoNJLZatWoWERERUJvNmjWzSpUqBRQbaLvB9B+u2EDnK1zLKpjYOXPmnPKOP1mC2a4CbTMvxIZrvsKxH2BsnZtjyyw826HbY8ss8Plye2yZBb5ugzkuC9e2FWhsMG2Ga77Ccbzr9tgyC24ZnIhiycyGDh0acAFwKk73iw/EbbfdFlRxFYhgC7ZwCMfAdHsnFmxsOOYrmHWbF7YDhF6gB5XhOPjOC7Hhmq9w7QeQf1Dc5q/iFvmH22PrTPA1vBCKiYnRunXrVKNGDbdTOSM7duzQ5MmTtXz5cu3YsUMRERG68MIL1bFjR/Xs2VORkZFupwgAAACE3XnxnKXT2bZtm4YPH65XXnlFR44c0erVq1WsWDHVrFnTL+7o0aN65513tHbtWsd2MjMzNXbsWBUvXlySNH78eMe4Q4cO6Z133tGmTZtUpkwZ3XLLLSpevLi+/fZbFS1a1HfB2htvvKEpU6bo999/V1JSkvr3768uXbpIku6++2517txZ11xzTUDzOHHiRH399ddq06aNunTpojfeeENPPPGEvF6vbrzxRo0aNUpRUVFatWqVWrRooSpVqig+Pl4bN25U165dlZ6ernvvvVevvPKKFixYoEKFCgXUL/KWr7/+Wl9++aXfBZINGjRQvXr1Am7j77//1ty5c/2uK/B6vYqIiMgW6/V69ccff6hixYoyM23dulUVKlRQVFSU0tPT9f777ystLU1t2rRRiRIlTtlvs2bNNG3aNN8zpnKyZcsW39g68bkMaWlpioiI8F08+uuvv+qVV17xja/evXurUqVKeu+999S6dWsVKFAgoOWxbt06rV69Wk2aNNGFF16oH374QS+88IK8Xq9uuOEGpaSk+MUvWbIk2x8i2rdvr6pVqwbUH/ImxhZjC+GRnp6uOXPmZBtfV199tTp06KCYmJjTtrFr1y69+OKLfteq/PHHHypSpIgSEhL8YjMyMvTll1/q2muvlST99ddfWr9+vS699FIVK1ZMe/fu1dSpU5WWlqZ//etfp/0D+YUXXqiFCxfmuB2amT799FPf2EpJSfGNpT/++ENxcXG+Mfz555/7HRf269dPDRo0kHT8OZk33XTTacdxlo8++khff/21UlJS1LBhQy1ZskRPP/2077jwjjvukCQdOXJEb731luMf0Js3bx5QX2dboOs2YGE9b5VPrF271iIiImzDhg2WlJTkuzXhtddea9u3b/fF7dy503e7wjp16liTJk38fjwej1155ZXWpEkTv68+1ahRw/766y8zM/v9998tOTnZChcubFdeeaUVK1bMSpUqZZs3b7batWvbokWLzMzs5Zdftvj4eBswYIBNnjzZBg0aZAkJCTZ16lQzM1+OVatWtbFjx9qOHTtynL/Ro0dboUKFrFOnTla6dGkbO3asFS9e3B577DF7/PHHrWTJkvboo4+amVnDhg1txIgRvs++8cYbVr9+fTMz27dvn9WpU8cGDBjgez8tLc1mzpxpgwYNsi5duliXLl1s0KBB9s4771haWlrA62Dnzp1+30/dtm2bHThwIFtcenq675lYZmZ79+61JUuW+Jbvnj17bOzYsTZy5Ej78ccfT9tvpUqV7JdffjlljNfrtSVLlthLL71kc+fO9bsF5bZt22zPnj2+18uWLbOuXbtao0aN7NZbb/Xduvvpp5+2rVu3njafLHPnzrVHHnnEli9fbmZmixcvttatW1tKSoq9+OKLfrGHDx+2qVOnWq9evey6666zNm3aWP/+/e2TTz7xxezatcsaNWpkHo/HkpKSrF69elavXj3f9t6oUSPbtWtXQLlljRczs9TUVPvXv/5lcXFxVqpUKXvkkUfs2LFjvtisMfPzzz9bUlKSRUREWJUqVWzz5s1Wt25dK1iwoBUoUMBKlCjhWw8ffPCB409kZKRNnDjR99rM7K677vJtJ4cPH7ZOnTr5xmhERIQ1bdrU937jxo1t1qxZZma2fPlyi42Ntdq1a9vNN99sl112mRUoUMBWrFhhHo/HEhMT7fbbb7eVK1eeclm89957FhkZacWLF7eEhARbtGiRFSlSxFq0aGEpKSkWGRlp06dP962DevXqWUREhEVFRVlERITVrVvXSpcubZGRkXbfffdla/+rr76yCRMm2NChQ23o0KE2YcIE++qrrwJaT2bHx+zJ3+XOzMx0jM3MzLTffvvN99rr9drmzZstIyPDzI6P9bfffttee+01v20+J02bNg1om9+8ebN9/PHHfk9oP3r0qN8427Rpkz344IPWrVs3e+ihh/xuNf3uu+/aoUOHTttPlrVr19rUqVPt119/NTOz77//3u666y7r27evLViwIFv84sWLbeTIkXbnnXfaf/7zH3v66af99hmMrfNzbJnlfny5ObbMAh9fbo8tM7ONGzfahRdeaHFxcda4cWPr3Lmzde7c2Ro3bmxxcXFWpUoV27hxY0C5ZY2t7du325VXXmkREREWGRlpt912m9/xRtbYMju+nRQuXNg8Ho8VLVrUVq1aZZUqVbKqVata5cqVLT4+3lavXm1mZs8995zjT2RkpA0bNsz3unXr1vbPP/+Ymdlff/1l9evXN4/HYyVLlrSIiAirXr267d6928zM6tWrZ3PnzjWz49fmREREWPv27e2BBx6wG264waKjo33vezwei4yMtBYtWtjbb799ymOwKVOmWFRUlNWtW9cSExPtjTfesEKFClmfPn2sb9++Fh8fbxMmTLCNGzdaUlKSlSpVyipUqGAej8fatm1r9evXt8jISPvXv/7l246zhGNsBTpmglm3wTgviqWcfkFk/Tz77LMWERFhHTt2tLZt29qePXts48aN1rZtW6tUqZJvB5e1kJ944gmrVKmSLV682K+fqKgo++GHH7L17/F4fL8sb731Vrv66qt9A+XAgQPWokULu+WWWyw+Pt63A7zsssvspZde8mtn+vTpVrNmTV+bn3zyiQ0cONBKlChh0dHR1r59e5s7d262nXXlypXtvffeM7PjO4zIyEh78803fe/Pnj3bqlSpYmZm8fHxvh2d2fEdfHR0tO3cudPMzD7++GMrW7asmYVuJ5aVV0REhOs7MTMLy44sHDuxrHUQyI6sU6dO1qBBA/v555+z9ffzzz/b1VdfbTfd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v9a2bdvUsGFDffHFF7riiiskKeC4YNoMV6zb/Ycj16SkJEVGRionHo9HLVu2DGvsyJEjFR8fry+//FK33367hg4dqksvvVT333+/Dh8+rOuvv16jR4/Osa0c+zDj1uEAAAAAcDKuWQIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAQL725ZdfKjIyUm3btnU7FQDAOYa74QEA8rU+ffooISFBU6dO1YYNG1S2bFm3UwIAnCM4swQAyLcOHjyomTNn6q677lLbtm316quv+r3/4YcfqmrVqoqLi1PTpk312muvyePx6J9//vHFLF++XNdcc43i4+NVoUIFDRgw4JTPLwMAnD8olgAA+dY777yj6tWrq1q1aurWrZteeeUVZX1hYsuWLbrpppvUsWNHrVu3Tn379tVDDz3k9/lff/1V1113nTp16qT169dr5syZWr58ufr37+/G7AAA8hi+hgcAyLcaNmyozp07a+DAgTp27JjKlCmjWbNmqUmTJho6dKjmzZun7777zhf/8MMPa8yYMfr7779VpEgR9enTR5GRkXrxxRd9McuXL1fjxo116NAhxcXFuTFbAIA8gjNLAIB8acOGDfr66691yy23SJKioqJ08803a+rUqb73r7zySr/P1KtXz+/1unXr9OqrryohIcH3k5KSIq/Xqy1btpydGQEA5FlRbicAAEBuTJ06VceOHfO7oYOZKTY2VhMnTgyojYMHD6pv374aMGBAtvcqVqwYslwBAPkTxRIAIN85duyYXn/9dT3zzDNq1aqV33sdO3bUW2+9pWrVqun//u///N775ptv/F5ffvnl+vHHH1WlSpWw5wwAyH+4ZgkAkO/MmTNHN998s3bv3q3ChQv7vffAAw9oyZIleuedd1StWjUNHjxYvXv31tq1a3XPPffojz/+0D///KPChQtr/fr1uuqqq/Tvf/9bffr0UcGCBfXjjz9q0aJFAZ+dAgCcu7hmCQCQ70ydOlUtWrTIVihJUqdOnbRq1SodOHBA7777rmbPnq3atWtr8uTJvrvhxcbGSpJq166tzz77TL/88ouuueYaXXbZZXr00Ud5VhMAQBJnlgAA55ExY8ZoypQp2rZtm9upAADyAa5ZAgCcsyZNmqQrr7xSxYsX1xdffKGnnnqKZygBAAJGsQQAOGdt3LhRjz32mPbt26eKFSvqnnvu0bBhw9xOCwCQT/A1PAAAAABwwA0eAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcUCwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAwf8H8y4mmjLHDYIAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Guessed range for Mean: (30, 40)\n", + "Guessed range for Standard Deviation: (10, 15)\n" + ] + } + ], + "source": [ + "# Read the file ages_population.csv\n", + "df_ages1 = pd.read_csv('/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/ages_population.csv')\n", + "\n", + "# Calculate the frequency distribution\n", + "age_counts = df_ages1['observation'].value_counts().sort_index()\n", + "\n", + "# Plot the frequency distribution\n", + "plt.figure(figsize=(10, 6))\n", + "age_counts.plot(kind='bar')\n", + "plt.title('Frequency Distribution of Ages in the First Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "plt.grid(True)\n", + "plt.show()\n", + "\n", + "# Provide a guess for the range of mean and standard deviation by looking at the plot\n", + "mean_guess = (30, 40)\n", + "std_dev_guess = (10, 15)\n", + "\n", + "print(\"Guessed range for Mean:\", mean_guess)\n", + "print(\"Guessed range for Standard Deviation:\", std_dev_guess)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2.- Calculate the exact mean and standard deviation and compare them with your guesses. Do they fall inside the ranges you guessed?" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0sAAAI0CAYAAADMR7LWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAABwW0lEQVR4nO3deZzN9f////uZfRhjl31GyJKkFImymyyh9JYky5tSb7K10WZLSSW9E6q3tFFSUvJBQklSkaVVhFL21NhnxpzH7w+/OV/HvIZzxjleM9yul8tcOK/zOM/n47U8X/N6zOu8Xi+PmZkAAAAAAH4i3E4AAAAAAPIiiiUAAAAAcECxBAAAAAAOKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAOeUESNGyOPxnJW+mjRpoiZNmvhef/rpp/J4PHr33XfPSv89e/ZUcnLyWekrtw4ePKg+ffqodOnS8ng8GjRokNsphdzJ20E4eTwe9e/f/6z0dSr5YdvLreTkZPXs2TPXn23Xrt1p41599VV5PB6tWrUqV/2ES8+ePZWQkOB2Gn7OZH0AoUCxBAQp65ec08/QoUPdTu+ccvKyjouLU9myZZWSkqL//ve/OnDgQEj62b59u0aMGKG1a9eGpL1Qysu5BeLxxx/Xq6++qrvuuktvvPGGbrvtttN+JjMzU2XLlpXH49H8+fPPQpZ5y4oVKzRixAj9888/ruWQnJyc437u6NGjIe8v2Hnu2bOnPB6PateuLTPL9n5eKSoB5H9RbicA5FejRo1SpUqV/KbVqlXLpWzObVnLOiMjQzt37tSnn36qQYMGafz48frwww9Vu3ZtX+zDDz8cdNG6fft2jRw5UsnJyapTp07An/v444+D6ic3TpXbyy+/LK/XG/YczsSSJUt01VVXafjw4UF9ZseOHUpOTtb06dPVunXrMGZ45kK9HaxYsUIjR45Uz549VaRIkZC2HYw6deronnvuyTY9JiYm5Ntebuf5u+++0+zZs9WpU6eQ5bJhwwZFRPC3ZADHUSwBudS6dWtdccUVAcUePXpUMTEx/ALOpZOX9bBhw7RkyRK1a9dO7du3108//aT4+HhJUlRUlKKiwrtrO3z4sAoUKKCYmJiw9nM60dHRrvYfiN27d6tmzZpBfebNN9/U5Zdfrh49eujBBx/UoUOHVLBgwTBleObc3g7CpVy5curWrZvje4Hsy44dOyav1xu25RMfH68KFSpo1KhRuvHGG0P29dvY2NiQtJOfZP2OApAdR25AiGVdt/L222/r4YcfVrly5VSgQAHt379fkvTVV1/puuuuU+HChVWgQAE1btxYX3zxRbZ2li9friuvvFJxcXGqXLmyXnzxxWzX42zdulUej0evvvpqts97PB6NGDHCb9qff/6pf//737rgggsUGxuriy++WK+88opj/u+8847GjBmj8uXLKy4uTs2bN9emTZuy9fPVV1+pTZs2Klq0qAoWLKjatWvrueeekyRNmzZNHo9Ha9asyfa5xx9/XJGRkfrzzz9Pu0ydNGvWTI888oh+++03vfnmm77pTtcsLVq0SI0aNVKRIkWUkJCgatWq6cEHH/TN75VXXilJ6tWrl++rRlnLtEmTJqpVq5ZWr16ta6+9VgUKFPB9NqdrVTIzM/Xggw+qdOnSKliwoNq3b69t27b5xeT0PfwT2zxdbk7XjRw6dEj33HOPKlSooNjYWFWrVk1PP/10tq8qZX1Nac6cOapVq5Zve1iwYIHzAj/J7t271bt3b11wwQWKi4vTpZdeqtdee833ftZ2tGXLFs2bN8+X+9atW0/Z7pEjR/T++++rS5cu6ty5s44cOaIPPvjAMXbWrFmqWbOm4uLiVKtWLb3//vuOy8Tr9WrChAm6+OKLFRcXpwsuuEB9+/bV33//7Re3atUqpaSkqESJEoqPj1elSpX073//+7TLIqdr1wIdQycaMWKE7rvvPklSpUqVclxugay3QMZ7bp28nLP2RU8//bQmTJigypUrKzY2Vj/++KMk6fnnn9fFF1+sAgUKqGjRorriiis0Y8aMoOb5ZBEREXr44Ye1fv16vf/++6fNOS0tTcOHD1eVKlUUGxurChUq6P7771daWppfnNPYXL9+vRo3bqz4+HiVL19ejz32mG//5pTn8uXLVa9ePcXFxenCCy/U66+/7pjT4cOH1bdvXxUvXlyJiYnq3r17tu1SkiZNmqSLL75YsbGxKlu2rPr165ftK4uB7FOk0/+Oko5vOx07dlRCQoJKliype++9V5mZmX7tBrqvOXbsmEaPHu3bJpKTk/Xggw9mW+5mpscee0zly5dXgQIF1LRpU/3www+Oyw04mzizBORSamqq9u7d6zetRIkSvv+PHj1aMTExuvfee5WWlqaYmBgtWbJErVu3Vt26dTV8+HBFRERo2rRpatasmT7//HPVq1dP0vGvlrRq1UolS5bUiBEjdOzYMQ0fPlwXXHBBrvPdtWuXrrrqKt9BcsmSJTV//nz17t1b+/fvz3bh/dixYxUREaF7771XqampGjdunG699VZ99dVXvphFixapXbt2KlOmjAYOHKjSpUvrp59+0kcffaSBAwfqpptuUr9+/TR9+nRddtllfu1Pnz5dTZo0Ubly5XI9T7fddpsefPBBffzxx7r99tsdY3744Qe1a9dOtWvX1qhRoxQbG6tNmzb5CtQaNWpo1KhRevTRR3XHHXfommuukSRdffXVvjb++usvtW7dWl26dFG3bt1Oux7GjBkjj8ejBx54QLt379aECRPUokULrV271ncGLBCB5HYiM1P79u21dOlS9e7dW3Xq1NHChQt133336c8//9Szzz7rF798+XLNnj1b//nPf1SoUCH997//VadOnfT777+rePHiOeZ15MgRNWnSRJs2bVL//v1VqVIlzZo1Sz179tQ///yjgQMHqkaNGnrjjTc0ePBglS9f3vd1rpIlS55ynj/88EMdPHhQXbp0UenSpdWkSRNNnz5dXbt29YubN2+ebr75Zl1yySV64okn9Pfff6t3796O21Pfvn316quvqlevXhowYIC2bNmiiRMnas2aNfriiy8UHR2t3bt3+8bc0KFDVaRIEW3dulWzZ88+Zb6nEsgYOtmNN96oX375RW+99ZaeffZZ3z7lxOUWyHoLdrw7ycjIyLaPK1CggAoUKJDjZ6ZNm6ajR4/qjjvuUGxsrIoVK6aXX35ZAwYM0E033aSBAwfq6NGjWr9+vb766it17do1oHnOSdeuXTV69GiNGjVKN9xwQ45nl7xer9q3b6/ly5frjjvuUI0aNfTdd9/p2Wef1S+//KI5c+bk2Meff/6ppk2byuPxaNiwYSpYsKD+97//5XgGatOmTbrpppvUu3dv9ejRQ6+88op69uypunXr6uKLL/aL7d+/v4oUKaIRI0Zow4YNmjx5sn777TdfQSMdLyZHjhypFi1a6K677vLFffPNN77tNzecfkdJx//Yk5KSovr16+vpp5/WJ598omeeeUaVK1fWXXfdJSm4fU2fPn302muv6aabbtI999yjr776Sk888YR++uknvyL30Ucf1WOPPaY2bdqoTZs2+vbbb9WqVSulp6fnav6AkDEAQZk2bZpJcvwxM1u6dKlJsgsvvNAOHz7s+5zX67WqVataSkqKeb1e3/TDhw9bpUqVrGXLlr5pHTt2tLi4OPvtt99803788UeLjIy0E4ftli1bTJJNmzYtW56SbPjw4b7XvXv3tjJlytjevXv94rp06WKFCxf25ZqVf40aNSwtLc0X99xzz5kk++6778zM7NixY1apUiVLSkqyv//+26/NE+fvlltusbJly1pmZqZv2rfffptj3ifKWtbffPNNjjGFCxe2yy67zPd6+PDhfsvo2WefNUm2Z8+eHNv45ptvcsyncePGJsmmTJni+F7jxo19r7OWXbly5Wz//v2+6e+8845Jsueee843LSkpyXr06HHaNk+VW48ePSwpKcn3es6cOSbJHnvsMb+4m266yTwej23atMk3TZLFxMT4TVu3bp1Jsueffz5bXyeaMGGCSbI333zTNy09Pd0aNGhgCQkJfvOelJRkbdu2PWV7J2rXrp01bNjQ9/qll16yqKgo2717t1/cJZdcYuXLl7cDBw74pn366acmyW+ZfP755ybJpk+f7vf5BQsW+E1///33T7ut5SSn7eB0YygnTz31lEmyLVu2ZHsv0PUW6HjPSVJSkuM+LmufcvK2l7UvSkxMzLauOnToYBdffHGu59lJjx49rGDBgmZm9tprr5kkmz17tu99SdavXz/f6zfeeMMiIiLs888/92tnypQpJsm++OILv3k/cWzefffd5vF4bM2aNb5pf/31lxUrVixbzlnLbdmyZb5pu3fvttjYWLvnnnt807L2bXXr1rX09HTf9HHjxpkk++CDD3yfjYmJsVatWvntQydOnGiS7JVXXskx7yw5bZ8n/44yO75cJdmoUaP8pl922WVWt25d3+tA9zVr1641SdanTx+/uHvvvdck2ZIlS/zms23btn6/Px588EGT5DhfwNnC1/CAXHrhhRe0aNEiv58T9ejRw+8swtq1a7Vx40Z17dpVf/31l/bu3au9e/fq0KFDat68uZYtWyav16vMzEwtXLhQHTt2VMWKFX2fr1GjhlJSUnKVq5npvffe0/XXXy8z8/W9d+9epaSkKDU1Vd9++63fZ3r16uX3HfassxqbN2+WJK1Zs0ZbtmzRoEGDsl2QfeJfd7t3767t27dr6dKl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9u3LNi3rzF7WWbysZ/g4HWjkxuuvv+53HdW7776rHTt2+D1ctXLlylq5cqXfnZ4++uijbLcYDya3Nm3aKDMzUxMnTvSb/uyzz8rj8YTs4a5t2rTRzp07NXPmTN+0Y8eO6fnnn1dCQkK2YicQWWd+7r//ft10001+P507d1bjxo19MWXLllWtWrX0+uuv+42lzz77TN99951fu507d1ZmZqZGjx6drc9jx475luvff/+dbbs9eTs5W850ewzHeD8Tf/31l9/rmJgY1axZU2bmuz4sFGOwW7duqlKliuPZqs6dO+vPP//Uyy+/nO29I0eO6NChQzm2m5KSoi+//FJr1671Tdu3b1+OZyuD8dJLL/ldIzd58mQdO3bMN1ZbtGihmJgY/fe///XbPqdOnarU1FS1bdvWNy3QfUooBLqvySr6JkyY4BeXdYYvK/8WLVooOjpazz//vN98nvw5wA2cWQLOkoiICP3vf/9T69atdfHFF6tXr14qV66c/vzzTy1dulSJiYmaO3euJGnkyJFasGCBrrnmGv3nP//xHYhefPHFWr9+vV+7ffr00dixY9WnTx9dccUVWrZsmX755Zds/Y8dO1ZLly5V/fr1dfvtt6tmzZrat2+fvv32W33yySeORcXp5mfy5Mm6/vrrVadOHfXq1UtlypTRzz//rB9++CFbYde9e3fde++9khT0V/Dmz5+vn3/+WceOHdOuXbu0ZMkSLVq0SElJSfrwww8VFxeX42dHjRqlZcuWqW3btkpKStLu3bs1adIklS9fXo0aNZJ0/CCjSJEimjJligoVKqSCBQuqfv36OX6n/3SKFSumRo0aqVevXtq1a5cmTJigKlWq+N3evE+fPnr33Xd13XXXqXPnzvr111/15ptv+l24H2xu119/vZo2baqHHnpIW7du1aWXXqqPP/5YH3zwgQYNGpSt7dy644479OKLL6pnz55avXq1kpOT9e677+qLL77QhAkTcnUt2vTp01WnTp0cvw7Vvn173X333fr22291+eWX6/HHH1eHDh3UsGFD9erVS3///bcmTpyoWrVq+RVQjRs3Vt++ffXEE09o7dq1atWqlaKjo7Vx40bNmjVLzz33nG666Sa99tprmjRpkm644QZVrlxZBw4c0Msvv6zExETfAd/ZUrduXUnSQw89pC5duig6OlrXX399UA/mDfV4PxOtWrVS6dKl1bBhQ11wwQX66aefNHHiRLVt29a3rYRiniMjI/XQQw853ozltttu0zvvvKM777xTS5cuVcOGDZWZmamff/5Z77zzjhYuXJjjNaj333+/3nzzTbVs2VJ3332379bhFStW1L59+87orFh6erqaN2+uzp07a8OGDZo0aZIaNWqk9u3bSzp+lnDYsGEaOXKkrrvuOrVv394Xd+WVV/rtSwPdp4RCoPuaSy+9VD169NBLL72kf/75R40bN9bXX3+t1157TR07dvSdVct6ltMTTzyhdu3aqU2bNlqzZo3mz5/v90gOwBVn+/Z7QH53uttZZ92WddasWY7vr1mzxm688UYrXry4xcbGWlJSknXu3NkWL17sF/fZZ59Z3bp1LSYmxi688EKbMmVKtttimx2/9Xjv3r2tcOHCVqhQIevcubPt3r07263Dzcx27dpl/fr1swoVKlh0dLSVLl3amjdvbi+99NJp88/pNuXLly+3li1bWqFChaxgwYJWu3Ztx1tP79ixwyIjI+2iiy5yXC5OTr5Ne0xMjJUuXdpatmxpzz33nN8tqrOcvIwWL15sHTp0sLJly1pMTIyVLVvWbrnlFvvll1/8PvfBBx9YzZo1LSoqym8+GzdunONtj3O6Je9bb71lw4YNs1KlSll8fLy1bdvW7zbwWZ555hkrV66cxcbGWsOGDW3VqlXZ2jxVbiffvtnM7MCBAzZ48GArW7asRUdHW9WqVe2pp57yux2vWfZbK2fJ6fbDJ9u1a5f16tXLSpQoYTExMXbJJZc43t48kFuHr1692iTZI488kmPM1q1bTZINHjzYN+3tt9+26tWrW2xsrNWqVcs+/PBD69Spk1WvXj3b51966SWrW7euxcfHW6FCheySSy6x+++/37Zv325mx29nf8stt1jFihUtNjbWSpUqZe3atbNVq1addlnktB0EOoacjB492sqVK2cRERF+t6cOZr0FMt5zcrr1ltOtw5966qlssS+++KJde+21vn1e5cqV7b777rPU1NSA5jmn/rNuHX6ijIwMq1y5suNySk9PtyeffNIuvvhii42NtaJFi1rdunVt5MiRfrk4Lcs1a9bYNddcY7GxsVa+fHl74okn7L///a9Jsp07d/p91mm5nbyNZO3bPvvsM7vjjjusaNGilpCQYLfeeqv99ddf2T4/ceJEq169ukVHR9sF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AOcSziwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAICDKLcTAADgVJKHzlNspGlcPanWiIVKy/Ro69i2bqcFADgPcGYJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADlwtliZPnqzatWsrMTFRiYmJatCggebPn+97/+jRo+rXr5+KFy+uhIQEderUSbt27XIxYwAAAADnC1eLpfLly2vs2LFavXq1Vq1apWbNmqlDhw764YcfJEmDBw/W3LlzNWvWLH322Wfavn27brzxRjdTBgAAAHCecPXW4ddff73f6zFjxmjy5MlauXKlypcvr6lTp2rGjBlq1qyZJGnatGmqUaOGVq5cqauuusqNlAEAAACcJ/LMNUuZmZl6++23dejQITVo0ECrV69WRkaGWrRo4YupXr26KlasqC+//NLFTAEAAACcD1x/KO13332nBg0a6OjRo0pISND777+vmjVrau3atYqJiVGRIkX84i+44ALt3Lkzx/bS0tKUlpbme71//35JUkZGhjIyMnz/P/HfU3E71u3+g4l1u/9gYt3uP1yxbvcfTKzb/QcT62b/sZF2/N+I//fvqeLdXlaBxsZGmt88nSo+mNhw5Xpi36FYB05t5vSZM409F7aXvNB/MLFu9x+uWLf7DybW7f6DiXW7/2Bi3e4/FLGBfO5EHjOzoD4RYunp6fr999+Vmpqqd999V//73//02Wefae3aterVq5df4SNJ9erVU9OmTfXkk086tjdixAiNHDky2/QZM2aoQIECYZkHAAAAAHnf4cOH1bVrV6WmpioxMfG08a4XSydr0aKFKleurJtvvlnNmzfX33//7Xd2KSkpSYMGDdLgwYMdP+90ZqlChQrau3evb4FkZGRo0aJFatmypaKjo0+Zj9uxbvdPrvkr1u3+yTX0sbVGLJR0/AzB6Cu8emRVhFY/et0Z919rxEK/NtO8Hn0/IuWszleg/Qca67SsgonNabmGYx2caa6hmK9Ac80rsW73f67mGkys2/2Tq/uxbvcfitj9+/erRIkSARdLrn8N72Rer1dpaWmqW7euoqOjtXjxYnXq1EmStGHDBv3+++9q0KBBjp+PjY1VbGxstunR0dHZFqjTtJy4Het2/8HEut1/MLFu9x+uWLf7DybW7f6DiXWj/7RMj/9rryckuZ7YbprXo7TM0LQbaGww/Qca67Ssgok9m+vgTHMNxXwFmmtei3W7/2Bi3e4/XLFu9x9MrNv9BxPrdv/BxLrd/5nEBvqZLK4WS8OGDVPr1q1VsWJFHThwQDNmzNCnn36qhQsXqnDhwurdu7eGDBmiYsWKKTExUXfffbcaNGjAnfAAAAAAhJ2rxdLu3bvVvXt37dixQ4ULF1bt2rW1cOFCtWzZUpL07LPPKiIiQp06dVJaWppSUlI0adIkN1MGAAAAcJ5wtViaOnXqKd+Pi4vTCy+8oBdeeOEsZQQAAAAAx+WZ5ywBAAAAQF5CsQQAAAAADiiWAAAAAMBBnrt1OAAgf0oeOk+SFBtpGlfv+DN/Noxp53JWOFNO6zUt06OtY9u6nBkAhB9nlgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAAAAAcECxBAAAAAAOKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHuSqWNm/eHOo8AADI95KHzlOtEQslSbVGLFTy0HkuZwQAOBO5KpaqVKmipk2b6s0339TRo0dDnRMAAAAAuC5XxdK3336r2rVra8iQISpdurT69u2rr7/+OtS5AQAAAIBrclUs1alTR88995y2b9+uV155RTt27FCjRo1Uq1YtjR8/Xnv27Al1ngAAAABwVp3RDR6ioqJ04403atasWXryySe1adMm3XvvvapQoYK6d++uHTt2hCpPAAAAADirzqhYWrVqlf7zn/+oTJkyGj9+vO699179+uuvWrRokbZv364OHTqEKk8AAAAAOKuicvOh8ePHa9q0adqwYYPatGmj119/XW3atFFExPHaq1KlSnr11VeVnJwcylwBAAAA4KzJVbE0efJk/fvf/1bPnj1VpkwZx5hSpUpp6tSpZ5QcAAAAALglV8XSxo0bTxsTExOjHj165KZ5AAAAAHBdrq5ZmjZtmmbNmpVt+qxZs/Taa6+dcVIAAAAA4LZcFUtPPPGESpQokW16qVKl9Pjjj59xUgBwLkseOk/JQ+ep1oiFkqRaIxYqeeg8l7MCAAAny1Wx9Pvvv6tSpUrZpiclJen3338/46QAAAAAwG25KpZKlSql9evXZ5u+bt06FS9e/IyTAgAAAAC35apYuuWWWzRgwAAtXbpUmZmZyszM1JIlSzRw4EB16dIl1DkCAAAAwFmXq7vhjR49Wlu3blXz5s0VFXW8Ca/Xq+7du3PNEgAAAIBzQq6KpZiYGM2cOVOjR4/WunXrFB8fr0suuURJSUmhzg8AAAAAXJGrYinLRRddpIsuuihUuQAAAABAnpGrYikzM1OvvvqqFi9erN27d8vr9fq9v2TJkpAkBwAAAABuyVWxNHDgQL366qtq27atatWqJY/HE+q8AAAAAMBVuSqW3n77bb3zzjtq06ZNqPMBgDwleeg8xUaaxtU7/vDYtEyPto5t63ZaAADgLMjVrcNjYmJUpUqVUOcCAAAAAHlGroqle+65R88995zMLNT5AAAAAECekKuv4S1fvlxLly7V/PnzdfHFFys6Otrv/dmzZ4ckOQAAAABwS66KpSJFiuiGG24IdS4AAAAAkGfkqliaNm1aqPMAAAAAgDwlV9csSdKxY8f0ySef6MUXX9SBAwckSdu3b9fBgwdDlhwAAAAAuCVXZ5Z+++03XXfddfr999+Vlpamli1bqlChQnryySeVlpamKVOmhDpPAAAAADircnVmaeDAgbriiiv0999/Kz4+3jf9hhtu0OLFi0OWHAAAAAC4JVdnlj7//HOtWLFCMTExftOTk5P1559/hiQxAAAAAHBTroolr9erzMzMbNP/+OMPFSpU6IyTAgAEL3noPMVGmsbVk2qNWKi0TI+2jm3rdloAAORbufoaXqtWrTRhwgTfa4/Ho4MHD2r48OFq06ZNqHIDAAAAANfk6szSM888o5SUFNWsWVNHjx5V165dtXHjRpUoUUJvvfVWqHMEAAAAgLMuV8VS+fLltW7dOr399ttav369Dh48qN69e+vWW2/1u+EDAAAAAORXuSqWJCkqKkrdunULZS4AAAAAkGfkqlh6/fXXT/l+9+7dc5UMAAAAAOQVuSqWBg4c6Pc6IyNDhw8fVkxMjAoUKECxBAAAACDfy9Xd8P7++2+/n4MHD2rDhg1q1KgRN3gAAAAAcE7IVbHkpGrVqho7dmy2s04AAAAAkB+FrFiSjt/0Yfv27aFsEgAAAABckatrlj788EO/12amHTt2aOLEiWrYsGFIEgOAcEkeOk+SFBtpGldPqjVioTaMaedyVsDZlTx0nt8YSMv0aOvYtmfcpqSQtwsAbslVsdSxY0e/1x6PRyVLllSzZs30zDPPhCIvAAAAAHBVroolr9cb6jwAAAAAIE8J6TVLAAAAAHCuyNWZpSFDhgQcO378+Nx0AQAAAACuylWxtGbNGq1Zs0YZGRmqVq2aJOmXX35RZGSkLr/8cl+cx+MJTZYAAAAAcJblqli6/vrrVahQIb322msqWrSopOMPqu3Vq5euueYa3XPPPSFNEgAAAADOtlxds/TMM8/oiSee8BVKklS0aFE99thj3A0PAAAAwDkhV8XS/v37tWfPnmzT9+zZowMHDpxxUgAAAADgtlwVSzfccIN69eql2bNn648//tAff/yh9957T71799aNN94Y6hwBAAAA4KzL1TVLU6ZM0b333quuXbsqIyPjeENRUerdu7eeeuqpkCYIAHBP8tB5kqTYSNO4elKtEQuVlunR1rFtXc4MAIDwy1WxVKBAAU2aNElPPfWUfv31V0lS5cqVVbBgwZAmBwAAAABuOaOH0u7YsUM7duxQ1apVVbBgQZlZqPICAAAAAFflqlj666+/1Lx5c1100UVq06aNduzYIUnq3bs3tw0HAAAAcE7IVbE0ePBgRUdH6/fff1eBAgV802+++WYtWLAgZMkBAAAAgFtydc3Sxx9/rIULF6p8+fJ+06tWrarffvstJIkBAAAAgJtydWbp0KFDfmeUsuzbt0+xsbFnnBQAAAAAuC1XxdI111yj119/3ffa4/HI6/Vq3Lhxatq0aciSAwAAAAC35OpreOPGjVPz5s21atUqpaen6/7779cPP/ygffv26Ysvvgh1jgAAAABw1uXqzFKtWrX0yy+/qFGjRurQoYMOHTqkG2+8UWvWrFHlypVDnSMAAAAAnHVBn1nKyMjQddddpylTpuihhx4KR04AAAAA4LqgzyxFR0dr/fr14cgFAAAAAPKMXH0Nr1u3bpo6dWqocwEAAACAPCNXN3g4duyYXnnlFX3yySeqW7euChYs6Pf++PHjQ5IcAAAAALglqGJp8+bNSk5O1vfff6/LL79ckvTLL7/4xXg8ntBlBwAAAAAuCepreFWrVtXevXu1dOlSLV26VKVKldLbb7/te7106VItWbIk4PaeeOIJXXnllSpUqJBKlSqljh07asOGDX4xR48eVb9+/VS8eHElJCSoU6dO2rVrVzBpAwAAAEDQgiqWzMzv9fz583Xo0KFcd/7ZZ5+pX79+WrlypRYtWqSMjAy1atXKr83Bgwdr7ty5mjVrlj777DNt375dN954Y677BAAAAIBA5OqapSwnF0/BWrBggd/rV199VaVKldLq1at17bXXKjU1VVOnTtWMGTPUrFkzSdK0adNUo0YNrVy5UlddddUZ9Q8AAAAAOQmqWPJ4PNmuSQrlNUqpqamSpGLFikmSVq9erYyMDLVo0cIXU716dVWsWFFffvmlY7GUlpamtLQ03+v9+/dLOv58qIyMDN//T/z3VNyOdbv/YGLd7j+YWLf7D1es2/0HE+tm/7GRx//QExvx//7NKT420vziTtd2bvvP6TPhyjXQWHINz3ydaa6hmi83c82SH/YZwca63X+4Yt3uP5hYt/sPJtbt/oOJdbv/UMQG8rkTeSyI00MRERFq3bq1YmNjJUlz585Vs2bNst0Nb/bs2UElIUler1ft27fXP//8o+XLl0uSZsyYoV69evkVP5JUr149NW3aVE8++WS2dkaMGKGRI0dmmz5jxgwVKFAg6LwAAAAAnBsOHz6srl27KjU1VYmJiaeND+rMUo8ePfxed+vWLbjsTqFfv376/vvvfYVSbg0bNkxDhgzxvd6/f78qVKigVq1a+RZIRkaGFi1apJYtWyo6OvqU7bkd63b/5Jq/Yt3uP7/kWmvEQknH/+o9+gqvHlkVodWPXpdj7IlxaV6Pvh+RElCb4Yo901zP5nydK7mGer7y0/YSrlyz5Id9xrmcazCxbvdPru7Hut1/KGKzvnUWqKCKpWnTpgXVeKD69++vjz76SMuWLVP58uV900uXLq309HT9888/KlKkiG/6rl27VLp0ace2YmNjfWe+ThQdHZ1tgTpNy4nbsW73H0ys2/0HE+t2/+GKdbv/YGLd6D8t0//rw2leT0CxaV6P0jKdY53aDFfsmeYaTCy5sr2EK9eT5eV9Rm5j3e4/XLFu9x9MrNv9BxPrdv/BxLrd/5nEBvqZLEHdDS/UzEz9+/fX+++/ryVLlqhSpUp+79etW1fR0dFavHixb9qGDRv0+++/q0GDBmc7XQAAAADnkTO6G96Z6tevn2bMmKEPPvhAhQoV0s6dOyVJhQsXVnx8vAoXLqzevXtryJAhKlasmBITE3X33XerQYMG3AkPAAAAQFi5WixNnjxZktSkSRO/6dOmTVPPnj0lSc8++6wiIiLUqVMnpaWlKSUlRZMmTTrLmQIAAAA437haLAVyI764uDi98MILeuGFF85CRgAAAABwnKvXLAEAAABAXkWxBAAAAAAOKJYAAAAAwIGr1ywBQKgkD50nSYqNNI2rd/zhmGmZHm0d29blzACcqeSh8wIa2+wHAIQaZ5YAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMBBlNsJAEBOkofOkyTFRprG1ZNqjViotEyPto5t63JmAADgfMCZJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAAAAAcBDldgIAzj/JQ+cpNtI0rp5Ua8RCpWV6tHVsW7fTAnAWJQ+dJ0l++4INY9q5nBUA+OPMEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABD6UFEBI8YBJAfuK0z+IB2QBOxpklAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcUCwBAAAAgAOKJQAAAABwEOV2AgAAADj7kofOkyTFRprG1ZNqjVioDWPauZwVkLdwZgkAAAAAHFAsAQAAAIADiiUAAAAAcECxBAAAAAAOKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxEuZ0AgLyLp7sDQHCSh87z22emZXq0dWxbt9MCkEucWQIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAAAAAcECxBAAAAAAOKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAdRbicA4OxKHjpPknjCPADkE8Hst51iN4xpd1bzBc4lnFkCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHUW4nAAAAcD5KHjpPsZGmcfWkWiMWKi3To61j27qdFoATcGYJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4ICH0iLPSh46T5J4YF+AeLghAABAaHFmCQAAAAAcUCwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAgavF0rJly3T99derbNmy8ng8mjNnjt/7ZqZHH31UZcqUUXx8vFq0aKGNGze6kywAAACA84qrxdKhQ4d06aWX6oUXXnB8f9y4cfrvf/+rKVOm6KuvvlLBggWVkpKio0ePnuVMAQAAAJxvXH3OUuvWrdW6dWvH98xMEyZM0MMPP6wOHTpIkl5//XVdcMEFmjNnjrp06XI2UwUAAABwnsmzD6XdsmWLdu7cqRYtWvimFS5cWPXr19eXX36ZY7GUlpamtLQ03+v9+/dLkjIyMpSRkeH7/4n/norbsW73H0xsqNuMjbTj/0b4/3uqz5yLyzXQ2NhIC2hZBbNcnWJzyiHY2LORa6jm61zL9WzO17mSa6jnKz9tL+T6/4RyX3w25ysU2/aJ/eX134d5of9gYt3uP5hYt/sPRWwgnzuRx8wsqE+Eicfj0fvvv6+OHTtKklasWKGGDRtq+/btKlOmjC+uc+fO8ng8mjlzpmM7I0aM0MiRI7NNnzFjhgoUKBCW3AEAAADkfYcPH1bXrl2VmpqqxMTE08bn2TNLuTVs2DANGTLE93r//v2qUKGCWrVq5VsgGRkZWrRokVq2bKno6OhTtud2rNv9u5lrrRELJR3/S9foK7x6ZFWE0rwefT8i5YzbDXWbZzpfqx+9LiTtBjJfwSzXYHINNvZs5Bqq+TrXcj2b83Wu5Brq+cpP2wu5/j+h/h2Tn7btQOc/r8S63T+55t3YrG+dBSrPFkulS5eWJO3atcvvzNKuXbtUp06dHD8XGxur2NjYbNOjo6OzLVCnaTlxO9bt/oOJDVWbaZke/9dej9IyPWecw4nthqrN3PaflUOo2z3VfAWzXIPJNbex4cw11PN1ruQaTCy5sr2Qa3ah+h2Tn7btE7l9nBFMrNv9BxPrdv/BxLrd/5nEBvqZLHn2OUuVKlVS6dKltXjxYt+0/fv366uvvlKDBg1czAwAAADA+cDVM0sHDx7Upk2bfK+3bNmitWvXqlixYqpYsaIGDRqkxx57TFWrVlWlSpX0yCOPqGzZsr7rmgAAAAAgXFwtllatWqWmTZv6Xmdda9SjRw+9+uqruv/++3Xo0CHdcccd+ueff9SoUSMtWLBAcXFxbqUMAAAA4DzharHUpEkTnepmfB6PR6NGjdKoUaPOYlYAAAAAkIevWQIAAAAAN1EsAQAAAIADiiUAAAAAcJBnn7MEAACQFyQPnSdJio00jat3/GGuG8a0czkrAGcDZ5YAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMBBlNsJAHlZ8tB5fk9sT8v0aOvYto5xkgKKBQAA/O5E/sCZJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADHkoL5GFOD+zbMKady1kBAM435/tD2s/V+cLpcWYJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcRLmdABAKTk/W3jCmnctZAQAAID/jzBIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcUCwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADiIcjsBnF3JQ+dJkmIjTePqSbVGLFRapkdbx7Z1OTMAAAAgb+HMEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOIhyOwEAAADgVJKHzpMkxUaaxtWTao1YqA1j2oW8zbRMj7aObXvG+brpXJ0vt3BmCQAAAAAcUCwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHES5nQDODclD5wX0pGieKg0AABCccB0/ObW7YUy7M873XMKZJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAICD8+6htG4/PDWYh38Fmmu48KAyAACQ3+Sn4ye3c8XpcWYJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcRLmdwLnA6UnNZ/MJzG73DwAAgHNb8tB5AR9rBhobzDGsU+yGMe1y7D/Q2NPhzBIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcUCwBAAAAgIN8USy98MILSk5OVlxcnOrXr6+vv/7a7ZQAAAAAnOPyfLE0c+ZMDRkyRMOHD9e3336rSy+9VCkpKdq9e7fbqQEAAAA4h+X5Ymn8+PG6/fbb1atXL9WsWVNTpkxRgQIF9Morr7idGgAAAIBzWJ5+KG16erpWr16tYcOG+aZFRESoRYsW+vLLLx0/k5aWprS0NN/r1NRUSdK+ffuUkZGhqGOHFOU1HT7sVVRGhDK9Hv3111/Z2ok6duj4v2ch1ikuK5Zc3cv1bM7XqfoP9XydT7mybeftbTs/5Rrq+cpP2wu5sm2fzVzZXvJ/rmdzvnKzbR84cECSZGaOnz2ZxwKNdMH27dtVrlw5rVixQg0aNPBNv//++/XZZ5/pq6++yvaZESNGaOTIkWczTQAAAAD5yLZt21S+fPnTxuXpM0u5MWzYMA0ZMsT32uv1at++fSpevLg8Ho8kaf/+/apQoYK2bdumxMTEU7bndqzb/ZNr/op1u39ydT/W7f7P1VyDiXW7f3J1P9bt/sMV63b/5Op+rNv9hyLWzHTgwAGVLVv2lJ/NkqeLpRIlSigyMlK7du3ym75r1y6VLl3a8TOxsbGKjY31m1akSBHH2MTExNMu5LwS63b/wcS63X8wsW73H65Yt/sPJtbt/oOJdbv/YGLd7j+YWLf7D1es2/0HE+t2/8HEut1/MLFu9x+uWLf7DybW7f6DiXW7/2Bi3e7/TGMLFy4c0OekPH6Dh5iYGNWtW1eLFy/2TfN6vVq8eLHf1/IAAAAAINTy9JklSRoyZIh69OihK664QvXq1dOECRN06NAh9erVy+3UAAAAAJzD8nyxdPPNN2vPnj169NFHtXPnTtWpU0cLFizQBRdckOs2Y2NjNXz48Gxf18uLsW73T675K9bt/snV/Vi3+z9Xcw0m1u3+ydX9WLf7D1es2/2Tq/uxbvcfztic5Om74QEAAACAW/L0NUsAAAAA4BaKJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWMrD0tLSlJaW5mq74coBAAAAyOvy/HOWwiHr4N/pnus//vijJk6cqC+//FI7d+6UJJUuXVoNGjRQ//79VbNmzaDigrVo0SI9++yz+vLLL7V//35JUmJioho0aKAhQ4aoRYsWYW83XDnAXenp6ZozZ062bfbqq69Whw4dFBMT44vdu3evXnnlFcfYnj17qmTJkkG3G0z/4YoNdL7CtayCiUX+wdhibCF8Al23wRyXhWvbCjQ2mDbDNV9uH++GSzj2BefNc5YCKQDmz5+vjh076vLLL1dKSorvwbe7du3SokWLtHr1an3wwQfyer0BxaWkpPj6D2Rje+2119SnTx/ddNNN2dr9+OOP9e6772rq1Km67bbbAm5TUlDtBptDOAam2zuxvDBfweycAondtGmTUlJStH37dtWvX99vvX711VcqX7685s+frypVquibb75RSkqKChQooBYtWvjFLl68WIcPH9bChQt1xRVXBNyupID7DybXcMxXkSJFwrKsgomVAj+oDMfBd16IDdd8hXo/wNg6d8dWuLZDt8dWMPPldnEb6Lrds2dPwMdl4dq2Ao01s4DbDPS4NNj5CtfxrttjK9h9QaDOi2Ip0ALg6aefVocOHTRq1CjHdkaMGKHZs2fL4/EEFLd+/XpJCnijvPvuuzVw4ED169fPsd1Jkybp2Wef1caNG4MaQBdddFHA7QYTG46BWaxYMVd3YsHGhmO+glm3gcY+/fTTKliwoF5//XUlJib6rdP9+/ere/fuOnLkiBYuXKirrrpKl156qaZMmSKPx+MXa2a68847tX79en355Zdq2bJlQO16vd6A+w+0zWBjA52vhISEsCyrYGIDPVD9+++/Q37wHc6DarfnKxz7gWHDhjG2zsGxRXGbN4rbQNft4cOHAz4uC9e2FWismQXc5qWXXhqW+Qq03WCOd90eW1WqVAlqGQTFzgNVq1a1iRMn5vj+Cy+8YFWqVLG4uDj7+eefc4z7+eefLS4uLuC4LLVr17ZHHnkkx/jhw4fbJZdcYrGxsQG3G2ibZhZUu8HE1q9f3+644w7zer3Z4rxer91xxx121VVXBZVvMG3mhdhwzFcw6zbQ2Pj4ePvuu+9yjFu/fr3Fx8ebmVlcXJz99NNPOcb+9NNPvm0g0HaD6T9csYHOV7iWVTCxLVq0sA4dOlhqamq2uNTUVOvQoYO1atUqqO0q0DbzQmy45isc+wHG1rk5tsyC214CbdftsRXMfLk9tswCX7fBHJeFa9sKJtdg2gzXfIX6eNftsZU1X4Eug2CcF8VSoAVA9erV7Zlnnskx7plnnrFq1aoFHJcl0I3t8ssvt/vuuy/HuPvvv98uv/zyoNo0s6DaDTaHcAxMN3dieWW+gtk5BhJbpkwZmzt3bo5xH374oZUpU8bMzJKTk+21117LMfa1116zpKQkM7OA2w2m/3DFBjpf4VpWwcQGelAZjoPvvBAbrvkKx36AsXVuji0zilu3x5ZZ4Os2mOOycG1bgcYG02a45iscx7tujy2z4JZBMM6LGzxcfPHFmjp1qsaNG+f4/iuvvKKaNWtq6NCh6tq1qz799FPH04ILFizQjBkz5PV6A4rLkpycrHnz5qlatWqO/c+bN09JSUl65pln1K5dOy1YsMCx3c2bN2vevHlBtSkpqHaDiS1durS+/vprVa9e3TGHr7/+2vf5QPNNS0sLuM1g+g9XbDjmK5h1G2hs586d1b17dz3yyCNq3rx5tvX62GOP6e6775Yk3Xvvvbrjjju0evVqx9iXX35ZTz/9tCSpT58+AbXr9XoD7j/QNoONDXS+du7cGZZlFUxskSJFtHXrVtWqVctxvW7dulVFihRRbGxswNtVoG3mhdhwzVc49gPdu3dnbJ2DYyvY7SWYdt0eh4HOV3p6uqtjSwp83ZYsWTLg47JwbVuBxppZwG2OGjUqLPMVaLvBHO/mhbEVzDIIStDlVT60dOlSK1iwoF1yySU2ePBgGzt2rI0dO9YGDx5stWvXtoSEBPvss8/MzOyLL76wm2++2SpWrGgxMTEWExNjFStWtJtvvtlWrFjhazPQODOzd955x6Kiouz666+35557zt5++217++237bnnnrP27dtbTEyMvfvuu2ZmtmXLFrv//vvt2muvtYsuusguuugiu/baa+2BBx6wLVu25KrNYNoNJnbixIkWGxtrAwYMsA8++MBWrlxpK1eutA8++MAGDBhg8fHx9sILLwSVbzBt5oXYcMxXMOs2mNixY8damTJlzOPxWEREhEVERJjH47EyZcrYk08+6bcNvP3221a/fn2Liooyj8djHo/HoqKirH79+jZz5ky/2EDbDab/cMUGOl/hWlaBxj7yyCNWtGhRGz9+vK1bt8527txpO3futHXr1tn48eOtWLFiNnz48KC2q0DbzAux4ZqvcO0HGFvn3tgKdhsItF23x1Yw85UXxlYw6zaY47JwbFvBxAbTZrjmK9THu26Prdwsg0CdF8WSWXDFQjgEs7G72WawwjEw3d6J5YX5CmbdBrsdbN682VasWGErVqywzZs357RqzcwsPT3dtm/fbtu3b7f09PRTxgbabjD9hys20PkK17IKJDbQg8pwHHznhdhwzVe49gNmjC2zc2tsmVHc5pWxZRbcdhCoUG9bwcaGY57C2e7puD22ThTKZXBe3A0P4ZeRkaG9e/dKkkqUKKHo6Oiz2mZeiA1UONrEuWvLli1+t0qtVKmSY1ww21WgbeaF2HDNl9v7AbgvXNtLoO26PbaCmS/GFoLh9tgKNYqlIDz44IPauXOnXnnllZDEBatHjx7atm2blixZ4lq74coB7vrggw+Umpqq7t27nzZ20qRJ2rt3rx599NGQtRtM/+GKDXS+wrWsgolF/sHYYmwhfAJdt8Ecl4Vr2wo0Npg2wzVfbh/vhkuu9wVndF7qHNG9e3dr2rTpWY/LMmzYMOvVq1dAcT179gxpm7lpN9DYF154wUaOHBlwu4HkG0ybeSE2HPMV7LoNJLZatWoWERERUJvNmjWzSpUqBRQbaLvB9B+u2EDnK1zLKpjYOXPmnPKOP1mC2a4CbTMvxIZrvsKxH2BsnZtjyyw826HbY8ss8Plye2yZBb5ugzkuC9e2FWhsMG2Ga77Ccbzr9tgyC24ZnIhiycyGDh0acAFwKk73iw/EbbfdFlRxFYhgC7ZwCMfAdHsnFmxsOOYrmHWbF7YDhF6gB5XhOPjOC7Hhmq9w7QeQf1Dc5q/iFvmH22PrTPA1vBCKiYnRunXrVKNGDbdTOSM7duzQ5MmTtXz5cu3YsUMRERG68MIL1bFjR/Xs2VORkZFupwgAAACE3XnxnKXT2bZtm4YPH65XXnlFR44c0erVq1WsWDHVrFnTL+7o0aN65513tHbtWsd2MjMzNXbsWBUvXlySNH78eMe4Q4cO6Z133tGmTZtUpkwZ3XLLLSpevLi+/fZbFS1a1HfB2htvvKEpU6bo999/V1JSkvr3768uXbpIku6++2517txZ11xzTUDzOHHiRH399ddq06aNunTpojfeeENPPPGEvF6vbrzxRo0aNUpRUVFatWqVWrRooSpVqig+Pl4bN25U165dlZ6ernvvvVevvPKKFixYoEKFCgXUL/KWr7/+Wl9++aXfBZINGjRQvXr1Am7j77//1ty5c/2uK/B6vYqIiMgW6/V69ccff6hixYoyM23dulUVKlRQVFSU0tPT9f777ystLU1t2rRRiRIlTtlvs2bNNG3aNN8zpnKyZcsW39g68bkMaWlpioiI8F08+uuvv+qVV17xja/evXurUqVKeu+999S6dWsVKFAgoOWxbt06rV69Wk2aNNGFF16oH374QS+88IK8Xq9uuOEGpaSk+MUvWbIk2x8i2rdvr6pVqwbUH/ImxhZjC+GRnp6uOXPmZBtfV199tTp06KCYmJjTtrFr1y69+OKLfteq/PHHHypSpIgSEhL8YjMyMvTll1/q2muvlST99ddfWr9+vS699FIVK1ZMe/fu1dSpU5WWlqZ//etfp/0D+YUXXqiFCxfmuB2amT799FPf2EpJSfGNpT/++ENxcXG+Mfz555/7HRf269dPDRo0kHT8OZk33XTTacdxlo8++khff/21UlJS1LBhQy1ZskRPP/2077jwjjvukCQdOXJEb731luMf0Js3bx5QX2dboOs2YGE9b5VPrF271iIiImzDhg2WlJTkuzXhtddea9u3b/fF7dy503e7wjp16liTJk38fjwej1155ZXWpEkTv68+1ahRw/766y8zM/v9998tOTnZChcubFdeeaUVK1bMSpUqZZs3b7batWvbokWLzMzs5Zdftvj4eBswYIBNnjzZBg0aZAkJCTZ16lQzM1+OVatWtbFjx9qOHTtynL/Ro0dboUKFrFOnTla6dGkbO3asFS9e3B577DF7/PHHrWTJkvboo4+amVnDhg1txIgRvs++8cYbVr9+fTMz27dvn9WpU8cGDBjgez8tLc1mzpxpgwYNsi5duliXLl1s0KBB9s4771haWlrA62Dnzp1+30/dtm2bHThwIFtcenq675lYZmZ79+61JUuW+Jbvnj17bOzYsTZy5Ej78ccfT9tvpUqV7JdffjlljNfrtSVLlthLL71kc+fO9bsF5bZt22zPnj2+18uWLbOuXbtao0aN7NZbb/Xduvvpp5+2rVu3njafLHPnzrVHHnnEli9fbmZmixcvttatW1tKSoq9+OKLfrGHDx+2qVOnWq9evey6666zNm3aWP/+/e2TTz7xxezatcsaNWpkHo/HkpKSrF69elavXj3f9t6oUSPbtWtXQLlljRczs9TUVPvXv/5lcXFxVqpUKXvkkUfs2LFjvtisMfPzzz9bUlKSRUREWJUqVWzz5s1Wt25dK1iwoBUoUMBKlCjhWw8ffPCB409kZKRNnDjR99rM7K677vJtJ4cPH7ZOnTr5xmhERIQ1bdrU937jxo1t1qxZZma2fPlyi42Ntdq1a9vNN99sl112mRUoUMBWrFhhHo/HEhMT7fbbb7eVK1eeclm89957FhkZacWLF7eEhARbtGiRFSlSxFq0aGEpKSkWGRlp06dP962DevXqWUREhEVFRVlERITVrVvXSpcubZGRkXbfffdla/+rr76yCRMm2NChQ23o0KE2YcIE++qrrwJaT2bHx+zJ3+XOzMx0jM3MzLTffvvN99rr9drmzZstIyPDzI6P9bfffttee+01v20+J02bNg1om9+8ebN9/PHHfk9oP3r0qN8427Rpkz344IPWrVs3e+ihh/xuNf3uu+/aoUOHTttPlrVr19rUqVPt119/NTOz77//3u666y7r27evLViwIFv84sWLbeTIkXbnnXfaf/7zH3v66af99hmMrfNzbJnlfny5ObbMAh9fbo8tM7ONGzfahRdeaHFxcda4cWPr3Lmzde7c2Ro3bmxxcXFWpUoV27hxY0C5ZY2t7du325VXXmkREREWGRlpt912m9/xRtbYMju+nRQuXNg8Ho8VLVrUVq1aZZUqVbKqVata5cqVLT4+3lavXm1mZs8995zjT2RkpA0bNsz3unXr1vbPP/+Ymdlff/1l9evXN4/HYyVLlrSIiAirXr267d6928zM6tWrZ3PnzjWz49fmREREWPv27e2BBx6wG264waKjo33vezwei4yMtBYtWtjbb799ymOwKVOmWFRUlNWtW9cSExPtjTfesEKFClmfPn2sb9++Fh8fbxMmTLCNGzdaUlKSlSpVyipUqGAej8fatm1r9evXt8jISPvXv/7l246zhGNsBTpmglm3wTgviqWcfkFk/Tz77LMWERFhHTt2tLZt29qePXts48aN1rZtW6tUqZJvB5e1kJ944gmrVKmSLV682K+fqKgo++GHH7L17/F4fL8sb731Vrv66qt9A+XAgQPWokULu+WWWyw+Pt63A7zsssvspZde8mtn+vTpVrNmTV+bn3zyiQ0cONBKlChh0dHR1r59e5s7d262nXXlypXtvffeM7PjO4zIyEh78803fe/Pnj3bqlSpYmZm8fHxvh2d2fEdfHR0tO3cudPMzD7++GMrW7asmYVuJ5aVV0REhOs7MTMLy44sHDuxrHUQyI6sU6dO1qBBA/v555+z9ffzzz/b1VdfbTfd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v9a2bdvUsGFDffHFF7riiiskKeC4YNoMV6zb/Ycj16SkJEVGRionHo9HLVu2DGvsyJEjFR8fry+//FK33367hg4dqksvvVT333+/Dh8+rOuvv16jR4/Osa0c+zDj1uEAAAAAcDKuWQIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAQL725ZdfKjIyUm3btnU7FQDAOYa74QEA8rU+ffooISFBU6dO1YYNG1S2bFm3UwIAnCM4swQAyLcOHjyomTNn6q677lLbtm316quv+r3/4YcfqmrVqoqLi1PTpk312muvyePx6J9//vHFLF++XNdcc43i4+NVoUIFDRgw4JTPLwMAnD8olgAA+dY777yj6tWrq1q1aurWrZteeeUVZX1hYsuWLbrpppvUsWNHrVu3Tn379tVDDz3k9/lff/1V1113nTp16qT169dr5syZWr58ufr37+/G7AAA8hi+hgcAyLcaNmyozp07a+DAgTp27JjKlCmjWbNmqUmTJho6dKjmzZun7777zhf/8MMPa8yYMfr7779VpEgR9enTR5GRkXrxxRd9McuXL1fjxo116NAhxcXFuTFbAIA8gjNLAIB8acOGDfr66691yy23SJKioqJ08803a+rUqb73r7zySr/P1KtXz+/1unXr9OqrryohIcH3k5KSIq/Xqy1btpydGQEA5FlRbicAAEBuTJ06VceOHfO7oYOZKTY2VhMnTgyojYMHD6pv374aMGBAtvcqVqwYslwBAPkTxRIAIN85duyYXn/9dT3zzDNq1aqV33sdO3bUW2+9pWrVqun//u///N775ptv/F5ffvnl+vHHH1WlSpWw5wwAyH+4ZgkAkO/MmTNHN998s3bv3q3ChQv7vffAAw9oyZIleuedd1StWjUNHjxYvXv31tq1a3XPPffojz/+0D///KPChQtr/fr1uuqqq/Tvf/9bffr0UcGCBfXjjz9q0aJFAZ+dAgCcu7hmCQCQ70ydOlUtWrTIVihJUqdOnbRq1SodOHBA7777rmbPnq3atWtr8uTJvrvhxcbGSpJq166tzz77TL/88ouuueYaXXbZZXr00Ud5VhMAQBJnlgAA55ExY8ZoypQp2rZtm9upAADyAa5ZAgCcsyZNmqQrr7xSxYsX1xdffKGnnnqKZygBAAJGsQQAOGdt3LhRjz32mPbt26eKFSvqnnvu0bBhw9xOCwCQT/A1PAAAAABwwA0eAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcUCwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAwf8H8y4mmjLHDYIAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Guessed range for Mean: (30, 40)\n", + "Guessed range for Standard Deviation: (10, 15)\n", + "Exact Mean: 36.56\n", + "Exact Standard Deviation: 12.81649962597677\n", + "Is the exact mean within the guessed range? True\n", + "Is the exact standard deviation within the guessed range? True\n" + ] + } + ], + "source": [ + "# Calculate the frequency distribution\n", + "age_counts = df_ages1['observation'].value_counts().sort_index()\n", + "\n", + "# Plot the frequency distribution\n", + "plt.figure(figsize=(10, 6))\n", + "age_counts.plot(kind='bar')\n", + "plt.title('Frequency Distribution of Ages in the First Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "plt.grid(True)\n", + "plt.show()\n", + "\n", + "# Provide a guess for the range of mean and standard deviation by looking at the plot\n", + "mean_guess = (30, 40)\n", + "std_dev_guess = (10, 15)\n", + "\n", + "print(\"Guessed range for Mean:\", mean_guess)\n", + "print(\"Guessed range for Standard Deviation:\", std_dev_guess)\n", + "\n", + "# Calculate the exact mean and standard deviation\n", + "exact_mean = df_ages1['observation'].mean()\n", + "exact_std_dev = df_ages1['observation'].std()\n", + "\n", + "print(\"Exact Mean:\", exact_mean)\n", + "print(\"Exact Standard Deviation:\", exact_std_dev)\n", + "\n", + "# Compare guesses with actual values\n", + "mean_in_range = mean_guess[0] <= exact_mean <= mean_guess[1]\n", + "std_dev_in_range = std_dev_guess[0] <= exact_std_dev <= std_dev_guess[1]\n", + "\n", + "print(\"Is the exact mean within the guessed range?\", mean_in_range)\n", + "print(\"Is the exact standard deviation within the guessed range?\", std_dev_in_range)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\nGuessed range for Mean: (30, 40)\\nGuessed range for Standard Deviation: (10, 15)\\nExact Mean: 36.56\\nExact Standard Deviation: 12.81649962597677\\nIs the exact mean within the guessed range? True\\nIs the exact standard deviation within the guessed range? True\\n'" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "Guessed range for Mean: (30, 40)\n", + "Guessed range for Standard Deviation: (10, 15)\n", + "Exact Mean: 36.56\n", + "Exact Standard Deviation: 12.81649962597677\n", + "Is the exact mean within the guessed range? True\n", + "Is the exact standard deviation within the guessed range? True\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3.- Now read the file `ages_population2.csv` . Calculate the frequency distribution and plot it." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1IAAAI0CAYAAAAX/Bj0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAABlZklEQVR4nO3dd3QUZcPG4XvTNrQQehIJRUBAEEEQRPClBSIgRVGqUgRBFBWwvKIioaiISlFERKUpqKAUlQ+QpkgR6VioUlRCFUmAQAjJ8/3Byb4sSUgm7LC7+LvO4ejOPDt772R2N3dmZ8ZhjDECAAAAAORYgLcDAAAAAIC/oUgBAAAAgEUUKQAAAACwiCIFAAAAABZRpAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGARRQoAAAAALKJIAfBrcXFxcjgc1+SxGjZsqIYNG7puf/fdd3I4HPriiy+uyeN3795dZcqUuSaPlVunT59Wr169FBERIYfDof79+3s7ksddvh3YyeFwqF+/ftfksa5n1/J9IitlypRR9+7dc33fe+65J9txU6dOlcPh0IYNG3L1OHbp3r278ufP7+0Ybq7m5wGko0gB2Uj/YMrs3/PPP+/teNeVy9d1aGiooqKiFBsbq7ffflunTp3yyOPEx8crLi5OW7Zs8cjyPMmXs+XEq6++qqlTp6pv3776+OOP9dBDD2V7n9TUVEVFRcnhcGjhwoXXIKVvWbNmjeLi4nTy5EmvZTh//rzGjRunGjVqKCwsTOHh4apSpYp69+6tHTt2eC3Xtda9e3c5HA5Vq1ZNxpgM8ym2AC4V5O0AgL8YNmyYypYt6zatatWqXkpzfUtf1ykpKTp8+LC+++479e/fX6NHj9ZXX32latWquca+9NJLlgttfHy8hg4dqjJlyqh69eo5vt+3335r6XFy40rZPvjgA6Wlpdme4WosX75cd9xxh4YMGWLpPocOHVKZMmU0Y8YMNW/e3MaEV8/T28GaNWs0dOhQde/eXeHh4R5ddk61a9dOCxcuVKdOnfTII48oJSVFO3bs0DfffKM777xTlSpV8koub/n55581Z84ctWvXzmPL3LlzpwIC+Ps1cD2hSAE51Lx5c9WqVStHY8+dO6eQkBA+NHPp8nU9aNAgLV++XPfcc49at26t7du3K0+ePJKkoKAgBQXZ+1aWlJSkvHnzKiQkxNbHyU5wcLBXHz8njh49qptvvtnSfT755BPddttt6tatm1544QWdOXNG+fLlsynh1fP2duBp69ev1zfffKNXXnlFL7zwgtu88ePHe3VPmTfkyZNH0dHRGjZsmO677z6PfSXQ6XR6ZDn+JP2zELhe8VsecJXSj5P57LPP9NJLL+mGG25Q3rx5lZiYKElat26d7r77bhUsWFB58+ZVgwYNtHr16gzLWbVqlW6//XaFhoaqXLlyev/99zN8r3///v1yOByaOnVqhvs7HA7FxcW5TTt48KAefvhhlShRQk6nU1WqVNHkyZMzzT9r1iy98sorKlmypEJDQ9WkSRPt2bMnw+OsW7dOLVq0UKFChZQvXz5Vq1ZN48aNkyRNmTJFDodDmzdvznC/V199VYGBgTp48GC26zQzjRs31uDBg3XgwAF98sknrumZHfuwZMkS1a9fX+Hh4cqfP78qVqzo+gXxu+++0+233y5J6tGjh+trhOnrtGHDhqpatao2btyo//znP8qbN6/rvlkdG5OamqoXXnhBERERypcvn1q3bq0///zTbUxW38e/dJnZZcvsGKkzZ87o6aefVnR0tJxOpypWrKg333wzw9eS0r+SNG/ePFWtWtW1PSxatCjzFX6Zo0ePqmfPnipRooRCQ0N16623atq0aa756dvRvn37tGDBAlf2/fv3X3G5Z8+e1dy5c9WxY0e1b99eZ8+e1fz58zMdO3v2bN18880KDQ1V1apVNXfu3EzXSVpamsaOHasqVaooNDRUJUqUUJ8+ffTPP/+4jduwYYNiY2NVtGhR5cmTR2XLltXDDz+c7brI6li5nL6GLhUXF6dnn31WklS2bNks11tOfm45eb1n5vfff5ck1atXL8O8wMBAFSlSJFePc+7cOcXFxemmm25SaGioIiMjdd9997keT7Jn+83svdSKgIAAvfTSS9q2bZvmzp2b7fjk5GQNGTJE5cuXl9PpVHR0tJ577jklJye7jcvsPWDbtm1q0KCB8uTJo5IlS2rEiBGu99HMXjurVq1S7dq1FRoaqhtvvFHTp0/PNFNSUpL69OmjIkWKKCwsTF27ds2w/UvShAkTVKVKFTmdTkVFRenxxx/PUJxz8t4lZf9ZKF3cdtq2bav8+fOrWLFieuaZZ5Samuq23JxuExcuXNDw4cNVrlw5OZ1OlSlTRi+88EKG9W6M0YgRI1SyZEnlzZtXjRo10q+//prpegOsYo8UkEMJCQk6fvy427SiRYu6/n/48OEKCQnRM888o+TkZIWEhGj58uVq3ry5atasqSFDhiggIEBTpkxR48aN9cMPP6h27dqSLn6NpFmzZipWrJji4uJ04cIFDRkyRCVKlMh13iNHjuiOO+5w/QJSrFgxLVy4UD179lRiYmKGkwCMHDlSAQEBeuaZZ5SQkKBRo0apS5cuWrdunWvMkiVLdM899ygyMlJPPfWUIiIitH37dn3zzTd66qmndP/99+vxxx/XjBkzVKNGDbflz5gxQw0bNtQNN9yQ6+f00EMP6YUXXtC3336rRx55JNMxv/76q+655x5Vq1ZNw4YNk9Pp1J49e1zltXLlyho2bJhefvll9e7dW3fddZck6c4773Qt4++//1bz5s3VsWNHPfjgg9n+HF555RU5HA7997//1dGjRzV27FjFxMRoy5Ytrj1nOZGTbJcyxqh169ZasWKFevbsqerVq2vx4sV69tlndfDgQY0ZM8Zt/KpVqzRnzhw99thjKlCggN5++221a9dOf/zxR4Zfli919uxZNWzYUHv27FG/fv1UtmxZzZ49W927d9fJkyf11FNPqXLlyvr44481YMAAlSxZUk8//bQkqVixYld8zl999ZVOnz6tjh07KiIiQg0bNtSMGTPUuXNnt3ELFixQhw4ddMstt+i1117TP//8o549e2a6PfXp00dTp05Vjx499OSTT2rfvn0aP368Nm/erNWrVys4OFhHjx51veaef/55hYeHa//+/ZozZ84V815JTl5Dl7vvvvu0a9cuffrppxozZozrPeXS9ZaTn5vV1/ulSpcuLenia7RevXpX3MOb08dJTU3VPffco2XLlqljx4566qmndOrUKS1ZskS//PKLypUrZ8v266n30s6dO2v48OEaNmyY7r333iz3SqWlpal169ZatWqVevfurcqVK+vnn3/WmDFjtGvXLs2bNy/Lxzh48KAaNWokh8OhQYMGKV++fPrwww+z3HO1Z88e3X///erZs6e6deumyZMnq3v37qpZs6aqVKniNrZfv34KDw9XXFycdu7cqffee08HDhxwlR3pYokfOnSoYmJi1LdvX9e49evXu14nuZHZZ6F0cZuIjY1VnTp19Oabb2rp0qV66623VK5cOfXt21eStfe0Xr16adq0abr/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wMBAtWvXTl9++aV++eWXLB/bittuu01ly5bV2LFjM3yoXv4X0WrVqqlatWr68MMP9eWXX6pjx45Xfa2n5cuXa/jw4SpbtmyWxxBI0okTJzJMS98jmL73L/0aRZ66Ps706dPdjtv64osvdOjQIbcLy5YrV04//vij25mivvnmmwynSbeSrUWLFkpNTdX48ePdpo8ZM0YOh8NjF7Zt0aKFDh8+rM8//9w17cKFC3rnnXeUP3/+DEUoJ9L3GD333HO6//773f61b99eDRo0cI2JiopS1apVNX36dLfX0vfff6+ff/7Zbbnt27dXamqqhg8fnuExL1y44Fqv//zzT4bt9vLt5Fq52u3xal/vu3fvdnvvSXfy5EmtXbtWhQoVUrFixSw9Trt27XT8+PEM26b0v/cLT2+/Vt5LrXjwwQdVvnx5DR06NMO89u3b6+DBg/rggw8yzDt79qzOnDmT5XJjY2O1du1abdmyxTXtxIkTWe5NtWLSpElux/699957unDhgmudxsTEKCQkRG+//bbb6+Cjjz5SQkKCWrZs6ZqW0/cuT8jpNpFeCMeOHes2Ln3PYHr+mJgYBQcH65133nF7npffD8gt9kgBNgkICNCHH36o5s2bq0qVKurRo4duuOEGHTx4UCtWrFBYWJi+/vprSdLQoUO1aNEi3XXXXXrsscdcv6RWqVJF27Ztc1tur169NHLkSPXq1Uu1atXSypUrtWvXrgyPP3LkSK1YsUJ16tTRI488optvvlknTpzQpk2btHTp0kwLR3bP57333lOrVq1UvXp19ejRQ5GRkdqxY4d+/fXXDL+odO3aVc8884wkWf5a38KFC7Vjxw5duHBBR44c0fLly7VkyRKVLl1aX331lUJDQ7O877Bhw7Ry5Uq1bNlSpUuX1tGjRzVhwgSVLFlS9evXl3TxF4Pw8HBNnDhRBQoUUL58+VSnTp0sv9ufncKFC6t+/frq0aOHjhw5orFjx6p8+fJup2jv1auXvvjiC919991q3769fv/9d33yySduB89bzdaqVSs1atRIL774ovbv369bb71V3377rebPn6/+/ftnWHZu9e7dW++//766d++ujRs3qkyZMvriiy+0evVqjR07NlfHvs2YMUPVq1fP8qtPrVu31hNPPKFNmzbptttu06uvvqo2bdqoXr166tGjh/755x+NHz9eVatWdStX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0Lx587Ic++ijj8rhcGjs2LFu00+cOKEuXbooLCxM4eHh6tmzp06fPm1vcAAAAAD/al4tUmfOnNGtt96qd99994rj5s6dqx9//FFRUVEZ5nXp0kW//vqrlixZom+++UYrV65U79697YoMAAAAAAry5oM3b95czZs3v+KYgwcP6oknntDixYvVsmVLt3nbt2/XokWLtH79etWqVUuS9M4776hFixZ68803My1eAAAAAHC1vFqkspOWlqaHHnpIzz77rKpUqZJh/tq1axUeHu4qUZIUExOjgIAArVu3Tvfee2+my01OTlZycrLrdmJioiQpJSVFKSkpHsmevhxPLc9OZLUHWe3hT1kl/8pLVnuQ1R5ktQdZ7UFWe9iVNafLcxhjjEcfOZccDofmzp2rtm3buqa99tprWrFihRYvXiyHw6EyZcqof//+6t+/vyTp1Vdf1bRp07Rz5063ZRUvXlxDhw5V3759M32suLg4DR06NMP0mTNnKm/evB57TgAAAAD8S1JSkjp37qyEhASFhYVlOc5n90ht3LhR48aN06ZNm+RwODy67EGDBmngwIGu24mJiYqOjlazZs2uuLKsSElJ0ZIlS9S0aVMFBwd7ZJl2Ias9yGoPf8oq+VdestqDrPYgqz3Iag+y2sOurOnfVsuOzxapH374QUePHlWpUqVc01JTU/X0009r7Nix2r9/vyIiInT06FG3+124cEEnTpxQRERElst2Op1yOp0ZpgcHB3t8g7FjmXYhqz3Iag9/yir5V16y2oOs9iCrPchqD7Law9NZc7osny1SDz30kGJiYtymxcbG6qGHHlKPHj0kSXXr1tXJkye1ceNG1axZU5K0fPlypaWlqU6dOtc8MwDg36PM8wtyNM4ZaDSqtlQ1brGSU6/8DYv9I1tecT4AwHd4tUidPn1ae/bscd3et2+ftmzZosKFC6tUqVIqUqSI2/jg4GBFRESoYsWKkqTKlSvr7rvv1iOPPKKJEycqJSVF/fr1U8eOHTljHwAAAADbePU6Uhs2bFCNGjVUo0YNSdLAgQNVo0YNvfzyyzlexowZM1SpUiU1adJELVq0UP369TVp0iS7IgMAAACAd/dINWzYUFZOGrh///4M0woXLqyZM2d6MBUAAAAAXJlX90gBAAAAgD+iSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwiCIFAAAAABZRpAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGARRQoAAAAALKJIAQAAAIBFFCkAAAAAsIgiBQAAAAAWUaQAAAAAwCKKFAAAAABYRJECAAAAAIsoUgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwiCIFAAAAABZRpAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGBRkLcDAACQrszzC3I0zhloNKq2VDVusZJTHVccu39kS09EAwDADXukAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwiCIFAAAAABZRpAAAAADAIooUAAAAAFhEkQIAAAAAi7xapFauXKlWrVopKipKDodD8+bNc81LSUnRf//7X91yyy3Kly+foqKi1LVrV8XHx7st48SJE+rSpYvCwsIUHh6unj176vTp09f4mQAAAAD4N/FqkTpz5oxuvfVWvfvuuxnmJSUladOmTRo8eLA2bdqkOXPmaOfOnWrdurXbuC5duujXX3/VkiVL9M0332jlypXq3bv3tXoKAAAAAP6Fgrz54M2bN1fz5s0znVewYEEtWbLEbdr48eNVu3Zt/fHHHypVqpS2b9+uRYsWaf369apVq5Yk6Z133lGLFi305ptvKioqyvbnAAAAAODfx6tFyqqEhAQ5HA6Fh4dLktauXavw8HBXiZKkmJgYBQQEaN26dbr33nszXU5ycrKSk5NdtxMTEyVd/DphSkqKR7KmL8dTy7MTWe1BVnv4U1bJv/L6QlZnoMnZuADj9t8rsev5+FPWnPKFbSCnyGoPstqDrPawK2tOl+cwxuTsk8BmDodDc+fOVdu2bTOdf+7cOdWrV0+VKlXSjBkzJEmvvvqqpk2bpp07d7qNLV68uIYOHaq+fftmuqy4uDgNHTo0w/SZM2cqb968V/dEAAAAAPitpKQkde7cWQkJCQoLC8tynF/skUpJSVH79u1ljNF777131csbNGiQBg4c6LqdmJio6OhoNWvW7Iory4qUlBQtWbJETZs2VXBwsEeWaRey2oOs9vCnrJJv5K0atzhH45wBRsNrpWnwhgAlpzmuOPaXuFhPRMuArPZkzSlf2F5ziqz2IKs9yGoPu7Kmf1stOz5fpNJL1IEDB7R8+XK3ohMREaGjR4+6jb9w4YJOnDihiIiILJfpdDrldDozTA8ODvb4BmPHMu1CVnuQ1R7+lFXybt7k1Cv/8p5hfJoj2/vY9VzI6hvbtD+9vshqD7Lag6z28HTWnC7Lp68jlV6idu/eraVLl6pIkSJu8+vWrauTJ09q48aNrmnLly9XWlqa6tSpc63jAgAAAPiX8OoeqdOnT2vPnj2u2/v27dOWLVtUuHBhRUZG6v7779emTZv0zTffKDU1VYcPH5YkFS5cWCEhIapcubLuvvtuPfLII5o4caJSUlLUr18/dezYkTP2AQAAALCNV4vUhg0b1KhRI9ft9OOWunXrpri4OH311VeSpOrVq7vdb8WKFWrYsKEkacaMGerXr5+aNGmigIAAtWvXTm+//fY1yQ8AAADg38mrRaphw4a60kkDc3JCwcKFC2vmzJmejAUAAAAAV+TTx0gBAAAAgC+iSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsCvJ2AAAAYK8yzy/I0ThnoNGo2lLVuMVKTnVkO37/yJZXGw0A/BZ7pAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGARRQoAAAAALKJIAQAAAIBFFCkAAAAAsIgiBQAAAAAWUaQAAAAAwCKKFAAAAABYRJECAAAAAIsoUgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwiCIFAAAAABZRpAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGARRQoAAAAALKJIAQAAAIBFFCkAAAAAsIgiBQAAAAAWUaQAAAAAwCKKFAAAAABYRJECAAAAAIsoUgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWOTVIrVy5Uq1atVKUVFRcjgcmjdvntt8Y4xefvllRUZGKk+ePIqJidHu3bvdxpw4cUJdunRRWFiYwsPD1bNnT50+ffoaPgsAAAAA/zZeLVJnzpzRrbfeqnfffTfT+aNGjdLbb7+tiRMnat26dcqXL59iY2N17tw515guXbro119/1ZIlS/TNN99o5cqV6t2797V6CgAAAAD+hYK8+eDNmzdX8+bNM51njNHYsWP10ksvqU2bNpKk6dOnq0SJEpo3b546duyo7du3a9GiRVq/fr1q1aolSXrnnXfUokULvfnmm4qKirpmzwUAAADAv4dXi9SV7Nu3T4cPH1ZMTIxrWsGCBVWnTh2tXbtWHTt21Nq1axUeHu4qUZIUExOjgIAArVu3Tvfee2+my05OTlZycrLrdmJioiQpJSVFKSkpHsmfvhxPLc9OZLUHWe3hT1kl38jrDDQ5Gxdg3P57JXY9H7L6T1bJu9u1L7y2coqs9iCrPcia8+U5jDE5e7e0mcPh0Ny5c9W2bVtJ0po1a1SvXj3Fx8crMjLSNa59+/ZyOBz6/PPP9eqrr2ratGnauXOn27KKFy+uoUOHqm/fvpk+VlxcnIYOHZph+syZM5U3b17PPSkAAAAAfiUpKUmdO3dWQkKCwsLCshzns3uk7DRo0CANHDjQdTsxMVHR0dFq1qzZFVeWFSkpKVqyZImaNm2q4OBgjyzTLmS1B1nt4U9ZJd/IWzVucY7GOQOMhtdK0+ANAUpOc1xx7C9xsZ6IlgFZ/SerZF/enPCF11ZOkdUeZLUHWf/3bbXs+GyRioiIkCQdOXLEbY/UkSNHVL16ddeYo0ePut3vwoULOnHihOv+mXE6nXI6nRmmBwcHe3yDsWOZdiGrPchqD3/KKnk3b3Jq9r8Qu41Pc2R7H7ueC1n9J6tkX14r/Om9gKz2IKs9/s1Zc7osn72OVNmyZRUREaFly5a5piUmJmrdunWqW7euJKlu3bo6efKkNm7c6BqzfPlypaWlqU6dOtc8MwAAAIB/B6/ukTp9+rT27Nnjur1v3z5t2bJFhQsXVqlSpdS/f3+NGDFCFSpUUNmyZTV48GBFRUW5jqOqXLmy7r77bj3yyCOaOHGiUlJS1K9fP3Xs2JEz9gEAAACwjVeL1IYNG9SoUSPX7fTjlrp166apU6fqueee05kzZ9S7d2+dPHlS9evX16JFixQaGuq6z4wZM9SvXz81adJEAQEBateund5+++1r/lwAAAAA/Ht4tUg1bNhQVzppoMPh0LBhwzRs2LAsxxQuXFgzZ860Ix4AAAAAZMpnTzYBAL6szPMLcjTOGWg0qvbFs6Zld/D+/pEtPRENAABcAz57sgkAAAAA8FUUKQAAAACwiCIFAAAAABZRpAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGARRQoAAAAALKJIAQAAAIBFFCkAAAAAsIgiBQAAAAAWUaQAAAAAwCKKFAAAAABYRJECAAAAAIsoUgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsCvJ2AAAAgHRlnl+Qo3HOQKNRtaWqcYuVnOrIdvz+kS2vNhoAuGGPFAAAAABYRJECAAAAAIsoUgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwiCIFAAAAABZRpAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGARRQoAAAAALMpVkdq7d6+ncwAAAACA38hVkSpfvrwaNWqkTz75ROfOnfN0JgAAAADwabkqUps2bVK1atU0cOBARUREqE+fPvrpp588nQ0AAAAAfFKuilT16tU1btw4xcfHa/LkyTp06JDq16+vqlWravTo0Tp27JincwIAAACAz7iqk00EBQXpvvvu0+zZs/X6669rz549euaZZxQdHa2uXbvq0KFDnsoJAAAAAD7jqorUhg0b9NhjjykyMlKjR4/WM888o99//11LlixRfHy82rRp46mcAAAAAOAzgnJzp9GjR2vKlCnauXOnWrRooenTp6tFixYKCLjYy8qWLaupU6eqTJkynswKAAAAAD4hV3uk3nvvPXXu3FkHDhzQvHnzdM8997hKVLrixYvro48+uqpwqampGjx4sMqWLas8efKoXLlyGj58uIwxrjHGGL388suKjIxUnjx5FBMTo927d1/V4wIAAADAleRqj1ROikpISIi6deuWm8W7vP7663rvvfc0bdo0ValSRRs2bFCPHj1UsGBBPfnkk5KkUaNG6e2339a0adNUtmxZDR48WLGxsfrtt98UGhp6VY8PAAAAAJnJVZGaMmWK8ufPrwceeMBt+uzZs5WUlHTVBSrdmjVr1KZNG7Vs2VKSVKZMGX366aeuU60bYzR27Fi99NJLruOxpk+frhIlSmjevHnq2LGjR3IAAAAAwKVyVaRee+01vf/++xmmFy9eXL179/ZYkbrzzjs1adIk7dq1SzfddJO2bt2qVatWafTo0ZKkffv26fDhw4qJiXHdp2DBgqpTp47Wrl2bZZFKTk5WcnKy63ZiYqIkKSUlRSkpKR7Jnr4cTy3PTmS1B1nt4StZnYEm+0GSnAHG7b9XYtdzIitZ7cgq2ZPXn7LmlK+8b+UEWe1BVnvYlTWny3OYSw84yqHQ0FDt2LEjw8kk9u/fr8qVK+vs2bNWF5mptLQ0vfDCCxo1apQCAwOVmpqqV155RYMGDZJ0cY9VvXr1FB8fr8jISNf92rdvL4fDoc8//zzT5cbFxWno0KEZps+cOVN58+b1SHYAAAAA/icpKUmdO3dWQkKCwsLCshyXqz1SxYsX17Zt2zIUqa1bt6pIkSK5WWSmZs2apRkzZmjmzJmqUqWKtmzZov79+ysqKuqq9noNGjRIAwcOdN1OTExUdHS0mjVrdsWVZUVKSoqWLFmipk2bKjg42CPLtAtZ7UFWe/hK1qpxi3M0zhlgNLxWmgZvCFBymuOKY3+Ji/VEtAzISlY7skr25PWnrDnlK+9bOUFWe5DVHnZlTf+2WnZyVaQ6deqkJ598UgUKFNB//vMfSdL333+vp556yqPHJT377LN6/vnnXcu85ZZbdODAAb322mvq1q2bIiIiJElHjhxx2yN15MgRVa9ePcvlOp1OOZ3ODNODg4M9vsHYsUy7kNUeZLWHt7Mmp2b/i5vb+DRHtvex6/mQlax2ZJXsyetPWa3y9vuWFWS1B1nt4emsOV1Wrk5/Pnz4cNWpU0dNmjRRnjx5lCdPHjVr1kyNGzfWq6++mptFZiopKSnDadUDAwOVlpYm6eL1qiIiIrRs2TLX/MTERK1bt05169b1WA4AAAAAuFSu9kiFhITo888/1/Dhw7V161blyZNHt9xyi0qXLu3RcK1atdIrr7yiUqVKqUqVKtq8ebNGjx6thx9+WJLkcDjUv39/jRgxQhUqVHCd/jwqKkpt27b1aBYAAAAASJerIpXupptu0k033eSpLBm88847Gjx4sB577DEdPXpUUVFR6tOnj15++WXXmOeee05nzpxR7969dfLkSdWvX1+LFi3iGlIAAAAAbJOrIpWamqqpU6dq2bJlOnr0qOurdumWL1/ukXAFChTQ2LFjNXbs2CzHOBwODRs2TMOGDfPIYwLwnjLPL8h2jDPQaFTtiwek5+S4iP0jW3oiGgAAgJtcFamnnnpKU6dOVcuWLVW1alU5HNYODAUAAAAAf5arIvXZZ59p1qxZatGihafzAAAAAIDPy9VZ+0JCQlS+fHlPZwEAAAAAv5CrIvX0009r3LhxMsZ4Og8AAAAA+LxcfbVv1apVWrFihRYuXKgqVapkuGjVnDlzPBIOAAAAAHxRropUeHi47r33Xk9nAQAAAAC/kKsiNWXKFE/nAAAAAAC/katjpCTpwoULWrp0qd5//32dOnVKkhQfH6/Tp097LBwAAAAA+KJc7ZE6cOCA7r77bv3xxx9KTk5W06ZNVaBAAb3++utKTk7WxIkTPZ0TAAAAAHxGrvZIPfXUU6pVq5b++ecf5cmTxzX93nvv1bJlyzwWDgAAAAB8Ua72SP3www9as2aNQkJC3KaXKVNGBw8e9EgwAAAAAPBVudojlZaWptTU1AzT//rrLxUoUOCqQwEAAACAL8tVkWrWrJnGjh3ruu1wOHT69GkNGTJELVq08FQ2AAAAAPBJufpq31tvvaXY2FjdfPPNOnfunDp37qzdu3eraNGi+vTTTz2dEQAAAAB8Sq6KVMmSJbV161Z99tln2rZtm06fPq2ePXuqS5cubiefAAAAAIDrUa6KlCQFBQXpwQcf9GQWAAAAAPALuSpS06dPv+L8rl275ioMAAAAAPiDXBWpp556yu12SkqKkpKSFBISorx581KkAAAAAFzXcnXWvn/++cft3+nTp7Vz507Vr1+fk00AAAAAuO7lqkhlpkKFCho5cmSGvVUAAAAAcL3xWJGSLp6AIj4+3pOLBAAAAACfk6tjpL766iu328YYHTp0SOPHj1e9evU8EgwAAAAAfFWuilTbtm3dbjscDhUrVkyNGzfWW2+95YlcAAAAAOCzclWk0tLSPJ0DAAAAAPyGR4+RAgAAAIB/g1ztkRo4cGCOx44ePTo3DwEAAAAAPitXRWrz5s3avHmzUlJSVLFiRUnSrl27FBgYqNtuu801zuFweCYlAAAAAPiQXBWpVq1aqUCBApo2bZoKFSok6eJFenv06KG77rpLTz/9tEdDAgAAAIAvydUxUm+99ZZee+01V4mSpEKFCmnEiBGctQ8AAADAdS9XRSoxMVHHjh3LMP3YsWM6derUVYcCAAAAAF+WqyJ17733qkePHpozZ47++usv/fXXX/ryyy/Vs2dP3XfffZ7OCAAAAAA+JVfHSE2cOFHPPPOMOnfurJSUlIsLCgpSz5499cYbb3g0IAAAAAD4mlwVqbx582rChAl644039Pvvv0uSypUrp3z58nk0HAAAAAD4oqu6IO+hQ4d06NAhVahQQfny5ZMxxlO5AAAAAMBn5apI/f3332rSpIluuukmtWjRQocOHZIk9ezZk1OfAwAAALju5apIDRgwQMHBwfrjjz+UN29e1/QOHTpo0aJFHgsHAAAAAL4oV8dIffvtt1q8eLFKlizpNr1ChQo6cOCAR4IBAAAAgK/K1R6pM2fOuO2JSnfixAk5nc6rDgUAAAAAvixXRequu+7S9OnTXbcdDofS0tI0atQoNWrUyGPhAAAAAMAX5eqrfaNGjVKTJk20YcMGnT9/Xs8995x+/fVXnThxQqtXr/Z0RgAAAADwKbnaI1W1alXt2rVL9evXV5s2bXTmzBndd9992rx5s8qVK+fpjAAAAADgUyzvkUpJSdHdd9+tiRMn6sUXX7QjEwAAAAD4NMt7pIKDg7Vt2zY7sgAAAACAX8jVV/sefPBBffTRR57OAgAAAAB+IVcnm7hw4YImT56spUuXqmbNmsqXL5/b/NGjR3skHAAAAAD4IktFau/evSpTpox++eUX3XbbbZKkXbt2uY1xOByeSwcAAAAAPshSkapQoYIOHTqkFStWSJI6dOigt99+WyVKlLAlHAAAAAD4IkvHSBlj3G4vXLhQZ86c8WggAAAAAPB1uTrZRLrLixUAAAAA/BtYKlIOhyPDMVAcEwUAAADg38bSMVLGGHXv3l1Op1OSdO7cOT366KMZzto3Z84czyUEAAAAAB9jqUh169bN7faDDz7o0TAAAAAA4A8sFakpU6bYlSNLBw8e1H//+18tXLhQSUlJKl++vKZMmaJatWpJuriXbMiQIfrggw908uRJ1atXT++9954qVKhwzbMCAAAA+HfI1QV5r5V//vlH9erVU6NGjbRw4UIVK1ZMu3fvVqFChVxjRo0apbffflvTpk1T2bJlNXjwYMXGxuq3335TaGioF9MDAIDrWZnnF+RonDPQaFRtqWrcYiWnZn9s+f6RLa82GoBrwKeL1Ouvv67o6Gi3PWFly5Z1/b8xRmPHjtVLL72kNm3aSJKmT5+uEiVKaN68eerYseM1zwwAAADg+ufTReqrr75SbGysHnjgAX3//fe64YYb9Nhjj+mRRx6RJO3bt0+HDx9WTEyM6z4FCxZUnTp1tHbt2iyLVHJyspKTk123ExMTJUkpKSlKSUnxSPb05XhqeXYiqz3Iap0zMPtLKjgDjNt/s2PXc8pJVslaXrKS1Z+ySvbkJat334t95fMgJ8hqD7LmfHkO48MXg0r/at7AgQP1wAMPaP369Xrqqac0ceJEdevWTWvWrFG9evUUHx+vyMhI1/3at28vh8Ohzz//PNPlxsXFaejQoRmmz5w5U3nz5rXnyQAAAADweUlJSercubMSEhIUFhaW5TifLlIhISGqVauW1qxZ45r25JNPav369Vq7dm2ui1Rme6Sio6N1/PjxK64sK1JSUrRkyRI1bdpUwcHBHlmmXchqD7JaVzVucbZjnAFGw2ulafCGACWnZX+swS9xsZ6IlkFOskrW8pKVrP6UVbInL1nt2w5ywlc+D3KCrPYg68VuULRo0WyLlE9/tS8yMlI333yz27TKlSvryy+/lCRFRERIko4cOeJWpI4cOaLq1atnuVyn0+m6FtalgoODPb7B2LFMu5DVHmTNuZwchO0am+bI0Xi7no+VrFLO8pKVrP6UVbInL1nt2w6s8PbngRVktce/OWtOlxXgsUe0Qb169bRz5063abt27VLp0qUlXTzxREREhJYtW+aan5iYqHXr1qlu3brXNCsAAACAfw+f3iM1YMAA3XnnnXr11VfVvn17/fTTT5o0aZImTZokSXI4HOrfv79GjBihChUquE5/HhUVpbZt23o3PAAAAIDrlk8Xqdtvv11z587VoEGDNGzYMJUtW1Zjx45Vly5dXGOee+45nTlzRr1799bJkydVv359LVq0iGtIAQAAALCNTxcpSbrnnnt0zz33ZDnf4XBo2LBhGjZs2DVMBQAAAODfzKePkQIAAAAAX0SRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwiCIFAAAAABZRpAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGARRQoAAAAALKJIAQAAAIBFFCkAAAAAsIgiBQAAAAAWUaQAAAAAwCKKFAAAAABYRJECAAAAAIsoUgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwiCIFAAAAABZRpAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGARRQoAAAAALKJIAQAAAIBFFCkAAAAAsIgiBQAAAAAWUaQAAAAAwCKKFAAAAABYRJECAAAAAIsoUgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAs8qsiNXLkSDkcDvXv39817dy5c3r88cdVpEgR5c+fX+3atdORI0e8FxIAAADAdS/I2wFyav369Xr//fdVrVo1t+kDBgzQggULNHv2bBUsWFD9+vXTfffdp9WrV3spKeBbyjy/INsxzkCjUbWlqnGLlZzqyHb8/pEtPRENAADAb/nFHqnTp0+rS5cu+uCDD1SoUCHX9ISEBH300UcaPXq0GjdurJo1a2rKlClas2aNfvzxRy8mBgAAAHA984s9Uo8//rhatmypmJgYjRgxwjV948aNSklJUUxMjGtapUqVVKpUKa1du1Z33HFHpstLTk5WcnKy63ZiYqIkKSUlRSkpKR7JnL4cTy3PTmS1h69kdQaa7McEGLf/Zseu53S9ZZWs5SUrWf0pq2RPXrJ693PDVz67coKs9iBrzpfnMMbk7FXtJZ999pleeeUVrV+/XqGhoWrYsKGqV6+usWPHaubMmerRo4dbKZKk2rVrq1GjRnr99dczXWZcXJyGDh2aYfrMmTOVN29eW54HAAAAAN+XlJSkzp07KyEhQWFhYVmO8+k9Un/++aeeeuopLVmyRKGhoR5b7qBBgzRw4EDX7cTEREVHR6tZs2ZXXFlWpKSkaMmSJWratKmCg4M9sky7kNUevpK1atzibMc4A4yG10rT4A0BSk7L/hipX+JiPREtg+stq2QtL1nJ6k9ZJXvyktW+7SAnfOWzKyfIag+y/u/batnx6SK1ceNGHT16VLfddptrWmpqqlauXKnx48dr8eLFOn/+vE6ePKnw8HDXmCNHjigiIiLL5TqdTjmdzgzTg4ODPb7B2LFMu5DVHt7OmpOTR7jGpjlyNN6u53O9ZpVylpesZPWnrJI9eclq33Zghbc/u6wgqz3+zVlzuiyfLlJNmjTRzz//7DatR48eqlSpkv773/8qOjpawcHBWrZsmdq1aydJ2rlzp/744w/VrVvXG5EBAAAA/Av4dJEqUKCAqlat6jYtX758KlKkiGt6z549NXDgQBUuXFhhYWF64oknVLdu3SxPNAEAAAAAV8uni1ROjBkzRgEBAWrXrp2Sk5MVGxurCRMmeDsWAAAAgOuY3xWp7777zu12aGio3n33Xb377rveCQQAAADgX8cvLsgLAAAAAL6EIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwKMjbAQB/VOb5BdmOcQYajaotVY1brORUR7bj949s6YloAAAAuAbYIwUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwiCIFAAAAABZRpAAAAADAIooUAAAAAFhEkQIAAAAAi4K8HQAAAAD2KvP8ghyNcwYajaotVY1brORUR7bj949sebXRAL/FHikAAAAAsIgiBQAAAAAWUaQAAAAAwCKKFAAAAABYRJECAAAAAIsoUgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwiCIFAAAAABZRpAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGARRQoAAAAALKJIAQAAAIBFFCkAAAAAsIgiBQAAAAAWUaQAAAAAwKIgbwcAAAAA0pV5fkGOxjkDjUbVlqrGLVZyqiPb8ftHtrzaaIAb9kgBAAAAgEUUKQAAAACwyKeL1Guvvabbb79dBQoUUPHixdW2bVvt3LnTbcy5c+f0+OOPq0iRIsqfP7/atWunI0eOeCkxAAAAgH8Dny5S33//vR5//HH9+OOPWrJkiVJSUtSsWTOdOXPGNWbAgAH6+uuvNXv2bH3//feKj4/Xfffd58XUAAAAAK53Pn2yiUWLFrndnjp1qooXL66NGzfqP//5jxISEvTRRx9p5syZaty4sSRpypQpqly5sn788Ufdcccd3ogNAAAA4Drn00XqcgkJCZKkwoULS5I2btyolJQUxcTEuMZUqlRJpUqV0tq1a7MsUsnJyUpOTnbdTkxMlCSlpKQoJSXFI1nTl+Op5dmJrNY5A032YwKM23+zY9dzIqv3skrW8pKVrP6UVbInL1nJ6k9Zc8pXfn/JCbLmfHkOY0zOtj4vS0tLU+vWrXXy5EmtWrVKkjRz5kz16NHDrRRJUu3atdWoUSO9/vrrmS4rLi5OQ4cOzTB95syZyps3r+fDAwAAAPALSUlJ6ty5sxISEhQWFpblOL/ZI/X444/rl19+cZWoqzFo0CANHDjQdTsxMVHR0dFq1qzZFVeWFSkpKVqyZImaNm2q4OBgjyzTLmS1rmrc4mzHOAOMhtdK0+ANAUpOy/76Fr/ExXoiWgZk9V5WyVpespLVn7JK9uQlK1n9KWtO+crvLzlB1v99Wy07flGk+vXrp2+++UYrV65UyZIlXdMjIiJ0/vx5nTx5UuHh4a7pR44cUURERJbLczqdcjqdGaYHBwd7fIOxY5l2IWvO5eTCf66xaY4cjbfr+ZDV+1mlnOUlK1n9KatkT16yktWfslrl7d9frPg3Z83psnz6rH3GGPXr109z587V8uXLVbZsWbf5NWvWVHBwsJYtW+aatnPnTv3xxx+qW7futY4LAAAA4F/Cp/dIPf7445o5c6bmz5+vAgUK6PDhw5KkggULKk+ePCpYsKB69uypgQMHqnDhwgoLC9MTTzyhunXrcsY+AAAAALbx6SL13nvvSZIaNmzoNn3KlCnq3r27JGnMmDEKCAhQu3btlJycrNjYWE2YMOEaJwUAAADwb+LTRSonJxQMDQ3Vu+++q3ffffcaJAIAAAAAHz9GCgAAAAB8EUUKAAAAACzy6a/24d+lzPMLsh3jDDQaVfviNSZycqrT/SNbeiIaAAAA4IY9UgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwKMjbAWCfMs8vyNE4Z6DRqNpS1bjFSk51ZDt+/8iWVxsNAAAA8GvskQIAAAAAiyhSAAAAAGARRQoAAAAALKJIAQAAAIBFFCkAAAAAsIgiBQAAAAAWUaQAAAAAwCKKFAAAAABYRJECAAAAAIsoUgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYFGQtwMAAAAA/qjM8wtyNM4ZaDSqtlQ1brGSUx3Zjt8/suXVRsM1wB4pAAAAALCIIgUAAAAAFlGkAAAAAMAiihQAAAAAWESRAgAAAACLKFIAAAAAYBFFCgAAAAAsokgBAAAAgEUUKQAAAACwiCIFAAAAABZRpAAAAADAoiBvB/A3ZZ5fkKNxzkCjUbWlqnGLlZzqyHb8/pEtrzYaAAAAkCl+h/U89kgBAAAAgEUUKQAAAACwiCIFAAAAABZxjBQAAAAAn+Evx3OxRwoAAAAALLpuitS7776rMmXKKDQ0VHXq1NFPP/3k7UgAAAAArlPXRZH6/PPPNXDgQA0ZMkSbNm3SrbfeqtjYWB09etTb0QAAAABch66LIjV69Gg98sgj6tGjh26++WZNnDhRefPm1eTJk70dDQAAAMB1yO9PNnH+/Hlt3LhRgwYNck0LCAhQTEyM1q5dm+l9kpOTlZyc7LqdkJAgSTpx4oRSUlKu+HhBF87kKFdQmlFSUpqCUgKUmpb9wW9///13jpZrhT9llXKWl6zWkdV7WSVreclKVn/KKvHZRVaykvX6zHrq1ClJkjHmiuMcJrsRPi4+Pl433HCD1qxZo7p167qmP/fcc/r++++1bt26DPeJi4vT0KFDr2VMAAAAAH7kzz//VMmSJbOc7/d7pHJj0KBBGjhwoOt2WlqaTpw4oSJFisjhyL7N5kRiYqKio6P1559/KiwszCPLtAtZ7UFWe/hTVsm/8pLVHmS1B1ntQVZ7kNUedmU1xujUqVOKioq64ji/L1JFixZVYGCgjhw54jb9yJEjioiIyPQ+TqdTTqfTbVp4eLgt+cLCwnx+I0xHVnuQ1R7+lFXyr7xktQdZ7UFWe5DVHmS1hx1ZCxYsmO0Yvz/ZREhIiGrWrKlly5a5pqWlpWnZsmVuX/UDAAAAAE/x+z1SkjRw4EB169ZNtWrVUu3atTV27FidOXNGPXr08HY0AAAAANeh66JIdejQQceOHdPLL7+sw4cPq3r16lq0aJFKlCjhtUxOp1NDhgzJ8BVCX0RWe5DVHv6UVfKvvGS1B1ntQVZ7kNUeZLWHt7P6/Vn7AAAAAOBa8/tjpAAAAADgWqNIAQAAAIBFFCkAAAAAsIgiBQAAAAAWUaQAAAAAwCKKFAAAAABYdF1cRwrWnD9/XvPmzdPatWt1+PBhSVJERITuvPNOtWnTRiEhIV5O+D/Hjx/X5MmTM83avXt3FStWzMsJ/8ef1itZ7eNPeXl92cOf1qs/ZQUAX8N1pDzot99+0/jx4zN8INWtW1f9+vXTzTff7OWE0p49exQbG6v4+HjVqVPHddHiI0eOaN26dSpZsqQWLlyo8uXLezmptH79esXGxipv3ryKiYlxy7ps2TIlJSVp8eLFqlWrlpeT+td6Jat9/Ckvry97+NN69aesEmXaLv60XslqD3/K6muvLYqUhyxcuFBt27bVbbfdptjYWLcPpCVLlmjjxo2aP3++YmNjvZqzadOmypcvn6ZPn66wsDC3eYmJieratavOnj2rxYsXeynh/9xxxx269dZbNXHiRDkcDrd5xhg9+uij2rZtm9auXeulhP/jT+uVrPbxp7y8vuzhT+vVn7JSpu3hT+uVrPbwp6w++doy8Ihq1aqZwYMHZzl/yJAh5pZbbrmGiTKXJ08e8/PPP2c5f9u2bSZPnjzXMFHWQkNDzfbt27Ocv337dhMaGnoNE2XNn9YrWe3jT3l5fdnDn9arP2WNiYkxbdq0MQkJCRnmJSQkmDZt2phmzZp5IVlGderUMb179zZpaWkZ5qWlpZnevXubO+64wwvJMvKn9UpWe/hTVl98bXGyCQ/ZtWuXunTpkuX8Tp06affu3dcwUebCw8O1f//+LOfv379f4eHh1yzPlUREROinn37Kcv5PP/3k+muEt/nTeiWrffwpL68ve/jTevWnrKtXr9aIESMy7JGUpLCwMA0fPlw//PCDF5JltHXrVg0YMCDDXj5JcjgcGjBggLZs2XLtg2XCn9YrWe3hT1l98bXFySY8pEyZMlqwYIEqVqyY6fwFCxaodOnS1zhVRr169VLXrl01ePBgNWnSJMNu0REjRuiJJ57wcsqLnnnmGfXu3VsbN27MNOsHH3ygN99808spL/Kn9UpW+/hTXl5f9vCn9epPWdPLdNWqVTOd74tlulKlSpnO96WC6k/rlaz28KesPvnauqb7v65js2bNMkFBQaZVq1Zm3Lhx5rPPPjOfffaZGTdunGndurUJCQkxX3zxhbdjGmOMGTlypImMjDQOh8MEBASYgIAA43A4TGRkpHn99de9Hc/NZ599ZurUqWOCgoKMw+EwDofDBAUFmTp16pjPP//c2/Hc+NN6Jat9/Ckvry97+NN69ZesgwcPNoUKFTKjR482W7duNYcPHzaHDx82W7duNaNHjzaFCxc2Q4YM8XZMY4wx48ePN06n0zz55JNm/vz55scffzQ//vijmT9/vnnyySdNnjx5zLvvvuvtmMYY/1qvZLWHP2X1xdcWRcqDVq9ebTp06GBKlSplQkJCTEhIiClVqpTp0KGDWbNmjbfjZbB3716zZs0as2bNGrN3715vx7mi8+fPm/j4eBMfH2/Onz/v7ThX5E/rlaz28ae8vL7s4U/r1R+yUqbt4U/rlaz28Kesvvba4qx9AADAb+zbt8/ttMdly5b1cqKspaSk6Pjx45KkokWLKjg42MuJsuZP65Ws9vCnrL7y2qJIwc38+fOVkJCgrl27ejtKtiZMmKDjx4/r5Zdf9naUbPnTeiWrffwpL68ve/jTevWnrADgDRSpa+SFF17Q4cOHNXnyZG9HuaJKlSpp9+7dSk1N9XaUbDVp0kT79u3T3r17vR0lW/60XslqH3/Ky+vLHv60Xv0pK2XaHv60XslqD3/K6o3XFkXqGunWrZv+/PNPLV++3NtRAAC4rlCm7eFP65Ws9vCnrN54bVGkAAAAAMAiriP1L/XTTz9p7dq1bgcV1q1bV7Vr1/Zyspz7559/9PXXX/vU7ua0tDQFBGS8znVaWpr++usvlSpVygupMjLGaP/+/YqOjlZQUJDOnz+vuXPnKjk5WS1atFDRokW9HfGKGjdurClTpvjEtdmys2/fPu3Zs0eRkZFZXqfDG5KTkxUQEOA6QPf333/X5MmT9ccff6h06dLq2bOnzxxo/OWXX6p58+bKmzevt6PkyNatW7Vx40Y1bNhQN954o3799Ve9++67SktL07333qvY2FhvR3SzfPlyrVq1SocOHVJAQIBuvPFGtW7dWhUqVPB2NADwaeyR8qCzZ8/q008/zfCB1LZtWzVp0sTb8SRJR48eVbt27bR69WqVKlXK7QKMf/zxh+rVq6cvv/xSxYsX93LS7G3dulW33XabT+xuTkxMVK9evfT1118rLCxMffr00ZAhQxQYGCjp4vqNioryiaw7d+5UbGys/vzzT91444369ttv9cADD2jHjh0yxihv3rxas2aNT/wS9dVXX2U6/b777tO4ceMUHR0tSWrduvW1jJWlxx57TKNGjVL+/Pl19uxZPfTQQ5o7d66MMXI4HGrQoIG++uor5c+f39tR1bBhQ/Xr10/333+/Vq9erSZNmqhixYqqXLmydu3apZ07d2rp0qWqW7eut6MqICBABQoUUIcOHdSzZ0/VqVPH25GyNGfOHLVv317h4eFKTk7W3Llz9cADD6hWrVoKDAzU0qVLNX36dHXu3NnbUXX06FG1atVKGzZsUEBAgNLS0lSjRg0dPHhQx44d08CBAzVq1Chvx3TDHwHtwR8Brw1/+SMgfwC04JqfcP06tXv3blO6dGlTvHhxEx0dbRwOh2nZsqWpU6eOCQwMNA888IBJSUnxdkzTrl07U7duXbNjx44M83bs2GHuvPNOc//993shWUYJCQlX/PfDDz+YgIAAb8c0xhjz5JNPmptuusnMnj3bfPDBB6Z06dKmZcuWJjk52RhjzOHDh43D4fByyovatGljWrdubbZt22b69+9vKleubNq0aWPOnz9vzp07Z1q1amUefPBBb8c0xhjXNS3SrxWR2T9f2QaMMSYgIMAcOXLEGGPMoEGDTMmSJc3y5cvNmTNnzKpVq0y5cuXM888/7+WUF4WFhZldu3YZY4xp0KCBGTBggNv8l156ydSrV88b0TJwOBxm2LBhpkaNGsbhcJgqVaqYMWPGmOPHj3s7Wga33XabGTFihDHGmE8//dSEh4ebYcOGuea/+eabpnr16t6K56ZDhw6mbdu2JiEhwZw7d87069fPdO3a1RhjzLJly0yRIkXM2LFjvZzyoiNHjpj69esbh8NhSpcubWrXrm1q165tSpcubRwOh6lfv77rtefrtmzZ4jPvWwkJCeaBBx4woaGhpnjx4mbw4MHmwoULrvmHDx/2maw7duwwpUuXNgEBAaZ8+fJm7969pmbNmiZfvnwmb968pmjRoq73NG+bP39+pv8CAwPN+PHjXbd9Qd++fc2pU6eMMcYkJSWZdu3auT53AwICTKNGjVzzva1BgwZm9uzZxhhjVq1aZZxOp6lWrZrp0KGDqVGjhsmbN+81v24rRcpDmjdvbvr06WPS0tKMMRcvbta8eXNjjDG7du0yZcqU8YkrQ+fPn99s2rQpy/kbNmww+fPnv4aJsnbpheEy++dLv0SXKlXKrFixwnX72LFjpnbt2qZZs2bm3LlzPvVhVKxYMbN582ZjjDGnT582DofD/PDDD675q1evNqVKlfJSOnd33323admyZYZfkIKCgsyvv/7qpVRZczgcrqxVq1Y1M2fOdJs/f/58c9NNN3kjWgb58uUz27dvN8YYU6JECbNlyxa3+Xv27PGp94L09bphwwbTt29fEx4ebpxOp3nggQfMt99+6+WE/5MvXz6zb98+Y4wxaWlpJjg42Gzbts01//fff/eZ9RoWFmZ++eUX1+3Tp0+b4OBgk5CQYIwx5uOPPzYVK1b0Vjw3/BHQHvwR0B7+9EdA/gB4dShSHpI3b163v4QkJyeb4OBg119M582bZ8qUKeOteC5FihQx3333XZbzV6xYYYoUKXINE2UtLCzMvP766+a7777L9N8HH3zgM29EefLkMXv37nWblpiYaOrWrWsaN25s9u7d61NZDxw44LqdP39+s2fPHtftP/74wzidTm9Ey9To0aNNdHS0+frrr13TfLlIHT161BhjTNGiRd1+STXGmP3795s8efJ4I1oGjRs3NqNGjTLGGHPnnXeaadOmuc3/4osvfKZQX1qk0p09e9ZMnz7dNGzY0AQEBPjE+6sxxkRERJgNGzYYY4w5ceKEcTgcbn9k+emnn0xERISX0rkrVqyY2+soKSnJBAQEmL///tsYc7H0+cp7AX8EtAd/BLSHP/0RkD8AXh1ONuEh4eHhOnXqlOt2UlKSLly4oJCQEElStWrVdOjQIW/Fc+nQoYO6deumMWPGqEmTJgoLC5N08RifZcuWaeDAgerUqZOXU1502223SZIaNGiQ6fzw8HAZHznEr1SpUtq+fbvbd3MLFCigb7/9Vs2aNdO9997rxXTuoqKi9Mcff7i+8z5q1Ci3Y+KOHTumQoUKeSteBgMGDFCjRo3UpUsXff311xozZoy3I13R4MGDlTdvXgUEBCg+Pl5VqlRxzfv777+VL18+L6b7nxEjRqh58+Y6c+aMOnXqpKefflq7d+9W5cqVtXPnTr399tsaNGiQt2NKkhwOR4ZpoaGheuihh/TQQw9pz549mjJliheSZRQTE6PHH39cTzzxhD7//HM1a9ZMgwYN0pQpU+RwOPTss8+qfv363o4pSapfv75efvllTZs2TSEhIXrhhRd04403qnDhwpJ8673A6XQqMTExy/mnTp2S0+m8homyVqBAAb344otZHsu3e/du9enT5xqnytyxY8fcjtcpWrSoli5dqtjYWLVo0UIffvihF9O5O336tGvbzJcvn/Lly6fIyEjX/OjoaB05csRb8dwsXLhQY8aMUa1atTRhwgTdc8893o50RenvsYcPH1a1atXc5t166636888/vRErgzp16ujrr79WpUqVVK5cOW3dulW33nqra/6WLVtc28g1c01r23WsW7dupkGDBmb79u1m7969ru9rpvvuu+9MdHS0FxNedO7cOfPoo4+akJAQExAQYEJDQ01oaKgJCAgwISEhpm/fvubcuXPejmmMMWbSpElm3LhxWc4/fPiwiYuLu4aJsvbEE09k+bWSxMREU6dOHZ/5q16fPn3MBx98kOX81157zbRo0eIaJsqZpKQk06dPH1OhQgUTGBjoc3/VM+biVw0aNmzo+nf5eh4+fLhp0KCBd8JlYs2aNeaOO+7I8JWTG264wWeOjTEm8z1Svurw4cOmadOmJn/+/CY2NtacPHnS9OvXz7UXokKFCm57gL3p999/N+XKlTNBQUEmODjYhIeHmyVLlrjmT5kyxWe+0vPYY4+Z0qVLmzlz5ri+emjMxa/RzZkzx5QpU8b069fPiwn/p2HDhub111/Pcv6WLVt85utyFStWNAsWLMgw/dSpU6Zu3brm1ltv9ZnPrnLlyrntgZowYYJJTEx03d64caPP7O1Nt3nzZnPzzTeb3r17mzNnzvjsHqk+ffqYAQMGmOLFi2f4qvTGjRtN0aJFvZTO3Zo1a0zBggXNkCFDzDvvvGOKFi1qXnrpJTNjxgzz8ssvm/Dw8Cu+9uzAWfs85OjRo2rTpo3WrVsnh8Oh6OhozZ07VzVq1JAkffHFFzp06JCeeOIJLye9KDExURs3bnQ781HNmjVde6hgzT///JNh78OlTp06pU2bNmW5d82X7Nu3T6GhoW5/6fMlX331lVasWKFBgwb5xdklL7V3716FhISoZMmS3o7i5tixY9q7d6/S0tIUGRmpMmXKeDuSmwMHDqhUqVKZ7pnyF3v37lVSUpIqVaqkoCDf+TJIUlKSVq1apfPnz+uOO+7w2bOeJScnq3///po8ebLbtz3Onz+voKAg9ezZU2PGjPGJvVIffPCBkpKS9NRTT2U6/8iRI5o4caKGDBlyjZNl9OSTT+rQoUOaPXt2hnmnTp1S06ZNtX79ep844+yjjz6qWrVqqVevXpnOHzlypH744QctWLDgGie7srNnz2rAgAFavny59u7dq23btunmm2/2diyXhg0bur23dunSxW0djxgxQkuXLtV3333nhXQZrV27VgMHDtS6devcpkdFRenZZ5/N8nVnF4qUh+3evVvJyck+92EJAIC/44+AnsUfAa8df/0jIH8AvLKMFw3AValQoYKqVq2aoUT9+eefevjhh72Uyt3Zs2e1atUq/fbbbxnmnTt3TtOnT/dCqsyR1R5ktY8/5SWrPchqj+3bt+vLL79UZGSkOnXqpBo1amjWrFnq37+/li9f7u14brZv364pU6Zox44dkqQdO3aob9++evjhh30qa6FChRQQEJBl1vXr1/tUibrSet23b59PlajLs9500006e/asnn/+eZ/aBqT/Zd25c6ck9/W6f/9+nypR6VlPnDihOnXqqFChQnr99de999q6pl8k/BfzletG7Ny503XdjYCAAPOf//zHHDx40DXfl87Qk1nW+Ph413yy5g5Z7eNPeclqD7LaY+HChSYkJMQULlzYhIaGmoULF5pixYqZmJgY07hxYxMYGGiWLVvm7ZjGGLLahaz2IOvVoUh5SFYXX0v/N2bMGJ/4QGrbtq1p2bKlOXbsmNm9e7dp2bKlKVu2rOt02L70wUlWe5DVPv6Ul6z2IKs96tata1588UVjzMULHRcqVMi88MILrvnPP/+8adq0qbfiuSGrPchqD7JeHYqUh/jLxdeKFy/udnHItLQ08+ijj5pSpUqZ33//3ac+OMlqD7Lax5/yktUeZLVHWFiY2b17tzHGmNTUVBMUFOR2Xamff/7ZlChRwlvx3JDVHmS1B1mvDsdIeUhkZKTmzJmjtLS0TP9t2rTJ2xElXfw+/KXHbzkcDr333ntq1aqVGjRooF27dnkxnTuy2oOs9vGnvGS1B1ntk35msYCAAIWGhqpgwYKueQUKFFBCQoK3omVAVnuQ1R5kzT1OK+chNWvW1MaNG9WmTZtM5zscDp+4eGylSpW0YcMGVa5c2W36+PHjJUmtW7f2RqxMkdUeZLWPP+Ulqz3Iao8yZcpo9+7dKleunKSLp0BOv6i4JP3xxx8+c6IBstqDrPYg69Vhj5SHPPvss7rzzjuznF++fHmtWLHiGibK3L333qtPP/0003njx49Xp06dfKLwSWS1C1nt4095yWoPstqjb9++btcyuvzsuAsXLlTjxo29ES0DstqDrPYg69XhOlIAAAAAYBF7pAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGARRQoAcN1bu3atAgMD1bJlS29HAQBcJzhrHwDguterVy/lz59fH330kXbu3KmoqChvRwIA+Dn2SAEArmunT5/W559/rr59+6ply5aaOnWq2/yvvvpKFSpUUGhoqBo1aqRp06bJ4XDo5MmTrjGrVq3SXXfdpTx58ig6OlpPPvmkzpw5c22fCADAp1CkAADXtVmzZqlSpUqqWLGiHnzwQU2ePNl1odl9+/bp/vvvV9u2bbV161b16dNHL774otv9f//9d919991q166dtm3bps8//1yrVq1Sv379vPF0AAA+gq/2AQCua/Xq1VP79u311FNP6cKFC4qMjNTs2bPVsGFDPf/881qwYIF+/vln1/iXXnpJr7zyiv755x+Fh4erV69eCgwM1Pvvv+8as2rVKjVo0EBnzpxRaGioN54WAMDL2CMFALhu7dy5Uz/99JM6deokSQoKClKHDh300UcfuebffvvtbvepXbu22+2tW7dq6tSpyp8/v+tfbGys0tLStG/fvmvzRAAAPifI2wEAALDLRx99pAsXLridXMIYI6fTqfHjx+doGadPn1afPn305JNPZphXqlQpj2UFAPgXihQA4Lp04cIFTZ8+XW+99ZaaNWvmNq9t27b69NNPVbFiRf3f//2f27z169e73b7tttv022+/qXz58rZnBgD4D46RAgBcl+bNm6cOHTro6NGjKliwoNu8//73v1q+fLlmzZqlihUrasCAAerZs6e2bNmip59+Wn/99ZdOnjypggULatu2bbrjjjv08MMPq1evXsqXL59+++03LVmyJMd7tQAA1x+OkQIAXJc++ugjxcTEZChRktSuXTtt2LBBp06d0hdffKE5c+aoWrVqeu+991xn7XM6nZKkatWq6fvvv9euXbt01113qUaNGnr55Ze5FhUA/MuxRwoAgEu88sormjhxov78809vRwEA+DCOkQIA/KtNmDBBt99+u4oUKaLVq1frjTfe4BpRAIBsUaQAAP9qu3fv1ogRI3TixAmVKlVKTz/9tAYNGuTtWAAAH8dX+wAAAADAIk42AQAAAAAWUaQAAAAAwCKKFAAAAABYRJECAAAAAIsoUgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFv0/J/MpHusQZVMAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Read the file ages_population2.csv\n", + "df_ages2 = pd.read_csv('/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/ages_population2.csv')\n", + "\n", + "# Calculate the frequency distribution\n", + "age_counts2 = df_ages2['observation'].value_counts().sort_index()\n", + "\n", + "# Plot the frequency distribution\n", + "plt.figure(figsize=(10, 6))\n", + "age_counts2.plot(kind='bar')\n", + "plt.title('Frequency Distribution of Ages in the Second Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "plt.grid(True)\n", + "plt.show()\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 4.- What do you see? Is there any difference with the frequency distribution in step 1?" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'The first neighbourhood has a more balanced age distribution across different age groups, whereas the second neighbourhood shows a concentration of ages in the younger age groups.\\n\\nFirst Neighbourhood:\\nThe ages are more evenly distributed across different age groups.\\nThe highest frequencies are seen in the mid-age groups (20-40 years).\\n\\nSecond Neighbourhood:\\nThere is a noticeable peak in the frequency for the age group around 30 years.\\nThe distribution is more skewed towards the lower age groups compared to the first neighbourhood.'" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"The first neighbourhood has a more balanced age distribution across different age groups, whereas the second neighbourhood shows a concentration of ages in the younger age groups.\n", + "\n", + "First Neighbourhood:\n", + "The ages are more evenly distributed across different age groups.\n", + "The highest frequencies are seen in the mid-age groups (20-40 years).\n", + "\n", + "Second Neighbourhood:\n", + "There is a noticeable peak in the frequency for the age group around 30 years.\n", + "The distribution is more skewed towards the lower age groups compared to the first neighbourhood.\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 5.- Calculate the mean and standard deviation. Compare the results with the mean and standard deviation in step 2. What do you think?" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Exact Mean for First Neighbourhood: 36.56\n", + "Exact Standard Deviation for First Neighbourhood: 12.81649962597677\n", + "Exact Mean for Second Neighbourhood: 27.155\n", + "Exact Standard Deviation for Second Neighbourhood: 2.9698139326891835\n" + ] + }, + { + "data": { + "image/png": "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rhO5wxKZmZlKT08vsj0vL++8j50yZYoSEhJ05513qlOnTsrKytL27dv19ddf65prrtG///1vHTp0SImJiXr99dcdHmuM0Q033KD169drxIgRatu2rT755BPde++9+u233zRz5kz72GHDhunNN9/U0KFD1aVLF23YsEH9+vUrsa5//vOfatq0qZ588kl7U5eYmKiffvpJw4cPV2hoqHbv3q2XXnpJu3fv1ldffVXkB+Ktt96q5s2b66mnntKHH36oxx9/XIGBgXrxxRfVq1cvPf3001q6dKnuuecedezYUVddddU5n6s777xTr776qm6++WZNnDhRW7ZsUUJCgpKSkuw/1F5//XW99NJL2rp1q/7v//5PknTllVee87iHDh3S+vXr9eqrr0qSbrvtNs2cOVMvvPCCw18Yf/vtN/Xs2dP+lmpfX1/93//9X7F/8X399dcVFxenmJgYPf300zp58qTmz5+vbt26aefOnfZfKrGxsdq9e7fGjBmjhg0b6siRI0pMTFRKSkqZTvr3xRdf6J133tF///tf1a5dW7Nnz1ZsbKxSUlIUFBRU7GOaN2+uadOmafLkyRo5cqS6d+9e5Hk7fvy4rrvuOg0cOFC33HKL3nrrLd1///1q3bq1+vTpI+nPv8LccMMN+uKLLzRy5Eg1b95c3333nWbOnKm9e/dq5cqVpVrD2d9LHh4e8vf3L3F8cnKybrvtNv373//WXXfdpWbNmmn37t26/vrr1aZNG02bNk1eXl7av3+/Nm3aVOo1l6RRo0a6/fbb9fLLL+uBBx4451/unnjiCT3yyCO65ZZbdOedd+r333/XnDlzdNVVV2nnzp0KCAgo9nEFBQXq37+/tm7dqlGjRikyMlLvvfee4uLiih2fn5+vmJgYde7cWc8++6w+/fRTzZgxQ40bN9aoUaMcxr722mv6448/FB8fr5ycHD3//PPq1auXvvvuO4WEhEiSPv30U/Xp00eXXnqppkyZolOnTmnOnDnq2rWrvv766zKfkHLdunV68803NXr0aNWtW1cNGza0f0xizJgxqlOnjh599FH9/PPPmjVrlkaPHq033njD/vgpU6Zo6tSpio6O1qhRo5ScnKz58+dr27Zt2rRpk/2vn4sXL9bw4cPVsWNHJSQkKC0tTc8//7w2bdrk8LyvWbNGsbGxatGihRISEnT06FH7/xgBuDD0QvRCZ6MXurBeKDg4WD4+Pvrggw80ZswYBQYGljj2QuaZOnWqpkyZoiuvvFLTpk2Tp6entmzZonXr1unaa6+VVPrfr6V9Hk6dOqXevXsrJSVFY8eOVVhYmF5//XWtW7fu3C/eWei56LmqNQOUwqJFi4ykc95atmzp8JgGDRqYuLg4+/3LL7/c9OvX75zzxMfHm+K+LFeuXGkkmccff9xh+80332xsNpvZv3+/McaYHTt2GElm3LhxDuOGDRtmJJlHH33Uvu3RRx81ksxtt91WZL6TJ08W2fa///3PSDIbN24scoyRI0fat505c8bUr1/f2Gw289RTT9m3Hz9+3Pj4+Dg8J8XZtWuXkWTuvPNOh+333HOPkWTWrVtn3xYXF2d8fX3Peby/e/bZZ42Pj4/Jysoyxhizd+9eI8m8++67DuPGjBljbDab2blzp33b0aNHTWBgoJFkDhw4YIwx5o8//jABAQHmrrvucnh8amqq8ff3t28/fvy4kWSeeeaZUtdaqPA5/jtJxtPT0/66G2PMN998YySZOXPmnPN427ZtM5LMokWLiuzr0aOHkWRee+01+7bc3FwTGhpqYmNj7dtef/114+bmZj7//HOHxy9YsMBIMps2bTpnDXFxccV+D/Xo0cMY89f3W+HzbMyf30+SzOrVqx2ONXPmTCPJ/P7772Vac3EK59+2bZv58ccfjbu7uxk7dqx9f48ePRy+33/++WdTo0YN88QTTzgc57vvvjPu7u4O2+Pi4kyDBg3s999++20jycyaNcu+LT8/3/Tq1atIzYXP27Rp0xzmadeunWnfvr39/oEDB4wk4+PjY3799Vf79i1bthhJZvz48fZtbdu2NcHBwebo0aP2bd98841xc3Mzt99+e4l1Fyrp69PNzc3s3r3bYXvh8xodHW0KCgrs28ePH29q1KhhMjIyjDHGHDlyxHh6epprr73W5Ofn28e98MILRpJ55ZVXjDHGnD592gQHB5tWrVqZU6dO2cetWrXKSDKTJ092WGe9evXscxhjzJo1a4ykYtcFoCh6IXoheqHy64UmT55sJBlfX1/Tp08f88QTT5gdO3YUGVfaefbt22fc3NzMTTfd5PC70xhj/51b2t+vF/I8zJo1y0gyb775pn3biRMnTJMmTYwks379+nM+D/Rc9Fwwho/v4YLMnTtXiYmJRW5t2rQ572MDAgK0e/du7du374Ln/eijj1SjRg2NHTvWYfvEiRNljNHHH38sSfa3a/73v/91GDdmzJgSj/2f//ynyLa/n6cnJydH6enp6tKliyTp66+/LjL+zjvvtP+7Ro0a6tChg4wxGjFihH17QECAmjVrpp9++qnEWqQ/1ypJEyZMcNg+ceJESdKHH354zsefy9KlS9WvXz/Vrl1bktS0aVO1b9++yNvWV69eraioKIfLKgcGBmrw4MEO4xITE5WRkaHbbrtN6enp9luNGjXUuXNnrV+/XpLs53r47LPPdPz48TLX/3fR0dFq3Lix/X6bNm3k5+d33uf3fGrVquVwridPT0916tTJ4bgrVqxQ8+bNFRkZ6bDuXr16SZJ93efi7e1d5PvofB9paNSokWJiYhy2Ff5V5r333lNBQUFpl1lql156qYYOHaqXXnpJhw8fLnbMO++8o4KCAt1yyy0Oz0doaKiaNm16zudj9erV8vDw0F133WXf5ubmpvj4+BIfc/b3bPfu3Yt93QcMGKB//OMf9vudOnVS586d7d9jhw8f1q5duzRs2DCHv9K2adNG11xzjX1cWfTo0UMtWrQodt/IkSMd3mHQvXt35efn65dffpH0518ST58+rXHjxsnN7a9f03fddZf8/PzsPwO2b9+uI0eO6L///a+8vb3t4/r166fIyEj7uMJ1xsXFObwT75prrimxRgAloxeiF/o7eqGy9UJTp07VsmXL1K5dO33yySd66KGH1L59e11xxRUOH+cq7TwrV65UQUGBJk+e7PC7U5L9d25pf79eyPPw0UcfqV69err55pvt22rWrKmRI0eec/3FoecqG3quqo9QChekU6dOio6OLnKrU6fOeR87bdo0ZWRk6LLLLlPr1q1177336ttvvy3VvL/88ovCwsLsDUSh5s2b2/cX/tfNzU2NGjVyGNekSZMSj332WEk6duyY7r77boWEhMjHx0eXXHKJfVxmZmaR8REREQ73/f395e3trbp16xbZfr5GpHANZ9ccGhqqgIAA+1ovVFJSknbu3KmuXbtq//799tvVV1+tVatWKSsry6GG4p6zs7cVNtW9evXSJZdc4nBbs2aN/USVXl5eevrpp/Xxxx8rJCREV111laZPn67U1NQyrUUq+pxLUp06dS660atfv36RjyScfdx9+/Zp9+7dRdZ82WWXSSrdCTpr1KhR5Puo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vr6+6ty58zk/j362oUOH6s0339R//vMfrV+/Xl27dlV+fr5++OEHvfnmm/rkk0/UoUOHClzFX6ZNm6aNGzeqX79+atCggY4cOaJ58+apfv366tatm6TyWbMkPfTQQ3r99deVnJysli1b2rc3btxYjz/+uCZNmqSff/5ZAwYMUO3atXXgwAG9++67GjlypO65555ijzlgwAB16tRJEydO1P79+xUZGan333/fHrZdzF9fmzRpom7dumnUqFHKzc3VrFmzFBQUpPvuu88+5plnnlGfPn0UFRWlESNG2C9P7O/vrylTptjHDRo0SPfff79uuukmjR071n6578suu6zYE/5ejEsuuUSTJk3S1KlTdd111+mGG25QcnKy5s2bp44dO9pPuurh4aGnn35aw4cPV48ePXTbbbfZL0/csGFDh4+mJCQkqF+/furWrZvuuOMOHTt2THPmzFHLli2VnZ1drvUDKBm9UOnQC1UsZ/dCJ0+e1JVXXqkuXbrouuuuU3h4uDIyMrRy5Up9/vnnGjBggP3jjKWdp0mTJnrooYf02GOPqXv37ho4cKC8vLy0bds2hYWFKSEhodS/Xy/EXXfdpRdeeEG33367duzYoXr16un1118vct6mC0XPRc9VrVhxiT9UfX+/XGlxzr5cqTFFL4P8+OOPm06dOpmAgADj4+NjIiMjzRNPPGFOnz5tH3PmzBkzZswYc8kllxibzeZw2c8//vjDjB8/3oSFhRkPDw/TtGlT88wzzzhc5tOYPy/DGh8fbwIDA02tWrXMgAEDTHJyspHkcFniwsuK/v7770XW8+uvv5qbbrrJBAQEGH9/f/PPf/7THDp0qMRLKZ99jJIuT1zc81ScvLw8M3XqVNOoUSPj4eFhwsPDzaRJk0xOTk6p5vm706dPm6CgINO9e/dzjmvUqJFp166d/f7OnTtN9+7djZeXl6lfv75JSEgws2fPNpJMamqqw2PXr19vYmJijL+/v/H29jaNGzc2w4YNM9u3bzfGGJOenm7i4+NNZGSk8fX1Nf7+/qZz584Ol88tSUmXf42Pjy8y9uyvuZK89957pkWLFsbd3d3hErglvT7FXZr29OnT5umnnzYtW7Y0Xl5epk6dOqZ9+/Zm6tSpJjMz85zzn+91K/x+K7zcdOHairuM+Nq1a82NN95owsLCjKenpwkLCzO33Xab2bt3b6nW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1sCBA7Vp0yZJUn5+vvr166fQ0FB9+eWXOnz4sG6//XZ5eHjoySeftHwtAACg+iKUAgAAqGLc3d0VGhpaZHtmZqYWLlyoZcuWqVevXpKkRYsWqXnz5vrqq6/UpUsXrVmzRnv27NGnn36qkJAQtW3bVo899pjuv/9+TZkyRZ6enlYvBwAAVFN8fA8AAKCK2bdvn8LCwnTppZdq8ODBSklJkSTt2LFDeXl5io6Oto+NjIxURESENm/eLEnavHmzWrdurZCQEPuYmJgYZWVlaffu3SXOmZubq6ysLIcbAADAxXBqKLVx40b1799fYWFhstlsWrlyZYlj//Of/8hms2nWrFkO248dO6bBgwfLz89PAQEBGjFihLKzsyu2cAAAACfp3LmzFi9erNWrV2v+/Pk6cOCAunfvrj/++EOpqany9PRUQECAw2NCQkKUmpoqSUpNTXUIpAr3F+4rSUJCgvz9/e238PDw8l0YAACodpwaSp04cUKXX3655s6de85x7777rr766iuFhYUV2Td48GDt3r1biYmJWrVqlTZu3KiRI0dWVMkAAABO1adPH/3zn/9UmzZtFBMTo48++kgZGRl68803K3TeSZMmKTMz0347ePBghc4HAABcn1PPKdWnTx/16dPnnGN+++03jRkzRp988on69evnsC8pKUmrV6/Wtm3b1KFDB0nSnDlz1LdvXz377LPFhlgAAACuJCAgQJdddpn279+va665RqdPn1ZGRobDu6XS0tLs56AKDQ3V1q1bHY5ReHW+4s5TVcjLy0teXl7lvwAAAFBtVepzShUUFGjo0KG699571bJlyyL7N2/erICAAHsgJUnR0dFyc3PTli1brCwVAADAKbKzs/Xjjz+qXr16at++vTw8PLR27Vr7/uTkZKWkpCgqKkqSFBUVpe+++05Hjhyxj0lMTJSfn59atGhhef0AAKD6qtRX33v66afl7u6usWPHFrs/NTVVwcHBDtvc3d0VGBh4znMi5ObmKjc3136fE3UCAICq4p577lH//v3VoEEDHTp0SI8++qhq1Kih2267Tf7+/hoxYoQmTJigwMBA+fn5acyYMYqKilKXLl0kSddee61atGihoUOHavr06UpNTdXDDz+s+Ph43gkFAAAsVWlDqR07duj555/X119/LZvNVq7HTkhI0NSpU8v1mAAAAFb49ddfddttt+no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zz2ne+65Rz/++KMSExN16NAh+1XzSpKdna1du3Zp165dkv48ufmuXbuUkpIim82mcePG6fHHH9f777+v7777TrfffrvCwsI0YMAASVLz5s113XXX6a677tLWrVu1adMmjR49WoMGDeLKewAAoNK62B4KAADAFbiX5UHPPfecFi1apOTkZPXt21evvfaa+vbtKze3PzOuRo0aafHixWrYsOE5j7N9+3b17NnTfn/ChAmSpLi4OC1evFj33XefTpw4oZEjRyojI0PdunXT6tWr5e3tbX/M0qVLNXr0aPXu3Vtubm6KjY3V7Nmzy7IsAACAClVePRQAAIArKFMoNX/+fN1xxx0aNmyY6tWrV+yY4OBgLVy48JzHufrqq2WMKXG/zWbTtGnTNG3atBLHBAYGatmyZaUrHAAAwInKq4cCAABwBWUKpfbt23feMZ6enoqLiyvL4QEAAFwSPRQAAMBfynROqUWLFmnFihVFtq9YsUKvvvrqRRcFAADgiuihAAAA/lKmUCohIUF169Ytsj04OFhPPvnkRRcFAADgiuihAAAA/lKmUColJUWNGjUqsr1BgwZKSUm56KIAAABcET0UAADAX8oUSgUHB+vbb78tsv2bb75RUFDQRRcFAADgiuihAAAA/lKmUOq2227T2LFjtX79euXn5ys/P1/r1q3T3XffrUGDBpV3jQAAAC6BHgoAAOAvZbr63mOPPaaff/5ZvXv3lrv7n4coKCjQ7bffzvkQAAAASkAPBQAA8JcyhVKenp5644039Nhjj+mbb76Rj4+PWrdurQYNGpR3fQAAAC6DHgoAAOAvZQqlCl122WW67LLLyqsWAACAaoEeCgAAoIyhVH5+vhYvXqy1a9fqyJEjKigocNi/bt26cikOAADAldBDAQAA/KVModTdd9+txYsXq1+/fmrVqpVsNlt51wUAAOBy6KEAAAD+UqZQavny5XrzzTfVt2/f8q4HAADAZdFDAQAA/MWtLA/y9PRUkyZNyrsWAAAAl0YPBQAA8JcyhVITJ07U888/L2NMedcDAADgsuihAAAA/lKmj+998cUXWr9+vT7++GO1bNlSHh4eDvvfeeedcikOAADAldBDAQAA/KVMoVRAQIBuuumm8q4FAADApdFDAQAA/KVModSiRYvKuw4AAACXRw8FAADwlzKdU0qSzpw5o08//VQvvvii/vjjD0nSoUOHlJ2dXW7FAQAAuBp6KAAAgD+V6Z1Sv/zyi6677jqlpKQoNzdX11xzjWrXrq2nn35aubm5WrBgQXnXCQAAUOXRQwEAAPylTO+Uuvvuu9WhQwcdP35cPj4+9u033XST1q5dW27FAQAAuBJ6KAAAgL+U6Z1Sn3/+ub788kt5eno6bG/YsKF+++23cikMAADA1dBDAQAA/KVM75QqKChQfn5+ke2//vqrateufdFFAQAAuCJ6KAAAgL+UKZS69tprNWvWLPt9m82m7OxsPfroo+rbt2951QYAAOBS6KEAAAD+UqaP782YMUMxMTFq0aKFcnJy9K9//Uv79u1T3bp19b///a+8awQAAHAJ9FAAAAB/KVMoVb9+fX3zzTdavny5vv32W2VnZ2vEiBEaPHiww0k7AQAA8Bd6KAAAgL+UKZSSJHd3dw0ZMqQ8awEAAHB59FAAAAB/KlMo9dprr51z/+23316mYgAAAFwZPRQAAMBfyhRK3X333Q738/LydPLkSXl6eqpmzZo0VAAAAMWghwIAAPhLma6+d/z4cYdbdna2kpOT1a1bN07SCQAAUAJ6KAAAgL+UKZQqTtOmTfXUU08V+QsgAAAASkYPBQAAqqtyC6WkP0/ceejQofI8JAAAgMujhwIAANVRmc4p9f777zvcN8bo8OHDeuGFF9S1a9dyKQwAAMDV0EMBAAD8pUyh1IABAxzu22w2XXLJJerVq5dmzJhRHnUBAAC4nPLooebPn6/58+fr559/liS1bNlSkydPVp8+fSRJOTk5mjhxopYvX67c3FzFxMRo3rx5CgkJsR8jJSVFo0aN0vr161WrVi3FxcUpISFB7u5lag0BAADKpEydR0FBQXnXAQAA4PLKo4eqX7++nnrqKTVt2lTGGL366qu68cYbtXPnTrVs2VLjx4/Xhx9+qBUrVsjf31+jR4/WwIEDtWnTJklSfn6++vXrp9DQUH355Zc6fPiwbr/9dnl4eOjJJ5+86PoAAABKiz+HAQAAVCH9+/d3uP/EE09o/vz5+uqrr1S/fn0tXLhQy5YtU69evSRJixYtUvPmzfXVV1+pS5cuWrNmjfbs2aNPP/1UISEhatu2rR577DHdf//9mjJlijw9PZ2xLAAAUA2VKZSaMGFCqcc+99xzZZkCAADA5ZR3D5Wfn68VK1boxIkTioqK0o4dO5SXl6fo6Gj7mMjISEVERGjz5s3q0qWLNm/erNatWzt8nC8mJkajRo3S7t271a5du2Lnys3NVW5urv1+VlZWqdcCAABQnDKFUjt37tTOnTuVl5enZs2aSZL27t2rGjVq6IorrrCPs9ls5VMlAACACyivHuq7775TVFSUcnJyVKtWLb377rtq0aKFdu3aJU9PTwUEBDiMDwkJUWpqqiQpNTXVIZAq3F+4ryQJCQmaOnVqqdcKAABwPmUKpfr376/atWvr1VdfVZ06dSRJx48f1/Dhw9W9e3dNnDixXIsEAABwBeXVQzVr1ky7du1SZmam3nrrLcXFxWnDhg0VWbomTZrk8E6vrKwshYeHV+icAADAtZUplJoxY4bWrFljb6YkqU6dOnr88cd17bXXEkoBAAAUo7x6KE9PTzVp0kSS1L59e23btk3PP/+8br31Vp0+fVoZGRkO75ZKS0tTaGioJCk0NFRbt251OF5aWpp9X0m8vLzk5eVVqvoAAABKw60sD8rKytLvv/9eZPvvv/+uP/7446KLAgAAcEUV1UMVFBQoNzdX7du3l4eHh9auXWvfl5ycrJSUFEVFRUmSoqKi9N133+nIkSP2MYmJifLz81OLFi3KXAMAAMCFKtM7pW666SYNHz5cM2bMUKdOnSRJW7Zs0b333quBAweWa4EAAACuojx6qEmTJqlPnz6KiIjQH3/8oWXLlumzzz7TJ598In9/f40YMUITJkxQYGCg/Pz8NGbMGEVFRalLly6SpGuvvVYtWrTQ0KFDNX36dKWmpurhhx9WfHw874QCAACWKlMotWDBAt1zzz3617/+pby8vD8P5O6uESNG6JlnninXAgEAAFxFefRQR44c0e23367Dhw/L399fbdq00SeffKJrrrlGkjRz5ky5ubkpNjZWubm5iomJ0bx58+yPr1GjhlatWqVRo0YpKipKvr6+iouL07Rp08p/wQAAAOdQplCqZs2amjdvnp555hn9+OOPkqTGjRvL19e3XIsDAABwJeXRQy1cuPCc+729vTV37lzNnTu3xDENGjTQRx99VOo5AQAAKkKZzilV6PDhwzp8+LCaNm0qX19fGWPKqy4AAACXRQ8FAABQxlDq6NGj6t27ty677DL17dtXhw8fliSNGDGCK+8BAACUgB4KAADgL2UKpcaPHy8PDw+lpKSoZs2a9u233nqrVq9eXW7F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fvvtNw0ZMkRBQUHy8fFR69attX37dvt+V/n5JEkNGzYs8trabDbFx8dLcq3XNj8/X4888ogaNWokHx8fNW7cWI899pj+fmpMV3ptqzv6p6r/NVydeij6J9fsnyR6KFftoeifKln/ZFBhli9fbjw9Pc0rr7xidu/ebe666y4TEBBg0tLSnF3aRfvoo4/MQw89ZN555x0jybz77rsO+5966inj7+9vVq5cab755htzww03mEaNGplTp045p+AyiomJMYsWLTLff/+92bVrl+nbt6+JiIgw2dnZ9jH/+c9/THh4uFm7dq3Zvn276dKli7nyyiudWHXZvf/+++bDDz80e/fuNcnJyebBBx80Hh4e5vvvvzfGuNZa/27r1q2mYcOGpk2bNubuu++2b3eV9T766KOmZcuW5vDhw/bb77//bt/vKus0xphjx46ZBg0amGHDhpktW7aYn376yXzyySdm//799jGu8vPJGGOOHDni8LomJiYaSWb9+vXGGNd6bZ944gkTFBRkVq1aZQ4cOGBWrFhhatWqZZ5//nn7GFd6basz+ifX+BquTj0U/ZNr9k/G0EO5ag9F/1S5+idCqQrUqVMnEx8fb7+fn59vwsLCTEJCghOrKn9nN1UFBQUmNDTUPPPMM/ZtGRkZxsvLy/zvf/9zQoXl58iRI0aS2bBhgzHmz3V5eHiYFStW2MckJSUZSWbz5s3OKrNc1alTx/zf//2fy671jz/+ME2bNjWJiYmmR48e9qbKldb76KOPmssvv7zYfa60TmOMuf/++023bt1K3O/KP5+MMebuu+82jRs3NgUFBS732vbr18/ccccdDtsGDhxoBg8ebIxx/de2OqF/cs2v4erWQ9E/ucZ66aH+4so/o+ifnPu68vG9CnL69Gnt2LFD0dHR9m1ubm6Kjo7W5s2bnVhZxTtw4IBSU1Md1u7v76/OnTtX+bVnZmZKkgIDAyVJO3bsUF5ensNaIyMjFRERUeXXmp+fr+XLl+vEiROKiopy2bXGx8erX79+DuuSXO+13bdvn8LCwnTppZdq8ODBSklJkeR663z//ffVoUMH/fOf/1RwcLDatWunl19+2b7flX8+nT59WkuWLNEdd9whm83mcq/tlVdeqbVr12rv3r2SpG+++UZffPGF+vTpI8m1X9vqhP7Jdb+Gq0sPRf/keuulh/qTq/6Mon9y/uvq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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Comparison of Means:\n", + "First Neighbourhood Mean: 36.56\n", + "Second Neighbourhood Mean: 27.155\n", + "\n", + "Comparison of Standard Deviations:\n", + "First Neighbourhood Standard Deviation: 12.81649962597677\n", + "Second Neighbourhood Standard Deviation: 2.9698139326891835\n" + ] + } + ], + "source": [ + "# Calculate the exact mean and standard deviation for the first dataset\n", + "exact_mean_1 = df_ages1['observation'].mean()\n", + "exact_std_dev_1 = df_ages1['observation'].std()\n", + "\n", + "print(\"Exact Mean for First Neighbourhood:\", exact_mean_1)\n", + "print(\"Exact Standard Deviation for First Neighbourhood:\", exact_std_dev_1)\n", + "\n", + "# Calculate the exact mean and standard deviation for the second dataset\n", + "exact_mean_2 = df_ages2['observation'].mean()\n", + "exact_std_dev_2 = df_ages2['observation'].std()\n", + "\n", + "print(\"Exact Mean for Second Neighbourhood:\", exact_mean_2)\n", + "print(\"Exact Standard Deviation for Second Neighbourhood:\", exact_std_dev_2)\n", + "\n", + "# Plot histograms for both datasets\n", + "plt.figure(figsize=(12, 6))\n", + "\n", + "plt.subplot(1, 2, 1)\n", + "plt.hist(df_ages1['observation'], bins=range(0, 85, 5), edgecolor='black')\n", + "plt.title('Histogram of Ages in the First Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "\n", + "plt.subplot(1, 2, 2)\n", + "plt.hist(df_ages2['observation'], bins=range(0, 85, 5), edgecolor='black')\n", + "plt.title('Histogram of Ages in the Second Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "\n", + "plt.tight_layout()\n", + "plt.show()\n", + "\n", + "# Compare the results\n", + "print(\"Comparison of Means:\")\n", + "print(\"First Neighbourhood Mean:\", exact_mean_1)\n", + "print(\"Second Neighbourhood Mean:\", exact_mean_2)\n", + "\n", + "print(\"\\nComparison of Standard Deviations:\")\n", + "print(\"First Neighbourhood Standard Deviation:\", exact_std_dev_1)\n", + "print(\"Second Neighbourhood Standard Deviation:\", exact_std_dev_2)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'The significantly lower mean in the second neighbourhood indicates a younger population compared to the first neighbourhood.\\nThe higher standard deviation in the first neighbourhood reflects a more diverse age range, whereas the low standard deviation in the second neighbourhood indicates that the ages are tightly clustered around the mean.\\nThese differences suggest that the first neighbourhood has a more varied age demographic, while the second neighbourhood has a younger and more homogenous age group'" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"The significantly lower mean in the second neighbourhood indicates a younger population compared to the first neighbourhood.\n", + "The higher standard deviation in the first neighbourhood reflects a more diverse age range, whereas the low standard deviation in the second neighbourhood indicates that the ages are tightly clustered around the mean.\n", + "These differences suggest that the first neighbourhood has a more varied age demographic, while the second neighbourhood has a younger and more homogenous age group\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 5\n", + "Now is the turn of `ages_population3.csv`.\n", + "\n", + "#### 1.- Read the file `ages_population3.csv`. Calculate the frequency distribution and plot it." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0sAAAI0CAYAAADMR7LWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAABzOUlEQVR4nO3dd3gU5fr/8c+mbRJC6JggJQhIEbGgIILSiYAUxYOISjlgO2BDj4KKBBBFVMRjAfUgNrCgiCJfQDoHERUU0KMi1UZHSaghZO/fH/yyhyUTMhs2bCDv13Xlgp2997mfmZ1ndu6dnRmPmZkAAAAAAAEiwt0BAAAAACiKKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAJxR0tLS5PF4TkmuFi1aqEWLFv7HixYtksfj0QcffHBK8vfp00cpKSmnJFdB7du3T/3791dSUpI8Ho/uueeecHcp5I5fDwqTx+PRwIEDT0muEzkd1r2CSklJUZ8+fQr82quvvjrfuNdff10ej0crVqwoUJ7C0qdPHyUkJIS7GwFO5v0AQoFiCQhSzoec09/gwYPD3b0zyvHLOjY2VpUqVVJqaqr+9a9/ae/evSHJs2XLFqWlpWnVqlUhaS+UinLf3Hj88cf1+uuv64477tBbb72lm2++Od/XZGdnq1KlSvJ4PJo1a9Yp6GXRsmzZMqWlpWnPnj1h60NKSkqe27lDhw6FPF+w89ynTx95PB41aNBAZpbr+aJSVAI4/UWFuwPA6WrEiBGqXr16wLT69euHqTdntpxlnZWVpW3btmnRokW65557NHbsWH3yySdq0KCBP/aRRx4JumjdsmWLhg8frpSUFF144YWuX/fZZ58FlacgTtS3V199VT6fr9D7cDIWLFigyy67TMOGDQvqNVu3blVKSoomT56s9u3bF2IPT16o14Nly5Zp+PDh6tOnj0qXLh3StoNx4YUX6r777ss1PSYmJuTrXkHn+bvvvtO0adPUrVu3kPVl7dq1iojgu2QAR1EsAQXUvn17XXLJJa5iDx06pJiYGD6AC+j4ZT1kyBAtWLBAV199tTp37qwff/xRcXFxkqSoqChFRRXupu3AgQOKj49XTExMoebJT3R0dFjzu7Fjxw7Vq1cvqNe8/fbbuvjii9W7d2899NBD2r9/v0qUKFFIPTx54V4PCsvZZ5+tm266yfE5N9uyI0eOyOfzFdryiYuLU5UqVTRixAhde+21Ifv5rdfrDUk7p5OczygAubHnBoRYznkr7777rh555BGdffbZio+PV0ZGhiTpyy+/1FVXXaVSpUopPj5ezZs31+eff56rnaVLl+rSSy9VbGysatSooZdffjnX+TibN2+Wx+PR66+/nuv1Ho9HaWlpAdP++OMP/f3vf9dZZ50lr9er8847T6+99ppj/99//32NGjVKlStXVmxsrFq3bq3169fnyvPll1+qQ4cOKlOmjEqUKKEGDRroueeekyRNmjRJHo9H3377ba7XPf7444qMjNQff/yR7zJ10qpVKw0dOlS//PKL3n77bf90p3OW5s6dq2bNmql06dJKSEhQ7dq19dBDD/nn99JLL5Uk9e3b1/9To5xl2qJFC9WvX18rV67UlVdeqfj4eP9r8zpXJTs7Ww899JCSkpJUokQJde7cWb/99ltATF6/wz+2zfz65nTeyP79+3XfffepSpUq8nq9ql27tp5++ulcP1XK+ZnS9OnTVb9+ff/6MHv2bOcFfpwdO3aoX79+OuussxQbG6sLLrhAb7zxhv/5nPVo06ZNmjlzpr/vmzdvPmG7Bw8e1EcffaQePXqoe/fuOnjwoD7++GPH2KlTp6pevXqKjY1V/fr19dFHHzkuE5/Pp3Hjxum8885TbGyszjrrLN12223666+/AuJWrFih1NRUlS9fXnFxcapevbr+/ve/57ss8jp3ze0YOlZaWpr++c9/SpKqV6+e53Jz8765Ge8FdfxyztkWPf300xo3bpxq1Kghr9erH374QZL0/PPP67zzzlN8fLzKlCmjSy65RFOmTAlqno8XERGhRx55RGvWrNFHH32Ub58zMzM1bNgw1axZU16vV1WqVNEDDzygzMzMgDinsblmzRo1b95ccXFxqly5sh577DH/9s2pn0uXLlWjRo0UGxurc845R2+++aZjnw4cOKDbbrtN5cqVU2Jionr16pVrvZSkl156Seedd568Xq8qVaqkAQMG5PrJopttipT/Z5R0dN3p2rWrEhISVKFCBd1///3Kzs4OaNfttubIkSMaOXKkf51ISUnRQw89lGu5m5kee+wxVa5cWfHx8WrZsqX++9//Oi434FTiyBJQQOnp6dq1a1fAtPLly/v/P3LkSMXExOj+++9XZmamYmJitGDBArVv314NGzbUsGHDFBERoUmTJqlVq1b6z3/+o0aNGkk6+tOSdu3aqUKFCkpLS9ORI0c0bNgwnXXWWQXu7/bt23XZZZf5d5IrVKigWbNmqV+/fsrIyMh14v3o0aMVERGh+++/X+np6RozZoxuvPFGffnll/6YuXPn6uqrr1ZycrLuvvtuJSUl6ccff9Snn36qu+++W9ddd50GDBigyZMn66KLLgpof/LkyWrRooXOPvvsAs/TzTffrIceekifffaZbrnlFseY//73v7r66qvVoEEDjRgxQl6vV+vXr/cXqHXr1tWIESP06KOP6tZbb9UVV1whSbr88sv9bezevVvt27dXjx49dNNNN+X7PowaNUoej0cPPvigduzYoXHjxqlNmzZatWqV/wiYG276diwzU+fOnbVw4UL169dPF154oebMmaN//vOf+uOPP/Tss88GxC9dulTTpk3TP/7xD5UsWVL/+te/1K1bN/36668qV65cnv06ePCgWrRoofXr12vgwIGqXr26pk6dqj59+mjPnj26++67VbduXb311lu69957VblyZf/PuSpUqHDCef7kk0+0b98+9ejRQ0lJSWrRooUmT56snj17BsTNnDlT119/vc4//3w98cQT+uuvv9SvXz/H9em2227T66+/rr59++quu+7Spk2b9MILL+jbb7/V559/rujoaO3YscM/5gYPHqzSpUtr8+bNmjZt2gn7eyJuxtDxrr32Wv38889655139Oyzz/q3KccuNzfvW7Dj3UlWVlaubVx8fLzi4+PzfM2kSZN06NAh3XrrrfJ6vSpbtqxeffVV3XXXXbruuut0991369ChQ1qzZo2+/PJL9ezZ09U856Vnz54aOXKkRowYoWuuuSbPo0s+n0+dO3fW0qVLdeutt6pu3br67rvv9Oyzz+rnn3/W9OnT88zxxx9/qGXLlvJ4PBoyZIhKlCihf//733kegVq/fr2uu+469evXT71799Zrr72mPn36qGHDhjrvvPMCYgcOHKjSpUsrLS1Na9eu1fjx4/XLL7/4CxrpaDE5fPhwtWnTRnfccYc/7uuvv/avvwXh9BklHf2yJzU1VY0bN9bTTz+tefPm6ZlnnlGNGjV0xx13SApuW9O/f3+98cYbuu6663Tffffpyy+/1BNPPKEff/wxoMh99NFH9dhjj6lDhw7q0KGDvvnmG7Vr106HDx8u0PwBIWMAgjJp0iST5PhnZrZw4UKTZOecc44dOHDA/zqfz2e1atWy1NRU8/l8/ukHDhyw6tWrW9u2bf3TunbtarGxsfbLL7/4p/3www8WGRlpxw7bTZs2mSSbNGlSrn5KsmHDhvkf9+vXz5KTk23Xrl0BcT169LBSpUr5+5rT/7p161pmZqY/7rnnnjNJ9t1335mZ2ZEjR6x69epWrVo1++uvvwLaPHb+brjhBqtUqZJlZ2f7p33zzTd59vtYOcv666+/zjOmVKlSdtFFF/kfDxs2LGAZPfvssybJdu7cmWcbX3/9dZ79ad68uUmyCRMmOD7XvHlz/+OcZXf22WdbRkaGf/r7779vkuy5557zT6tWrZr17t073zZP1LfevXtbtWrV/I+nT59ukuyxxx4LiLvuuuvM4/HY+vXr/dMkWUxMTMC01atXmyR7/vnnc+U61rhx40ySvf322/5phw8ftiZNmlhCQkLAvFerVs06dux4wvaOdfXVV1vTpk39j1955RWLioqyHTt2BMSdf/75VrlyZdu7d69/2qJFi0xSwDL5z3/+Y5Js8uTJAa+fPXt2wPSPPvoo33UtL3mtB/mNobw89dRTJsk2bdqU6zm375vb8Z6XatWqOW7jcrYpx697OduixMTEXO9Vly5d7LzzzivwPDvp3bu3lShRwszM3njjDZNk06ZN8z8vyQYMGOB//NZbb1lERIT95z//CWhnwoQJJsk+//zzgHk/dmzeeeed5vF47Ntvv/VP2717t5UtWzZXn3OW25IlS/zTduzYYV6v1+677z7/tJxtW8OGDe3w4cP+6WPGjDFJ9vHHH/tfGxMTY+3atQvYhr7wwgsmyV577bU8+50jr/Xz+M8os6PLVZKNGDEiYPpFF11kDRs29D92u61ZtWqVSbL+/fsHxN1///0myRYsWBAwnx07dgz4/HjooYdMkuN8AacKP8MDCujFF1/U3LlzA/6O1bt374CjCKtWrdK6devUs2dP7d69W7t27dKuXbu0f/9+tW7dWkuWLJHP51N2drbmzJmjrl27qmrVqv7X161bV6mpqQXqq5npww8/VKdOnWRm/ty7du1Samqq0tPT9c033wS8pm/fvgG/Yc85qrFx40ZJ0rfffqtNmzbpnnvuyXVC9rHf7vbq1UtbtmzRwoUL/dMmT56suLi4kJyUnZCQcMKr4uX07eOPPy7wCeler1d9+/Z1Hd+rVy+VLFnS//i6665TcnKy/u///q9A+d36v//7P0VGRuquu+4KmH7ffffJzHJdWa5NmzaqUaOG/3GDBg2UmJjof49PlCcpKUk33HCDf1p0dLTuuusu7du3T4sXLy5Q/3fv3q05c+YEtNutWzf/T9pybNmyRd9995169eoVcJnj5s2b6/zzzw9oc+rUqSpVqpTatm0bsN43bNhQCQkJ/vUyZz359NNPlZWVVaD+Hy+/MVRQ+b1vBRnvTho3bpxrG9erV68TvqZbt265jgiVLl1av//+u77++usCzG3+brzxRtWqVUsjRoxwvDKedHQ9qFu3rurUqROwPFq1aiVJAdun482ePVtNmjQJuMBK2bJldeONNzrG16tXz/9eS0ePkNWuXdvxfb/11lsDjgzdcccdioqK8m8r5s2bp8OHD+uee+4JOE/slltuUWJiombOnJlnv/Nz/GfUsW6//faAx1dccUVA/91ua3LmY9CgQbniJPn7nzOfd955Z8Dnx5l4qwGcfvgZHlBAjRo1OuEFHo6/Ut66deskHf2Aykt6eroyMzN18OBB1apVK9fztWvXLtAO986dO7Vnzx698soreuWVVxxjduzYEfD42EJNksqUKSNJ/t/Tb9iwQVL+VwBs27atkpOTNXnyZLVu3Vo+n0/vvPOOunTpElBQFNS+fftUsWLFPJ+//vrr9e9//1v9+/fX4MGD1bp1a1177bW67rrrXF9w4+yzzw7q5Ofj3zuPx6OaNWvmew7Gyfrll19UqVKlXMu1bt26/uePdfx7LB19n53OmTg+T61atXItv7zyuPXee+8pKytLF110UcC5PY0bN9bkyZM1YMCAgPZr1qyZq42aNWsGFALr1q1Tenp6nutIznrfvHlzdevWTcOHD9ezzz6rFi1aqGvXrurZs2eBT/jPbwwVVH7vW0HGu5Py5curTZs2QfXt+O2eJD344IOaN2+eGjVqpJo1a6pdu3bq2bOnmjZtGlTbeYmMjNQjjzyi3r17a/r06brmmmtyxaxbt04//vhjnj/tO9Hy+OWXX9SkSZNc053WPym4cXX8tiIhIUHJycn+bUXOul67du2AuJiYGJ1zzjkFHmuS83slSbGxsbmW0/H9d7ut+eWXXxQREZFrWSUlJal06dIBcVLu5VGhQgX/uAHChWIJKCTHf2OXc1TjqaeeyvPy1AkJCblOej2RvH6ff/yJuDm5b7rppjyLtWMvvy0d3QFxktc3t3mJjIxUz5499eqrr+qll17S559/ri1btuR5la1g/P7770pPT89zp0U6+j4sWbJECxcu1MyZMzV79my99957atWqlT777LM85/P4NkLtRO+dmz6FQqje41CZPHmyJOW5E71x40adc845QbXp8/lUsWJFf9vHy9kpzLmZ8PLlyzVjxgzNmTNHf//73/XMM89o+fLlBbpRZ2Et3/zaLch4DxWnsVK3bl2tXbtWn376qWbPnq0PP/xQL730kh599FENHz48JHlvvPFG/7lLXbt2zfW8z+fT+eefr7Fjxzq+vkqVKiHphxS+cRXsNiWv7VphbH9O1Y3CgcJAsQScIjk/m0lMTDzht7UVKlRQXFyc/0jUsdauXRvwOOcbt+OvinT8t40VKlRQyZIllZ2dHfQ3xXnJmZ/vv/8+3zZ79eqlZ555RjNmzNCsWbNUoUKFAv+k8FhvvfWWJOXbVkREhFq3bq3WrVtr7Nixevzxx/Xwww9r4cKFatOmTcg/yI9/78xM69evD9hBLVOmjOMNOH/55ZeAgiCYvlWrVk3z5s3T3r17A77x/emnn/zPh0K1atW0Zs0a+Xy+gKNLJ5Nn06ZNWrZsmQYOHKjmzZsHPOfz+XTzzTdrypQpeuSRR/ztO11Z7vhpNWrU0Lx589S0aVNXRe9ll12myy67TKNGjdKUKVN044036t1331X//v2DnqeCOtn1sTDG+8kqUaKErr/+el1//fU6fPiwrr32Wo0aNUpDhgxRbGzsSc9zztGlPn36OF49sUaNGlq9erVat24ddK5q1aq5WtcKYt26dWrZsqX/8b59+7R161Z16NDBn1s6uu0/drtw+PBhbdq0KeD9dbtNCQW325pq1arJ5/Np3bp1/qNO0tELkOzZsycgTjq6PI7t686dO0/6SCxwsjhnCThFGjZsqBo1aujpp5/Wvn37cj2/c+dOSUc/9FNTUzV9+nT9+uuv/ud//PFHzZkzJ+A1iYmJKl++vJYsWRIw/aWXXgp4HBkZqW7duunDDz/U999/n2fuYFx88cWqXr26xo0bl+sD+vhvUBs0aKAGDRro3//+tz788EP16NHjpO+FtGDBAo0cOVLVq1fP89wBSfrzzz9zTcs5spdzFC/nHj5OOxoF8eabbwacR/XBBx9o69atATdXrVGjhpYvXx5wpadPP/001yXGg+lbhw4dlJ2drRdeeCFg+rPPPiuPxxOym7t26NBB27Zt03vvveefduTIET3//PNKSEjIVey4kXPk54EHHtB1110X8Ne9e3c1b97cH1OpUiXVr19fb775ZsBYWrx4sb777ruAdrt3767s7GyNHDkyV84jR474l+tff/2Va709fj05VU52fSyM8X4ydu/eHfA4JiZG9erVk5n5zw8LxRi86aabVLNmTcejVd27d9cff/yhV199NddzBw8e1P79+/NsNzU1VV988YVWrVrln/bnn3/mebQyGK+88krAOXLjx4/XkSNH/GO1TZs2iomJ0b/+9a+A9XPixIlKT09Xx44d/dPcblNCwe22JqfoGzduXEBczhG+nP63adNG0dHRev755wPm8/jXAeHAkSXgFImIiNC///1vtW/fXuedd5769u2rs88+W3/88YcWLlyoxMREzZgxQ5I0fPhwzZ49W1dccYX+8Y9/+HdEzzvvPK1Zsyag3f79+2v06NHq37+/LrnkEi1ZskQ///xzrvyjR4/WwoUL1bhxY91yyy2qV6+e/vzzT33zzTeaN2+eY1GR3/yMHz9enTp10oUXXqi+ffsqOTlZP/30k/773//mKux69eql+++/X5KC/gnerFmz9NNPP+nIkSPavn27FixYoLlz56patWr65JNPFBsbm+drR4wYoSVLlqhjx46qVq2aduzYoZdeekmVK1dWs2bNJB3dyShdurQmTJigkiVLqkSJEmrcuHGev+nPT9myZdWsWTP17dtX27dv17hx41SzZs2Ay5v3799fH3zwga666ip1795dGzZs0Ntvvx1w4n6wfevUqZNatmyphx9+WJs3b9YFF1ygzz77TB9//LHuueeeXG0X1K233qqXX35Zffr00cqVK5WSkqIPPvhAn3/+ucaNG1egc9EmT56sCy+8MM+fQ3Xu3Fl33nmnvvnmG1188cV6/PHH1aVLFzVt2lR9+/bVX3/9pRdeeEH169cPKKCaN2+u2267TU888YRWrVqldu3aKTo6WuvWrdPUqVP13HPP6brrrtMbb7yhl156Sddcc41q1KihvXv36tVXX1ViYqJ/h+9UadiwoSTp4YcfVo8ePRQdHa1OnToFdWPeUI/3k9GuXTslJSWpadOmOuuss/Tjjz/qhRdeUMeOHf3rSijmOTIyUg8//LDjxVhuvvlmvf/++7r99tu1cOFCNW3aVNnZ2frpp5/0/vvva86cOXmeg/rAAw/o7bffVtu2bXXnnXf6Lx1etWpV/fnnnyd1VOzw4cNq3bq1unfvrrVr1+qll15Ss2bN1LlzZ0lHjxIOGTJEw4cP11VXXaXOnTv74y699NKAbanbbUoouN3WXHDBBerdu7deeeUV7dmzR82bN9dXX32lN954Q127dvUfVcu5l9MTTzyhq6++Wh06dNC3336rWbNmBdySAwiLU335PeB0l9/lrHMuyzp16lTH57/99lu79tprrVy5cub1eq1atWrWvXt3mz9/fkDc4sWLrWHDhhYTE2PnnHOOTZgwIddlsc2OXnq8X79+VqpUKStZsqR1797dduzYkevS4WZm27dvtwEDBliVKlUsOjrakpKSrHXr1vbKK6/k2/+8LlO+dOlSa9u2rZUsWdJKlChhDRo0cLz09NatWy0yMtLOPfdcx+Xi5PjLtMfExFhSUpK1bdvWnnvuuYBLVOc4fhnNnz/funTpYpUqVbKYmBirVKmS3XDDDfbzzz8HvO7jjz+2evXqWVRUVMB8Nm/ePM/LHud1Sd533nnHhgwZYhUrVrS4uDjr2LFjwGXgczzzzDN29tlnm9frtaZNm9qKFStytXmivh1/+WYzs71799q9995rlSpVsujoaKtVq5Y99dRTAZfjNct9aeUceV1++Hjbt2+3vn37Wvny5S0mJsbOP/98x8ubu7l0+MqVK02SDR06NM+YzZs3myS79957/dPeffddq1Onjnm9Xqtfv7598skn1q1bN6tTp06u17/yyivWsGFDi4uLs5IlS9r5559vDzzwgG3ZssXMjl7O/oYbbrCqVaua1+u1ihUr2tVXX20rVqzId1nktR64HUNORo4caWeffbZFREQEXJ46mPfNzXjPS37vW16XDn/qqadyxb788st25ZVX+rd5NWrUsH/+85+Wnp7uap7zyp9z6fBjZWVlWY0aNRyX0+HDh+3JJ5+08847z7xer5UpU8YaNmxow4cPD+iL07L89ttv7YorrjCv12uVK1e2J554wv71r3+ZJNu2bVvAa52W2/HrSM62bfHixXbrrbdamTJlLCEhwW688UbbvXt3rte/8MIL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S6DQtFkYn4so2hg7oWvzWPwML0RiYmK0evVq1a1bN9xd8du6davGjx+vpUuXauvWrYqIiNA555yjrl27qk+fPoqMjAx3FwEAAIAiq1jcZyk/v/32m4YNG6YXX3xRK1euVNmyZVWvXr2AmEOHDun999/XqlWrHNvIzs7W6NGjVa5cOUnS2LFjc8Xs379f77//vtavX6/k5GTdcMMN/vg777xT3bt31xVXXJFvf1944QV99dVX6tChg3r06KG33npLTzzxhHw+n6699lqNGDFCq1atUps2bVSzZk3FxcVp3bp16tmzpw4fPqz7779fr732mmbPnq2SJUsGubQQDl999ZW++OKLgJMVmzRpokaNGrl6/V9//aUZM2b4z0Hw+XyKiIjIFefz+fT777+ratWqkiQz0+bNm1WlShVFRUXp8OHD+uijj5SZmakOHTqofPnyeeZs1aqVJk2a5L/3lpNNmzb5x8Ox90XIzMxURESE/8TNDRs26LXXXtOvv/6qatWqqV+/fqpevbo+/PBDtW/fXvHx8fkug9WrV2vlypVq0aKFzjnnHP33v//Viy++KJ/Pp2uuuUapqakB8QsWLMj1RUPnzp1Vq1atfHOhaAj1uJHcjZ3CHjeS89gpjHEjBTd2GDenv8OHD2v69Om5xs7ll1+uLl26KCYmJt82tm/frpdffjng3J3ff/9dpUuXVkJCQkBsVlaWvvjiC1155ZXavXu31qxZowsuuEBly5bVrl27NHHiRGVmZupvf/vbCb+QPuecczRnzpwTrmtmpkWLFvnHTmpqqqKjo/X7778rNjbWPzb/85//aMKECf6xM2DAADVp0kTPPPOMrrvuunzHZ45PP/1UX331lVJTU9W0aVMtWLBATz/9tH9/7dZbb5UkHTx4UO+8847jl9utW7d2lQuFKOhjUWegVatWmcfjsWrVqvkvNXjllVfali1b/DHbtm3zX37wwgsvtBYtWgT8eTweu/TSS61Fixb+n0/VrVvXdu/ebWZmv/76q6WkpFipUqXs0ksvtbJly1rFihX9l2rNyVurVi0bPXq0bd261bGvI0eOtJIlS1q3bt0sKSnJRo8ebeXKlbPHHnvMHn/8catQoYI9+uij1rRpU0tLS/O/7q233rLGjRubmdmff/5pF154od11113+5zMzM+29996ze+65x3r06GE9evSwe+65x95//33LzMx0tRy3bduW6zejv/32m+3duzdX7OHDh23x4sVmZrZr1y5bsGCBf1nt3LnTRo8ebcOHD7cffvjhhDmrV69uP//88wljfD6fLViwwF555RWbMWOG/xKfv/32m+3cudMft2TJEuvZs6c1a9bMbrzxRv/lu59++mnbvHlzPnP/PzNmzLChQ4fa0qVLzcxs/vz51r59e0tNTbWXX37ZH3fgwAGbOHGi9e3b16666irr0KGDDRw40ObNm+eP2b59uzVr1sy/fjZq1MgaNWrkX1ebNWtm27dvz7dPq1atsoiICEtPT7e//e1vFhsbaxUrVrShQ4fakSNH/HE567mZ2U8//WTVqlWziIgIq1mzpm3cuNEaNmxoJUqUsPj4eCtfvrz9/PPP9vHHHzv+RUZG2gsvvOB/fMcdd/jXhQMHDli3bt38YyoiIsJatmzpf7558+Y2depUMzNbunSpeb1ea9CggV1//fV20UUXWXx8vC1btsw8Ho8lJibaLbfcYsuXL89z/j/88EOLjIy0cuXKWUJCgs2dO9dKly5tbdq0sdTUVIuMjLTJkyf7l3mjRo0sIiLCoqKiLCIiwho2bGhJSUkWGRlp//znPwPa/vLLL23cuHE2ePBgGzx4sI0bN86+/PLLfN+THH/++Weu31BnZ2c7xmZnZ9svv/xiZkfX640bN1pWVpaZHR3D7777rr3xxhsB67WTli1bulqnN27caJ999lnAHdEPHToUcJnc9evX20MPPWQ33XSTPfzww/5t2gcffGD79+/PN0eOVatW2cSJE23Dhg1mZvb999/bHXfcYbfddpvNnj07IHb+/Pk2fPhwu/322+0f//iHPf300wHbgVCPGzNzPXZCPW7MzPXYCfW4MXM/doIdN2ahHztuxo1Z4Y8dp3FjVjhjJ5hxY5b/2Fm3bp2dc845Fhsba82bN7fu3btb9+7drXnz5hYbG2s1a9a0devWuepXztjZsmWLXXrppRYREWGRkZF28803B+wX5IydL7/80kqVKmUej8fKlCljK1assOrVq1utWrWsRo0aFhcXZytXrrTnnnvO8S8yMtKGDBnif2xm1r59e9uzZ4+Zme3evdsaN25sHo/HKlSoYBEREVanTh3bsWOHNWrUyGbMmGFmR89riYiIsM6dO9uDDz5o11xzjUVHR9uMGTPM4/FYZGSktWnTxt59990T7h9NmDDBoqKirGHDhpaYmGhvvfWWlSxZ0vr372+33XabxcXF2bhx42zdunVWrVo1q1ixolWpUsU8Ho917NjRGjdubJGRkfa3v/3Nv67mYOyE5nPHrWJRLOX1oZTz9+yzz5ok69ixo+3cudPWrVtnHTt2tOrVq/tXkpzB/MQTT1j16tVt/vz5ATmioqLsv//9b8A0j8fj/0C+8cYb7fLLL/cP2r1791qbNm3shhtu8MfOmzfP7r77bitfvrxFR0db586dbcaMGQErcY0aNezDDz80s6Mbo8jISHv77bf9z0+bNs1q1qxpcXFx/o2n2dEVPjo62rZt22ZmZp999plVqlTJzNg4mhXdjWO3bt2sSZMm9tNPP+XK9dNPP9nll19u1113naWnp5/w7z//+Y9FRETYXXfdZeeee65NnTrVXn31VatWrZp17NjRP0/btm0zj8djZmZdunSxzp0725o1a+yee+6xunXrWpcuXezw4cN26NAh69Spk910003+Hbac+x44/eXc6yBnPAwZMsQqV65sCxYssP3799vSpUutRo0aNnjwYDMzS0xM9H+AN2/e3O69996AeX/kkUesadOm5vF4bMSIEXbRRReZx+Ox8847z5599lnbtWtXQPzFF19sjz32mJmZvfPOO1a6dGkbMWKE//mnn37aLrzwQjMzu/76661r166Wnp5uhw4dsoEDB1qvXr3M7OiORrly5WzcuHHskFvR3SEP9bgxM9djJ9Tjxsxcj51Qjxsz92PH7bgx40sgs6L7JVCbNm2sS5culp6enitfenq6denSxdq1a2erV68+4d97773nX+a9evWyxo0b29dff21z5861hg0b2iWXXGJ//vmn//3xeDzWpk0b69+/v2VkZNhTTz1llStXtv79+/vz9+3b17p27Woej8cqV65sKSkpAX8ej8fOPvtsS0lJ8Z+/cux+2B133GH16tXz71j/9ttv1rBhQ7v99tutRIkS/umNGze20aNHB8z7888/7x8vkyZNsi5dulh0dLSVK1fO7r777lw792Zm9erVs1deecXMzBYsWGCxsbH+G/+amU2aNMnq1q1r7du3t9tuu81/7vvo0aOtffv2Zmb2888/W0pKiv9Gqoyd0H3uBKNYFEtuPpQk2Zo1a/yv8fl8dvvtt1vVqlVtw4YNASvMV199Zeeee67dd999/ko3v2Lp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Zs2y2bNn2/nnn29///vfrXfv3ta8eXP78ccfbePGjf6fluVYtGiR/1dIjJ3Qfe4Eo1gUS0uWLPEfjXGyb98+u+WWW/w/g3Jyxx13+Af+8X777TebPn267du3L2B6WlpawN/xJ1vef//91qNHDzMzS0lJcXWYMDs720aNGmVXX321Pf744+bz+eydd96xKlWqWLly5axPnz4B/Th48KDjBRaOxcax6G4cDx06ZLfffrvFxMRYRESExcbGWmxsrEVERFhMTIzdcccddujQIXvllVdyFXvH2rZtm6Wlpdmdd97pLwqOl5GRYY0bN/ZvGG+77TZ79dVX82zziSeesA4dOgRMO3DggN12221Wq1Yti4yMDHhvmjdvHnBRlOPbHjlypDVv3tz/eNmyZXbZZZflOop59tln+899yO9LhmPnv23btpaQkGCpqam2Z88eGzhwoP/btVq1avk3+hs2bLAaNWpYVFSURUdHW+nSpW3u3Ln+tiZNmmSDBw9mh7wI75DnNW48Hk+Bxo2ZuR47oR43ZsGNnVCOm5xl4GbsuB03ZsaXQEX4SyCzoz8LT05ODjg64fF4LDk52f9+TJs2zd566608+/jnn3/a66+/bmZmDzzwgLVr184xLisryzp37mwRERGWlpZm77zzTp5tPvTQQ3bttdcGTPP5fPb444/7z706fuz06dMn4O+9994LeP6f//ynpaammtnRoxM9evSwkiVL+sdNdHS0XX755fbRRx+ZWXBjJ2ffsn79+nbrrbdaZmamPfXUUxYTE2Mej8datGhh27dvt+3bt/vHbEREhFWrVi3g6NHUqVPtX//6l5kxdkL5uROMYlEsIX/h2Dh6PB42ji42jmZHN4QLFiywKVOm2JQpU2zBggWO55jl588//8z17c2xMjIyTvit1bE2btwYcMXIY3388cd2zz33uF5uZkeLlN9++y3X9B07dtjy5ctt2bJlAUchzY5+81SQG0Ifm/O7777LdaWh/fv325w5c2zGjBl5XuEnmEI2ZyfVCTvkJ94h93g8BdohNzs6bubPn+8fN/Pnz3c1bpzWqbzGTk5sfmMnJy6/cXPXXXe5Xm45bTqNnWPHzfHfHG/evNnx6lfBjCWnseM0bpza5EugovEl0LE7p8ePHbOj6+qyZcsc16FgZGVlnXDcZWVlubo65/79++3QoUOOz61YscLGjRvn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E7V27VpVqlQp3F0CAJwhOLIEADht7du3T++9957uuOMOdezYUa+//nrA85988olq1aql2NhYtWzZUm+88YY8Ho/27Nnjj1m6dKmuuOIKxcXFqUqVKrrrrrtOeB80AEDxQbEEADhtvf/++6pTp45q166tm266Sa+99ppyfjCxadMmXXfdderatatWr16t2267TQ8//HDA6zds2KCrrrpK3bp105o1a/Tee+9p6dKlGjhwYDhmBwBQxPAzPADAaatp06bq3r277r77bh05ckTJycmaOnWqWrRoocGDB2vmzJn67rvv/PGPPPKIRo0apb/++kulS5dW//79FRkZqZdfftkfs3TpUjVv3lz79+9XbGxsOGYLAFBEcGQJAHBaWrt2rb766ivdcMMNkqSoqChdf/31mjhxov/5Sy+9NOA1jRo1Cni8evVqvf7660pISPD/paamyufzadOmTadmRgAARVZUuDsAAEBBTJw4UUeOHAm4oIOZyev16oUXXnDVxr59+3TbbbfprrvuyvVc1apVQ9ZXAMDpiWIJAHDaOXLkiN58800988wzateuXcBzXbt21TvvvKPatWvr//7v/wKe+/rrrwMeX3zxxfrhhx9Us2bNQu8zAOD0wzlLAIDTzvTp03X99ddrx44dKlWqVMBzDz74oBYsWKD3339ftWvX1r333qt+/fpp1apVuu+++/T7779rz549KlWqlNasWaPLLrtMf//739W/f3+VKFFCP/zwg+bOnev66BQA4MzFOUsAgNPOxIkT1aZNm1yFkiR169ZNK1as0N69e/XBBx9o2rRpatCggcaPH++/Gp7X65UkNWjQQIsXL9bPP/+sK664QhdddJEeffRR7tUEAJDEkSUAQDEyatQoTZgwQb/99lu4uwIAOA1wzhIA4Iz10ksv6dJLL1W5cuX0+eef66mnnuIeSgAA1yiWAABnrHXr1umxxx7Tn3/+qapVq+q+++7TkCFDwt0tAMBpgp/hAQAAAIADLvAAAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAAAAAcECxBAAAAAAO/h8knTzzk3So3QAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Read the file ages_population.csv\n", + "df_ages3 = pd.read_csv('/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/ages_population3.csv')\n", + "\n", + "# Calculate the frequency distribution\n", + "age_counts = df_ages3['observation'].value_counts().sort_index()\n", + "\n", + "# Plot the frequency distribution\n", + "plt.figure(figsize=(10, 6))\n", + "age_counts.plot(kind='bar')\n", + "plt.title('Frequency Distribution of Ages in the First Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "plt.grid(True)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2.- Calculate the mean and standard deviation. Compare the results with the plot in step 1. What is happening?" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Exact Mean for Third Neighbourhood: 41.989\n", + "Exact Standard Deviation for Third Neighbourhood: 16.14470595986593\n", + "Comparison of Means:\n", + "First Neighbourhood Mean: 36.56\n", + "Second Neighbourhood Mean: 27.155\n", + "Third Neighbourhood Mean: 41.989\n", + "\n", + "Comparison of Standard Deviations:\n", + "First Neighbourhood Standard Deviation: 12.81649962597677\n", + "Second Neighbourhood Standard Deviation: 2.9698139326891835\n", + "Third Neighbourhood Standard Deviation: 16.14470595986593\n" + ] + } + ], + "source": [ + "# Calculate the exact mean and standard deviation for the third dataset\n", + "exact_mean_3 = df_ages3['observation'].mean()\n", + "exact_std_dev_3 = df_ages3['observation'].std()\n", + "\n", + "print(\"Exact Mean for Third Neighbourhood:\", exact_mean_3)\n", + "print(\"Exact Standard Deviation for Third Neighbourhood:\", exact_std_dev_3)\n", + "\n", + "# Compare the results with the plot in step 1\n", + "print(\"Comparison of Means:\")\n", + "print(\"First Neighbourhood Mean:\", exact_mean_1)\n", + "print(\"Second Neighbourhood Mean:\", exact_mean_2)\n", + "print(\"Third Neighbourhood Mean:\", exact_mean_3)\n", + "\n", + "print(\"\\nComparison of Standard Deviations:\")\n", + "print(\"First Neighbourhood Standard Deviation:\", exact_std_dev_1)\n", + "print(\"Second Neighbourhood Standard Deviation:\", exact_std_dev_2)\n", + "print(\"Third Neighbourhood Standard Deviation:\", exact_std_dev_3)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'The higher mean and standard deviation in the third neighbourhood suggest an older and more varied population. Compared to the first and second neighbourhoods, the third neighbourhood appears to have a more diverse age range with a tendency towards older ages'" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"The higher mean and standard deviation in the third neighbourhood suggest an older and more varied population. Compared to the first and second neighbourhoods, the third neighbourhood appears to have a more diverse age range with a tendency towards older ages\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3.- Calculate the four quartiles. Use the results to explain your reasoning for question in step 2. How much of a difference is there between the median and the mean?" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Quartiles for Third Neighbourhood:\n", + "0.25 30.0\n", + "0.50 40.0\n", + "0.75 53.0\n", + "1.00 77.0\n", + "Name: observation, dtype: float64\n", + "Median for Third Neighbourhood: 40.0\n" + ] + } + ], + "source": [ + "# Calculate the four quartiles\n", + "quartiles = df_ages3['observation'].quantile([0.25, 0.5, 0.75, 1.0])\n", + "median = df_ages3['observation'].median()\n", + "\n", + "print(\"Quartiles for Third Neighbourhood:\")\n", + "print(quartiles)\n", + "print(\"Median for Third Neighbourhood:\", median)" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Difference between Mean and Median: 1.9889999999999972\n", + "\n", + "Summary:\n", + "Mean: 41.989\n", + "Median: 40.0\n", + "Standard Deviation: 16.14470595986593\n", + "Quartiles: \n", + "0.25 30.0\n", + "0.50 40.0\n", + "0.75 53.0\n", + "1.00 77.0\n", + "Name: observation, dtype: float64\n", + "Difference between Mean and Median: 1.9889999999999972\n" + ] + } + ], + "source": [ + "# Compare the mean and the median\n", + "difference_mean_median = exact_mean_3 - median\n", + "print(\"Difference between Mean and Median:\", difference_mean_median)\n", + "\n", + "# Summary of results and interpretation\n", + "print(\"\\nSummary:\")\n", + "print(f\"Mean: {exact_mean_3}\")\n", + "print(f\"Median: {median}\")\n", + "print(f\"Standard Deviation: {exact_std_dev_3}\")\n", + "print(f\"Quartiles: \\n{quartiles}\")\n", + "print(f\"Difference between Mean and Median: {difference_mean_median}\")\n" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'The mean is higher than the median, which indicates that the distribution is slightly skewed to the right. This means there are some higher ages that are pulling the mean up. The standard deviation of 16.14 reflects a wide spread of ages, showing significant variability.\\nIn summary, the third neighbourhood has a relatively older population with a wide age range, and the distribution is slightly right-skewed, meaning a few higher age values are increasing the mean more than the median.\\n'" + ] + }, + "execution_count": 31, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"The mean is higher than the median, which indicates that the distribution is slightly skewed to the right. This means there are some higher ages that are pulling the mean up. The standard deviation of 16.14 reflects a wide spread of ages, showing significant variability.\n", + "In summary, the third neighbourhood has a relatively older population with a wide age range, and the distribution is slightly right-skewed, meaning a few higher age values are increasing the mean more than the median.\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 4.- Calculate other percentiles that might be useful to give more arguments to your reasoning." + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Additional Percentiles for Third Neighbourhood:\n", + "0.10 22.0\n", + "0.20 28.0\n", + "0.30 32.0\n", + "0.40 36.0\n", + "0.60 45.0\n", + "0.70 50.0\n", + "0.80 57.0\n", + "0.90 67.0\n", + "0.95 70.0\n", + "0.99 74.0\n", + "Name: observation, dtype: float64\n" + ] + } + ], + "source": [ + "# Calculate additional percentiles\n", + "percentiles = df_ages3['observation'].quantile([0.1, 0.2, 0.3, 0.4, 0.6, 0.7, 0.8, 0.9, 0.95, 0.99])\n", + "\n", + "print(\"Additional Percentiles for Third Neighbourhood:\")\n", + "print(percentiles)" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'The 10th and 20th percentiles (22 and 28 years) show that a significant portion of the population is quite young.\\nThe median age is 40 years, indicating the middle point of the age distribution.\\nThe mean age is 41.99 years, slightly higher than the median, suggesting a right-skewed distribution with some higher age values pulling the mean up.\\nThe 60th and 70th percentiles (45 and 50 years) indicate that a considerable portion of the population is in the middle-aged category.\\nThe higher percentiles (90th and 95th) show that only a small fraction of the population is older than 67 and 70 years, respectively.'" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"The 10th and 20th percentiles (22 and 28 years) show that a significant portion of the population is quite young.\n", + "The median age is 40 years, indicating the middle point of the age distribution.\n", + "The mean age is 41.99 years, slightly higher than the median, suggesting a right-skewed distribution with some higher age values pulling the mean up.\n", + "The 60th and 70th percentiles (45 and 50 years) indicate that a considerable portion of the population is in the middle-aged category.\n", + "The higher percentiles (90th and 95th) show that only a small fraction of the population is older than 67 and 70 years, respectively.\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Bonus challenge\n", + "Compare the information about the three neighbourhoods. Prepare a report about the three of them. Remember to find out which are their similarities and their differences backing your arguments in basic statistics." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# your code here" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "\"\"\"\n", + "your comments here\n", + "\"\"\"" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "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.12.3" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/your-code/frequency_distribution_1.png b/your-code/frequency_distribution_1.png new file mode 100644 index 0000000000000000000000000000000000000000..041c4ce3ac1f37976bf0ae992c1ef44919c82795 GIT binary patch literal 30366 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

-{7G3<>PbR3%tp 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 literal 0 HcmV?d00001 diff --git a/your-code/main.ipynb b/your-code/main.ipynb index 5759add..16ed764 100644 --- a/your-code/main.ipynb +++ b/your-code/main.ipynb @@ -1,522 +1,1271 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Understanding Descriptive Statistics\n", - "\n", - "Import the necessary libraries here:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Libraries" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Challenge 1\n", - "#### 1.- Define a function that simulates rolling a dice 10 times. Save the information in a dataframe.\n", - "**Hint**: you can use the *choices* function from module *random* to help you with the simulation." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 2.- Plot the results sorted by value." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 3.- Calculate the frequency distribution and plot it. What is the relation between this plot and the plot above? Describe it with words." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\"\"\"\n", - "your comments here\n", - "\"\"\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Challenge 2\n", - "Now, using the dice results obtained in *challenge 1*, your are going to define some functions that will help you calculate the mean of your data in two different ways, the median and the four quartiles. \n", - "\n", - "#### 1.- Define a function that computes the mean by summing all the observations and dividing by the total number of observations. You are not allowed to use any methods or functions that directly calculate the mean value. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 2.- First, calculate the frequency distribution. Then, calculate the mean using the values of the frequency distribution you've just computed. You are not allowed to use any methods or functions that directly calculate the mean value. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 3.- Define a function to calculate the median. You are not allowed to use any methods or functions that directly calculate the median value. \n", - "**Hint**: you might need to define two computation cases depending on the number of observations used to calculate the median." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 4.- Define a function to calculate the four quartiles. You can use the function you defined above to compute the median but you are not allowed to use any methods or functions that directly calculate the quartiles. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Challenge 3\n", - "Read the csv `roll_the_dice_hundred.csv` from the `data` folder.\n", - "#### 1.- Sort the values and plot them. What do you see?" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\"\"\"\n", - "your comments here\n", - "\"\"\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 2.- Using the functions you defined in *challenge 2*, calculate the mean value of the hundred dice rolls." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 3.- Now, calculate the frequency distribution.\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 4.- Plot the histogram. What do you see (shape, values...) ? How can you connect the mean value to the histogram? " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\"\"\"\n", - "your comments here\n", - "\"\"\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 5.- Read the `roll_the_dice_thousand.csv` from the `data` folder. Plot the frequency distribution as you did before. Has anything changed? Why do you think it changed?" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\"\"\"\n", - "your comments here\n", - "\"\"\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Challenge 4\n", - "In the `data` folder of this repository you will find three different files with the prefix `ages_population`. These files contain information about a poll answered by a thousand people regarding their age. Each file corresponds to the poll answers in different neighbourhoods of Barcelona.\n", - "\n", - "#### 1.- Read the file `ages_population.csv`. Calculate the frequency distribution and plot it as we did during the lesson. Try to guess the range in which the mean and the standard deviation will be by looking at the plot. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 2.- Calculate the exact mean and standard deviation and compare them with your guesses. Do they fall inside the ranges you guessed?" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\"\"\"\n", - "your comments here\n", - "\"\"\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 3.- Now read the file `ages_population2.csv` . Calculate the frequency distribution and plot it." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 4.- What do you see? Is there any difference with the frequency distribution in step 1?" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\"\"\"\n", - "your comments here\n", - "\"\"\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 5.- Calculate the mean and standard deviation. Compare the results with the mean and standard deviation in step 2. What do you think?" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\"\"\"\n", - "your comments here\n", - "\"\"\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Challenge 5\n", - "Now is the turn of `ages_population3.csv`.\n", - "\n", - "#### 1.- Read the file `ages_population3.csv`. Calculate the frequency distribution and plot it." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 2.- Calculate the mean and standard deviation. Compare the results with the plot in step 1. What is happening?" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\"\"\"\n", - "your comments here\n", - "\"\"\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 3.- Calculate the four quartiles. Use the results to explain your reasoning for question in step 2. How much of a difference is there between the median and the mean?" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\"\"\"\n", - "your comments here\n", - "\"\"\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 4.- Calculate other percentiles that might be useful to give more arguments to your reasoning." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\"\"\"\n", - "your comments here\n", - "\"\"\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Bonus challenge\n", - "Compare the information about the three neighbourhoods. Prepare a report about the three of them. Remember to find out which are their similarities and their differences backing your arguments in basic statistics." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\"\"\"\n", - "your comments here\n", - "\"\"\"" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "ironhack-3.7", - "language": "python", - "name": "ironhack-3.7" - }, - "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 -} +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Understanding Descriptive Statistics\n", + "\n", + "Import the necessary libraries here:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "# Libraries\n", + "import pandas as pd\n", + "import random" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: matplotlib in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (3.9.0)\n", + "Requirement already satisfied: contourpy>=1.0.1 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (1.2.1)\n", + "Requirement already satisfied: cycler>=0.10 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (0.12.1)\n", + "Requirement already satisfied: fonttools>=4.22.0 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (4.53.0)\n", + "Requirement already satisfied: kiwisolver>=1.3.1 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (1.4.5)\n", + "Requirement already satisfied: numpy>=1.23 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (1.26.4)\n", + "Requirement already satisfied: packaging>=20.0 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (24.0)\n", + "Requirement already satisfied: pillow>=8 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (10.3.0)\n", + "Requirement already satisfied: pyparsing>=2.3.1 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (3.1.2)\n", + "Requirement already satisfied: python-dateutil>=2.7 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from matplotlib) (2.9.0.post0)\n", + "Requirement already satisfied: six>=1.5 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from python-dateutil>=2.7->matplotlib) (1.16.0)\n", + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m24.0\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.1\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip3 install --upgrade pip\u001b[0m\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "pip install matplotlib" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 1\n", + "#### 1.- Define a function that simulates rolling a dice 10 times. Save the information in a dataframe.\n", + "**Hint**: you can use the *choices* function from module *random* to help you with the simulation." + ] + }, + { + "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", + "
    Rolls
    05
    12
    25
    35
    42
    53
    61
    76
    86
    91
    \n", + "
    " + ], + "text/plain": [ + " Rolls\n", + "0 5\n", + "1 2\n", + "2 5\n", + "3 5\n", + "4 2\n", + "5 3\n", + "6 1\n", + "7 6\n", + "8 6\n", + "9 1" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Function to simulate rolling a dice 10 times\n", + "def roll_dice(n=10):\n", + " return pd.DataFrame({\"Rolls\": random.choices(range(1, 7), k=n)})\n", + "\n", + "# Simulate rolling the dice\n", + "dice_df = roll_dice()\n", + "dice_df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2.- Plot the results sorted by value." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAioAAAHHCAYAAACRAnNyAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAABMrklEQVR4nO3deXhM9+IG8Hdmkkwiy0jIShCxhpCEUo21tcUaS1tLi3L9XI2tbqu4RUMryqVqqdIqtYSrlqItStXW2ioLEbtYkwhCJotsM9/fH2nmNrKYIcmZ5f08T57HnDkz856ZMK9zvud7ZEIIASIiIiIjJJc6ABEREVFpWFSIiIjIaLGoEBERkdFiUSEiIiKjxaJCRERERotFhYiIiIwWiwoREREZLRYVIiIiMlosKkRERGS0WFSInuHjjz+GTCaTOsYLO3ToEGQyGQ4dOqRbNmLECNSpU0eyTMaoTp06GDFiRJnr3LhxAzKZDP/5z38qJ1Q5Kcy9du1aqaMQ6Y1FhSzK2rVrIZPJdD+2trbw8vJCt27dsGTJEqSnp0sdEcD/SkXhj0KhgJubGwYOHIgLFy5IHa9EGRkZmDVrFpo2bQp7e3tUq1YNAQEBmDhxIhITE8v1tX7++Wd8/PHH5fqcxqZPnz6oUqVKmb+TQ4cOhY2NDR4+fFiJyYgqF4sKWaTZs2dj/fr1WLFiBcaPHw8AmDRpEvz9/XH27Nki63700Ud48uSJFDExYcIErF+/Ht988w2GDh2Kn376Ce3atUNycrIkeUqTl5eH9u3bY8GCBWjXrh0WLVqE6dOnIygoCJGRkbh8+XK5vt7PP/+M8PDwcn1OYzN06FA8efIEO3bsKPH+rKws7Ny5E927d0e1atUqOR1R5bGSOgCRFEJCQtCyZUvd7WnTpuHgwYPo1asX+vTpgwsXLsDOzg4AYGVlBSsraf6qtGvXDgMHDtTdbtiwIcaOHYt169ZhypQpkmQqyQ8//IDo6Ghs3LgRQ4YMKXJfdnY2cnNzy+V1MjMzYW9vXy7PZez69OkDR0dHREZGYtiwYcXu37lzJzIzMzF06FAJ0hFVHu5RIfrLq6++ihkzZuDmzZvYsGGDbnlpY1Q2bNiAVq1aoUqVKnB2dkb79u3xyy+/FFlnz549aNeuHezt7eHo6IiePXvi/Pnzz52xXbt2AIBr164VWR4dHY2QkBA4OTnBwcEBr732Gk6cOPFcr7F582a0aNECjo6OcHJygr+/P7744osyH1OYJzg4uNh9tra2cHJyKrLs4MGDuvelatWq6Nu3b7FDWoXve3x8PIYMGQJnZ2e0bdsWI0aMwPLlywGgyOGxQlqtFosXL0aTJk1ga2sLd3d3jBkzBo8ePSry/EIIfPLJJ6hZsyaqVKmCTp06Pddn8/nnn6N27dqws7NDhw4dEBcXp7tvzZo1kMlkiI6OLva4uXPnQqFQ4O7duyU+r52dHfr3749ff/0VKSkpxe6PjIyEo6Mj+vTpg9TUVLz//vvw9/eHg4MDnJycEBISgtjY2Gfm79ixIzp27FhseUnjl/R9b4nKE4sK0d+8/fbbAFCscDwtPDwcb7/9NqytrTF79myEh4fD29sbBw8e1K2zfv169OzZEw4ODvjss88wY8YMxMfHo23btrhx48Zz5St8nLOzs27Z+fPn0a5dO8TGxmLKlCmYMWMGEhIS0LFjR5w8edKg59+/fz8GDx4MZ2dnfPbZZ5g3bx46duyI33//vczH1a5dGwCwbt06CCHKXPfAgQPo1q0bUlJS8PHHH2Py5Mn4448/EBwcXOL78vrrryMrKwtz587F6NGjMWbMGHTp0gVAwXtc+FNozJgx+OCDDxAcHIwvvvgC77zzDjZu3Ihu3bohLy9Pt97MmTMxY8YMNG/eHAsWLEDdunXRtWtXZGZm6vt2Yd26dViyZAnCwsIwbdo0xMXF4dVXX8W9e/cAAAMHDoSdnR02btxY7LEbN25Ex44dUaNGjVKff+jQocjPz8eWLVuKLE9NTcW+ffvQr18/2NnZ4fr16/jhhx/Qq1cvLFq0CB988AHOnTuHDh06lOv4IH3fW6JyJYgsyJo1awQAcfr06VLXUalUIjAwUHd71qxZ4u9/Va5cuSLkcrno16+f0Gg0RR6r1WqFEEKkp6eLqlWritGjRxe5Pzk5WahUqmLLn/bbb78JAOLbb78V9+/fF4mJiWLv3r2iXr16QiaTiVOnTunWDQ0NFTY2NuLatWu6ZYmJicLR0VG0b9++2HP+9ttvumXDhw8XtWvX1t2eOHGicHJyEvn5+WXme1pWVpZo2LChACBq164tRowYIVavXi3u3btXbN2AgADh5uYmHj58qFsWGxsr5HK5GDZsmG5Z4fs+ePDgYs8RFhYmSvrn6+jRowKA2LhxY5Hle/fuLbI8JSVF2NjYiJ49e+o+MyGEmD59ugAghg8fXub2JiQkCADCzs5O3LlzR7f85MmTAoB47733dMsGDx4svLy8ivyuREVFCQBizZo1Zb5Ofn6+8PT0FG3atCmy/KuvvhIAxL59+4QQQmRnZxf7XUxISBBKpVLMnj27WO6/v26HDh1Ehw4dir32078b+r63ROWNe1SInuLg4FDmmRY//PADtFotZs6cCbm86F+hwkMQ+/fvx+PHjzF48GA8ePBA96NQKNC6dWv89ttvemUZOXIkXF1d4eXlhe7duyMtLQ3r16/HSy+9BADQaDT45ZdfEBoairp16+oe5+npiSFDhuDYsWNQq9V6b3vVqlWRmZmJ/fv36/0YoOAwxcmTJ/HBBx8AKDi7atSoUfD09MT48eORk5MDAEhKSkJMTAxGjBgBFxcX3eObNWuGLl264Oeffy723P/85z/1zvH9999DpVKhS5cuRd73Fi1awMHBQfe+HzhwALm5uRg/fnyRw0aTJk0yaLtDQ0OL7BFp1aoVWrduXWQ7hg0bhsTExCKf+caNG2FnZ4cBAwaU+fwKhQKDBg3C8ePHi+xtioyMhLu7O1577TUAgFKp1P0uajQaPHz4EA4ODmjYsCGioqIM2qbS6PveEpU3FhWip2RkZMDR0bHU+69duwa5XA4/P79S17ly5QqAgnEvrq6uRX5++eWXEscclGTmzJnYv38/duzYgWHDhiEtLa1IObp//z6ysrLQsGHDYo9t3LgxtFotbt++rddrAcC7776LBg0aICQkBDVr1sTIkSOxd+9evR6rUqkwf/583LhxAzdu3MDq1avRsGFDLFu2DHPmzAEA3Lx5EwBKzfvgwYNih158fHz0zn/lyhWkpaXBzc2t2PuekZGhe98Lc9SvX7/I411dXYscVnuWpx8PAA0aNChSKrp06QJPT0/d4R+tVotNmzahb9++Zf6eFSocLBsZGQkAuHPnDo4ePYpBgwZBoVDonvPzzz9H/fr1oVQqUb16dbi6uuLs2bNIS0vTe3vKou97S1TeeNYP0d/cuXMHaWlpqFev3gs9j1arBVAwhsLDw6PY/fqeReTv74/OnTsDKPjfe1ZWFkaPHo22bdvC29v7hTKWxM3NDTExMdi3bx/27NmDPXv2YM2aNRg2bBi+++47vZ+ndu3aGDlyJPr164e6deti48aN+OSTT54rU+HZV/rQarVwc3MrcUwIUFBEKptCocCQIUPw9ddf48svv8Tvv/+OxMREvPXWW3o9vkWLFmjUqBE2bdqE6dOnY9OmTRBCFDnbZ+7cuZgxYwZGjhyJOXPmwMXFBXK5HJMmTdL9LpZGJpOVOK5Io9EUuW2M7y1ZBhYVor8pHJTZrVu3Utfx9fWFVqtFfHw8AgICSl0HKPjiLywa5WHevHnYsWMHPv30U3z11VdwdXVFlSpVcOnSpWLrXrx4EXK53OBCY2Njg969e6N3797QarV49913sXLlSsyYMcPgAufs7AxfX1/dmTCFg25Ly1u9enW9Tj8ubaZgX19fHDhwAMHBwWUWnMIcV65cKXLI7P79+wadwVK45+zvLl++XOxsmWHDhmHhwoXYvXs39uzZA1dX1zJ/x542dOhQzJgxA2fPnkVkZCTq16+vO/wHAFu3bkWnTp2wevXqIo97/PgxqlevXuZzOzs74/r168WWF+51KqTve0tU3njoh+gvBw8exJw5c+Dj41Pm3BShoaGQy+WYPXt2sf+tFv7PtFu3bnBycsLcuXNLPBvi/v37z5XR19cXAwYMwNq1a5GcnAyFQoGuXbti586dRQ433Lt3D5GRkWjbtm2xU4PL8vQMp3K5HM2aNQMA3TiTksTGxuLBgwfFlt+8eRPx8fG6Qz2enp4ICAjAd999h8ePH+vWi4uLwy+//IIePXrolbOwzPz9OQDgjTfegEaj0R1q+rv8/Hzd+p07d4a1tTWWLl1aZG/C4sWL9Xr9Qj/88EOR04tPnTqFkydPIiQkpMh6zZo1Q7NmzfDNN99g27ZtGDRokEFz8xT+Ps6cORMxMTHFfj8VCkWxvSLff/99qac+/52vry8uXrxY5HcyNja22Jle+r63ROWNe1TIIu3ZswcXL15Efn4+7t27h4MHD2L//v2oXbs2du3aBVtb21IfW69ePfz73//GnDlz0K5dO/Tv3x9KpRKnT5+Gl5cXIiIi4OTkhBUrVuDtt99GUFAQBg0aBFdXV9y6dQs//fQTgoODsWzZsufK/sEHH2DLli1YvHgx5s2bh08++QT79+9H27Zt8e6778LKygorV65ETk4O5s+fb9Bz/+Mf/0BqaipeffVV1KxZEzdv3sTSpUsREBCAxo0bl/q4/fv3Y9asWejTpw9efvllODg44Pr16/j222+Rk5NTZLr7BQsWICQkBG3atMGoUaPw5MkTLF26FCqVSu9p8Vu0aAGgYObebt266QaddujQAWPGjEFERARiYmLQtWtXWFtb48qVK/j+++/xxRdfYODAgXB1dcX777+PiIgI9OrVCz169EB0dDT27NnzzD0Qf1evXj20bdsWY8eORU5ODhYvXoxq1aqVOBnfsGHD8P777wOA3od9Cvn4+OCVV17Bzp07AaBYUenVqxdmz56Nd955B6+88grOnTuHjRs3FtlbVJqRI0di0aJF6NatG0aNGoWUlBR89dVXaNKkSZGB2Pq+t0TlTtJzjogqWeHpyYU/NjY2wsPDQ3Tp0kV88cUXQq1WF3vM06cnF/r2229FYGCgUCqVwtnZWXTo0EHs37+/yDq//fab6Natm1CpVMLW1lb4+vqKESNGiD///LPMnIWnEn///fcl3t+xY0fh5OQkHj9+LIQoON21W7duwsHBQVSpUkV06tRJ/PHHHyU+Z1mnJ2/dulV07dpVuLm5CRsbG1GrVi0xZswYkZSUVGbe69evi5kzZ4qXX35ZuLm5CSsrK+Hq6ip69uwpDh48WGz9AwcOiODgYGFnZyecnJxE7969RXx8fJF1Ct/3+/fvF3t8fn6+GD9+vHB1dRUymazY57Nq1SrRokULYWdnJxwdHYW/v7+YMmWKSExM1K2j0WhEeHi48PT0FHZ2dqJjx44iLi5O1K5dW+/TkxcsWCAWLlwovL29hVKpFO3atROxsbElPiYpKUkoFArRoEGDMp+7NMuXLxcARKtWrYrdl52dLf71r3/ptiU4OFgcP3682KnHJZ2eLIQQGzZsEHXr1hU2NjYiICBA7Nu3r9jvRiF93lui8iQT4hmzMxER0Qt78OABPD09dRPNEZF+OEaFiKgSrF27FhqNRjf7MRHph2NUiIgq0MGDBxEfH49PP/0UoaGhxc4IIqKy8dAPEVEF6tixo+5aRhs2bCjz2j5EVByLChERERktjlEhIiIio8WiQkREREbLpAfTarVaJCYmwtHRsdQptYmIiMi4CCGQnp4OLy+vYlehf5pJF5XExMQKuTAbERERVbzbt2+jZs2aZa5j0kWl8BLpt2/fNuh6JkRERCQdtVoNb29v3fd4WUy6qBQe7nFycmJRISIiMjH6DNvgYFoiIiIyWiwqREREZLRYVIiIiMhosagQERGR0WJRISIiIqPFokJERERGi0WFiIiIjBaLChERERktFhUiIiIyWiY9My0REZGx0WgFTiWkIiU9G26Otmjl4wKF3PQunGss2yF5Ubl79y4+/PBD7NmzB1lZWahXrx7WrFmDli1bSh2NiIjIIHvjkhC+Ox5Jadm6ZZ4qW8zq7YfuTT0lTGYYY9oOSQ/9PHr0CMHBwbC2tsaePXsQHx+PhQsXwtnZWcpYREREBtsbl4SxG6KKfLkDQHJaNsZuiMLeuCSJkhnG2LZD0j0qn332Gby9vbFmzRrdMh8fHwkTERERGU6jFQjfHQ9Rwn2Fy2buPI/Gnk5GfRhIoxWYsfN8qdshAxC+Ox5d/DwqbTskLSq7du1Ct27d8Prrr+Pw4cOoUaMG3n33XYwePbrE9XNycpCTk6O7rVarKysqERFRqU4lpBbbA/G0lPQcdFhwqHICVRABICktG6cSUtHGt1qlvKakReX69etYsWIFJk+ejOnTp+P06dOYMGECbGxsMHz48GLrR0REIDw8XIKkREREpUtJL7ukFLKSy4x+j0q+tqT9KUXpu73lQSaEeHaiCmJjY4OWLVvijz/+0C2bMGECTp8+jePHjxdbv6Q9Kt7e3khLS4OTk1OlZCYiInra8WsPMfjrE89cb9PolyttT8TzqKztUKvVUKlUen1/SzqY1tPTE35+fkWWNW7cGLdu3SpxfaVSCScnpyI/REREUmtZ2xk2VqV/pcpQcNZMKx+Xygv1HFr5uMBTZYvS9vlIsR2SFpXg4GBcunSpyLLLly+jdu3aEiUiIiIy3OrfE5Cbry3xvsIv/Vm9/Yz6sA8AKOQyzOpdsAPh6aRSbYekReW9997DiRMnMHfuXFy9ehWRkZFYtWoVwsLCpIxFRESktzM3U7FgX8F/ut9qXQueKtsi93uobLHirSCTmUele1NPrHgrCB5Gsh2SjlEBgB9//BHTpk3DlStX4OPjg8mTJ5d61s/TDDnGRUREVN4eZeai55KjSEzLRt8ALyx+MwBaAaOY0fVFVeTMtIZ8f0teVF4EiwoREUlFCIHR6/7EgQsp8Kluj93j28JBKfmE7ybBZAbTEhERmarVxxJw4EIKbKzkWDYkkCWlgrCoEBERGSj61iPM23MRADCjlx+aeKkkTmS+WFSIiIgMkJaVh3GR0cjXCvT098RbrWtJHcmssagQERHpSQiBKdticffxE9RyqYKIAf6QyUxvoKwpYVEhIiLS03d/3MC+8/dgo5Bj+ZAgONlaSx3J7LGoEBER6eHcnTTM/blgXMr0Ho3gX5PjUioDiwoREdEzqLPzEBYZhVyNFt2auGP4K3WkjmQxWFSIiIjKIITAtG3ncCs1CzWd7TB/QHOOS6lELCpERERl2HDyFn46lwQruQxLBwdCVYXjUioTiwoREVEpziemYc6P8QCAqSGNEFjLWeJElodFhYiIqAQZOfkYFxmN3HwtOjd2w6i2PlJHskgsKkRERE8RQuDfO84h4UEmvFS2+M/rHJciFRYVIiKip/z39G3sjEmEQi7D0iGBqFrFRupIFotFhYiI6G8uJqsxa9d5AMD7XRuiRW0XiRNZNhYVIiKiv2Tm5CNsYxRy8rXo2NAVY9rXlTqSxWNRISIi+suMnXG4dj8T7k5KLHy9OeRyjkuRGosKERERgO//vI3tUXchlwFLBgWimoNS6kgEFhUiIiJcuZeOmTsLxqVM7tIAretWkzgRFWJRISIii/YkV4OwyCg8ydOgXf3qeLdjPakj0d+wqBARkUX7eNd5XL6XAVdHJRa9EcBxKUaGRYWIiCzWD9F38d8/b0MmA754MwCujhyXYmxYVIiIyCJdu5+B6TvOAQAmvFofr9SrLnEiKgmLChERWZzsPA3CNkYhK1eDNnWrYcJr9aWORKVgUSEiIosz+8d4XExOR3UHG3wxKAAKjksxWiwqRERkUXbHJiLy5C3IZMDnbwbAzclW6khUBhYVIiKyGDceZGLa9oJxKe929EW7+q4SJ6JnYVEhIiKLkJOvwbhNUcjIyUerOi54r3MDqSORHlhUiIjIIsz96QLi7qrhXMUaXwwOgJWCX4GmgJ8SERGZvT3nkvDd8ZsAgEVvBsBTZSdxItIXiwoREZm1Ww+zMGXbWQDAmA510amhm8SJyBAsKkREZLZy87UYvykK6dn5aFHbGe93bSh1JDIQiwoREZmteXsuIvZOGlR21lgyOBDWHJdicviJERGRWdoffw/f/p4AAPjP681RoyrHpZgiFhUiIjI7dx5l4f3vYwEAo9r6oIufu8SJ6HmxqBARkVnJ02gxflM00p7kobl3VXzYvZHUkegFsKgQEZFZ+c++S4i+9RiOtlZYNjgQNlb8qjNl/PSIiMhsHLx4DyuPXAcALBjYHN4uVSRORC+KRYWIiMxCUtoT/GtLwbiUEa/UQfemHhInovLAokJERCYvX6PFhE3ReJSVh6Y1nDCtB8elmAsWFSIiMnmfH7iM0zcewUFphWWDg6C0UkgdicoJiwoREZm0I5fv48tD1wAA8wb4o051e4kTUXliUSEiIpN1T52N9/4bAyGAoa1roVczL6kjUTljUSEiIpOk0QpM3ByNh5m5aOzphBm9/KSORBWARYWIiEzSF79ewYnrqbC3UWD5kEDYWnNcijliUSEiIpPz+9UHWHrwCgBgbn9/1HV1kDgRVRQWFSIiMikp6dmYuLlgXMqbLb3RN6CG1JGoArGoEBGRydBoBd77bwweZOSgobsjPu7TROpIVMFYVIiIyGR8+dtV/H71IeysFVg+NBB2NhyXYu5YVIiIyCScuP4Qnx+4DACYE9oU9dwcJU5ElYFFhYiIjN7DjBxM3BwNrQAGBNXEwBY1pY5ElYRFhYiIjJpWK/DelljcU+fA19Uec0I5LsWSsKgQEZFR++rINRy5fB9KKzmWDw1CFRsrqSNRJWJRISIio3X6RioW/lIwLiW8TxM08nCSOBFVNhYVIiIySo8yczFhUzQ0WoG+AV548yVvqSORBFhUiIjI6Agh8K/vY5GUlo261e3xaT9/yGQyqWORBHigj4gskkYrcCohFSnp2XBztEUrHxco5Kb3RWiu23H2zmMcvJgCGys5lg0JgoOSX1eWStJP/uOPP0Z4eHiRZQ0bNsTFixclSkRElmBvXBLCd8cjKS1bt8xTZYtZvf3QvamnhMkMY87bUWhmLz/4eXFciiWT/NBPkyZNkJSUpPs5duyY1JGIyIztjUvC2A1Rxb4Uk9OyMXZDFPbGJUmUzDDmvh2FqtnbVHIiMjaSFxUrKyt4eHjofqpXry51JCIyUxqtQPjueIgS7itcFr47HhptSWsYD0vYDgCQAZj9o/FvB1UsyQ/6XblyBV5eXrC1tUWbNm0QERGBWrVqlbhuTk4OcnJydLfVanVlxSQiM3AqIbXU/7kDBV/ySWnZCJj9C6wVkv8/rlR5Gi3Ss/NLvd/ctuNUQira+FarvGBkVCQtKq1bt8batWvRsGFDJCUlITw8HO3atUNcXBwcHYtfwyEiIqLYmBYiIn2lpJdeUv6urC9PU2Iu26Hv50bmSSaEMJp9ao8fP0bt2rWxaNEijBo1qtj9Je1R8fb2RlpaGpycONiKiMp2/NpDDP76xDPX+8/AZmjuXbXiAz2n2NuP8f7Ws89cz1y2Y9Pol7lHxcyo1WqoVCq9vr8lP/Tzd1WrVkWDBg1w9erVEu9XKpVQKpWVnIqIzEUrHxd4qmyRnJZd4rgIGQAPlS36BdU06lN867o6YOH+yxazHa18XCo7GhkRozp4mZGRgWvXrsHT03ROqyMi06GQyzCrt1+pX4oAMKu3n1F/uQP/2w7gf7kLcTvI3EhaVN5//30cPnwYN27cwB9//IF+/fpBoVBg8ODBUsYiIjPWvaknuvi5F1vuobLFireCTGb+ke5NPbHirSB4qGyLLOd2kLmR9NDPnTt3MHjwYDx8+BCurq5o27YtTpw4AVdXVyljEZEZy9doEX3rMQDgX10aoFa1KiY7o2tB6fIw+ZlpzWU7qGJIWlQ2b94s5csTkQU6euUBHmTkwMXeBmM6+MLGyqiOgBtMIZeZxUBTc9kOKn+m/TeUiMhAW8/cAQD0DfAy+ZJCZAn4t5SILEZaVh72x98DAAwIqilxGiLSB4sKEVmM3WcTkavRopGHI5rwQndEJoFFhYgsRuFhn4EtakIm40BNIlPAokJEFuFqSgZibj+GQi5D34AaUschIj2xqBCRRdgWVbA3pWMDV7g6coZrIlPBokJEZk+jFdgRdRcAMKAFB9ESmRIWFSIye79ffYBkdTZUdtZ4rbGb1HGIyAAsKkRk9goP+/Rp7gWllULiNERkCBYVIjJr6uw87DufDKDgbB8iMi0sKkRk1n4+m4TsPC3quTmgWU2V1HGIyEAsKkRk1goP+3DuFCLTxKJCRGbrxoNMnL7xCHIZ0C+Qc6cQmSIWFSIyW9v/2pvStr4r3J1sJU5DRM+DRYWIzJJWK7Dtr7lTOIiWyHSxqBCRWTqR8BB3Hz+Bo60Vuvq5Sx2HiJ4TiwoRmaVtZwr2pvRq5gVba86dQmSqWFSIyOxk5uRjT1wSAGBgCw6iJTJlLCpEZHb2xCUjK1cDn+r2CKrlLHUcInoBLCpEZHa2nrkNABgQVINzpxCZOBYVIjIrt1OzcOJ6KmQyoF8Qz/YhMnUsKkRkVrb/dUryK77VUKOqncRpiOhFsagQkdkQQmB7dMEkbwO4N4XILLCoEJHZ+PPmI9x8mAV7GwW6N/WQOg4RlQMWFSIyG1v/LNib0sPfE1VsrCROQ0TlgUWFiMzCk1wNfjpXOHcKD/sQmQsWFSIyC/vOJyMjJx/eLnZ4qY6L1HGIqJywqBCRWdj215WS+wfWhFzOuVOIzAWLChGZvMTHT3Ds6gMAPNuHyNywqBCRydsRfRdCAK18XFCrWhWp4xBROWJRISKTJoTQHfbhIFoi88OiQkQmLfr2Y1y/nwk7awV6+HtKHYeIyhmLChGZtG1nCvamhDT1gIOSc6cQmRsWFSIyWdl5GuyOTQQADOBhHyKzxKJCRCbrwIV7UGfnw0tlizZ1q0kdh4gqAIsKEZmswsM+/YM4dwqRuWJRISKTlKLOxuHL9wEA/YNqSJyGiCoKiwoRmaQfYu5CK4AWtZ1R19VB6jhEVEFYVIjI5AghsPWvwz6ciZbIvLGoEJHJiburxuV7GVBaydGzGedOITJnLCpEZHK2nrkNAOjaxAMqO2uJ0xBRRWJRISKTkpuvxa7CuVM4iJbI7LGoEJFJOXgxBY+y8uDupES7+q5SxyGiCsaiQkQmpXAQbWhgDSg4dwqR2WNRISKT8SAjB4cupQAABvJsHyKLwKJCRCZjZ0wi8rUCzWuqUN/dUeo4RFQJWFSIyGQUTpk/kBcgJLIYLCpEZBLiE9WIT1LDRiFH7+ZeUschokrCokJEJmFbVMHelNcau6FqFRuJ0xBRZWFRISKjl6fRYmfMXQA87ENkaVhUiMjoHb50Hw8yclHdwQbtG3DuFCJLwqJCREav8LBPaEANWCv4zxaRJeHfeCIyao8yc3Hgwj0AwAAe9iGyOCwqRGTUdp9NRJ5GoImXExp7Okkdh4gqGYsKERm1winzB3AmWiKLxKJCREbryr10nL2TBiu5DH0DOHcKkSUymqIyb948yGQyTJo0SeooRGQktv41iLZTIzdUc1BKnIaIpGAUReX06dNYuXIlmjVrJnUUIjIS+RotdkQVzJ3Cwz5ElkvyopKRkYGhQ4fi66+/hrOzs9RxiMhIHLv6ACnpOXCuYo1XG7lJHYeIJPJcReXx48f45ptvMG3aNKSmpgIAoqKicPfuXYOfKywsDD179kTnzp2fuW5OTg7UanWRHyIyT4WDaPsG1ICNleT/pyIiiVgZ+oCzZ8+ic+fOUKlUuHHjBkaPHg0XFxds374dt27dwrp16/R+rs2bNyMqKgqnT5/Wa/2IiAiEh4cbGpmITEzakzz8El8wdwqnzCeybAb/N2Xy5MkYMWIErly5AltbW93yHj164MiRI3o/z+3btzFx4kRs3LixyPOUZdq0aUhLS9P93L5929D4RGQCfjybiNx8LRq6O6KJF+dOIbJkBu9RKRz4+rQaNWogOTlZ7+c5c+YMUlJSEBQUpFum0Whw5MgRLFu2DDk5OVAoFEUeo1QqoVRy5D+RudtWOHdKixqQyWQSpyEiKRlcVJRKZYljQy5fvgxXV/0vFvbaa6/h3LlzRZa98847aNSoET788MNiJYWILMP1+xmIuvUYCrkMoQE1pI5DRBIzuKj06dMHs2fPxpYtWwAAMpkMt27dwocffogBAwbo/TyOjo5o2rRpkWX29vaoVq1aseVEZDkKL0DYvn51uDnpd1iYiMyXwWNUFi5ciIyMDLi5ueHJkyfo0KED6tWrB0dHR3z66acVkZGILIRGK7D9r7lTBrbwljgNERkDg/eoqFQq7N+/H8eOHcPZs2eRkZGBoKAgvU4vfpZDhw698HMQkek6fu0hktKy4WRrhdcac+4UInqOolKobdu2aNu2bXlmISILV3jYp0+AF2ytOU6NiJ6jqMyePbvM+2fOnPncYYjIcqVn52FPXBIATplPRP9jcFHZsWNHkdt5eXlISEiAlZUVfH19WVSI6LnsOZeM7Dwt6rraI8C7qtRxiMhIGFxUoqOjiy1Tq9UYMWIE+vXrVy6hiMjyFF4peWCLmpw7hYh0yuUCGk5OTggPD8eMGTPK4+mIyMLcepiFUwmpkMmAfoGcO4WI/qfcrvRVOK09EZGhCgfRtq1XHZ4qO4nTEJExMfjQz5IlS4rcFkIgKSkJ69evR0hISLkFIyLLoNUKXVHhBQiJ6GkGF5XPP/+8yG25XA5XV1cMHz4c06ZNK7dgRGQZTt1IxZ1HT+CotEJXPw+p4xCRkTG4qCQkJFREDiKyUFv/ugBhz2aesLPh3ClEVFS5jVEhIjJUVm4+9pz7a+4UHvYhohLotUelf//+ej/h9u3bnzsMEVmWvXHJyMzVoHa1KmhZ21nqOERkhPQqKiqVqqJzEJEFKjzsMyCIc6cQUcn0Kipr1qyp6BxEZGHuPMrC8esPAQD9gzh3ChGVjGNUiEgSO6LuQgigTd1qqOlcReo4RGSknuvqyVu3bsWWLVtw69Yt5ObmFrkvKiqqXIIRkfkSQmB79F0AnDuFiMpm8B6VJUuW4J133oG7uzuio6PRqlUrVKtWDdevX+eEb0Skl6hbj5DwIBNVbBTo3pRzpxBR6QwuKl9++SVWrVqFpUuXwsbGBlOmTMH+/fsxYcIETqFPRHopHEQb0tQT9srn2rFLRBbC4KJy69YtvPLKKwAAOzs7pKenAwDefvttbNq0qXzTEZHZyc7T4MfYgrlTeNiHiJ7F4KLi4eGB1NRUAECtWrVw4sQJAAUz1gohyjcdEZmdfeeTkZ6TjxpV7dDax0XqOERk5AwuKq+++ip27doFAHjnnXfw3nvvoUuXLnjzzTfRr1+/cg9IROZlW1TBINoBLWpCLufcKURUNr0PDv/444/o0aMHVq1aBa1WCwAICwtDtWrV8Mcff6BPnz4YM2ZMhQUlItOXnJaNY1fuAwAGcO4UItKD3kUlNDQU7u7uGDFiBEaOHAlfX18AwKBBgzBo0KAKC0hE5mNH9F1oBdCqjgtqV7OXOg4RmQC9D/0kJCRgzJgx2Lx5Mxo0aIAOHTpg/fr1ePLkSUXmIyIzIYTAtqi/psxvwb0pRKQfvYuKt7c3Zs6ciWvXruHAgQOoU6cOxo4dC09PT/zzn//E6dOnKzInEZm42DtpuJqSAVtrOXr4e0odh4hMxHNNod+pUyd89913SEpKwoIFC3Du3Dm8/PLLaN68eXnnIyIzse2vuVO6N/GAo621xGmIyFS80ExLjo6OeO2113Dz5k1cvHgR8fHx5ZWLiMxITr4Gu2ITARSc7UNEpK/n2qPy5MkTrFu3Dh07dkT9+vWxefNmTJ48GTdu3CjneERkDn69kIK0J3nwVNniFd/qUschIhNi0B6VEydO4Ntvv8WWLVuQm5uL/v3748CBA+jUqVNF5SMiM1A4ZX6/wBpQcO4UIjKA3kXFz88Ply5dQmBgICIiIjBkyBCoVKqKzEZEZuB+eg4OX/5r7hQe9iEiA+ldVDp37oxNmzZxwCwRGWRnzF1otAKBtarC19VB6jhEZGL0LipLliypyBxEZIaEELrDPgOCuDeFiAz3XINpiYj0cT5RjYvJ6bCxkqN3My+p4xCRCWJRIaIKU7g3pYufO1RVOHcKERmORYWIKkRuvlY3d8pADqIlouf0QkUlOzu7vHIQkZn57VIKUjNz4eqoRLt6nDuFiJ6PwUVFq9Vizpw5qFGjBhwcHHD9+nUAwIwZM7B69epyD0hEpqlwyvz+gTVgpeDOWyJ6Pgb/6/HJJ59g7dq1mD9/PmxsbHTLmzZtim+++aZcwxGRaXqYkYODF1MAcO4UInoxBheVdevWYdWqVRg6dCgUCoVuefPmzXHx4sVyDUdEpmlXbCLytQL+NVRo4O4odRwiMmEGF5W7d++iXr16xZZrtVrk5eWVSygiMm3bogoO+3AQLRG9KIOLip+fH44ePVps+datWxEYGFguoYjIdF1MViPurhrWChn6NOfcKUT0Ygy6KCEAzJw5E8OHD8fdu3eh1Wqxfft2XLp0CevWrcOPP/5YERmJyIQUDqJ9rZE7nO1tnrE2EVHZDN6j0rdvX+zevRsHDhyAvb09Zs6ciQsXLmD37t3o0qVLRWQkIhORr9FiR3TB3CkcREtE5cHgPSoA0K5dO+zfv7+8sxCRiTty5T4eZOSgmr0NOjZ0lToOEZkBg/eonD59GidPniy2/OTJk/jzzz/LJRQRmaZtZ+4CAPoG1IA1504honJg8L8kYWFhuH37drHld+/eRVhYWLmEIiLT8zgrF/vj7wEABrSoIXEaIjIXBheV+Ph4BAUFFVseGBiI+Pj4cglFRKZn99kk5Gq0aOzphCZeKqnjEJGZMLioKJVK3Lt3r9jypKQkWFk915AXIjIDhVdKHhDEvSlEVH4MLipdu3bFtGnTkJaWplv2+PFjTJ8+nWf9EFmoqynpiL39GFZyGUIDWVSIqPwYvAvkP//5D9q3b4/atWvrJniLiYmBu7s71q9fX+4Bicj4bf1rEG3Hhq6o7qCUOA0RmRODi0qNGjVw9uxZbNy4EbGxsbCzs8M777yDwYMHw9rauiIyEpER02gFdkRzynwiqhjPNajE3t4e//d//1feWYjIBP1+9QHuqXNQtYo1OjVykzoOEZkZvYrKrl27EBISAmtra+zatavMdfv06VMuwYjINBQOou3T3AtKK8Uz1iYiMoxeRSU0NBTJyclwc3NDaGhoqevJZDJoNJryykZERk6dnYd955MB8LAPEVUMvYqKVqst8c9EZNl+OpuEnHwt6rs5wL8G504hovLHOa6J6LkVXil5YIuakMlkEqchInNk0GBarVaLtWvXYvv27bhx4wZkMhl8fHwwcOBAvP322/yHisiCJDzIxJ83H0EuA/px7hQiqiB671ERQqBPnz74xz/+gbt378Lf3x9NmjTBzZs3MWLECPTr18/gF1+xYgWaNWsGJycnODk5oU2bNtizZ4/Bz0NElUejFTh+7SHm/XwBANCufnW4OdlKnIqIzJXee1TWrl2LI0eO4Ndff0WnTp2K3Hfw4EGEhoZi3bp1GDZsmN4vXrNmTcybNw/169eHEALfffcd+vbti+joaDRp0kT/rSCiSrE3Lgnhu+ORlJatWxZ7Ow1745LQvamnhMmIyFzJhBBCnxW7du2KV199FVOnTi3x/rlz5+Lw4cPYt2/fCwVycXHBggULMGrUqGeuq1aroVKpkJaWBicnpxd6XSIq2964JIzdEIWn/8EoPOC74q0glhUi0osh3996H/o5e/YsunfvXur9ISEhiI2N1T/lUzQaDTZv3ozMzEy0adPmuZ+HiMqfRisQvju+WEkBoFsWvjseGq1e/+8hItKb3od+UlNT4e7uXur97u7uePTokcEBzp07hzZt2iA7OxsODg7YsWMH/Pz8Slw3JycHOTk5uttqtdrg1yMiw51KSC1yuOdpAkBSWjZOJaSijW+1ygtGRGZP7z0qGo0GVlal9xqFQoH8/HyDAzRs2BAxMTE4efIkxo4di+HDhyM+Pr7EdSMiIqBSqXQ/3t7eBr8eERkuJb30kvI86xER6UvvMSpyuRwhISFQKku+MmpOTg727t37wjPTdu7cGb6+vli5cmWJr/H0HhVvb2+OUSGqYMevPcTgr088c71No1/mHhUieiZDxqjofehn+PDhz1zHkDN+SqPVaouUkb9TKpWlFiUiqjitfFzgZGsFdXbJe01lADxUtmjl41K5wYjI7OldVNasWVPuLz5t2jSEhISgVq1aSE9PR2RkJA4dOvTCZw4RUfm6kKRGVm7Je0sLz/qZ1dsPCjknfSSi8mXQzLTlLSUlBcOGDUNSUhJUKhWaNWuGffv2oUuXLlLGIqK/Sc/OQ1hkFPK1As1qqpCSnoPkvw2s9VDZYlZvP56aTEQVQtKisnr1ailfnoieQQiBadvP4ebDLNSoaod1I1vB0dYapxJSkZKeDTfHgsM93JNCRBVF0qJCRMYt8tQt/Hg2CVZyGZYOCUTVKjYAwAGzRFRpePVkIipRfKIa4bsLpgqY0r0hgmo5S5yIiCwRiwoRFZOZk49xkVHIzdfi1UZu+EfbulJHIiILxaJCREUIIfDRD3G4/iATnipbLHy9OeQcg0JEEmFRIaIivv/zDnZE34VCLsOSwYFwtreROhIRWTAWFSLSuXwvHTN3xQEAJndpgJfqcAI3IpIWiwoRAQCycvPx7sYoZOdp0b6BK8Z28JU6EhERiwoRFZi58zyupmTAzVGJRW9wXAoRGQcWFSLCtjN3sPXMHchlwJLBgajuwGtqEZFxYFEhsnBXUzLw0Q8F41ImdW6Al+tyMjciMh4sKkQWLDtPg3GRUXiSp0FwvWoI61RP6khEREWwqBBZsPDd53ExOR3VHZT4/M0AXrOHiIwOiwqRhdoZcxebTt2GTAZ8MSgAbo62UkciIiqGRYXIAl2/n4Hp288BAMZ3qofgetUlTkREVDIWFSILk52nQVhkNDJzNWjt44KJnRtIHYmIqFQsKkQW5pOf4nEhSY1q9jZYMjiQ41KIyKixqBBZkJ/OJmHDiVsAgEVvBsDdieNSiMi4sagQWYibDzMxddtZAMC7HX3RoYGrxImIiJ6NRYXIAuTkazAuMhrpOfl4qY4zJnfhuBQiMg0sKkQWIOLnizh3Nw3OVayxZHAgrBT8q09EpoH/WhGZub1xyVj7xw0AwMI3msNTZSdtICIiA7CoEJmx26lZmLI1FgDwf+3r4tVG7hInIiIyDIsKkZnKzddi3KZoqLPzEVirKj7o1lDqSEREBmNRITJT8/deROztx1DZWWPp4EBYc1wKEZkg/stFZIYOxN/DN8cSAAALBjZDTecqEiciIno+LCpEZibx8RO8/9e4lJHBPujaxEPiREREz49FhciM5Gm0GL8pGo+z8tCspgpTQxpJHYmI6IWwqBCZkYW/XMaZm4/gqLTCssFBsLHiX3EiMm38V4zITPx2KQVfHb4GAJg/sBlqVeO4FCIyfSwqRGYgOS0b/9pSMC5lWJvaCPH3lDgREVH5YFEhMnH5Gi0mbIpGamYumng5YXqPxlJHIiIqNywqRCbui1+v4NSNVDgorbB8SBBsrRVSRyIiKjcsKkQm7NiVB1j221UAQER/f9Spbi9xIiKi8sWiQmSiUtTZmPTfaAgBDGldC72be0kdiYio3LGoEJkgjVZg4uYYPMjIRSMPR8zs5Sd1JCKiCsGiQmSClh68guPXH6KKjQLLh3JcChGZLxYVIhPzx7UH+OLXKwCAT/s1ha+rg8SJiIgqDosKkQm5n56DiZtjIATwRsua6BdYU+pIREQVikWFyERotQKTt8TgfnoOGrg7ILxPU6kjERFVOBYVIhOx4vA1HL3yAHbWCiwfEgQ7G45LISLzx6JCZAJOJaRi4S+XAACz+zZBfXdHiRMREVUOFhUiI5eamYsJm6KhFUD/oBp4vaW31JGIiCoNiwqRESscl5Kszoavqz3m9OW4FCKyLCwqREZs1dHrOHTpPpRWciwfGgR7pZXUkYiIKhWLCpGROnMzFQv2FYxL+bhPEzTycJI4ERFR5WNRITJCjzJzMT4yGhqtQJ/mXhj0EselEJFlYlEhMjJCCHywNRaJadnwqW6Puf39IZPJpI5FRCQJFhUiI7P6WAIOXEiBjZUcy4YEwoHjUojIgrGoEBmRmNuP8dneiwCAGb380MRLJXEiIiJpsagQGYm0J3kYFxmFPI1AT39PvNW6ltSRiIgkx6JCZASEEJiyNRZ3Hj1BLZcqiBjAcSlERACLCpFR+O6PG9h3/h6sFTIsGxIIJ1trqSMRERkFFhUiiZ27k4a5PxeMS5neozGa1awqbSAiIiPCokIkIXV2HsIio5Cr0aJbE3eMeKWO1JGIiIwKiwqRRIQQmLb9HG6lZqGmsx3mD2jOcSlERE9hUSGSyMaTt/DT2SRYyWVYOjgQqiocl0JE9DRJi0pERAReeuklODo6ws3NDaGhobh06ZKUkcgIabQCx689xM6Yuzh+7SE0WiF1pOfy9+3YdOomwnefBwBMDWmEwFrOEqcjIjJOkk55efjwYYSFheGll15Cfn4+pk+fjq5duyI+Ph729vZSRiMjsTcuCeG745GUlq1b5qmyxazefuje1FPCZIYpaTsAwL+GE0a19ZEoFRGR8ZMJIYzmv6f379+Hm5sbDh8+jPbt2z9zfbVaDZVKhbS0NDg58cqy5mZvXBLGbojC07+ghaM4VrwVZBJlpbTtAAq2xVS2g4iovBjy/W1UFxFJS0sDALi4uEichKSm0QqE744v8cu9cNm07eeg1QrI5cY7AFWrFZj+Q1yJ21EofHc8uvh5QGHE20FEJBWjKSparRaTJk1CcHAwmjZtWuI6OTk5yMnJ0d1Wq9WVFY8q2amE1GKHSZ72KCsP70ZGV1KiiiEAJKVl41RCKtr4VpM6DhGR0TGaohIWFoa4uDgcO3as1HUiIiIQHh5eialIKinpZZeUQj7V7VHN3qaC0zy/h5m5SHiQ+cz19N1eIiJLYxRFZdy4cfjxxx9x5MgR1KxZs9T1pk2bhsmTJ+tuq9VqeHt7V0ZEqmRujrZ6rTe3n79R74k4fu0hBn994pnr6bu9RESWRtKiIoTA+PHjsWPHDhw6dAg+PmWf/aBUKqFUKispHUmplY8LHJRWyMjJL/F+GQAPlS1a+Rj3eKZWPi7wVNkiOS271MG0prAdRERSkXQelbCwMGzYsAGRkZFwdHREcnIykpOT8eTJEyljkRGIuvUIWbmllxQAmNXbz+gHoCrkMszq7Qfgf7kLmdJ2EBFJRdLTk0ubLnzNmjUYMWLEMx/P05PNU2pmLnp8cRTJ6my08nHBrdQsJJvhPCqmuB1EROXBZE5PNqIpXMhIaLUC/9oSg2R1Nuq62mPNiJdga63AqYRUpKRnw82x4DCJqe2B6N7UE138PEx+O4iIKptRDKYlKvT10ev47dJ92FjJsXxIEOyVBb+ixjxgVl8KucwstoOIqDLxooRkNM7cfIT5+wqu9TSrtx8ae/JwHhGRpWNRIaPwOCsXEzZFQ6MV6NXME0Na1ZI6EhERGQEWFZKcEALvf38Wdx8/QZ1qVRDR37/UgdZERGRZWFRIct/+fgMHLtyDjUKOZUOC4GhrLXUkIiIyEiwqJKnY248xb88FAMBHvRqjaQ2VxImIiMiYsKiQZNKe5CEsMgp5GoEe/h54++XaUkciIiIjw6JCkhBC4MOtZ3Hn0RN4u9hh3oBmHJdCRETFsKiQJNYdv4m955NhrZBh2eAgOHFcChERlYBFhSpd3N00fPpTwbiUqSGN0dy7qrSBiIjIaLGoUKVKzy4Yl5Kr0aKLnztGBteROhIRERkxFhWqNEIITNt+DjcfZqFGVTssGMhxKUREVDYWFao0kadu4cezSbCSy7B0SCCqVrGROhIRERk5FhWqFPGJaoTvjgcATOneEEG1nCVOREREpoBFhSpcRk4+xkVGITdfi1cbueEfbetKHYmIiEwEiwpVKCEEPtpxDtcfZMJTZYuFrzeHXM5xKUREpB8WFapQW/68jR9iEqGQy7BkcCCc7TkuhYiI9MeiQhXmUnI6Zu06DwCY3KUBXqrjInEiIiIyNSwqVCGycvMRFhmF7Dwt2jdwxdgOvlJHIiIiE8SiQhVi5s7zuJqSATdHJRa9wXEpRET0fFhUqNxtO3MHW8/cgVwGLBkciOoOSqkjERGRiWJRoXJ1NSUdH/0QBwCY1LkBXq5bTeJERERkylhUqNw8ydUgbGM0nuRpEFyvGsI61ZM6EhERmTgWFSo34bvP49K9dFR3UGLxm4FQcFwKERG9IBYVKhc7Y+5i8+nbkMmALwYFwNWR41KIiOjFsajQC7t+PwPTt58DAIzvVA/B9apLnIiIiMwFiwq9kOw8DcIio5GZq0FrHxdM7NxA6khERGRGWFTohXzyUzwuJKlRzd4GSwZzXAoREZUvFhV6bj+eTcSGE7cAAIveDIC7k63EiYiIyNywqNBzufkwE1O3FYxLebejLzo0cJU4ERERmSMWFTJYTr4GYZFRyMjJx0t1nDG5C8elEBFRxWBRIYNF/HwRcXfVcK5ijSWDA2Gl4K8RERFVDH7DkEH2xiVj7R83AAAL32gOT5WdtIGIiMissaiQ3m6nZmHK1lgAwP+1r4tXG7lLnIiIiMwdiwrpJTdfi3GboqHOzkdgrar4oFtDqSMREZEFYFEhvczfexGxtx9DZWeNpYMDYc1xKUREVAn4bUPPdCD+Hr45lgAAWDCwGWo6V5E4ERERWQoWFSrT3cdP8K/vC8aljAz2QdcmHhInIiIiS8KiQqXK02gxPjIKaU/y0LymClNDGkkdiYiILAyLCpVq4S+XEXXrMRxtrbBsSBBsrPjrQkRElYvfPFSi3y6l4KvD1wAA8wc0g7cLx6UQEVHlY1GhYpLTsvGvLQXjUoa1qY0Qf0+JExERkaViUaEi8jVaTNgUjdTMXDTxcsL0Ho2ljkRERBaMRYWKWHzgCk7dSIWD0grLhwTB1lohdSQiIrJgLCqkc/TKfSw/dBUAENHfH3Wq20uciIiILB2LCgEAUtTZmLQ5BkIAQ1rXQu/mXlJHIiIiYlEhQKMVmLg5Bg8zc9HIwxEze/lJHYmIiAgAiwoBWHrwCo5ff4gqNgosH8pxKUREZDxYVCzcH9ce4ItfrwAA5vbzh6+rg8SJiIiI/odFxYLdT8/BxL/GpbzRsiZCA2tIHYmIiKgIFhULpdUKTN4Sg/vpOWjg7oDwPk2ljkRERFQMi4qF+vLQVRy98gB21gosHxIEOxuOSyEiIuPDomKBTl5/iEX7LwMAZvdtgvrujhInIiIiKhmLioV5mJGDCZujoRVA/6AaeL2lt9SRiIiISsWiYkG0WoF/fR+Le+oc+LraY05fjkshIiLjxqJiQVYdvY5Dl+5DaSXH8qFBsFdaSR2JiIioTPymKoFGK3AqIRUp6dlwc7RFKx8XKOQyqWMZ7O/b8TgrF/P3XgQAfNynCRp5OEmcjoiI6NkkLSpHjhzBggULcObMGSQlJWHHjh0IDQ2VMhL2xiUhfHc8ktKydcs8VbaY1dsP3Zt6SpjMMCVtBwC0rO2MQS9xXAoREZkGSQ/9ZGZmonnz5li+fLmUMXT2xiVh7IaoYl/uyWnZGLshCnvjkiRKZpjStgMAztx8hH3nkyVIRUREZDhJ96iEhIQgJCREygg6Gq1A+O54iBLuK1w2c+d5NPZ0MurDQBqtwIyd50vcjkLhu+PRxc/DqLeDiIgIMLExKjk5OcjJydHdVqvV5fbcpxJSS9wD8Xcp6TnosOBQub2mFASApLRsnEpIRRvfalLHISIiKpNJFZWIiAiEh4dXyHOnpJddUgpZyWVGvSdCoxXI15a1P6WAvttLREQkJZMqKtOmTcPkyZN1t9VqNby9y2dgqJujrV7rrR/V2qj3RBy/9hCDvz7xzPX03V4iIiIpmVRRUSqVUCqVFfLcrXxc4KmyRXJadonjO2QAPFQFpyobM3PZDiIiIoATvuko5DLM6u0HoODL/O8Kb8/q7WfUh30A89kOIiIiQOKikpGRgZiYGMTExAAAEhISEBMTg1u3bkmSp3tTT6x4KwgeqqKHRTxUtljxVpDJzKNiLttBREQkE0I8e+RlBTl06BA6depUbPnw4cOxdu3aZz5erVZDpVIhLS0NTk7lN9OqOc5Ma8rbQURE5sWQ729Ji8qLqqiiQkRERBXHkO9vjlEhIiIio8WiQkREREaLRYWIiIiMFosKERERGS0WFSIiIjJaLCpERERktFhUiIiIyGixqBAREZHRYlEhIiIio2VSV09+WuGkumq1WuIkREREpK/C7219Jsc36aKSnp4OAPD29pY4CRERERkqPT0dKpWqzHVM+lo/Wq0WiYmJcHR0hExWvhfbU6vV8Pb2xu3bt3kdISPAz8O48PMwLvw8jA8/k7IJIZCeng4vLy/I5WWPQjHpPSpyuRw1a9as0NdwcnLiL5kR4edhXPh5GBd+HsaHn0npnrUnpRAH0xIREZHRYlEhIiIio8WiUgqlUolZs2ZBqVRKHYXAz8PY8PMwLvw8jA8/k/Jj0oNpiYiIyLxxjwoREREZLRYVIiIiMlosKkRERGS0WFSIiIjIaLGolGD58uWoU6cObG1t0bp1a5w6dUrqSBYrIiICL730EhwdHeHm5obQ0FBcunRJ6lgEYN68eZDJZJg0aZLUUSza3bt38dZbb6FatWqws7ODv78//vzzT6ljWSSNRoMZM2bAx8cHdnZ28PX1xZw5c/S6ng2VjkXlKf/9738xefJkzJo1C1FRUWjevDm6deuGlJQUqaNZpMOHDyMsLAwnTpzA/v37kZeXh65duyIzM1PqaBbt9OnTWLlyJZo1ayZ1FIv26NEjBAcHw9raGnv27EF8fDwWLlwIZ2dnqaNZpM8++wwrVqzAsmXLcOHCBXz22WeYP38+li5dKnU0k8bTk5/SunVrvPTSS1i2bBmAgusJeXt7Y/z48Zg6darE6ej+/ftwc3PD4cOH0b59e6njWKSMjAwEBQXhyy+/xCeffIKAgAAsXrxY6lgWaerUqfj9999x9OhRqaMQgF69esHd3R2rV6/WLRswYADs7OywYcMGCZOZNu5R+Zvc3FycOXMGnTt31i2Ty+Xo3Lkzjh8/LmEyKpSWlgYAcHFxkTiJ5QoLC0PPnj2L/D0haezatQstW7bE66+/Djc3NwQGBuLrr7+WOpbFeuWVV/Drr7/i8uXLAIDY2FgcO3YMISEhEiczbSZ9UcLy9uDBA2g0Gri7uxdZ7u7ujosXL0qUigpptVpMmjQJwcHBaNq0qdRxLNLmzZsRFRWF06dPSx2FAFy/fh0rVqzA5MmTMX36dJw+fRoTJkyAjY0Nhg8fLnU8izN16lSo1Wo0atQICoUCGo0Gn376KYYOHSp1NJPGokImIywsDHFxcTh27JjUUSzS7du3MXHiROzfvx+2trZSxyEUlPeWLVti7ty5AIDAwEDExcXhq6++YlGRwJYtW7Bx40ZERkaiSZMmiImJwaRJk+Dl5cXP4wWwqPxN9erVoVAocO/evSLL7927Bw8PD4lSEQCMGzcOP/74I44cOYKaNWtKHccinTlzBikpKQgKCtIt02g0OHLkCJYtW4acnBwoFAoJE1oeT09P+Pn5FVnWuHFjbNu2TaJElu2DDz7A1KlTMWjQIACAv78/bt68iYiICBaVF8AxKn9jY2ODFi1a4Ndff9Ut02q1+PXXX9GmTRsJk1kuIQTGjRuHHTt24ODBg/Dx8ZE6ksV67bXXcO7cOcTExOh+WrZsiaFDhyImJoYlRQLBwcHFTte/fPkyateuLVEiy5aVlQW5vOjXqkKhgFarlSiReeAeladMnjwZw4cPR8uWLdGqVSssXrwYmZmZeOedd6SOZpHCwsIQGRmJnTt3wtHREcnJyQAAlUoFOzs7idNZFkdHx2Jjg+zt7VGtWjWOGZLIe++9h1deeQVz587FG2+8gVOnTmHVqlVYtWqV1NEsUu/evfHpp5+iVq1aaNKkCaKjo7Fo0SKMHDlS6mimTVAxS5cuFbVq1RI2NjaiVatW4sSJE1JHslgASvxZs2aN1NFICNGhQwcxceJEqWNYtN27d4umTZsKpVIpGjVqJFatWiV1JIulVqvFxIkTRa1atYStra2oW7eu+Pe//y1ycnKkjmbSOI8KERERGS2OUSEiIiKjxaJCRERERotFhYiIiIwWiwoREREZLRYVIiIiMlosKkRERGS0WFSIiIjIaLGoENFzOXToEGQyGR4/fgwAWLt2LapWrSpppmf5+OOPERAQIHUMIjIAiwqRBRoxYgRkMhlkMhmsra3h4+ODKVOmIDs7u0JfVyaTwdbWFjdv3iyyPDQ0FCNGjKjQ1yYi08SiQmShunfvjqSkJFy/fh2ff/45Vq5ciVmzZlX468pkMsycObPCX6cy5eXlSR2ByGyxqBBZKKVSCQ8PD3h7eyM0NBSdO3fG/v37dffn5ORgwoQJcHNzg62tLdq2bYvTp0+/8OuOGzcOGzZsQFxcXKnr1KlTB4sXLy6yLCAgAB9//LHutkwmw8qVK9GrVy9UqVIFjRs3xvHjx3H16lV07NgR9vb2eOWVV3Dt2rViz79y5Up4e3ujSpUqeOONN5CWllbk/m+++QaNGzeGra0tGjVqhC+//FJ3340bNyCTyfDf//4XHTp0gK2tLTZu3Ph8bwYRPROLChEhLi4Of/zxB2xsbHTLpkyZgm3btuG7775DVFQU6tWrh27duiE1NfWFXis4OBi9evXC1KlTXzQ25syZg2HDhiEmJgaNGjXCkCFDMGbMGEybNg1//vknhBAYN25ckcdcvXoVW7Zswe7du7F3715ER0fj3Xff1d2/ceNGzJw5E59++ikuXLiAuXPnYsaMGfjuu++KPM/UqVMxceJEXLhwAd26dXvhbSGiUkh8UUQiksDw4cOFQqEQ9vb2QqlUCgBCLpeLrVu3CiGEyMjIENbW1mLjxo26x+Tm5govLy8xf/58IYQQv/32mwAgHj16JIQQYs2aNUKlUpX5ugDEjh07xPnz54VCoRBHjhwRQgjRt29fMXz4cN16tWvXFp9//nmRxzZv3lzMmjWryHN99NFHutvHjx8XAMTq1at1yzZt2iRsbW11t2fNmiUUCoW4c+eObtmePXuEXC4XSUlJQgghfH19RWRkZJHXnjNnjmjTpo0QQoiEhAQBQCxevLjMbSWi8mElZUkiIul06tQJK1asQGZmJj7//HNYWVlhwIABAIBr164hLy8PwcHBuvWtra3RqlUrXLhw4YVf28/PD8OGDcPUqVPx+++/P/fzNGvWTPdnd3d3AIC/v3+RZdnZ2VCr1XBycgIA1KpVCzVq1NCt06ZNG2i1Wly6dAmOjo64du0aRo0ahdGjR+vWyc/Ph0qlKvLaLVu2fO7cRKQ/FhUiC2Vvb4969eoBAL799ls0b94cq1evxqhRoyrl9cPDw9GgQQP88MMPxe6Ty+UQQhRZVtKAVWtra92fZTJZqcu0Wq1emTIyMgAAX3/9NVq3bl3kPoVCUeS2vb29Xs9JRC+GY1SICHK5HNOnT8dHH32EJ0+ewNfXFzY2NkX2duTl5eH06dPw8/Mrl9f09vbGuHHjMH36dGg0miL3ubq6IikpSXdbrVYjISGhXF731q1bSExM1N0+ceIE5HI5GjZsCHd3d3h5eeH69euoV69ekR8fH59yeX0iMgyLChEBAF5//XUoFAosX74c9vb2GDt2LD744APs3bsX8fHxGD16NLKyssp1j8u0adOQmJiIAwcOFFn+6quvYv369Th69CjOnTuH4cOHF9uj8bxsbW0xfPhwxMbG4ujRo5gwYQLeeOMNeHh4ACjY0xMREYElS5bg8uXLOHfuHNasWYNFixaVy+sTkWFYVIgIAGBlZYVx48Zh/vz5yMzMxLx58zBgwAC8/fbbCAoKwtWrV7Fv3z44OzuX22u6uLjgww8/LDbR3LRp09ChQwf06tULPXv2RGhoKHx9fcvlNevVq4f+/fujR48e6Nq1K5o1a1bk9ON//OMf+Oabb7BmzRr4+/ujQ4cOWLt2LfeoEElEJp4+EExERERkJLhHhYiIiIwWiwoREREZLRYVIiIiMlosKkRERGS0WFSIiIjIaLGoEBERkdFiUSEiIiKjxaJCRERERotFhYiIiIwWiwoREREZLRYVIiIiMlosKkRERGS0/h/a65cf4oPEjQAAAABJRU5ErkJggg==", + "text/plain": [ + "
    " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "\n", + "# Sort the dataframe and plot\n", + "dice_df_sorted = dice_df.sort_values(by=\"Rolls\").reset_index(drop=True)\n", + "plt.plot(dice_df_sorted.index, dice_df_sorted[\"Rolls\"], marker='o')\n", + "plt.title(\"Dice Rolls Sorted by Value\")\n", + "plt.xlabel(\"Roll Number\")\n", + "plt.ylabel(\"Dice Value\")\n", + "plt.show()\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3.- Calculate the frequency distribution and plot it. What is the relation between this plot and the plot above? Describe it with words." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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CuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYCuEGAACYikPDTVRUlO655x65u7urZs2aCgkJ0YEDBwpcJjo6WhaLxebl6upaQhUDAIDSzqHh5vvvv9ewYcP0008/KTY2VpcvX9aDDz6ojIyMApfz8PBQYmKi9RUfH19CFQMAgNKuvCM3vnr1apvp6Oho1axZU9u2bdP999+f73IWi0Xe3t63ujwAAFAGlaoxN6mpqZKkatWqFdgvPT1dvr6+qlu3rvr166e9e/eWRHkAAKAMKDXhJjs7WyNHjlSHDh3UtGnTfPs1aNBACxcu1IoVK/Txxx8rOztb7du31x9//JFn/8zMTKWlpdm8AACAeTn0stS1hg0bpj179mjTpk0F9gsKClJQUJB1un379mrUqJHmzZunyZMn5+ofFRWlyMjIYq8XAACUTqXizM3w4cP1zTffKC4uTnXq1CnSshUqVFDLli11+PDhPOdHREQoNTXV+jp+/HhxlAwAAEoph565MQxDf//73/Xll19qw4YN8vf3L/I6srKytHv3bvXq1SvP+S4uLnJxcbnZUgEAQBnh0HAzbNgwLV68WCtWrJC7u7uSkpIkSZ6ennJzc5MkhYaGqnbt2oqKipIkTZo0Se3atVNAQIDOnj2radOmKT4+XkOGDHHYfgAAgNLDoeFmzpw5kqROnTrZtC9atEiDBw+WJCUkJMjJ6X9Xz/766y8NHTpUSUlJqlq1qlq3bq3NmzercePGJVU2AAAoxSyGYRiOLqIkpaWlydPTU6mpqfLw8HB0OQDgMH6vfOvoEm7asam9HV0CSkhRvr9LxYBiAACA4kK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApuLQcBMVFaV77rlH7u7uqlmzpkJCQnTgwIEbLhcTE6OGDRvK1dVVzZo108qVK0ugWgAAUBY4NNx8//33GjZsmH766SfFxsbq8uXLevDBB5WRkZHvMps3b9bAgQMVHh6uHTt2KCQkRCEhIdqzZ08JVg4AAEori2EYhqOLyJGSkqKaNWvq+++/1/33359nnyeeeEIZGRn65ptvrG3t2rVTYGCg5s6de8NtpKWlydPTU6mpqfLw8Ci22gGgrPF75VtHl3DTjk3t7egSUEKK8v1dqsbcpKamSpKqVauWb58tW7aoa9euNm3du3fXli1b8uyfmZmptLQ0mxcAADCv8o4uIEd2drZGjhypDh06qGnTpvn2S0pKkpeXl02bl5eXkpKS8uwfFRWlyMjIYq21MMzwF5Fkjr+KOBYASjsz/H+qNP0/qtScuRk2bJj27NmjJUuWFOt6IyIilJqaan0dP368WNcPAABKl1Jx5mb48OH65ptvtHHjRtWpU6fAvt7e3kpOTrZpS05Olre3d579XVxc5OLiUmy1AgCA0s2hZ24Mw9Dw4cP15Zdfav369fL397/hMkFBQVq3bp1NW2xsrIKCgm5VmQAAoAxx6JmbYcOGafHixVqxYoXc3d2t42Y8PT3l5uYmSQoNDVXt2rUVFRUlSRoxYoSCg4M1ffp09e7dW0uWLNHWrVs1f/58h+0HAAAoPRx65mbOnDlKTU1Vp06d5OPjY3199tln1j4JCQlKTEy0Trdv316LFy/W/Pnz1aJFCy1btkzLly8vcBAyAAC4fTj0zE1hfmJnw4YNudoee+wxPfbYY7egIgAAUNaVmrulAAAAigPhBgAAmArhBgAAmArhBgAAmArhBgAAmArhBgAAmArhBgAAmArhBgAAmArhBgAAmArhBgAAmIpd4eb3338v7joAAACKhV3hJiAgQA888IA+/vhjXbx4sbhrAgAAsJtd4Wb79u1q3ry5Ro8eLW9vbz3//PP65Zdfirs2AACAIrMr3AQGBmr27Nk6efKkFi5cqMTERHXs2FFNmzbVjBkzlJKSUtx1AgAAFMpNDSguX768+vfvr5iYGL355ps6fPiwxo4dq7p16yo0NFSJiYnFVScAAECh3FS42bp1q1588UX5+PhoxowZGjt2rI4cOaLY2FidPHlS/fr1K646AQAACqW8PQvNmDFDixYt0oEDB9SrVy99+OGH6tWrl5ycrmYlf39/RUdHy8/PrzhrBQAAuCG7ws2cOXP07LPPavDgwfLx8cmzT82aNfWf//znpooDAAAoKrvCzaFDh27Yx9nZWYMGDbJn9QAAAHaza8zNokWLFBMTk6s9JiZGH3zwwU0XBQAAYC+7wk1UVJSqV6+eq71mzZp64403brooAAAAe9kVbhISEuTv75+r3dfXVwkJCTddFAAAgL3sCjc1a9bUr7/+mqt9165duuOOO266KAAAAHvZFW4GDhyof/zjH4qLi1NWVpaysrK0fv16jRgxQgMGDCjuGgEAAArNrrulJk+erGPHjqlLly4qX/7qKrKzsxUaGsqYGwAA4FB2hRtnZ2d99tlnmjx5snbt2iU3Nzc1a9ZMvr6+xV0fAABAkdgVbnLcfffduvvuu4urFgAAgJtmV7jJyspSdHS01q1bp1OnTik7O9tm/vr164ulOAAAgKKyK9yMGDFC0dHR6t27t5o2bSqLxVLcdQEAANjFrnCzZMkSLV26VL169SruegAAAG6KXbeCOzs7KyAgoLhrAQAAuGl2hZsxY8Zo9uzZMgyjuOsBAAC4KXZdltq0aZPi4uK0atUqNWnSRBUqVLCZ/8UXXxRLcQAAAEVlV7ipUqWKHn744eKuBQAA4KbZFW4WLVpU3HUAAAAUC7vG3EjSlStX9N1332nevHk6d+6cJOnkyZNKT08vtuIAAACKyq4zN/Hx8erRo4cSEhKUmZmpbt26yd3dXW+++aYyMzM1d+7c4q4TAACgUOw6czNixAi1adNGf/31l9zc3KztDz/8sNatW1dsxQEAABSVXWdufvjhB23evFnOzs427X5+fjpx4kSxFAYAAGAPu87cZGdnKysrK1f7H3/8IXd395suCgAAwF52hZsHH3xQs2bNsk5bLBalp6drwoQJPJIBAAA4lF2XpaZPn67u3burcePGunjxop588kkdOnRI1atX16efflrcNQIAABSaXeGmTp062rVrl5YsWaJff/1V6enpCg8P11NPPWUzwBgAAKCk2RVuJKl8+fJ6+umni7MWAACAm2ZXuPnwww8LnB8aGmpXMQAAADfLrnAzYsQIm+nLly/r/PnzcnZ2VsWKFQk3AADAYey6W+qvv/6yeaWnp+vAgQPq2LEjA4oBAIBD2f1sqevVr19fU6dOzXVWpyAbN25U3759VatWLVksFi1fvrzA/hs2bJDFYsn1SkpKusnqAQCAWRRbuJGuDjI+efJkoftnZGSoRYsWeu+994q0nQMHDigxMdH6qlmzZlFLBQAAJmXXmJuvvvrKZtowDCUmJurdd99Vhw4dCr2enj17qmfPnkXefs2aNVWlSpUiLwcAAMzPrnATEhJiM22xWFSjRg117txZ06dPL466ChQYGKjMzEw1bdpUEydOLFKgAgAA5mZXuMnOzi7uOgrFx8dHc+fOVZs2bZSZmakFCxaoU6dO+vnnn9WqVas8l8nMzFRmZqZ1Oi0traTKBQAADmD3j/g5QoMGDdSgQQPrdPv27XXkyBHNnDlTH330UZ7LREVFKTIysqRKBAAADmZXuBk9enSh+86YMcOeTRTavffeq02bNuU7PyIiwqbetLQ01a1b95bWBAAAHMeucLNjxw7t2LFDly9ftp5JOXjwoMqVK2dzechisRRPlQXYuXOnfHx88p3v4uIiFxeXW14HAAAoHewKN3379pW7u7s++OADVa1aVdLVH/YLCwvTfffdpzFjxhRqPenp6Tp8+LB1+ujRo9q5c6eqVaumO++8UxERETpx4oT1cQ+zZs2Sv7+/mjRpoosXL2rBggVav3691q5da89uAAAAE7Ir3EyfPl1r1661BhtJqlq1qv75z3/qwQcfLHS42bp1qx544AHrdM7lo0GDBik6OlqJiYlKSEiwzr906ZLGjBmjEydOqGLFimrevLm+++47m3UAAIDbm13hJi0tTSkpKbnaU1JSdO7cuUKvp1OnTjIMI9/50dHRNtMvv/yyXn755UKvHwAA3H7s+oXihx9+WGFhYfriiy/0xx9/6I8//tDnn3+u8PBw9e/fv7hrBAAAKDS7ztzMnTtXY8eO1ZNPPqnLly9fXVH58goPD9e0adOKtUAAAICisCvcVKxYUe+//76mTZumI0eOSJLq1aunSpUqFWtxAAAARXVTD87MeXBl/fr1ValSpQLHzwAAAJQEu8LNn3/+qS5duujuu+9Wr169lJiYKEkKDw8v9J1SAAAAt4Jd4WbUqFGqUKGCEhISVLFiRWv7E088odWrVxdbcQAAAEVl15ibtWvXas2aNapTp45Ne/369RUfH18shQEAANjDrjM3GRkZNmdscpw5c4ZHHQAAAIeyK9zcd9991kciSFefIZWdna1//etf/FowAABwKLsuS/3rX/9Sly5dtHXrVl26dEkvv/yy9u7dqzNnzujHH38s7hoBAAAKza4zN02bNtXBgwfVsWNH9evXTxkZGerfv7927NihevXqFXeNAAAAhVbkMzeXL19Wjx49NHfuXI0fP/5W1AQAAGC3Ip+5qVChgn799ddbUQsAAMBNs+uy1NNPP63//Oc/xV0LAADATbNrQPGVK1e0cOFCfffdd2rdunWuZ0rNmDGjWIoDAAAoqiKFm99//11+fn7as2ePWrVqJUk6ePCgTR+LxVJ81QEAABRRkcJN/fr1lZiYqLi4OElXH7fw9ttvy8vL65YUBwAAUFRFGnNz/VO/V61apYyMjGItCAAA4GbYNaA4x/VhBwAAwNGKFG4sFkuuMTWMsQEAAKVJkcbcGIahwYMHWx+OefHiRf3tb3/LdbfUF198UXwVAgAAFEGRws2gQYNspp9++uliLQYAAOBmFSncLFq06FbVAQAAUCxuakAxAABAaUO4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApkK4AQAApuLQcLNx40b17dtXtWrVksVi0fLly2+4zIYNG9SqVSu5uLgoICBA0dHRt7xOAABQdjg03GRkZKhFixZ67733CtX/6NGj6t27tx544AHt3LlTI0eO1JAhQ7RmzZpbXCkAACgryjty4z179lTPnj0L3X/u3Lny9/fX9OnTJUmNGjXSpk2bNHPmTHXv3v1WlQkAAMqQMjXmZsuWLeratatNW/fu3bVlyxYHVQQAAEobh565KaqkpCR5eXnZtHl5eSktLU0XLlyQm5tbrmUyMzOVmZlpnU5LS7vldQIAAMcpU+HGHlFRUYqMjHR0GQAk+b3yraNLKBbHpvZ2dAkAClCmLkt5e3srOTnZpi05OVkeHh55nrWRpIiICKWmplpfx48fL4lSAQCAg5SpMzdBQUFauXKlTVtsbKyCgoLyXcbFxUUuLi63ujQAAFBKOPTMTXp6unbu3KmdO3dKunqr986dO5WQkCDp6lmX0NBQa/+//e1v+v333/Xyyy9r//79ev/997V06VKNGjXKEeUDAIBSyKHhZuvWrWrZsqVatmwpSRo9erRatmyp119/XZKUmJhoDTqS5O/vr2+//VaxsbFq0aKFpk+frgULFnAbOAAAsHLoZalOnTrJMIx85+f168OdOnXSjh07bmFVAACgLCtTA4oBAABuhHADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMpVSEm/fee09+fn5ydXVV27Zt9csvv+TbNzo6WhaLxebl6upagtUCAIDSzOHh5rPPPtPo0aM1YcIEbd++XS1atFD37t116tSpfJfx8PBQYmKi9RUfH1+CFQMAgNLM4eFmxowZGjp0qMLCwtS4cWPNnTtXFStW1MKFC/NdxmKxyNvb2/ry8vIqwYoBAEBp5tBwc+nSJW3btk1du3a1tjk5Oalr167asmVLvsulp6fL19dXdevWVb9+/bR37958+2ZmZiotLc3mBQAAzMuh4eb06dPKysrKdebFy8tLSUlJeS7ToEEDLVy4UCtWrNDHH3+s7OxstW/fXn/88Uee/aOiouTp6Wl91a1bt9j3AwAAlB4OvyxVVEFBQQoNDVVgYKCCg4P1xRdfqEaNGpo3b16e/SMiIpSammp9HT9+vIQrBgAAJam8IzdevXp1lStXTsnJyTbtycnJ8vb2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LBaFh4fL399fbm5uatCggWbPnl3gvvn5+WnWrFm5tjVx4kTr9NmzZzVkyBDVqFFDHh4e6ty5s3bt2lXwmwbgliDcALhlOnfurBYtWuiLL77Ic356erqCg4N14sQJffXVV9q1a5defvll66WsH374QaGhoRoxYoR+++03zZs3T9HR0ZoyZUq+2wwPD9fSpUuVkZFhbduwYYOOHj2qZ599VtnZ2apTp45iYmL022+/6fXXX9e4ceO0dOnSm9rXxx57TKdOndKqVau0bds2tWrVSl26dNGZM2duar0Aio5wA+CWatiwoY4dO5bnvMWLFyslJUXLly9Xx44dFRAQoMcff1xBQUGSpMjISL3yyisaNGiQ7rrrLnXr1k2TJ0/WvHnz8t3ek08+qcuXLysmJsbatmjRInXs2FF33323KlSooMjISLVp00b+/v566qmnFBYWdlPhZtOmTfrll18UExOjNm3aqH79+nrrrbdUpUqVXM/1AXDr8WwpALeUYRj5PrV+586datmypapVq5bn/F27dunHH3+0OVOTlZWlixcv6vz586pYsWKuZapUqaL+/ftr4cKFGjx4sNLS0vT555/rvffes/Z57733tHDhQiUkJOjChQu6dOmSAgMD7d7HXbt2KT09PdeDIS9cuKAjR47YvV4A9iHcALil9u3bJ39//zznubm5Fbhsenq6IiMj1b9//1zzXF1d810uPDxcXbp00eHDhxUXF6dy5crpsccekyQtWbJEY8eO1fTp0xUUFCR3d3dNmzbNZpzP9ZycnHI9nPby5cs2dfr4+GjDhg25lq1SpUqB+wig+BFuANwy69ev1+7duzVq1Kg85zdv3lwLFizQmTNn8jx706pVKx04cEABAQFF2u4DDzwgf39/LVq0SHFxcRowYIAqVaokSfrxxx/Vvn17vfjii9b+Nzq7UqNGDSUmJlqn09LSdPToUZs6k5KSVL58efn5+RWpVgDFjzE3AIpFZmamkpKSdOLECW3fvl1vvPGG+vXrpz59+ig0NDTPZQYOHChvb2+FhIToxx9/1O+//67PP/9cW7ZskSS9/vrr+vDDDxUZGam9e/dq3759WrJkiV599dUCa7FYLHr22Wc1Z84cbdmyReHh4dZ59evX19atW7VmzRodPHhQr732mv773/8WuL7OnTvro48+0g8//KDdu3dr0KBBKleunHV+165dFRQUpJCQEK1du1bHjh3T5s2bNX78eG3durWwbyGAYkK4AVAsVq9eLR8fH/n5+alHjx6Ki4vT22+/rRUrVtgEgWs5Oztr7dq11t+fadasmaZOnWrt3717d33zzTdau3at7rnnHrVr104zZ86Ur6/vDesZPHiwUlNT1aRJE7Vt29ba/vzzz6t///564okn1LZtW/355582Z3HyEhERoeDgYPXp00e9e/dWSEiI6tWrZ51vsVi0cuVK3X///QoLC9Pdd9+tAQMGKD4+Xl5eXoV5+wAUI4tx/YVkAACAMowzNwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFT+HwBqP70J12NMAAAAAElFTkSuQmCC", + "text/plain": [ + "
    " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Calculate frequency distribution\n", + "freq_dist = dice_df[\"Rolls\"].value_counts().sort_index()\n", + "\n", + "# Plot frequency distribution\n", + "freq_dist.plot(kind=\"bar\")\n", + "plt.title(\"Frequency Distribution of Dice Rolls\")\n", + "plt.xlabel(\"Dice Value\")\n", + "plt.ylabel(\"Frequency\")\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\nThe frequency distribution plot shows how often each dice value appears in the 10 rolls. In comparison, the sorted plot in step 2 displays the actual dice values in ascending order, providing a visual representation of the distribution.\\n'" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "The frequency distribution plot shows how often each dice value appears in the 10 rolls. In comparison, the sorted plot in step 2 displays the actual dice values in ascending order, providing a visual representation of the distribution.\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 2\n", + "Now, using the dice results obtained in *challenge 1*, your are going to define some functions that will help you calculate the mean of your data in two different ways, the median and the four quartiles. \n", + "\n", + "#### 1.- Define a function that computes the mean by summing all the observations and dividing by the total number of observations. You are not allowed to use any methods or functions that directly calculate the mean value. " + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "3.6" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def calculate_mean(data):\n", + " total_sum = sum(data)\n", + " count = len(data)\n", + " return total_sum / count\n", + "\n", + "# Calculate mean of dice rolls\n", + "mean_value = calculate_mean(dice_df[\"Rolls\"])\n", + "mean_value\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2.- First, calculate the frequency distribution. Then, calculate the mean using the values of the frequency distribution you've just computed. You are not allowed to use any methods or functions that directly calculate the mean value. " + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "3.6" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Calculate mean using frequency distribution\n", + "total_sum_freq = sum(value * count for value, count in freq_dist.items())\n", + "count_freq = sum(freq_dist)\n", + "mean_value_freq = total_sum_freq / count_freq\n", + "mean_value_freq\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3.- Define a function to calculate the median. You are not allowed to use any methods or functions that directly calculate the median value. \n", + "**Hint**: you might need to define two computation cases depending on the number of observations used to calculate the median." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "4.0" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def calculate_median(data):\n", + " sorted_data = sorted(data)\n", + " n = len(sorted_data)\n", + " mid = n // 2\n", + " if n % 2 == 0:\n", + " median = (sorted_data[mid - 1] + sorted_data[mid]) / 2\n", + " else:\n", + " median = sorted_data[mid]\n", + " return median\n", + "\n", + "# Calculate median of dice rolls\n", + "median_value = calculate_median(dice_df[\"Rolls\"])\n", + "median_value\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 4.- Define a function to calculate the four quartiles. You can use the function you defined above to compute the median but you are not allowed to use any methods or functions that directly calculate the quartiles. " + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(2, 4.0, 5)" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def calculate_quartiles(data):\n", + " sorted_data = sorted(data)\n", + " n = len(sorted_data)\n", + " q2 = calculate_median(sorted_data)\n", + " if n % 2 == 0:\n", + " lower_half = sorted_data[:n//2]\n", + " upper_half = sorted_data[n//2:]\n", + " else:\n", + " lower_half = sorted_data[:n//2]\n", + " upper_half = sorted_data[n//2+1:]\n", + " q1 = calculate_median(lower_half)\n", + " q3 = calculate_median(upper_half)\n", + " return q1, q2, q3\n", + "\n", + "# Calculate quartiles of dice rolls\n", + "quartiles = calculate_quartiles(dice_df[\"Rolls\"])\n", + "quartiles\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 3\n", + "Read the csv `roll_the_dice_hundred.csv` from the `data` folder.\n", + "#### 1.- Sort the values and plot them. What do you see?" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "ename": "KeyError", + "evalue": "'Rolls'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m/var/folders/73/bp0mdjtd56gc_yr975dw29n00000gn/T/ipykernel_1332/2496653201.py\u001b[0m in \u001b[0;36m?\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0;31m# Read the CSV file\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0mdice_hundred_df\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mpd\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mread_csv\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/roll_the_dice_hundred.csv'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0;31m# Sort the values and plot\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 5\u001b[0;31m \u001b[0mdice_hundred_df_sorted\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdice_hundred_df\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msort_values\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mby\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\"Rolls\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreset_index\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdrop\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 6\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdice_hundred_df_sorted\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdice_hundred_df_sorted\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"Rolls\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmarker\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'o'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtitle\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"Dice Rolls (Hundred) Sorted by Value\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 8\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mxlabel\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"Roll Number\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/pandas/core/frame.py\u001b[0m in \u001b[0;36m?\u001b[0;34m(self, by, axis, ascending, inplace, kind, na_position, ignore_index, key)\u001b[0m\n\u001b[1;32m 7185\u001b[0m \u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7186\u001b[0m \u001b[0;32melif\u001b[0m \u001b[0mlen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mby\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7187\u001b[0m \u001b[0;31m# len(by) == 1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7188\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 7189\u001b[0;31m \u001b[0mk\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_get_label_or_level_values\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mby\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0maxis\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 7190\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7191\u001b[0m \u001b[0;31m# need to rewrap column in Series to apply key function\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7192\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mkey\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/pandas/core/generic.py\u001b[0m in \u001b[0;36m?\u001b[0;34m(self, key, axis)\u001b[0m\n\u001b[1;32m 1907\u001b[0m \u001b[0mvalues\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mxs\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mother_axes\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_values\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1908\u001b[0m \u001b[0;32melif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_is_level_reference\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0maxis\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1909\u001b[0m \u001b[0mvalues\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0maxes\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0maxis\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_level_values\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_values\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1910\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1911\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mKeyError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1912\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1913\u001b[0m \u001b[0;31m# Check for duplicates\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1914\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mvalues\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mndim\u001b[0m \u001b[0;34m>\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mKeyError\u001b[0m: 'Rolls'" + ] + } + ], + "source": [ + "# Read the CSV file\n", + "dice_hundred_df = pd.read_csv('/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/roll_the_dice_hundred.csv')\n", + "\n", + "# Sort the values and plot\n", + "dice_hundred_df_sorted = dice_hundred_df.sort_values(by=\"Rolls\").reset_index(drop=True)\n", + "plt.plot(dice_hundred_df_sorted.index, dice_hundred_df_sorted[\"Rolls\"], marker='o')\n", + "plt.title(\"Dice Rolls (Hundred) Sorted by Value\")\n", + "plt.xlabel(\"Roll Number\")\n", + "plt.ylabel(\"Dice Value\")\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\nyour comments here\\n'" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "your comments here\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2.- Using the functions you defined in *challenge 2*, calculate the mean value of the hundred dice rolls." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "ename": "KeyError", + "evalue": "'Age'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/pandas/core/indexes/base.py:3805\u001b[0m, in \u001b[0;36mIndex.get_loc\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 3804\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m-> 3805\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_engine\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_loc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcasted_key\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 3806\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m err:\n", + "File \u001b[0;32mindex.pyx:167\u001b[0m, in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n", + "File \u001b[0;32mindex.pyx:196\u001b[0m, in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n", + "File \u001b[0;32mpandas/_libs/hashtable_class_helper.pxi:7081\u001b[0m, in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n", + "File \u001b[0;32mpandas/_libs/hashtable_class_helper.pxi:7089\u001b[0m, in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n", + "\u001b[0;31mKeyError\u001b[0m: 'Age'", + "\nThe above exception was the direct cause of the following exception:\n", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn[12], line 5\u001b[0m\n\u001b[1;32m 2\u001b[0m ages_population_df \u001b[38;5;241m=\u001b[39m pd\u001b[38;5;241m.\u001b[39mread_csv(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/roll_the_dice_hundred.csv\u001b[39m\u001b[38;5;124m'\u001b[39m)\n\u001b[1;32m 4\u001b[0m \u001b[38;5;66;03m# Calculate frequency distribution\u001b[39;00m\n\u001b[0;32m----> 5\u001b[0m freq_dist_ages \u001b[38;5;241m=\u001b[39m \u001b[43mages_population_df\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mAge\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m]\u001b[49m\u001b[38;5;241m.\u001b[39mvalue_counts()\u001b[38;5;241m.\u001b[39msort_index()\n\u001b[1;32m 6\u001b[0m freq_dist_ages\n", + "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/pandas/core/frame.py:4102\u001b[0m, in \u001b[0;36mDataFrame.__getitem__\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 4100\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcolumns\u001b[38;5;241m.\u001b[39mnlevels \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m1\u001b[39m:\n\u001b[1;32m 4101\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_getitem_multilevel(key)\n\u001b[0;32m-> 4102\u001b[0m indexer \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcolumns\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_loc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mkey\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 4103\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m is_integer(indexer):\n\u001b[1;32m 4104\u001b[0m indexer \u001b[38;5;241m=\u001b[39m [indexer]\n", + "File \u001b[0;32m/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/pandas/core/indexes/base.py:3812\u001b[0m, in \u001b[0;36mIndex.get_loc\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 3807\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(casted_key, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;129;01mor\u001b[39;00m (\n\u001b[1;32m 3808\u001b[0m \u001b[38;5;28misinstance\u001b[39m(casted_key, abc\u001b[38;5;241m.\u001b[39mIterable)\n\u001b[1;32m 3809\u001b[0m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28many\u001b[39m(\u001b[38;5;28misinstance\u001b[39m(x, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;28;01mfor\u001b[39;00m x \u001b[38;5;129;01min\u001b[39;00m casted_key)\n\u001b[1;32m 3810\u001b[0m ):\n\u001b[1;32m 3811\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m InvalidIndexError(key)\n\u001b[0;32m-> 3812\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m(key) \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01merr\u001b[39;00m\n\u001b[1;32m 3813\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mTypeError\u001b[39;00m:\n\u001b[1;32m 3814\u001b[0m \u001b[38;5;66;03m# If we have a listlike key, _check_indexing_error will raise\u001b[39;00m\n\u001b[1;32m 3815\u001b[0m \u001b[38;5;66;03m# InvalidIndexError. Otherwise we fall through and re-raise\u001b[39;00m\n\u001b[1;32m 3816\u001b[0m \u001b[38;5;66;03m# the TypeError.\u001b[39;00m\n\u001b[1;32m 3817\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_check_indexing_error(key)\n", + "\u001b[0;31mKeyError\u001b[0m: 'Age'" + ] + } + ], + "source": [ + "# Read the CSV file\n", + "ages_population_df = pd.read_csv('/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/roll_the_dice_hundred.csv')\n", + "\n", + "# Calculate frequency distribution\n", + "freq_dist_ages = ages_population_df['Age'].value_counts().sort_index()\n", + "freq_dist_ages\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3.- Now, calculate the frequency distribution.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "# your code here" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 4.- Plot the histogram. What do you see (shape, values...) ? How can you connect the mean value to the histogram? " + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "# your code here" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\nyour comments here\\n'" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "your comments here\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 5.- Read the `roll_the_dice_thousand.csv` from the `data` folder. Plot the frequency distribution as you did before. Has anything changed? Why do you think it changed?" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "# your code here" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\nyour comments here\\n'" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "your comments here\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 4\n", + "In the `data` folder of this repository you will find three different files with the prefix `ages_population`. These files contain information about a poll answered by a thousand people regarding their age. Each file corresponds to the poll answers in different neighbourhoods of Barcelona.\n", + "\n", + "#### 1.- Read the file `ages_population.csv`. Calculate the frequency distribution and plot it as we did during the lesson. Try to guess the range in which the mean and the standard deviation will be by looking at the plot. " + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0sAAAI0CAYAAADMR7LWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAABwW0lEQVR4nO3deZzN9f////uZfRhjl31GyJKkFImymyyh9JYky5tSb7K10WZLSSW9E6q3tFFSUvJBQklSkaVVhFL21NhnxpzH7w+/OV/HvIZzxjleM9yul8tcOK/zOM/n47U8X/N6zOu8Xi+PmZkAAAAAAH4i3E4AAAAAAPIiiiUAAAAAcECxBAAAAAAOKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAOeUESNGyOPxnJW+mjRpoiZNmvhef/rpp/J4PHr33XfPSv89e/ZUcnLyWekrtw4ePKg+ffqodOnS8ng8GjRokNsphdzJ20E4eTwe9e/f/6z0dSr5YdvLreTkZPXs2TPXn23Xrt1p41599VV5PB6tWrUqV/2ES8+ePZWQkOB2Gn7OZH0AoUCxBAQp65ec08/QoUPdTu+ccvKyjouLU9myZZWSkqL//ve/OnDgQEj62b59u0aMGKG1a9eGpL1Qysu5BeLxxx/Xq6++qrvuuktvvPGGbrvtttN+JjMzU2XLlpXH49H8+fPPQpZ5y4oVKzRixAj9888/ruWQnJyc437u6NGjIe8v2Hnu2bOnPB6PateuLTPL9n5eKSoB5H9RbicA5FejRo1SpUqV/KbVqlXLpWzObVnLOiMjQzt37tSnn36qQYMGafz48frwww9Vu3ZtX+zDDz8cdNG6fft2jRw5UsnJyapTp07An/v444+D6ic3TpXbyy+/LK/XG/YczsSSJUt01VVXafjw4UF9ZseOHUpOTtb06dPVunXrMGZ45kK9HaxYsUIjR45Uz549VaRIkZC2HYw6deronnvuyTY9JiYm5Ntebuf5u+++0+zZs9WpU6eQ5bJhwwZFRPC3ZADHUSwBudS6dWtdccUVAcUePXpUMTEx/ALOpZOX9bBhw7RkyRK1a9dO7du3108//aT4+HhJUlRUlKKiwrtrO3z4sAoUKKCYmJiw9nM60dHRrvYfiN27d6tmzZpBfebNN9/U5Zdfrh49eujBBx/UoUOHVLBgwTBleObc3g7CpVy5curWrZvje4Hsy44dOyav1xu25RMfH68KFSpo1KhRuvHGG0P29dvY2NiQtJOfZP2OApAdR25AiGVdt/L222/r4YcfVrly5VSgQAHt379fkvTVV1/puuuuU+HChVWgQAE1btxYX3zxRbZ2li9friuvvFJxcXGqXLmyXnzxxWzX42zdulUej0evvvpqts97PB6NGDHCb9qff/6pf//737rgggsUGxuriy++WK+88opj/u+8847GjBmj8uXLKy4uTs2bN9emTZuy9fPVV1+pTZs2Klq0qAoWLKjatWvrueeekyRNmzZNHo9Ha9asyfa5xx9/XJGRkfrzzz9Pu0ydNGvWTI888oh+++03vfnmm77pTtcsLVq0SI0aNVKRIkWUkJCgatWq6cEHH/TN75VXXilJ6tWrl++rRlnLtEmTJqpVq5ZWr16ta6+9VgUKFPB9NqdrVTIzM/Xggw+qdOnSKliwoNq3b69t27b5xeT0PfwT2zxdbk7XjRw6dEj33HOPKlSooNjYWFWrVk1PP/10tq8qZX1Nac6cOapVq5Zve1iwYIHzAj/J7t271bt3b11wwQWKi4vTpZdeqtdee833ftZ2tGXLFs2bN8+X+9atW0/Z7pEjR/T++++rS5cu6ty5s44cOaIPPvjAMXbWrFmqWbOm4uLiVKtWLb3//vuOy8Tr9WrChAm6+OKLFRcXpwsuuEB9+/bV33//7Re3atUqpaSkqESJEoqPj1elSpX073//+7TLIqdr1wIdQycaMWKE7rvvPklSpUqVclxugay3QMZ7bp28nLP2RU8//bQmTJigypUrKzY2Vj/++KMk6fnnn9fFF1+sAgUKqGjRorriiis0Y8aMoOb5ZBEREXr44Ye1fv16vf/++6fNOS0tTcOHD1eVKlUUGxurChUq6P7771daWppfnNPYXL9+vRo3bqz4+HiVL19ejz32mG//5pTn8uXLVa9ePcXFxenCCy/U66+/7pjT4cOH1bdvXxUvXlyJiYnq3r17tu1SkiZNmqSLL75YsbGxKlu2rPr165ftK4uB7FOk0/+Oko5vOx07dlRCQoJKliype++9V5mZmX7tBrqvOXbsmEaPHu3bJpKTk/Xggw9mW+5mpscee0zly5dXgQIF1LRpU/3www+Oyw04mzizBORSamqq9u7d6zetRIkSvv+PHj1aMTExuvfee5WWlqaYmBgtWbJErVu3Vt26dTV8+HBFRERo2rRpatasmT7//HPVq1dP0vGvlrRq1UolS5bUiBEjdOzYMQ0fPlwXXHBBrvPdtWuXrrrqKt9BcsmSJTV//nz17t1b+/fvz3bh/dixYxUREaF7771XqampGjdunG699VZ99dVXvphFixapXbt2KlOmjAYOHKjSpUvrp59+0kcffaSBAwfqpptuUr9+/TR9+nRddtllfu1Pnz5dTZo0Ubly5XI9T7fddpsefPBBffzxx7r99tsdY3744Qe1a9dOtWvX1qhRoxQbG6tNmzb5CtQaNWpo1KhRevTRR3XHHXfommuukSRdffXVvjb++usvtW7dWl26dFG3bt1Oux7GjBkjj8ejBx54QLt379aECRPUokULrV271ncGLBCB5HYiM1P79u21dOlS9e7dW3Xq1NHChQt133336c8//9Szzz7rF798+XLNnj1b//nPf1SoUCH997//VadOnfT777+rePHiOeZ15MgRNWnSRJs2bVL//v1VqVIlzZo1Sz179tQ///yjgQMHqkaNGnrjjTc0ePBglS9f3vd1rpIlS55ynj/88EMdPHhQXbp0UenSpdWkSRNNnz5dXbt29YubN2+ebr75Zl1yySV64okn9Pfff6t3796O21Pfvn316quvqlevXhowYIC2bNmiiRMnas2aNfriiy8UHR2t3bt3+8bc0KFDVaRIEW3dulWzZ88+Zb6nEsgYOtmNN96oX375RW+99ZaeffZZ3z7lxOUWyHoLdrw7ycjIyLaPK1CggAoUKJDjZ6ZNm6ajR4/qjjvuUGxsrIoVK6aXX35ZAwYM0E033aSBAwfq6NGjWr9+vb766it17do1oHnOSdeuXTV69GiNGjVKN9xwQ45nl7xer9q3b6/ly5frjjvuUI0aNfTdd9/p2Wef1S+//KI5c+bk2Meff/6ppk2byuPxaNiwYSpYsKD+97//5XgGatOmTbrpppvUu3dv9ejRQ6+88op69uypunXr6uKLL/aL7d+/v4oUKaIRI0Zow4YNmjx5sn777TdfQSMdLyZHjhypFi1a6K677vLFffPNN77tNzecfkdJx//Yk5KSovr16+vpp5/WJ598omeeeUaVK1fWXXfdJSm4fU2fPn302muv6aabbtI999yjr776Sk888YR++uknvyL30Ucf1WOPPaY2bdqoTZs2+vbbb9WqVSulp6fnav6AkDEAQZk2bZpJcvwxM1u6dKlJsgsvvNAOHz7s+5zX67WqVataSkqKeb1e3/TDhw9bpUqVrGXLlr5pHTt2tLi4OPvtt99803788UeLjIy0E4ftli1bTJJNmzYtW56SbPjw4b7XvXv3tjJlytjevXv94rp06WKFCxf25ZqVf40aNSwtLc0X99xzz5kk++6778zM7NixY1apUiVLSkqyv//+26/NE+fvlltusbJly1pmZqZv2rfffptj3ifKWtbffPNNjjGFCxe2yy67zPd6+PDhfsvo2WefNUm2Z8+eHNv45ptvcsyncePGJsmmTJni+F7jxo19r7OWXbly5Wz//v2+6e+8845Jsueee843LSkpyXr06HHaNk+VW48ePSwpKcn3es6cOSbJHnvsMb+4m266yTwej23atMk3TZLFxMT4TVu3bp1Jsueffz5bXyeaMGGCSbI333zTNy09Pd0aNGhgCQkJfvOelJRkbdu2PWV7J2rXrp01bNjQ9/qll16yqKgo2717t1/cJZdcYuXLl7cDBw74pn366acmyW+ZfP755ybJpk+f7vf5BQsW+E1///33T7ut5SSn7eB0YygnTz31lEmyLVu2ZHsv0PUW6HjPSVJSkuM+LmufcvK2l7UvSkxMzLauOnToYBdffHGu59lJjx49rGDBgmZm9tprr5kkmz17tu99SdavXz/f6zfeeMMiIiLs888/92tnypQpJsm++OILv3k/cWzefffd5vF4bM2aNb5pf/31lxUrVixbzlnLbdmyZb5pu3fvttjYWLvnnnt807L2bXXr1rX09HTf9HHjxpkk++CDD3yfjYmJsVatWvntQydOnGiS7JVXXskx7yw5bZ8n/44yO75cJdmoUaP8pl922WVWt25d3+tA9zVr1641SdanTx+/uHvvvdck2ZIlS/zms23btn6/Px588EGT5DhfwNnC1/CAXHrhhRe0aNEiv58T9ejRw+8swtq1a7Vx40Z17dpVf/31l/bu3au9e/fq0KFDat68uZYtWyav16vMzEwtXLhQHTt2VMWKFX2fr1GjhlJSUnKVq5npvffe0/XXXy8z8/W9d+9epaSkKDU1Vd9++63fZ3r16uX3HfassxqbN2+WJK1Zs0ZbtmzRoEGDsl2QfeJfd7t3767t27dr6dKl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9u3LNi3rzF7WWbysZ/g4HWjkxuuvv+53HdW7776rHTt2+D1ctXLlylq5cqXfnZ4++uijbLcYDya3Nm3aKDMzUxMnTvSb/uyzz8rj8YTs4a5t2rTRzp07NXPmTN+0Y8eO6fnnn1dCQkK2YicQWWd+7r//ft10001+P507d1bjxo19MWXLllWtWrX0+uuv+42lzz77TN99951fu507d1ZmZqZGjx6drc9jx475luvff/+dbbs9eTs5W850ewzHeD8Tf/31l9/rmJgY1axZU2bmuz4sFGOwW7duqlKliuPZqs6dO+vPP//Uyy+/nO29I0eO6NChQzm2m5KSoi+//FJr1671Tdu3b1+OZyuD8dJLL/ldIzd58mQdO3bMN1ZbtGihmJgY/fe///XbPqdOnarU1FS1bdvWNy3QfUooBLqvySr6JkyY4BeXdYYvK/8WLVooOjpazz//vN98nvw5wA2cWQLOkoiICP3vf/9T69atdfHFF6tXr14qV66c/vzzTy1dulSJiYmaO3euJGnkyJFasGCBrrnmGv3nP//xHYhefPHFWr9+vV+7ffr00dixY9WnTx9dccUVWrZsmX755Zds/Y8dO1ZLly5V/fr1dfvtt6tmzZrat2+fvv32W33yySeORcXp5mfy5Mm6/vrrVadOHfXq1UtlypTRzz//rB9++CFbYde9e3fde++9khT0V/Dmz5+vn3/+WceOHdOuXbu0ZMkSLVq0SElJSfrwww8VFxeX42dHjRqlZcuWqW3btkpKStLu3bs1adIklS9fXo0aNZJ0/CCjSJEimjJligoVKqSCBQuqfv36OX6n/3SKFSumRo0aqVevXtq1a5cmTJigKlWq+N3evE+fPnr33Xd13XXXqXPnzvr111/15ptv+l24H2xu119/vZo2baqHHnpIW7du1aWXXqqPP/5YH3zwgQYNGpSt7dy644479OKLL6pnz55avXq1kpOT9e677+qLL77QhAkTcnUt2vTp01WnTp0cvw7Vvn173X333fr22291+eWX6/HHH1eHDh3UsGFD9erVS3///bcmTpyoWrVq+RVQjRs3Vt++ffXEE09o7dq1atWqlaKjo7Vx40bNmjVLzz33nG666Sa99tprmjRpkm644QZVrlxZBw4c0Msvv6zExETfAd/ZUrduXUnSQw89pC5duig6OlrXX399UA/mDfV4PxOtWrVS6dKl1bBhQ11wwQX66aefNHHiRLVt29a3rYRiniMjI/XQQw853ozltttu0zvvvKM777xTS5cuVcOGDZWZmamff/5Z77zzjhYuXJjjNaj333+/3nzzTbVs2VJ3332379bhFStW1L59+87orFh6erqaN2+uzp07a8OGDZo0aZIaNWqk9u3bSzp+lnDYsGEaOXKkrrvuOrVv394Xd+WVV/rtSwPdp4RCoPuaSy+9VD169NBLL72kf/75R40bN9bXX3+t1157TR07dvSdVct6ltMTTzyhdu3aqU2bNlqzZo3mz5/v90gOwBVn+/Z7QH53uttZZ92WddasWY7vr1mzxm688UYrXry4xcbGWlJSknXu3NkWL17sF/fZZ59Z3bp1LSYmxi688EKbMmVKtttimx2/9Xjv3r2tcOHCVqhQIevcubPt3r07263Dzcx27dpl/fr1swoVKlh0dLSVLl3amjdvbi+99NJp88/pNuXLly+3li1bWqFChaxgwYJWu3Ztx1tP79ixwyIjI+2iiy5yXC5OTr5Ne0xMjJUuXdpatmxpzz33nN8tqrOcvIwWL15sHTp0sLJly1pMTIyVLVvWbrnlFvvll1/8PvfBBx9YzZo1LSoqym8+GzdunONtj3O6Je9bb71lw4YNs1KlSll8fLy1bdvW7zbwWZ555hkrV66cxcbGWsOGDW3VqlXZ2jxVbiffvtnM7MCBAzZ48GArW7asRUdHW9WqVe2pp57yux2vWfZbK2fJ6fbDJ9u1a5f16tXLSpQoYTExMXbJJZc43t48kFuHr1692iTZI488kmPM1q1bTZINHjzYN+3tt9+26tWrW2xsrNWqVcs+/PBD69Spk1WvXj3b51966SWrW7euxcfHW6FCheySSy6x+++/37Zv325mx29nf8stt1jFihUtNjbWSpUqZe3atbNVq1addlnktB0EOoacjB492sqVK2cRERF+t6cOZr0FMt5zcrr1ltOtw5966qlssS+++KJde+21vn1e5cqV7b777rPU1NSA5jmn/rNuHX6ijIwMq1y5suNySk9PtyeffNIuvvhii42NtaJFi1rdunVt5MiRfrk4Lcs1a9bYNddcY7GxsVa+fHl74okn7L///a9Jsp07d/p91mm5nbyNZO3bPvvsM7vjjjusaNGilpCQYLfeeqv99ddf2T4/ceJEq169ukVHR9sF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AOcSziwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAICDKLcTAADgVJKHzlNspGlcPanWiIVKy/Ro69i2bqcFADgPcGYJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADlwtliZPnqzatWsrMTFRiYmJatCggebPn+97/+jRo+rXr5+KFy+uhIQEderUSbt27XIxYwAAAADnC1eLpfLly2vs2LFavXq1Vq1apWbNmqlDhw764YcfJEmDBw/W3LlzNWvWLH322Wfavn27brzxRjdTBgAAAHCecPXW4ddff73f6zFjxmjy5MlauXKlypcvr6lTp2rGjBlq1qyZJGnatGmqUaOGVq5cqauuusqNlAEAAACcJ/LMNUuZmZl6++23dejQITVo0ECrV69WRkaGWrRo4YupXr26KlasqC+//NLFTAEAAACcD1x/KO13332nBg0a6OjRo0pISND777+vmjVrau3atYqJiVGRIkX84i+44ALt3Lkzx/bS0tKUlpbme71//35JUkZGhjIyMnz/P/HfU3E71u3+g4l1u/9gYt3uP1yxbvcfTKzb/QcT62b/sZF2/N+I//fvqeLdXlaBxsZGmt88nSo+mNhw5Xpi36FYB05t5vSZM409F7aXvNB/MLFu9x+uWLf7DybW7f6DiXW7/2Bi3e4/FLGBfO5EHjOzoD4RYunp6fr999+Vmpqqd999V//73//02Wefae3aterVq5df4SNJ9erVU9OmTfXkk086tjdixAiNHDky2/QZM2aoQIECYZkHAAAAAHnf4cOH1bVrV6WmpioxMfG08a4XSydr0aKFKleurJtvvlnNmzfX33//7Xd2KSkpSYMGDdLgwYMdP+90ZqlChQrau3evb4FkZGRo0aJFatmypaKjo0+Zj9uxbvdPrvkr1u3+yTX0sbVGLJR0/AzB6Cu8emRVhFY/et0Z919rxEK/NtO8Hn0/IuWszleg/Qca67SsgonNabmGYx2caa6hmK9Ac80rsW73f67mGkys2/2Tq/uxbvcfitj9+/erRIkSARdLrn8N72Rer1dpaWmqW7euoqOjtXjxYnXq1EmStGHDBv3+++9q0KBBjp+PjY1VbGxstunR0dHZFqjTtJy4Het2/8HEut1/MLFu9x+uWLf7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uPvvv98uv/zyoNo0s6DaDTaHcAxMN3dieWW+gtk5BhJbpkwZmzt3bo5xH374oZUpU8bMzJKTk+21117LMfa1116zpKQkM7OA2w2m/3DFBjpf4VpWwcQGelAZjoPvvBAbrvkKx36AsXVuji0zilu3x5ZZ4Os2mOOycG1bgcYG02a45iscx7tujy2z4JZBMM6LGzxcfPHFmjp1qsaNG+f4/iuvvKKaNWtq6NCh6tq1qz799FPH04ILFizQjBkz5PV6A4rLkpycrHnz5qlatWqO/c+bN09JSUl65pln1K5dOy1YsMCx3c2bN2vevHlBtSkpqHaDiS1durS+/vprVa9e3TGHr7/+2vf5QPNNS0sLuM1g+g9XbDjmK5h1G2hs586d1b17dz3yyCNq3rx5tvX62GOP6e6775Yk3Xvvvbrjjju0evVqx9iXX35ZTz/9tCSpT58+AbXr9XoD7j/QNoONDXS+du7cGZZlFUxskSJFtHXrVtWqVctxvW7dulVFihRRbGxswNtVoG3mhdhwzVc49gPdu3dnbJ2DYyvY7SWYdt0eh4HOV3p6uqtjSwp83ZYsWTLg47JwbVuBxppZwG2OGjUqLPMVaLvBHO/mhbEVzDIIStDlVT60dOlSK1iwoF1yySU2ePBgGzt2rI0dO9YGDx5stWvXtoSEBPvss8/MzOyLL76wm2++2SpWrGgxMTEWExNjFStWtJtvvtlWrFjhazPQODOzd955x6Kiouz666+35557zt5++217++237bnnnrP27dtbTEyMvfvuu2ZmtmXLFrv//vvt2muvtYsuusguuugiu/baa+2BBx6wLVu25KrNYNoNJnbixIkWGxtrAwYMsA8++MBWrlxpK1eutA8++MAGDBhg8fHx9sILLwSVbzBt5oXYcMxXMOs2mNixY8damTJlzOPxWEREhEVERJjH47EyZcrYk08+6bcNvP3221a/fn2Liooyj8djHo/HoqKirH79+jZz5ky/2EDbDab/cMUGOl/hWlaBxj7yyCNWtGhRGz9+vK1bt8527txpO3futHXr1tn48eOtWLFiNnz48KC2q0DbzAux4ZqvcO0HGFvn3tgKdhsItF23x1Yw85UXxlYw6zaY47JwbFvBxAbTZrjmK9THu26Prdwsg0CdF8WSWXDFQjgEs7G72WawwjEw3d6J5YX5CmbdBrsdbN682VasWGErVqywzZs357RqzcwsPT3dtm/fbtu3b7f09PRTxgbabjD9hys20PkK17IKJDbQg8pwHHznhdhwzVe49gNmjC2zc2tsmVHc5pWxZRbcdhCoUG9bwcaGY57C2e7puD22ThTKZXBe3A0P4ZeRkaG9e/dKkkqUKKHo6Oiz2mZeiA1UONrEuWvLli1+t0qtVKmSY1ww21WgbeaF2HDNl9v7AbgvXNtLoO26PbaCmS/GFoLh9tgKNYqlIDz44IPauXOnXnnllZDEBatHjx7atm2blixZ4lq74coB7vrggw+Umpqq7t27nzZ20qRJ2rt3rx599NGQtRtM/+GKDXS+wrWsgolF/sHYYmwhfAJdt8Ecl4Vr2wo0Npg2wzVfbh/vhkuu9wVndF7qHNG9e3dr2rTpWY/LMmzYMOvVq1dAcT179gxpm7lpN9DYF154wUaOHBlwu4HkG0ybeSE2HPMV7LoNJLZatWoWERERUJvNmjWzSpUqBRQbaLvB9B+u2EDnK1zLKpjYOXPmnPKOP1mC2a4CbTMvxIZrvsKxH2BsnZtjyyw826HbY8ss8Plye2yZBb5ugzkuC9e2FWhsMG2Ga77Ccbzr9tgyC24ZnIhiycyGDh0acAFwKk73iw/EbbfdFlRxFYhgC7ZwCMfAdHsnFmxsOOYrmHWbF7YDhF6gB5XhOPjOC7Hhmq9w7QeQf1Dc5q/iFvmH22PrTPA1vBCKiYnRunXrVKNGDbdTOSM7duzQ5MmTtXz5cu3YsUMRERG68MIL1bFjR/Xs2VORkZFupwgAAACE3XnxnKXT2bZtm4YPH65XXnlFR44c0erVq1WsWDHVrFnTL+7o0aN65513tHbtWsd2MjMzNXbsWBUvXlySNH78eMe4Q4cO6Z133tGmTZtUpkwZ3XLLLSpevLi+/fZbFS1a1HfB2htvvKEpU6bo999/V1JSkvr3768uXbpIku6++2517txZ11xzTUDzOHHiRH399ddq06aNunTpojfeeENPPPGEvF6vbrzxRo0aNUpRUVFatWqVWrRooSpVqig+Pl4bN25U165dlZ6ernvvvVevvPKKFixYoEKFCgXUL/KWr7/+Wl9++aXfBZINGjRQvXr1Am7j77//1ty5c/2uK/B6vYqIiMgW6/V69ccff6hixYoyM23dulUVKlRQVFSU0tPT9f777ystLU1t2rRRiRIlTtlvs2bNNG3aNN8zpnKyZcsW39g68bkMaWlpioiI8F08+uuvv+qVV17xja/evXurUqVKeu+999S6dWsVKFAgoOWxbt06rV69Wk2aNNGFF16oH374QS+88IK8Xq9uuOEGpaSk+MUvWbIk2x8i2rdvr6pVqwbUH/ImxhZjC+GRnp6uOXPmZBtfV199tTp06KCYmJjTtrFr1y69+OKLfteq/PHHHypSpIgSEhL8YjMyMvTll1/q2muvlST99ddfWr9+vS699FIVK1ZMe/fu1dSpU5WWlqZ//etfp/0D+YUXXqiFCxfmuB2amT799FPf2EpJSfGNpT/++ENxcXG+Mfz555/7HRf269dPDRo0kHT8OZk33XTTacdxlo8++khff/21UlJS1LBhQy1ZskRPP/2077jwjjvukCQdOXJEb731luMf0Js3bx5QX2dboOs2YGE9b5VPrF271iIiImzDhg2WlJTkuzXhtddea9u3b/fF7dy503e7wjp16liTJk38fjwej1155ZXWpEkTv68+1ahRw/766y8zM/v9998tOTnZChcubFdeeaUVK1bMSpUqZZs3b7batWvbokWLzMzs5Zdftvj4eBswYIBNnjzZBg0aZAkJCTZ16lQzM1+OVatWtbFjx9qOHTtynL/Ro0dboUKFrFOnTla6dGkbO3asFS9e3B577DF7/PHHrWTJkvboo4+amVnDhg1txIgRvs++8cYbVr9+fTMz27dvn9WpU8cGDBjgez8tLc1mzpxpgwYNsi5duliXLl1s0KBB9s4771haWlrA62Dnzp1+30/dtm2bHThwIFtcenq675lYZmZ79+61JUuW+Jbvnj17bOzYsTZy5Ej78ccfT9tvpUqV7JdffjlljNfrtSVLlthLL71kc+fO9bsF5bZt22zPnj2+18uWLbOuXbtao0aN7NZbb/Xduvvpp5+2rVu3njafLHPnzrVHHnnEli9fbmZmixcvttatW1tKSoq9+OKLfrGHDx+2qVOnWq9evey6666zNm3aWP/+/e2TTz7xxezatcsaNWpkHo/HkpKSrF69elavXj3f9t6oUSPbtWtXQLlljRczs9TUVPvXv/5lcXFxVqpUKXvkkUfs2LFjvtisMfPzzz9bUlKSRUREWJUqVWzz5s1Wt25dK1iwoBUoUMBKlCjhWw8ffPCB409kZKRNnDjR99rM7K677vJtJ4cPH7ZOnTr5xmhERIQ1bdrU937jxo1t1qxZZma2fPlyi42Ntdq1a9vNN99sl112mRUoUMBWrFhhHo/HEhMT7fbbb7eVK1eeclm89957FhkZacWLF7eEhARbtGiRFSlSxFq0aGEpKSkWGRlp06dP962DevXqWUREhEVFRVlERITVrVvXSpcubZGRkXbfffdla/+rr76yCRMm2NChQ23o0KE2YcIE++qrrwJaT2bHx+zJ3+XOzMx0jM3MzLTffvvN99rr9drmzZstIyPDzI6P9bfffttee+01v20+J02bNg1om9+8ebN9/PHHfk9oP3r0qN8427Rpkz344IPWrVs3e+ihh/xuNf3uu+/aoUOHTttPlrVr19rUqVPt119/NTOz77//3u666y7r27evLViwIFv84sWLbeTIkXbnnXfaf/7zH3v66af99hmMrfNzbJnlfny5ObbMAh9fbo8tM7ONGzfahRdeaHFxcda4cWPr3Lmzde7c2Ro3bmxxcXFWpUoV27hxY0C5ZY2t7du325VXXmkREREWGRlpt912m9/xRtbYMju+nRQuXNg8Ho8VLVrUVq1aZZUqVbKqVata5cqVLT4+3lavXm1mZs8995zjT2RkpA0bNsz3unXr1vbPP/+Ymdlff/1l9evXN4/HYyVLlrSIiAirXr267d6928zM6tWrZ3PnzjWz49fmREREWPv27e2BBx6wG264waKjo33vezwei4yMtBYtWtjbb799ymOwKVOmWFRUlNWtW9cSExPtjTfesEKFClmfPn2sb9++Fh8fbxMmTLCNGzdaUlKSlSpVyipUqGAej8fatm1r9evXt8jISPvXv/7l246zhGNsBTpmglm3wTgviqWcfkFk/Tz77LMWERFhHTt2tLZt29qePXts48aN1rZtW6tUqZJvB5e1kJ944gmrVKmSLV682K+fqKgo++GHH7L17/F4fL8sb731Vrv66qt9A+XAgQPWokULu+WWWyw+Pt63A7zsssvspZde8mtn+vTpVrNmTV+bn3zyiQ0cONBKlChh0dHR1r59e5s7d262nXXlypXtvffeM7PjO4zIyEh78803fe/Pnj3bqlSpYmZm8fHxvh2d2fEdfHR0tO3cudPMzD7++GMrW7asmYVuJ5aVV0REhOs7MTMLy44sHDuxrHUQyI6sU6dO1qBBA/v555+z9ffzzz/b1VdfbTfd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v9a2bdvUsGFDffHFF7riiiskKeC4YNoMV6zb/Ycj16SkJEVGRionHo9HLVu2DGvsyJEjFR8fry+//FK33367hg4dqksvvVT333+/Dh8+rOuvv16jR4/Osa0c+zDj1uEAAAAAcDKuWQIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAQL725ZdfKjIyUm3btnU7FQDAOYa74QEA8rU+ffooISFBU6dO1YYNG1S2bFm3UwIAnCM4swQAyLcOHjyomTNn6q677lLbtm316quv+r3/4YcfqmrVqoqLi1PTpk312muvyePx6J9//vHFLF++XNdcc43i4+NVoUIFDRgw4JTPLwMAnD8olgAA+dY777yj6tWrq1q1aurWrZteeeUVZX1hYsuWLbrpppvUsWNHrVu3Tn379tVDDz3k9/lff/1V1113nTp16qT169dr5syZWr58ufr37+/G7AAA8hi+hgcAyLcaNmyozp07a+DAgTp27JjKlCmjWbNmqUmTJho6dKjmzZun7777zhf/8MMPa8yYMfr7779VpEgR9enTR5GRkXrxxRd9McuXL1fjxo116NAhxcXFuTFbAIA8gjNLAIB8acOGDfr66691yy23SJKioqJ08803a+rUqb73r7zySr/P1KtXz+/1unXr9OqrryohIcH3k5KSIq/Xqy1btpydGQEA5FlRbicAAEBuTJ06VceOHfO7oYOZKTY2VhMnTgyojYMHD6pv374aMGBAtvcqVqwYslwBAPkTxRIAIN85duyYXn/9dT3zzDNq1aqV33sdO3bUW2+9pWrVqun//u///N775ptv/F5ffvnl+vHHH1WlSpWw5wwAyH+4ZgkAkO/MmTNHN998s3bv3q3ChQv7vffAAw9oyZIleuedd1StWjUNHjxYvXv31tq1a3XPPffojz/+0D///KPChQtr/fr1uuqqq/Tvf/9bffr0UcGCBfXjjz9q0aJFAZ+dAgCcu7hmCQCQ70ydOlUtWrTIVihJUqdOnbRq1SodOHBA7777rmbPnq3atWtr8uTJvrvhxcbGSpJq166tzz77TL/88ouuueYaXXbZZXr00Ud5VhMAQBJnlgAA55ExY8ZoypQp2rZtm9upAADyAa5ZAgCcsyZNmqQrr7xSxYsX1xdffKGnnnqKZygBAAJGsQQAOGdt3LhRjz32mPbt26eKFSvqnnvu0bBhw9xOCwCQT/A1PAAAAABwwA0eAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcUCwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAwf8H8y4mmjLHDYIAAAAASUVORK5CYII=", + "text/plain": [ + "
    " + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Guessed range for Mean: (30, 40)\n", + "Guessed range for Standard Deviation: (10, 15)\n" + ] + } + ], + "source": [ + "# Read the file ages_population.csv\n", + "df_ages1 = pd.read_csv('/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/ages_population.csv')\n", + "\n", + "# Calculate the frequency distribution\n", + "age_counts = df_ages1['observation'].value_counts().sort_index()\n", + "\n", + "# Plot the frequency distribution\n", + "plt.figure(figsize=(10, 6))\n", + "age_counts.plot(kind='bar')\n", + "plt.title('Frequency Distribution of Ages in the First Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "plt.grid(True)\n", + "plt.show()\n", + "\n", + "# Provide a guess for the range of mean and standard deviation by looking at the plot\n", + "mean_guess = (30, 40)\n", + "std_dev_guess = (10, 15)\n", + "\n", + "print(\"Guessed range for Mean:\", mean_guess)\n", + "print(\"Guessed range for Standard Deviation:\", std_dev_guess)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2.- Calculate the exact mean and standard deviation and compare them with your guesses. Do they fall inside the ranges you guessed?" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0sAAAI0CAYAAADMR7LWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAABwW0lEQVR4nO3deZzN9f////uZfRhjl31GyJKkFImymyyh9JYky5tSb7K10WZLSSW9E6q3tFFSUvJBQklSkaVVhFL21NhnxpzH7w+/OV/HvIZzxjleM9yul8tcOK/zOM/n47U8X/N6zOu8Xi+PmZkAAAAAAH4i3E4AAAAAAPIiiiUAAAAAcECxBAAAAAAOKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAOeUESNGyOPxnJW+mjRpoiZNmvhef/rpp/J4PHr33XfPSv89e/ZUcnLyWekrtw4ePKg+ffqodOnS8ng8GjRokNsphdzJ20E4eTwe9e/f/6z0dSr5YdvLreTkZPXs2TPXn23Xrt1p41599VV5PB6tWrUqV/2ES8+ePZWQkOB2Gn7OZH0AoUCxBAQp65ec08/QoUPdTu+ccvKyjouLU9myZZWSkqL//ve/OnDgQEj62b59u0aMGKG1a9eGpL1Qysu5BeLxxx/Xq6++qrvuuktvvPGGbrvtttN+JjMzU2XLlpXH49H8+fPPQpZ5y4oVKzRixAj9888/ruWQnJyc437u6NGjIe8v2Hnu2bOnPB6PateuLTPL9n5eKSoB5H9RbicA5FejRo1SpUqV/KbVqlXLpWzObVnLOiMjQzt37tSnn36qQYMGafz48frwww9Vu3ZtX+zDDz8cdNG6fft2jRw5UsnJyapTp07An/v444+D6ic3TpXbyy+/LK/XG/YczsSSJUt01VVXafjw4UF9ZseOHUpOTtb06dPVunXrMGZ45kK9HaxYsUIjR45Uz549VaRIkZC2HYw6deronnvuyTY9JiYm5Ntebuf5u+++0+zZs9WpU6eQ5bJhwwZFRPC3ZADHUSwBudS6dWtdccUVAcUePXpUMTEx/ALOpZOX9bBhw7RkyRK1a9dO7du3108//aT4+HhJUlRUlKKiwrtrO3z4sAoUKKCYmJiw9nM60dHRrvYfiN27d6tmzZpBfebNN9/U5Zdfrh49eujBBx/UoUOHVLBgwTBleObc3g7CpVy5curWrZvje4Hsy44dOyav1xu25RMfH68KFSpo1KhRuvHGG0P29dvY2NiQtJOfZP2OApAdR25AiGVdt/L222/r4YcfVrly5VSgQAHt379fkvTVV1/puuuuU+HChVWgQAE1btxYX3zxRbZ2li9friuvvFJxcXGqXLmyXnzxxWzX42zdulUej0evvvpqts97PB6NGDHCb9qff/6pf//737rgggsUGxuriy++WK+88opj/u+8847GjBmj8uXLKy4uTs2bN9emTZuy9fPVV1+pTZs2Klq0qAoWLKjatWvrueeekyRNmzZNHo9Ha9asyfa5xx9/XJGRkfrzzz9Pu0ydNGvWTI888oh+++03vfnmm77pTtcsLVq0SI0aNVKRIkWUkJCgatWq6cEHH/TN75VXXilJ6tWrl++rRlnLtEmTJqpVq5ZWr16ta6+9VgUKFPB9NqdrVTIzM/Xggw+qdOnSKliwoNq3b69t27b5xeT0PfwT2zxdbk7XjRw6dEj33HOPKlSooNjYWFWrVk1PP/10tq8qZX1Nac6cOapVq5Zve1iwYIHzAj/J7t271bt3b11wwQWKi4vTpZdeqtdee833ftZ2tGXLFs2bN8+X+9atW0/Z7pEjR/T++++rS5cu6ty5s44cOaIPPvjAMXbWrFmqWbOm4uLiVKtWLb3//vuOy8Tr9WrChAm6+OKLFRcXpwsuuEB9+/bV33//7Re3atUqpaSkqESJEoqPj1elSpX073//+7TLIqdr1wIdQycaMWKE7rvvPklSpUqVclxugay3QMZ7bp28nLP2RU8//bQmTJigypUrKzY2Vj/++KMk6fnnn9fFF1+sAgUKqGjRorriiis0Y8aMoOb5ZBEREXr44Ye1fv16vf/++6fNOS0tTcOHD1eVKlUUGxurChUq6P7771daWppfnNPYXL9+vRo3bqz4+HiVL19ejz32mG//5pTn8uXLVa9ePcXFxenCCy/U66+/7pjT4cOH1bdvXxUvXlyJiYnq3r17tu1SkiZNmqSLL75YsbGxKlu2rPr165ftK4uB7FOk0/+Oko5vOx07dlRCQoJKliype++9V5mZmX7tBrqvOXbsmEaPHu3bJpKTk/Xggw9mW+5mpscee0zly5dXgQIF1LRpU/3www+Oyw04mzizBORSamqq9u7d6zetRIkSvv+PHj1aMTExuvfee5WWlqaYmBgtWbJErVu3Vt26dTV8+HBFRERo2rRpatasmT7//HPVq1dP0vGvlrRq1UolS5bUiBEjdOzYMQ0fPlwXXHBBrvPdtWuXrrrqKt9BcsmSJTV//nz17t1b+/fvz3bh/dixYxUREaF7771XqampGjdunG699VZ99dVXvphFixapXbt2KlOmjAYOHKjSpUvrp59+0kcffaSBAwfqpptuUr9+/TR9+nRddtllfu1Pnz5dTZo0Ubly5XI9T7fddpsefPBBffzxx7r99tsdY3744Qe1a9dOtWvX1qhRoxQbG6tNmzb5CtQaNWpo1KhRevTRR3XHHXfommuukSRdffXVvjb++usvtW7dWl26dFG3bt1Oux7GjBkjj8ejBx54QLt379aECRPUokULrV271ncGLBCB5HYiM1P79u21dOlS9e7dW3Xq1NHChQt133336c8//9Szzz7rF798+XLNnj1b//nPf1SoUCH997//VadOnfT777+rePHiOeZ15MgRNWnSRJs2bVL//v1VqVIlzZo1Sz179tQ///yjgQMHqkaNGnrjjTc0ePBglS9f3vd1rpIlS55ynj/88EMdPHhQXbp0UenSpdWkSRNNnz5dXbt29YubN2+ebr75Zl1yySV64okn9Pfff6t3796O21Pfvn316quvqlevXhowYIC2bNmiiRMnas2aNfriiy8UHR2t3bt3+8bc0KFDVaRIEW3dulWzZ88+Zb6nEsgYOtmNN96oX375RW+99ZaeffZZ3z7lxOUWyHoLdrw7ycjIyLaPK1CggAoUKJDjZ6ZNm6ajR4/qjjvuUGxsrIoVK6aXX35ZAwYM0E033aSBAwfq6NGjWr9+vb766it17do1oHnOSdeuXTV69GiNGjVKN9xwQ45nl7xer9q3b6/ly5frjjvuUI0aNfTdd9/p2Wef1S+//KI5c+bk2Meff/6ppk2byuPxaNiwYSpYsKD+97//5XgGatOmTbrpppvUu3dv9ejRQ6+88op69uypunXr6uKLL/aL7d+/v4oUKaIRI0Zow4YNmjx5sn777TdfQSMdLyZHjhypFi1a6K677vLFffPNN77tNzecfkdJx//Yk5KSovr16+vpp5/WJ598omeeeUaVK1fWXXfdJSm4fU2fPn302muv6aabbtI999yjr776Sk888YR++uknvyL30Ucf1WOPPaY2bdqoTZs2+vbbb9WqVSulp6fnav6AkDEAQZk2bZpJcvwxM1u6dKlJsgsvvNAOHz7s+5zX67WqVataSkqKeb1e3/TDhw9bpUqVrGXLlr5pHTt2tLi4OPvtt99803788UeLjIy0E4ftli1bTJJNmzYtW56SbPjw4b7XvXv3tjJlytjevXv94rp06WKFCxf25ZqVf40aNSwtLc0X99xzz5kk++6778zM7NixY1apUiVLSkqyv//+26/NE+fvlltusbJly1pmZqZv2rfffptj3ifKWtbffPNNjjGFCxe2yy67zPd6+PDhfsvo2WefNUm2Z8+eHNv45ptvcsyncePGJsmmTJni+F7jxo19r7OWXbly5Wz//v2+6e+8845Jsueee843LSkpyXr06HHaNk+VW48ePSwpKcn3es6cOSbJHnvsMb+4m266yTwej23atMk3TZLFxMT4TVu3bp1Jsueffz5bXyeaMGGCSbI333zTNy09Pd0aNGhgCQkJfvOelJRkbdu2PWV7J2rXrp01bNjQ9/qll16yqKgo2717t1/cJZdcYuXLl7cDBw74pn366acmyW+ZfP755ybJpk+f7vf5BQsW+E1///33T7ut5SSn7eB0YygnTz31lEmyLVu2ZHsv0PUW6HjPSVJSkuM+LmufcvK2l7UvSkxMzLauOnToYBdffHGu59lJjx49rGDBgmZm9tprr5kkmz17tu99SdavXz/f6zfeeMMiIiLs888/92tnypQpJsm++OILv3k/cWzefffd5vF4bM2aNb5pf/31lxUrVixbzlnLbdmyZb5pu3fvttjYWLvnnnt807L2bXXr1rX09HTf9HHjxpkk++CDD3yfjYmJsVatWvntQydOnGiS7JVXXskx7yw5bZ8n/44yO75cJdmoUaP8pl922WVWt25d3+tA9zVr1641SdanTx+/uHvvvdck2ZIlS/zms23btn6/Px588EGT5DhfwNnC1/CAXHrhhRe0aNEiv58T9ejRw+8swtq1a7Vx40Z17dpVf/31l/bu3au9e/fq0KFDat68uZYtWyav16vMzEwtXLhQHTt2VMWKFX2fr1GjhlJSUnKVq5npvffe0/XXXy8z8/W9d+9epaSkKDU1Vd9++63fZ3r16uX3HfassxqbN2+WJK1Zs0ZbtmzRoEGDsl2QfeJfd7t3767t27dr6dKl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9u3LNi3rzF7WWbysZ/g4HWjkxuuvv+53HdW7776rHTt2+D1ctXLlylq5cqXfnZ4++uijbLcYDya3Nm3aKDMzUxMnTvSb/uyzz8rj8YTs4a5t2rTRzp07NXPmTN+0Y8eO6fnnn1dCQkK2YicQWWd+7r//ft10001+P507d1bjxo19MWXLllWtWrX0+uuv+42lzz77TN99951fu507d1ZmZqZGjx6drc9jx475luvff/+dbbs9eTs5W850ewzHeD8Tf/31l9/rmJgY1axZU2bmuz4sFGOwW7duqlKliuPZqs6dO+vPP//Uyy+/nO29I0eO6NChQzm2m5KSoi+//FJr1671Tdu3b1+OZyuD8dJLL/ldIzd58mQdO3bMN1ZbtGihmJgY/fe///XbPqdOnarU1FS1bdvWNy3QfUooBLqvySr6JkyY4BeXdYYvK/8WLVooOjpazz//vN98nvw5wA2cWQLOkoiICP3vf/9T69atdfHFF6tXr14qV66c/vzzTy1dulSJiYmaO3euJGnkyJFasGCBrrnmGv3nP//xHYhefPHFWr9+vV+7ffr00dixY9WnTx9dccUVWrZsmX755Zds/Y8dO1ZLly5V/fr1dfvtt6tmzZrat2+fvv32W33yySeORcXp5mfy5Mm6/vrrVadOHfXq1UtlypTRzz//rB9++CFbYde9e3fde++9khT0V/Dmz5+vn3/+WceOHdOuXbu0ZMkSLVq0SElJSfrwww8VFxeX42dHjRqlZcuWqW3btkpKStLu3bs1adIklS9fXo0aNZJ0/CCjSJEimjJligoVKqSCBQuqfv36OX6n/3SKFSumRo0aqVevXtq1a5cmTJigKlWq+N3evE+fPnr33Xd13XXXqXPnzvr111/15ptv+l24H2xu119/vZo2baqHHnpIW7du1aWXXqqPP/5YH3zwgQYNGpSt7dy644479OKLL6pnz55avXq1kpOT9e677+qLL77QhAkTcnUt2vTp01WnTp0cvw7Vvn173X333fr22291+eWX6/HHH1eHDh3UsGFD9erVS3///bcmTpyoWrVq+RVQjRs3Vt++ffXEE09o7dq1atWqlaKjo7Vx40bNmjVLzz33nG666Sa99tprmjRpkm644QZVrlxZBw4c0Msvv6zExETfAd/ZUrduXUnSQw89pC5duig6OlrXX399UA/mDfV4PxOtWrVS6dKl1bBhQ11wwQX66aefNHHiRLVt29a3rYRiniMjI/XQQw853ozltttu0zvvvKM777xTS5cuVcOGDZWZmamff/5Z77zzjhYuXJjjNaj333+/3nzzTbVs2VJ3332379bhFStW1L59+87orFh6erqaN2+uzp07a8OGDZo0aZIaNWqk9u3bSzp+lnDYsGEaOXKkrrvuOrVv394Xd+WVV/rtSwPdp4RCoPuaSy+9VD169NBLL72kf/75R40bN9bXX3+t1157TR07dvSdVct6ltMTTzyhdu3aqU2bNlqzZo3mz5/v90gOwBVn+/Z7QH53uttZZ92WddasWY7vr1mzxm688UYrXry4xcbGWlJSknXu3NkWL17sF/fZZ59Z3bp1LSYmxi688EKbMmVKtttimx2/9Xjv3r2tcOHCVqhQIevcubPt3r07263Dzcx27dpl/fr1swoVKlh0dLSVLl3amjdvbi+99NJp88/pNuXLly+3li1bWqFChaxgwYJWu3Ztx1tP79ixwyIjI+2iiy5yXC5OTr5Ne0xMjJUuXdpatmxpzz33nN8tqrOcvIwWL15sHTp0sLJly1pMTIyVLVvWbrnlFvvll1/8PvfBBx9YzZo1LSoqym8+GzdunONtj3O6Je9bb71lw4YNs1KlSll8fLy1bdvW7zbwWZ555hkrV66cxcbGWsOGDW3VqlXZ2jxVbiffvtnM7MCBAzZ48GArW7asRUdHW9WqVe2pp57yux2vWfZbK2fJ6fbDJ9u1a5f16tXLSpQoYTExMXbJJZc43t48kFuHr1692iTZI488kmPM1q1bTZINHjzYN+3tt9+26tWrW2xsrNWqVcs+/PBD69Spk1WvXj3b51966SWrW7euxcfHW6FCheySSy6x+++/37Zv325mx29nf8stt1jFihUtNjbWSpUqZe3atbNVq1addlnktB0EOoacjB492sqVK2cRERF+t6cOZr0FMt5zcrr1ltOtw5966qlssS+++KJde+21vn1e5cqV7b777rPU1NSA5jmn/rNuHX6ijIwMq1y5suNySk9PtyeffNIuvvhii42NtaJFi1rdunVt5MiRfrk4Lcs1a9bYNddcY7GxsVa+fHl74okn7L///a9Jsp07d/p91mm5nbyNZO3bPvvsM7vjjjusaNGilpCQYLfeeqv99ddf2T4/ceJEq169ukVHR9sF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AOcSziwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAICDKLcTAADgVJKHzlNspGlcPanWiIVKy/Ro69i2bqcFADgPcGYJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADlwtliZPnqzatWsrMTFRiYmJatCggebPn+97/+jRo+rXr5+KFy+uhIQEderUSbt27XIxYwAAAADnC1eLpfLly2vs2LFavXq1Vq1apWbNmqlDhw764YcfJEmDBw/W3LlzNWvWLH322Wfavn27brzxRjdTBgAAAHCecPXW4ddff73f6zFjxmjy5MlauXKlypcvr6lTp2rGjBlq1qyZJGnatGmqUaOGVq5cqauuusqNlAEAAACcJ/LMNUuZmZl6++23dejQITVo0ECrV69WRkaGWrRo4YupXr26KlasqC+//NLFTAEAAACcD1x/KO13332nBg0a6OjRo0pISND777+vmjVrau3atYqJiVGRIkX84i+44ALt3Lkzx/bS0tKUlpbme71//35JUkZGhjIyMnz/P/HfU3E71u3+g4l1u/9gYt3uP1yxbvcfTKzb/QcT62b/sZF2/N+I//fvqeLdXlaBxsZGmt88nSo+mNhw5Xpi36FYB05t5vSZM409F7aXvNB/MLFu9x+uWLf7DybW7f6DiXW7/2Bi3e4/FLGBfO5EHjOzoD4RYunp6fr999+Vmpqqd999V//73//02Wefae3aterVq5df4SNJ9erVU9OmTfXkk086tjdixAiNHDky2/QZM2aoQIECYZkHAAAAAHnf4cOH1bVrV6WmpioxMfG08a4XSydr0aKFKleurJtvvlnNmzfX33//7Xd2KSkpSYMGDdLgwYMdP+90ZqlChQrau3evb4FkZGRo0aJFatmypaKjo0+Zj9uxbvdPrvkr1u3+yTX0sbVGLJR0/AzB6Cu8emRVhFY/et0Z919rxEK/NtO8Hn0/IuWszleg/Qca67SsgonNabmGYx2caa6hmK9Ac80rsW73f67mGkys2/2Tq/uxbvcfitj9+/erRIkSARdLrn8N72Rer1dpaWmqW7euoqOjtXjxYnXq1EmStGHDBv3+++9q0KBBjp+PjY1VbGxstunR0dHZFqjTtJy4Het2/8HEut1/MLFu9x+uWLf7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uPvvv98uv/zyoNo0s6DaDTaHcAxMN3dieWW+gtk5BhJbpkwZmzt3bo5xH374oZUpU8bMzJKTk+21117LMfa1116zpKQkM7OA2w2m/3DFBjpf4VpWwcQGelAZjoPvvBAbrvkKx36AsXVuji0zilu3x5ZZ4Os2mOOycG1bgcYG02a45iscx7tujy2z4JZBMM6LGzxcfPHFmjp1qsaNG+f4/iuvvKKaNWtq6NCh6tq1qz799FPH04ILFizQjBkz5PV6A4rLkpycrHnz5qlatWqO/c+bN09JSUl65pln1K5dOy1YsMCx3c2bN2vevHlBtSkpqHaDiS1durS+/vprVa9e3TGHr7/+2vf5QPNNS0sLuM1g+g9XbDjmK5h1G2hs586d1b17dz3yyCNq3rx5tvX62GOP6e6775Yk3Xvvvbrjjju0evVqx9iXX35ZTz/9tCSpT58+AbXr9XoD7j/QNoONDXS+du7cGZZlFUxskSJFtHXrVtWqVctxvW7dulVFihRRbGxswNtVoG3mhdhwzVc49gPdu3dnbJ2DYyvY7SWYdt0eh4HOV3p6uqtjSwp83ZYsWTLg47JwbVuBxppZwG2OGjUqLPMVaLvBHO/mhbEVzDIIStDlVT60dOlSK1iwoF1yySU2ePBgGzt2rI0dO9YGDx5stWvXtoSEBPvss8/MzOyLL76wm2++2SpWrGgxMTEWExNjFStWtJtvvtlWrFjhazPQODOzd955x6Kiouz666+35557zt5++217++237bnnnrP27dtbTEyMvfvuu2ZmtmXLFrv//vvt2muvtYsuusguuugiu/baa+2BBx6wLVu25KrNYNoNJnbixIkWGxtrAwYMsA8++MBWrlxpK1eutA8++MAGDBhg8fHx9sILLwSVbzBt5oXYcMxXMOs2mNixY8damTJlzOPxWEREhEVERJjH47EyZcrYk08+6bcNvP3221a/fn2Liooyj8djHo/HoqKirH79+jZz5ky/2EDbDab/cMUGOl/hWlaBxj7yyCNWtGhRGz9+vK1bt8527txpO3futHXr1tn48eOtWLFiNnz48KC2q0DbzAux4ZqvcO0HGFvn3tgKdhsItF23x1Yw85UXxlYw6zaY47JwbFvBxAbTZrjmK9THu26Prdwsg0CdF8WSWXDFQjgEs7G72WawwjEw3d6J5YX5CmbdBrsdbN682VasWGErVqywzZs357RqzcwsPT3dtm/fbtu3b7f09PRTxgbabjD9hys20PkK17IKJDbQg8pwHHznhdhwzVe49gNmjC2zc2tsmVHc5pWxZRbcdhCoUG9bwcaGY57C2e7puD22ThTKZXBe3A0P4ZeRkaG9e/dKkkqUKKHo6Oiz2mZeiA1UONrEuWvLli1+t0qtVKmSY1ww21WgbeaF2HDNl9v7AbgvXNtLoO26PbaCmS/GFoLh9tgKNYqlIDz44IPauXOnXnnllZDEBatHjx7atm2blixZ4lq74coB7vrggw+Umpqq7t27nzZ20qRJ2rt3rx599NGQtRtM/+GKDXS+wrWsgolF/sHYYmwhfAJdt8Ecl4Vr2wo0Npg2wzVfbh/vhkuu9wVndF7qHNG9e3dr2rTpWY/LMmzYMOvVq1dAcT179gxpm7lpN9DYF154wUaOHBlwu4HkG0ybeSE2HPMV7LoNJLZatWoWERERUJvNmjWzSpUqBRQbaLvB9B+u2EDnK1zLKpjYOXPmnPKOP1mC2a4CbTMvxIZrvsKxH2BsnZtjyyw826HbY8ss8Plye2yZBb5ugzkuC9e2FWhsMG2Ga77Ccbzr9tgyC24ZnIhiycyGDh0acAFwKk73iw/EbbfdFlRxFYhgC7ZwCMfAdHsnFmxsOOYrmHWbF7YDhF6gB5XhOPjOC7Hhmq9w7QeQf1Dc5q/iFvmH22PrTPA1vBCKiYnRunXrVKNGDbdTOSM7duzQ5MmTtXz5cu3YsUMRERG68MIL1bFjR/Xs2VORkZFupwgAAACE3XnxnKXT2bZtm4YPH65XXnlFR44c0erVq1WsWDHVrFnTL+7o0aN65513tHbtWsd2MjMzNXbsWBUvXlySNH78eMe4Q4cO6Z133tGmTZtUpkwZ3XLLLSpevLi+/fZbFS1a1HfB2htvvKEpU6bo999/V1JSkvr3768uXbpIku6++2517txZ11xzTUDzOHHiRH399ddq06aNunTpojfeeENPPPGEvF6vbrzxRo0aNUpRUVFatWqVWrRooSpVqig+Pl4bN25U165dlZ6ernvvvVevvPKKFixYoEKFCgXUL/KWr7/+Wl9++aXfBZINGjRQvXr1Am7j77//1ty5c/2uK/B6vYqIiMgW6/V69ccff6hixYoyM23dulUVKlRQVFSU0tPT9f777ystLU1t2rRRiRIlTtlvs2bNNG3aNN8zpnKyZcsW39g68bkMaWlpioiI8F08+uuvv+qVV17xja/evXurUqVKeu+999S6dWsVKFAgoOWxbt06rV69Wk2aNNGFF16oH374QS+88IK8Xq9uuOEGpaSk+MUvWbIk2x8i2rdvr6pVqwbUH/ImxhZjC+GRnp6uOXPmZBtfV199tTp06KCYmJjTtrFr1y69+OKLfteq/PHHHypSpIgSEhL8YjMyMvTll1/q2muvlST99ddfWr9+vS699FIVK1ZMe/fu1dSpU5WWlqZ//etfp/0D+YUXXqiFCxfmuB2amT799FPf2EpJSfGNpT/++ENxcXG+Mfz555/7HRf269dPDRo0kHT8OZk33XTTacdxlo8++khff/21UlJS1LBhQy1ZskRPP/2077jwjjvukCQdOXJEb731luMf0Js3bx5QX2dboOs2YGE9b5VPrF271iIiImzDhg2WlJTkuzXhtddea9u3b/fF7dy503e7wjp16liTJk38fjwej1155ZXWpEkTv68+1ahRw/766y8zM/v9998tOTnZChcubFdeeaUVK1bMSpUqZZs3b7batWvbokWLzMzs5Zdftvj4eBswYIBNnjzZBg0aZAkJCTZ16lQzM1+OVatWtbFjx9qOHTtynL/Ro0dboUKFrFOnTla6dGkbO3asFS9e3B577DF7/PHHrWTJkvboo4+amVnDhg1txIgRvs++8cYbVr9+fTMz27dvn9WpU8cGDBjgez8tLc1mzpxpgwYNsi5duliXLl1s0KBB9s4771haWlrA62Dnzp1+30/dtm2bHThwIFtcenq675lYZmZ79+61JUuW+Jbvnj17bOzYsTZy5Ej78ccfT9tvpUqV7JdffjlljNfrtSVLlthLL71kc+fO9bsF5bZt22zPnj2+18uWLbOuXbtao0aN7NZbb/Xduvvpp5+2rVu3njafLHPnzrVHHnnEli9fbmZmixcvttatW1tKSoq9+OKLfrGHDx+2qVOnWq9evey6666zNm3aWP/+/e2TTz7xxezatcsaNWpkHo/HkpKSrF69elavXj3f9t6oUSPbtWtXQLlljRczs9TUVPvXv/5lcXFxVqpUKXvkkUfs2LFjvtisMfPzzz9bUlKSRUREWJUqVWzz5s1Wt25dK1iwoBUoUMBKlCjhWw8ffPCB409kZKRNnDjR99rM7K677vJtJ4cPH7ZOnTr5xmhERIQ1bdrU937jxo1t1qxZZma2fPlyi42Ntdq1a9vNN99sl112mRUoUMBWrFhhHo/HEhMT7fbbb7eVK1eeclm89957FhkZacWLF7eEhARbtGiRFSlSxFq0aGEpKSkWGRlp06dP962DevXqWUREhEVFRVlERITVrVvXSpcubZGRkXbfffdla/+rr76yCRMm2NChQ23o0KE2YcIE++qrrwJaT2bHx+zJ3+XOzMx0jM3MzLTffvvN99rr9drmzZstIyPDzI6P9bfffttee+01v20+J02bNg1om9+8ebN9/PHHfk9oP3r0qN8427Rpkz344IPWrVs3e+ihh/xuNf3uu+/aoUOHTttPlrVr19rUqVPt119/NTOz77//3u666y7r27evLViwIFv84sWLbeTIkXbnnXfaf/7zH3v66af99hmMrfNzbJnlfny5ObbMAh9fbo8tM7ONGzfahRdeaHFxcda4cWPr3Lmzde7c2Ro3bmxxcXFWpUoV27hxY0C5ZY2t7du325VXXmkREREWGRlpt912m9/xRtbYMju+nRQuXNg8Ho8VLVrUVq1aZZUqVbKqVata5cqVLT4+3lavXm1mZs8995zjT2RkpA0bNsz3unXr1vbPP/+Ymdlff/1l9evXN4/HYyVLlrSIiAirXr267d6928zM6tWrZ3PnzjWz49fmREREWPv27e2BBx6wG264waKjo33vezwei4yMtBYtWtjbb799ymOwKVOmWFRUlNWtW9cSExPtjTfesEKFClmfPn2sb9++Fh8fbxMmTLCNGzdaUlKSlSpVyipUqGAej8fatm1r9evXt8jISPvXv/7l246zhGNsBTpmglm3wTgviqWcfkFk/Tz77LMWERFhHTt2tLZt29qePXts48aN1rZtW6tUqZJvB5e1kJ944gmrVKmSLV682K+fqKgo++GHH7L17/F4fL8sb731Vrv66qt9A+XAgQPWokULu+WWWyw+Pt63A7zsssvspZde8mtn+vTpVrNmTV+bn3zyiQ0cONBKlChh0dHR1r59e5s7d262nXXlypXtvffeM7PjO4zIyEh78803fe/Pnj3bqlSpYmZm8fHxvh2d2fEdfHR0tO3cudPMzD7++GMrW7asmYVuJ5aVV0REhOs7MTMLy44sHDuxrHUQyI6sU6dO1qBBA/v555+z9ffzzz/b1VdfbTfd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v9a2bdvUsGFDffHFF7riiiskKeC4YNoMV6zb/Ycj16SkJEVGRionHo9HLVu2DGvsyJEjFR8fry+//FK33367hg4dqksvvVT333+/Dh8+rOuvv16jR4/Osa0c+zDj1uEAAAAAcDKuWQIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAQL725ZdfKjIyUm3btnU7FQDAOYa74QEA8rU+ffooISFBU6dO1YYNG1S2bFm3UwIAnCM4swQAyLcOHjyomTNn6q677lLbtm316quv+r3/4YcfqmrVqoqLi1PTpk312muvyePx6J9//vHFLF++XNdcc43i4+NVoUIFDRgw4JTPLwMAnD8olgAA+dY777yj6tWrq1q1aurWrZteeeUVZX1hYsuWLbrpppvUsWNHrVu3Tn379tVDDz3k9/lff/1V1113nTp16qT169dr5syZWr58ufr37+/G7AAA8hi+hgcAyLcaNmyozp07a+DAgTp27JjKlCmjWbNmqUmTJho6dKjmzZun7777zhf/8MMPa8yYMfr7779VpEgR9enTR5GRkXrxxRd9McuXL1fjxo116NAhxcXFuTFbAIA8gjNLAIB8acOGDfr66691yy23SJKioqJ08803a+rUqb73r7zySr/P1KtXz+/1unXr9OqrryohIcH3k5KSIq/Xqy1btpydGQEA5FlRbicAAEBuTJ06VceOHfO7oYOZKTY2VhMnTgyojYMHD6pv374aMGBAtvcqVqwYslwBAPkTxRIAIN85duyYXn/9dT3zzDNq1aqV33sdO3bUW2+9pWrVqun//u///N775ptv/F5ffvnl+vHHH1WlSpWw5wwAyH+4ZgkAkO/MmTNHN998s3bv3q3ChQv7vffAAw9oyZIleuedd1StWjUNHjxYvXv31tq1a3XPPffojz/+0D///KPChQtr/fr1uuqqq/Tvf/9bffr0UcGCBfXjjz9q0aJFAZ+dAgCcu7hmCQCQ70ydOlUtWrTIVihJUqdOnbRq1SodOHBA7777rmbPnq3atWtr8uTJvrvhxcbGSpJq166tzz77TL/88ouuueYaXXbZZXr00Ud5VhMAQBJnlgAA55ExY8ZoypQp2rZtm9upAADyAa5ZAgCcsyZNmqQrr7xSxYsX1xdffKGnnnqKZygBAAJGsQQAOGdt3LhRjz32mPbt26eKFSvqnnvu0bBhw9xOCwCQT/A1PAAAAABwwA0eAAAAAMABxRIAAAAAOKBYAgAAAAAHFEsAAAAA4IBiCQAAAAAcUCwBAAAAgAOKJQAAAABwQLEEAAAAAA4olgAAAADAwf8H8y4mmjLHDYIAAAAASUVORK5CYII=", + "text/plain": [ + "
    " + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Guessed range for Mean: (30, 40)\n", + "Guessed range for Standard Deviation: (10, 15)\n", + "Exact Mean: 36.56\n", + "Exact Standard Deviation: 12.81649962597677\n", + "Is the exact mean within the guessed range? True\n", + "Is the exact standard deviation within the guessed range? True\n" + ] + } + ], + "source": [ + "# Calculate the frequency distribution\n", + "age_counts = df_ages1['observation'].value_counts().sort_index()\n", + "\n", + "# Plot the frequency distribution\n", + "plt.figure(figsize=(10, 6))\n", + "age_counts.plot(kind='bar')\n", + "plt.title('Frequency Distribution of Ages in the First Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "plt.grid(True)\n", + "plt.show()\n", + "\n", + "# Provide a guess for the range of mean and standard deviation by looking at the plot\n", + "mean_guess = (30, 40)\n", + "std_dev_guess = (10, 15)\n", + "\n", + "print(\"Guessed range for Mean:\", mean_guess)\n", + "print(\"Guessed range for Standard Deviation:\", std_dev_guess)\n", + "\n", + "# Calculate the exact mean and standard deviation\n", + "exact_mean = df_ages1['observation'].mean()\n", + "exact_std_dev = df_ages1['observation'].std()\n", + "\n", + "print(\"Exact Mean:\", exact_mean)\n", + "print(\"Exact Standard Deviation:\", exact_std_dev)\n", + "\n", + "# Compare guesses with actual values\n", + "mean_in_range = mean_guess[0] <= exact_mean <= mean_guess[1]\n", + "std_dev_in_range = std_dev_guess[0] <= exact_std_dev <= std_dev_guess[1]\n", + "\n", + "print(\"Is the exact mean within the guessed range?\", mean_in_range)\n", + "print(\"Is the exact standard deviation within the guessed range?\", std_dev_in_range)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\nGuessed range for Mean: (30, 40)\\nGuessed range for Standard Deviation: (10, 15)\\nExact Mean: 36.56\\nExact Standard Deviation: 12.81649962597677\\nIs the exact mean within the guessed range? True\\nIs the exact standard deviation within the guessed range? True\\n'" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "Guessed range for Mean: (30, 40)\n", + "Guessed range for Standard Deviation: (10, 15)\n", + "Exact Mean: 36.56\n", + "Exact Standard Deviation: 12.81649962597677\n", + "Is the exact mean within the guessed range? True\n", + "Is the exact standard deviation within the guessed range? True\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3.- Now read the file `ages_population2.csv` . Calculate the frequency distribution and plot it." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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I1SyZEnlzZtXjRo10q+//prpegOsYo8UkEMJCQk6fvy427SiRYu6/n/48OEKCQnRM888o+TkZIWEhGj58uVq3ry5atasqSFDhiggIEBTpkxR48aN9cMPP6h27dqSLn6NpFmzZipWrJji4uJ04cIFDRkyRCVKlMh13iNHjuiOO+5w/QJSrFgxLVy4UD179lRiYmKGkwCMHDlSAQEBeuaZZ5SQkKBRo0apS5cuWrdunWvMkiVLdM899ygyMlJPPfWUIiIitH37dn3zzTd66qmndP/99+vxxx/XjBkzVKNGDbflz5gxQw0bNtQNN9yQ6+f00EMP6YUXXtC3336rRx55JNMxv/76q+655x5Vq1ZNw4YNk9Pp1J49e1zltXLlyho2bJhefvll9e7dW3fddZck6c4773Qt4++//1bz5s3VsWNHPfjgg9n+HF555RU5HA7997//1dGjRzV27FjFxMRoy5Ytrj1nOZGTbJcyxqh169ZasWKFevbsqerVq2vx4sV69tlndfDgQY0ZM8Zt/KpVqzRnzhw99thjKlCggN5++221a9dOf/zxR4Zfli919uxZNWzYUHv27FG/fv1UtmxZzZ49W927d9fJkyf11FNPqXLlyvr44481YMAAlSxZUk8//bQkqVixYld8zl999ZVOnz6tjh07KiIiQg0bNtSMGTPUuXNnt3ELFixQhw4ddMstt+i1117TP//8o549e2a6PfXp00dTp05Vjx499OSTT2rfvn0aP368Nm/erNWrVys4OFhHjx51veaef/55hYeHa//+/ZozZ84V815JTl5Dl7vvvvu0a9cuffrppxozZozrPeXS9ZaTn5vV1/ulSpcuLenia7RevXpX3MOb08dJTU3VPffco2XLlqljx4566qmndOrUKS1ZskS//PKLypUrZ8v266n30s6dO2v48OEaNmyY7r333iz3SqWlpal169ZatWqVevfurcqVK+vnn3/WmDFjtGvXLs2bNy/Lxzh48KAaNWokh8OhQYMGKV++fPrwww+z3HO1Z88e3X///erZs6e6deumyZMnq3v37qpZs6aqVKniNrZfv34KDw9XXFycdu7cqffee08HDhxwlR3pYokfOnSoYmJi1LdvX9e49evXu14nuZHZZ6F0cZuIjY1VnTp19Oabb2rp0qV66623VK5cOfXt21eStfe0Xr16adq0abr/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wMBAtWvXTl9++aV++eWXLB/bittuu01ly5bV2LFjM3yoXv4X0WrVqqlatWr68MMP9eWXX6pjx45Xfa2n5cuXa/jw4SpbtmyWxxBI0okTJzJMS98jmL73L/0aRZ66Ps706dPdjtv64osvdOjQIbcLy5YrV04//vij25mivvnmmwynSbeSrUWLFkpNTdX48ePdpo8ZM0YOh8NjF7Zt0aKFDh8+rM8//9w17cKFC3rnnXeUP3/+DEUoJ9L3GD333HO6//773f61b99eDRo0cI2JiopS1apVNX36dLfX0vfff6+ff/7Zbbnt27dXamqqhg8fnuExL1y44Fqv//zzT4bt9vLt5Fq52u3xal/vu3fvdnvvSXfy5EmtXbtWhQoVUrFixSw9Trt27XT8+PEM26b0v/cLT2+/Vt5LrXjwwQdVvnx5DR06NMO89u3b6+DBg/rggw8yzDt79qzOnDmT5XJjY2O1du1abdmyxTXtxIkTWe5NtWLSpElux/699957unDhgmudxsTEKCQkRG+//bbb6+Cjjz5SQkKCWrZs6ZqW0/cuT8jpNpFeCMeOHes2Ln3PYHr+mJgYBQcH65133nF7npffD8gt9kgBNgkICNCHH36o5s2bq0qVKurRo4duuOEGHTx4UCtWrFBYWJi+/vprSdLQoUO1aNEi3XXXXXrsscdcv6RWqVJF27Ztc1tur169NHLkSPXq1Uu1atXSypUrtWvXrgyPP3LkSK1YsUJ16tTRI488optvvlknTpzQpk2btHTp0kwLR3bP57333lOrVq1UvXp19ejRQ5GRkdqxY4d+/fXXDL+odO3aVc8884wkWf5a38KFC7Vjxw5duHBBR44c0fLly7VkyRKVLl1aX331lUJDQ7O877Bhw7Ry5Uq1bNlSpUuX1tGjRzVhwgSVLFlS9evXl3TxF4Pw8HBNnDhRBQoUUL58+VSnTp0sv9ufncKFC6t+/frq0aOHjhw5orFjx6p8+fJup2jv1auXvvjiC919991q3769fv/9d33yySduB89bzdaqVSs1atRIL774ovbv369bb71V3377rebPn6/+/ftnWHZu9e7dW++//766d++ujRs3qkyZMvriiy+0evVqjR07NlfHvs2YMUPVq1fP8qtPrVu31hNPPKFNmzbptttu06uvvqo2bdqoXr166tGjh/755x+NHz9eVatWdStX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0Lx587Ic++ijj8rhcGjs2LFu00+cOKEuXbooLCxM4eHh6tmzp06fPm1vcAAAAAD/al4tUmfOnNGtt96qd99994rj5s6dqx9//FFRUVEZ5nXp0kW//vqrlixZom+++UYrV65U79697YoMAAAAAAry5oM3b95czZs3v+KYgwcP6oknntDixYvVsmVLt3nbt2/XokWLtH79etWqVUuS9M4776hFixZ68803My1eAAAAAHC1vFqkspOWlqaHHnpIzz77rKpUqZJh/tq1axUeHu4qUZIUExOjgIAArVu3Tvfee2+my01OTlZycrLrdmJioiQpJSVFKSkpHsmevhxPLc9OZLUHWe3hT1kl/8pLVnuQ1R5ktQdZ7UFWe9iVNafLcxhjjEcfOZccDofmzp2rtm3buqa99tprWrFihRYvXiyHw6EyZcqof//+6t+/vyTp1Vdf1bRp07Rz5063ZRUvXlxDhw5V3759M32suLg4DR06NMP0mTNnKm/evB57TgAAAAD8S1JSkjp37qyEhASFhYVlOc5n90ht3LhR48aN06ZNm+RwODy67EGDBmngwIGu24mJiYqOjlazZs2uuLKsSElJ0ZIlS9S0aVMFBwd7ZJl2Ias9yGoPf8oq+VdestqDrPYgqz3Iag+y2sOurOnfVsuOzxapH374QUePHlWpUqVc01JTU/X0009r7Nix2r9/vyIiInT06FG3+124cEEnTpxQRERElst2Op1yOp0ZpgcHB3t8g7FjmXYhqz3Iag9/yir5V16y2oOs9iCrPchqD7Law9NZc7osny1SDz30kGJiYtymxcbG6qGHHlKPHj0kSXXr1tXJkye1ceNG1axZU5K0fPlypaWlqU6dOtc8MwDg36PM8wtyNM4ZaDSqtlQ1brGSU6/8DYv9I1tecT4AwHd4tUidPn1ae/bscd3et2+ftmzZosKFC6tUqVIqUqSI2/jg4GBFRESoYsWKkqTKlSvr7rvv1iOPPKKJEycqJSVF/fr1U8eOHTljHwAAAADbePU6Uhs2bFCNGjVUo0YNSdLAgQNVo0YNvfzyyzlexowZM1SpUiU1adJELVq0UP369TVp0iS7IgMAAACAd/dINWzYUFZOGrh///4M0woXLqyZM2d6MBUAAAAAXJlX90gBAAAAgD+iSAEAAACARRQpAAAAALCIIgUAAAAAFlGkAAAAAMAiihQA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NqVKlfJSOnd33323admyZYZfkIKCgsyvv/7qpVRZczgcrqxVq1Y1M2fOdJs/f/58c9NNN3kjWgb58uUz27dvN8YYU6JECbNlyxa3+Xv27PGp94L09bphwwbTt29fEx4ebpxOp3nggQfMt99+6+WE/5MvXz6zb98+Y4wxaWlpJjg42Gzbts01//fff/eZ9RoWFmZ++eUX1+3Tp0+b4OBgk5CQYIwx5uOPPzYVK1b0Vjw3/BHQHvwR0B7+9EdA/gB4dShSHpI3b163v4QkJyeb4OBg119M582bZ8qUKeOteC5FihQx3333XZbzV6xYYYoUKXINE2UtLCzMvP766+a7777L9N8HH3zgM29EefLkMXv37nWblpiYaOrWrWsaN25s9u7d61NZDxw44LqdP39+s2fPHtftP/74wzidTm9Ey9To0aNNdHS0+frrr13TfLlIHT161BhjTNGiRd1+STXGmP3795s8efJ4I1oGjRs3NqNGjTLGGHPnnXeaadOmuc3/4osvfKZQX1qk0p09e9ZMnz7dNGzY0AQEBPjE+6sxxkRERJgNGzYYY4w5ceKEcTgcbn9k+emnn0xERISX0rkrVqyY2+soKSnJBAQEmL///tsYc7H0+cp7AX8EtAd/BLSHP/0RkD8AXh1ONuEh4eHhOnXqlOt2UlKSLly4oJCQEElStWrVdOjQIW/Fc+nQoYO6deumMWPGqEmTJgoLC5N08RifZcuWaeDAgerUqZOXU1502223SZIaNGiQ6fzw8HAZHznEr1SpUtq+fbvbd3MLFCigb7/9Vs2aNdO9997rxXTuoqKi9Mcff7i+8z5q1Ci3Y+KOHTumQoUKeSteBgMGDFCjRo3UpUsXff311xozZoy3I13R4MGDlTdvXgUEBCg+Pl5VqlRxzfv777+VL18+L6b7nxEjRqh58+Y6c+aMOnXqpKefflq7d+9W5cqVtXPnTr399tsaNGiQt2NKkhwOR4ZpoaGheuihh/TQQw9pz549mjJliheSZRQTE6PHH39cTzzxhD7//HM1a9ZMgwYN0pQpU+RwOPTss8+qfv363o4pSapfv75efvllTZs2TSEhIXrhhRd04403qnDhwpJ8673A6XQqMTExy/mnTp2S0+m8homyVqBAAb344otZHsu3e/du9enT5xqnytyxY8fcjtcpWrSoli5dqtjYWLVo0UIffvihF9O5O336tGvbzJcvn/Lly6fIyEjX/OjoaB05csRb8dwsXLhQY8aMUa1atTRhwgTdc8893o50RenvsYcPH1a1atXc5t166636888/vRErgzp16ujrr79WpUqVVK5cOW3dulW33nqra/6WLVtc28g1c01r23WsW7dupkGDBmb79u1m7969ru9rpvvuu+9MdHS0FxNedO7cOfPoo4+akJAQExAQYEJDQ01oaKgJCAgwISEhpm/fvubcuXPejmmMMWbSpElm3LhxWc4/fPiwiYuLu4aJsvbEE09k+bWSxMREU6dOHZ/5q16fPn3MBx98kOX81157zbRo0eIaJsqZpKQk06dPH1OhQgUTGBjoc3/VM+biVw0aNmzo+nf5eh4+fLhp0KCBd8JlYs2aNeaOO+7I8JWTG264wWeOjTEm8z1Svurw4cOmadOmJn/+/CY2NtacPHnS9OvXz7UXokKFCm57gL3p999/N+XKlTNBQUEmODjYhIeHmyVLlrjmT5kyxWe+0vPYY4+Z0qVLmzlz5ri+emjMxa/RzZkzx5QpU8b069fPiwn/p2HDhub111/Pcv6WLVt85utyFStWNAsWLMgw/dSpU6Zu3brm1ltv9ZnPrnLlyrntgZowYYJJTEx03d64caPP7O1Nt3nzZnPzzTeb3r17mzNnzvjsHqk+ffqYAQMGmOLFi2f4qvTGjRtN0aJFvZTO3Zo1a0zBggXNkCFDzDvvvGOKFi1qXnrpJTNjxgzz8ssvm/Dw8Cu+9uzAWfs85OjRo2rTpo3WrVsnh8Oh6OhozZ07VzVq1JAkffHFFzp06JCeeOIJLye9KDExURs3bnQ781HNmjVde6hgzT///JNh78OlTp06pU2bNmW5d82X7Nu3T6GhoW5/6fMlX331lVasWKFBgwb5xdklL7V3716FhISoZMmS3o7i5tixY9q7d6/S0tIUGRmpMmXKeDuSmwMHDqhUqVKZ7pnyF3v37lVSUpIqVaqkoCDf+TJIUlKSVq1apfPnz+uOO+7w2bOeJScnq3///po8ebLbtz3Onz+voKAg9ezZU2PGjPGJvVIffPCBkpKS9NRTT2U6/8iRI5o4caKGDBlyjZNl9OSTT+rQoUOaPXt2hnmnTp1S06ZNtX79ep844+yjjz6qWrVqqVevXpnOHzlypH744QctWLDgGie7srNnz2rAgAFavny59u7dq23btunmm2/2diyXhg0bur23dunSxW0djxgxQkuXLtV3333nhXQZrV27VgMHDtS6devcpkdFRenZZ5/N8nVnF4qUh+3evVvJyck+92EJAIC/44+AnsUfAa8df/0jIH8AvLKMFw3AValQoYKqVq2aoUT9+eefevjhh72Uyt3Zs2e1atUq/fbbbxnmnTt3TtOnT/dCqsyR1R5ktY8/5SWrPchqj+3bt+vLL79UZGSkOnXqpBo1amjWrFnq37+/li9f7u14brZv364pU6Zox44dkqQdO3aob9++evjhh30qa6FChRQQEJBl1vXr1/tUibrSet23b59PlajLs9500006e/asnn/+eZ/aBqT/Zd25c6ck9/W6f/9+nypR6VlPnDihOnXqqFChQnr99de999q6pl8k/BfzletG7Ny503XdjYCAAPOf//zHHDx40DXfl87Qk1nW+Ph413yy5g5Z7eNPeclqD7LaY+HChSYkJMQULlzYhIaGmoULF5pixYqZmJgY07hxYxMYGGiWLVvm7ZjGGLLahaz2IOvVoUh5SFYXX0v/N2bMGJ/4QGrbtq1p2bKlOXbsmNm9e7dp2bKlKVu2rOt02L70wUlWe5DVPv6Ul6z2IKs96tata1588UVjzMULHRcqVMi88MILrvnPP/+8adq0qbfiuSGrPchqD7JeHYqUh/jLxdeKFy/udnHItLQ08+ijj5pSpUqZ33//3ac+OMlqD7Lax5/yktUeZLVHWFiY2b17tzHGmNTUVBMUFOR2Xamff/7ZlChRwlvx3JDVHmS1B1mvDsdIeUhkZKTmzJmjtLS0TP9t2rTJ2xElXfw+/KXHbzkcDr333ntq1aqVGjRooF27dnkxnTuy2oOs9vGnvGS1B1ntk35msYCAAIWGhqpgwYKueQUKFFBCQoK3omVAVnuQ1R5kzT1OK+chNWvW1MaNG9WmTZtM5zscDp+4eGylSpW0YcMGVa5c2W36+PHjJUmtW7f2RqxMkdUeZLWPP+Ulqz3Iao8yZcpo9+7dKleunKSLp0BOv6i4JP3xxx8+c6IBstqDrPYg69Vhj5SHPPvss7rzzjuznF++fHmtWLHiGibK3L333qtPP/0003njx49Xp06dfKLwSWS1C1nt4095yWoPstqjb9++btcyuvzsuAsXLlTjxo29ES0DstqDrPYg69XhOlIAAAAAYBF7pAAAAADAIooUAAAAAFhEkQIAAAAAiyhSAAAAAGARRQoAcN1bu3atAgMD1bJlS29HAQBcJzhrHwDguterVy/lz59fH330kXbu3KmoqChvRwIA+Dn2SAEArmunT5/W559/rr59+6ply5aaOnWq2/yvvvpKFSpUUGhoqBo1aqRp06bJ4XDo5MmTrjGrVq3SXXfdpTx58ig6OlpPPvmkzpw5c22fCADAp1CkAADXtVmzZqlSpUqqWLGiHnzwQU2ePNl1odl9+/bp/vvvV9u2bbV161b16dNHL774otv9f//9d919991q166dtm3bps8//1yrVq1Sv379vPF0AAA+gq/2AQCua/Xq1VP79u311FNP6cKFC4qMjNTs2bPVsGFDPf/881qwYIF+/vln1/iXXnpJr7zyiv755x+Fh4erV69eCgwM1Pvvv+8as2rVKjVo0EBnzpxRaGioN54WAMDL2CMFALhu7dy5Uz/99JM6deokSQoKClKHDh300UcfuebffvvtbvepXbu22+2tW7dq6tSpyp8/v+tfbGys0tLStG/fvmvzRAAAPifI2wEAALDLRx99pAsXLridXMIYI6fTqfHjx+doGadPn1afPn305JNPZphXqlQpj2UFAPgXihQA4Lp04cIFTZ8+XW+99ZaaNWvmNq9t27b69NNPVbFiRf3f//2f27z169e73b7tttv022+/qXz58rZnBgD4D46RAgBcl+bNm6cOHTro6NGjKliwoNu8//73v1q+fLlmzZqlihUrasCAAerZs6e2bNmip59+Wn/99ZdOnjypggULatu2bbrjjjv08MMPq1evXsqXL59+++03LVmyJMd7tQAA1x+OkQIAXJc++ugjxcTEZChRktSuXTtt2LBBp06d0hdffKE5c+aoWrVqeu+991xn7XM6nZKkatWq6fvvv9euXbt01113qUaNGnr55Ze5FhUA/MuxRwoAgEu88sormjhxov78809vRwEA+DCOkQIA/KtNmDBBt99+u4oUKaLVq1frjTfe4BpRAIBsUaQAAP9qu3fv1ogRI3TixAmVKlVKTz/9tAYNGuTtWAAAH8dX+wAAAADAIk42AQAAAAAWUaQAAAAAwCKKFAAAAABYRJECAAAAAIsoUgAAAABgEUUKAAAAACyiSAEAAACARRQpAAAAALCIIgUAAAAAFv0/J/MpHusQZVMAAAAASUVORK5CYII=", + "text/plain": [ + "
    " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Read the file ages_population2.csv\n", + "df_ages2 = pd.read_csv('/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/ages_population2.csv')\n", + "\n", + "# Calculate the frequency distribution\n", + "age_counts2 = df_ages2['observation'].value_counts().sort_index()\n", + "\n", + "# Plot the frequency distribution\n", + "plt.figure(figsize=(10, 6))\n", + "age_counts2.plot(kind='bar')\n", + "plt.title('Frequency Distribution of Ages in the Second Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "plt.grid(True)\n", + "plt.show()\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 4.- What do you see? Is there any difference with the frequency distribution in step 1?" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'The first neighbourhood has a more balanced age distribution across different age groups, whereas the second neighbourhood shows a concentration of ages in the younger age groups.\\n\\nFirst Neighbourhood:\\nThe ages are more evenly distributed across different age groups.\\nThe highest frequencies are seen in the mid-age groups (20-40 years).\\n\\nSecond Neighbourhood:\\nThere is a noticeable peak in the frequency for the age group around 30 years.\\nThe distribution is more skewed towards the lower age groups compared to the first neighbourhood.'" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"The first neighbourhood has a more balanced age distribution across different age groups, whereas the second neighbourhood shows a concentration of ages in the younger age groups.\n", + "\n", + "First Neighbourhood:\n", + "The ages are more evenly distributed across different age groups.\n", + "The highest frequencies are seen in the mid-age groups (20-40 years).\n", + "\n", + "Second Neighbourhood:\n", + "There is a noticeable peak in the frequency for the age group around 30 years.\n", + "The distribution is more skewed towards the lower age groups compared to the first neighbourhood.\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 5.- Calculate the mean and standard deviation. Compare the results with the mean and standard deviation in step 2. What do you think?" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Exact Mean for First Neighbourhood: 36.56\n", + "Exact Standard Deviation for First Neighbourhood: 12.81649962597677\n", + "Exact Mean for Second Neighbourhood: 27.155\n", + "Exact Standard Deviation for Second Neighbourhood: 2.9698139326891835\n" + ] + }, + { + "data": { + "image/png": "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rhO5wxKZmZlKT08vsj0vL++8j50yZYoSEhJ05513qlOnTsrKytL27dv19ddf65prrtG///1vHTp0SImJiXr99dcdHmuM0Q033KD169drxIgRatu2rT755BPde++9+u233zRz5kz72GHDhunNN9/U0KFD1aVLF23YsEH9+vUrsa5//vOfatq0qZ588kl7U5eYmKiffvpJw4cPV2hoqHbv3q2XXnpJu3fv1ldffVXkB+Ktt96q5s2b66mnntKHH36oxx9/XIGBgXrxxRfVq1cvPf3001q6dKnuuecedezYUVddddU5n6s777xTr776qm6++WZNnDhRW7ZsUUJCgpKSkuw/1F5//XW99NJL2rp1q/7v//5PknTllVee87iHDh3S+vXr9eqrr0qSbrvtNs2cOVMvvPCCw18Yf/vtN/Xs2dP+lmpfX1/93//9X7F/8X399dcVFxenmJgYPf300zp58qTmz5+vbt26aefOnfZfKrGxsdq9e7fGjBmjhg0b6siRI0pMTFRKSkqZTvr3xRdf6J133tF///tf1a5dW7Nnz1ZsbKxSUlIUFBRU7GOaN2+uadOmafLkyRo5cqS6d+9e5Hk7fvy4rrvuOg0cOFC33HKL3nrrLd1///1q3bq1+vTpI+nPv8LccMMN+uKLLzRy5Eg1b95c3333nWbOnKm9e/dq5cqVpVrD2d9LHh4e8vf3L3F8cnKybrvtNv373//WXXfdpWbNmmn37t26/vrr1aZNG02bNk1eXl7av3+/Nm3aVOo1l6RRo0a6/fbb9fLLL+uBBx4451/unnjiCT3yyCO65ZZbdOedd+r333/XnDlzdNVVV2nnzp0KCAgo9nEFBQXq37+/tm7dqlGjRikyMlLvvfee4uLiih2fn5+vmJgYde7cWc8++6w+/fRTzZgxQ40bN9aoUaMcxr722mv6448/FB8fr5ycHD3//PPq1auXvvvuO4WEhEiSPv30U/Xp00eXXnqppkyZolOnTmnOnDnq2rWrvv766zKfkHLdunV68803NXr0aNWtW1cNGza0f0xizJgxqlOnjh599FH9/PPPmjVrlkaPHq033njD/vgpU6Zo6tSpio6O1qhRo5ScnKz58+dr27Zt2rRpk/2vn4sXL9bw4cPVsWNHJSQkKC0tTc8//7w2bdrk8LyvWbNGsbGxatGihRISEnT06FH7/xgBuDD0QvRCZ6MXurBeKDg4WD4+Pvrggw80ZswYBQYGljj2QuaZOnWqpkyZoiuvvFLTpk2Tp6entmzZonXr1unaa6+VVPrfr6V9Hk6dOqXevXsrJSVFY8eOVVhYmF5//XWtW7fu3C/eWei56LmqNQOUwqJFi4ykc95atmzp8JgGDRqYuLg4+/3LL7/c9OvX75zzxMfHm+K+LFeuXGkkmccff9xh+80332xsNpvZv3+/McaYHTt2GElm3LhxDuOGDRtmJJlHH33Uvu3RRx81ksxtt91WZL6TJ08W2fa///3PSDIbN24scoyRI0fat505c8bUr1/f2Gw289RTT9m3Hz9+3Pj4+Dg8J8XZtWuXkWTuvPNOh+333HOPkWTWrVtn3xYXF2d8fX3Peby/e/bZZ42Pj4/Jysoyxhizd+9eI8m8++67DuPGjBljbDab2blzp33b0aNHTWBgoJFkDhw4YIwx5o8//jABAQHmrrvucnh8amqq8ff3t28/fvy4kWSeeeaZUtdaqPA5/jtJxtPT0/66G2PMN998YySZOXPmnPN427ZtM5LMokWLiuzr0aOHkWRee+01+7bc3FwTGhpqYmNj7dtef/114+bmZj7//HOHxy9YsMBIMps2bTpnDXFxccV+D/Xo0cMY89f3W+HzbMyf30+SzOrVqx2ONXPmTCPJ/P7772Vac3EK59+2bZv58ccfjbu7uxk7dqx9f48ePRy+33/++WdTo0YN88QTTzgc57vvvjPu7u4O2+Pi4kyDBg3s999++20jycyaNcu+LT8/3/Tq1atIzYXP27Rp0xzmadeunWnfvr39/oEDB4wk4+PjY3799Vf79i1bthhJZvz48fZtbdu2NcHBwebo0aP2bd98841xc3Mzt99+e4l1Fyrp69PNzc3s3r3bYXvh8xodHW0KCgrs28ePH29q1KhhMjIyjDHGHDlyxHh6epprr73W5Ofn28e98MILRpJ55ZVXjDHGnD592gQHB5tWrVqZU6dO2cetWrXKSDKTJ092WGe9evXscxhjzJo1a4ykYtcFoCh6IXoheqHy64UmT55sJBlfX1/Tp08f88QTT5gdO3YUGVfaefbt22fc3NzMTTfd5PC70xhj/51b2t+vF/I8zJo1y0gyb775pn3biRMnTJMmTYwks379+nM+D/Rc9Fwwho/v4YLMnTtXiYmJRW5t2rQ572MDAgK0e/du7du374Ln/eijj1SjRg2NHTvWYfvEiRNljNHHH38sSfa3a/73v/91GDdmzJgSj/2f//ynyLa/n6cnJydH6enp6tKliyTp66+/LjL+zjvvtP+7Ro0a6tChg4wxGjFihH17QECAmjVrpp9++qnEWqQ/1ypJEyZMcNg+ceJESdKHH354zsefy9KlS9WvXz/Vrl1bktS0aVO1b9++yNvWV69eraioKIfLKgcGBmrw4MEO4xITE5WRkaHbbrtN6enp9luNGjXUuXNnrV+/XpLs53r47LPPdPz48TLX/3fR0dFq3Lix/X6bNm3k5+d33uf3fGrVquVwridPT0916tTJ4bgrVqxQ8+bNFRkZ6bDuXr16SZJ93efi7e1d5PvofB9paNSokWJiYhy2Ff5V5r333lNBQUFpl1lql156qYYOHaqXXnpJhw8fLnbMO++8o4KCAt1yyy0Oz0doaKiaNm16zudj9erV8vDw0F133WXf5ubmpvj4+BIfc/b3bPfu3Yt93QcMGKB//OMf9vudOnVS586d7d9jhw8f1q5duzRs2DCHv9K2adNG11xzjX1cWfTo0UMtWrQodt/IkSMd3mHQvXt35efn65dffpH0518ST58+rXHjxsnN7a9f03fddZf8/PzsPwO2b9+uI0eO6L///a+8vb3t4/r166fIyEj7uMJ1xsXFObwT75prrimxRgAloxeiF/o7eqGy9UJTp07VsmXL1K5dO33yySd66KGH1L59e11xxRUOH+cq7TwrV65UQUGBJk+e7PC7U5L9d25pf79eyPPw0UcfqV69err55pvt22rWrKmRI0eec/3FoecqG3quqo9QChekU6dOio6OLnKrU6fOeR87bdo0ZWRk6LLLLlPr1q1177336ttvvy3VvL/88ovCwsLsDUSh5s2b2/cX/tfNzU2NGjVyGNekSZMSj332WEk6duyY7r77boWEhMjHx0eXXHKJfVxmZmaR8REREQ73/f395e3trbp16xbZfr5GpHANZ9ccGhqqgIAA+1ovVFJSknbu3KmuXbtq//799tvVV1+tVatWKSsry6GG4p6zs7cVNtW9evXSJZdc4nBbs2aN/USVXl5eevrpp/Xxxx8rJCREV111laZPn67U1NQyrUUq+pxLUp06dS660atfv36RjyScfdx9+/Zp9+7dRdZ82WWXSSrdCTpr1KhR5Puo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vr6+6ty58zk/j362oUOH6s0339R//vMfrV+/Xl27dlV+fr5++OEHvfnmm/rkk0/UoUOHClzFX6ZNm6aNGzeqX79+atCggY4cOaJ58+apfv366tatm6TyWbMkPfTQQ3r99deVnJysli1b2rc3btxYjz/+uCZNmqSff/5ZAwYMUO3atXXgwAG9++67GjlypO65555ijzlgwAB16tRJEydO1P79+xUZGan333/fHrZdzF9fmzRpom7dumnUqFHKzc3VrFmzFBQUpPvuu88+5plnnlGfPn0UFRWlESNG2C9P7O/vrylTptjHDRo0SPfff79uuukmjR071n6578suu6zYE/5ejEsuuUSTJk3S1KlTdd111+mGG25QcnKy5s2bp44dO9pPuurh4aGnn35aw4cPV48ePXTbbbfZL0/csGFDh4+mJCQkqF+/furWrZvuuOMOHTt2THPmzFHLli2VnZ1drvUDKBm9UOnQC1UsZ/dCJ0+e1JVXXqkuXbrouuuuU3h4uDIyMrRy5Up9/vnnGjBggP3jjKWdp0mTJnrooYf02GOPqXv37ho4cKC8vLy0bds2hYWFKSEhodS/Xy/EXXfdpRdeeEG33367duzYoXr16un1118vct6mC0XPRc9VrVhxiT9UfX+/XGlxzr5cqTFFL4P8+OOPm06dOpmAgADj4+NjIiMjzRNPPGFOnz5tH3PmzBkzZswYc8kllxibzeZw2c8//vjDjB8/3oSFhRkPDw/TtGlT88wzzzhc5tOYPy/DGh8fbwIDA02tWrXMgAEDTHJyspHkcFniwsuK/v7770XW8+uvv5qbbrrJBAQEGH9/f/PPf/7THDp0qMRLKZ99jJIuT1zc81ScvLw8M3XqVNOoUSPj4eFhwsPDzaRJk0xOTk6p5vm706dPm6CgINO9e/dzjmvUqJFp166d/f7OnTtN9+7djZeXl6lfv75JSEgws2fPNpJMamqqw2PXr19vYmJijL+/v/H29jaNGzc2w4YNM9u3bzfGGJOenm7i4+NNZGSk8fX1Nf7+/qZz584Ol88tSUmXf42Pjy8y9uyvuZK89957pkWLFsbd3d3hErglvT7FXZr29OnT5umnnzYtW7Y0Xl5epk6dOqZ9+/Zm6tSpJjMz85zzn+91K/x+K7zcdOHairuM+Nq1a82NN95owsLCjKenpwkLCzO33Xab2bt3b6nW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1sCBA7Vp0yZJUn5+vvr166fQ0FB9+eWXOnz4sG6//XZ5eHjoySeftHwtAACg+iKUAgAAqGLc3d0VGhpaZHtmZqYWLlyoZcuWqVevXpKkRYsWqXnz5vrqq6/UpUsXrVmzRnv27NGnn36qkJAQtW3bVo899pjuv/9+TZkyRZ6enlYvBwAAVFN8fA8AAKCK2bdvn8LCwnTppZdq8ODBSklJkSTt2LFDeXl5io6Oto+NjIxURESENm/eLEnavHmzWrdurZCQEPuYmJgYZWVlaffu3SXOmZubq6ysLIcbAADAxXBqKLVx40b1799fYWFhstlsWrlyZYlj//Of/8hms2nWrFkO248dO6bBgwfLz89PAQEBGjFihLKzsyu2cAAAACfp3LmzFi9erNWrV2v+/Pk6cOCAunfvrj/++EOpqany9PRUQECAw2NCQkKUmpoqSUpNTXUIpAr3F+4rSUJCgvz9/e238PDw8l0YAACodpwaSp04cUKXX3655s6de85x7777rr766iuFhYUV2Td48GDt3r1biYmJWrVqlTZu3KiRI0dWVMkAAABO1adPH/3zn/9UmzZtFBMTo48++kgZGRl68803K3TeSZMmKTMz0347ePBghc4HAABcn1PPKdWnTx/16dPnnGN+++03jRkzRp988on69evnsC8pKUmrV6/Wtm3b1KFDB0nSnDlz1LdvXz377LPFhlgAAACuJCAgQJdddpn279+va665RqdPn1ZGRobDu6XS0tLs56AKDQ3V1q1bHY5ReHW+4s5TVcjLy0teXl7lvwAAAFBtVepzShUUFGjo0KG699571bJlyyL7N2/erICAAHsgJUnR0dFyc3PTli1brCwVAADAKbKzs/Xjjz+qXr16at++vTw8PLR27Vr7/uTkZKWkpCgqKkqSFBUVpe+++05Hjhyxj0lMTJSfn59atGhhef0AAKD6qtRX33v66afl7u6usWPHFrs/NTVVwcHBDtvc3d0VGBh4znMi5ObmKjc3136fE3UCAICq4p577lH//v3VoEEDHTp0SI8++qhq1Kih2267Tf7+/hoxYoQmTJigwMBA+fn5acyYMYqKilKXLl0kSddee61atGihoUOHavr06UpNTdXDDz+s+Ph43gkFAAAsVWlDqR07duj555/X119/LZvNVq7HTkhI0NSpU8v1mAAAAFb49ddfddttt+no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zz2ne+65Rz/++KMSExN16NAh+1XzSpKdna1du3Zp165dkv48ufmuXbuUkpIim82mcePG6fHHH9f777+v7777TrfffrvCwsI0YMAASVLz5s113XXX6a677tLWrVu1adMmjR49WoMGDeLKewAAoNK62B4KAADAFbiX5UHPPfecFi1apOTkZPXt21evvfaa+vbtKze3PzOuRo0aafHixWrYsOE5j7N9+3b17NnTfn/ChAmSpLi4OC1evFj33XefTpw4oZEjRyojI0PdunXT6tWr5e3tbX/M0qVLNXr0aPXu3Vtubm6KjY3V7Nmzy7IsAACAClVePRQAAIArKFMoNX/+fN1xxx0aNmyY6tWrV+yY4OBgLVy48JzHufrqq2WMKXG/zWbTtGnTNG3atBLHBAYGatmyZaUrHAAAwInKq4cCAABwBWUKpfbt23feMZ6enoqLiyvL4QEAAFwSPRQAAMBfynROqUWLFmnFihVFtq9YsUKvvvrqRRcFAADgiuihAAAA/lKmUCohIUF169Ytsj04OFhPPvnkRRcFAADgiuihAAAA/lKmUColJUWNGjUqsr1BgwZKSUm56KIAAABcET0UAADAX8oUSgUHB+vbb78tsv2bb75RUFDQRRcFAADgiuihAAAA/lKmUOq2227T2LFjtX79euXn5ys/P1/r1q3T3XffrUGDBpV3jQAAAC6BHgoAAOAvZbr63mOPPaaff/5ZvXv3lrv7n4coKCjQ7bffzvkQAAAASkAPBQAA8JcyhVKenp5644039Nhjj+mbb76Rj4+PWrdurQYNGpR3fQAAAC6DHgoAAOAvZQqlCl122WW67LLLyqsWAACAaoEeCgAAoIyhVH5+vhYvXqy1a9fqyJEjKigocNi/bt26cikOAADAldBDAQAA/KVModTdd9+txYsXq1+/fmrVqpVsNlt51wUAAOBy6KEAAAD+UqZQavny5XrzzTfVt2/f8q4HAADAZdFDAQAA/MWtLA/y9PRUkyZNyrsWAAAAl0YPBQAA8JcyhVITJ07U888/L2NMedcDAADgsuihAAAA/lKmj+998cUXWr9+vT7++GO1bNlSHh4eDvvfeeedcikOAADAldBDAQAA/KVMoVRAQIBuuumm8q4FAADApdFDAQAA/KVModSiRYvKuw4AAACXRw8FAADwlzKdU0qSzpw5o08//VQvvvii/vjjD0nSoUOHlJ2dXW7FAQAAuBp6KAAAgD+V6Z1Sv/zyi6677jqlpKQoNzdX11xzjWrXrq2nn35aubm5WrBgQXnXCQAAUOXRQwEAAPylTO+Uuvvuu9WhQwcdP35cPj4+9u033XST1q5dW27FAQAAuBJ6KAAAgL+U6Z1Sn3/+ub788kt5eno6bG/YsKF+++23cikMAADA1dBDAQAA/KVM75QqKChQfn5+ke2//vqrateufdFFAQAAuCJ6KAAAgL+UKZS69tprNWvWLPt9m82m7OxsPfroo+rbt2951QYAAOBS6KEAAAD+UqaP782YMUMxMTFq0aKFcnJy9K9//Uv79u1T3bp19b///a+8awQAAHAJ9FAAAAB/KVMoVb9+fX3zzTdavny5vv32W2VnZ2vEiBEaPHiww0k7AQAA8Bd6KAAAgL+UKZSSJHd3dw0ZMqQ8awEAAHB59FAAAAB/KlMo9dprr51z/+23316mYgAAAFwZPRQAAMBfyhRK3X333Q738/LydPLkSXl6eqpmzZo0VAAAAMWghwIAAPhLma6+d/z4cYdbdna2kpOT1a1bN07SCQAAUAJ6KAAAgL+UKZQqTtOmTfXUU08V+QsgAAAASkYPBQAAqqtyC6WkP0/ceejQofI8JAAAgMujhwIAANVRmc4p9f777zvcN8bo8OHDeuGFF9S1a9dyKQwAAMDV0EMBAAD8pUyh1IABAxzu22w2XXLJJerVq5dmzJhRHnUBAAC4nPLooebPn6/58+fr559/liS1bNlSkydPVp8+fSRJOTk5mjhxopYvX67c3FzFxMRo3rx5CgkJsR8jJSVFo0aN0vr161WrVi3FxcUpISFB7u5lag0BAADKpEydR0FBQXnXAQAA4PLKo4eqX7++nnrqKTVt2lTGGL366qu68cYbtXPnTrVs2VLjx4/Xhx9+qBUrVsjf31+jR4/WwIEDtWnTJklSfn6++vXrp9DQUH355Zc6fPiwbr/9dnl4eOjJJ5+86PoAAABKiz+HAQAAVCH9+/d3uP/EE09o/vz5+uqrr1S/fn0tXLhQy5YtU69evSRJixYtUvPmzfXVV1+pS5cuWrNmjfbs2aNPP/1UISEhatu2rR577DHdf//9mjJlijw9PZ2xLAAAUA2VKZSaMGFCqcc+99xzZZkCAADA5ZR3D5Wfn68VK1boxIkTioqK0o4dO5SXl6fo6Gj7mMjISEVERGjz5s3q0qWLNm/erNatWzt8nC8mJkajRo3S7t271a5du2Lnys3NVW5urv1+VlZWqdcCAABQnDKFUjt37tTOnTuVl5enZs2aSZL27t2rGjVq6IorrrCPs9ls5VMlAACACyivHuq7775TVFSUcnJyVKtWLb377rtq0aKFdu3aJU9PTwUEBDiMDwkJUWpqqiQpNTXVIZAq3F+4ryQJCQmaOnVqqdcKAABwPmUKpfr376/atWvr1VdfVZ06dSRJx48f1/Dhw9W9e3dNnDixXIsEAABwBeXVQzVr1ky7du1SZmam3nrrLcXFxWnDhg0VWbomTZrk8E6vrKwshYeHV+icAADAtZUplJoxY4bWrFljb6YkqU6dOnr88cd17bXXEkoBAAAUo7x6KE9PTzVp0kSS1L59e23btk3PP/+8br31Vp0+fVoZGRkO75ZKS0tTaGioJCk0NFRbt251OF5aWpp9X0m8vLzk5eVVqvoAAABKw60sD8rKytLvv/9eZPvvv/+uP/7446KLAgAAcEUV1UMVFBQoNzdX7du3l4eHh9auXWvfl5ycrJSUFEVFRUmSoqKi9N133+nIkSP2MYmJifLz81OLFi3KXAMAAMCFKtM7pW666SYNHz5cM2bMUKdOnSRJW7Zs0b333quBAweWa4EAAACuojx6qEmTJqlPnz6KiIjQH3/8oWXLlumzzz7TJ598In9/f40YMUITJkxQYGCg/Pz8NGbMGEVFRalLly6SpGuvvVYtWrTQ0KFDNX36dKWmpurhhx9WfHw874QCAACWKlMotWDBAt1zzz3617/+pby8vD8P5O6uESNG6JlnninXAgEAAFxFefRQR44c0e23367Dhw/L399fbdq00SeffKJrrrlGkjRz5ky5ubkpNjZWubm5iomJ0bx58+yPr1GjhlatWqVRo0YpKipKvr6+iouL07Rp08p/wQAAAOdQplCqZs2amjdvnp555hn9+OOPkqTGjRvL19e3XIsDAABwJeXRQy1cuPCc+729vTV37lzNnTu3xDENGjTQRx99VOo5AQAAKkKZzilV6PDhwzp8+LCaNm0qX19fGWPKqy4AAACXRQ8FAABQxlDq6NGj6t27ty677DL17dtXhw8fliSNGDGCK+8BAACUgB4KAADgL2UKpcaPHy8PDw+lpKSoZs2a9u233nqrVq9eXW7F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fvvtNw0ZMkRBQUHy8fFR69attX37dvt+V/n5JEkNGzYs8trabDbFx8dLcq3XNj8/X4888ogaNWokHx8fNW7cWI899pj+fmpMV3ptqzv6p6r/NVydeij6J9fsnyR6KFftoeifKln/ZFBhli9fbjw9Pc0rr7xidu/ebe666y4TEBBg0tLSnF3aRfvoo4/MQw89ZN555x0jybz77rsO+5966inj7+9vVq5cab755htzww03mEaNGplTp045p+AyiomJMYsWLTLff/+92bVrl+nbt6+JiIgw2dnZ9jH/+c9/THh4uFm7dq3Zvn276dKli7nyyiudWHXZvf/+++bDDz80e/fuNcnJyebBBx80Hh4e5vvvvzfGuNZa/27r1q2mYcOGpk2bNubuu++2b3eV9T766KOmZcuW5vDhw/bb77//bt/vKus0xphjx46ZBg0amGHDhpktW7aYn376yXzyySdm//799jGu8vPJGGOOHDni8LomJiYaSWb9+vXGGNd6bZ944gkTFBRkVq1aZQ4cOGBWrFhhatWqZZ5//nn7GFd6basz+ifX+BquTj0U/ZNr9k/G0EO5ag9F/1S5+idCqQrUqVMnEx8fb7+fn59vwsLCTEJCghOrKn9nN1UFBQUmNDTUPPPMM/ZtGRkZxsvLy/zvf/9zQoXl58iRI0aS2bBhgzHmz3V5eHiYFStW2MckJSUZSWbz5s3OKrNc1alTx/zf//2fy671jz/+ME2bNjWJiYmmR48e9qbKldb76KOPmssvv7zYfa60TmOMuf/++023bt1K3O/KP5+MMebuu+82jRs3NgUFBS732vbr18/ccccdDtsGDhxoBg8ebIxx/de2OqF/cs2v4erWQ9E/ucZ66aH+4so/o+ifnPu68vG9CnL69Gnt2LFD0dHR9m1ubm6Kjo7W5s2bnVhZxTtw4IBSU1Md1u7v76/OnTtX+bVnZmZKkgIDAyVJO3bsUF5ensNaIyMjFRERUeXXmp+fr+XLl+vEiROKiopy2bXGx8erX79+DuuSXO+13bdvn8LCwnTppZdq8ODBSklJkeR663z//ffVoUMH/fOf/1RwcLDatWunl19+2b7flX8+nT59WkuWLNEdd9whm83mcq/tlVdeqbVr12rv3r2SpG+++UZffPGF+vTpI8m1X9vqhP7Jdb+Gq0sPRf/keuulh/qTq/6Mon9y/uvq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", + "text/plain": [ + "
    " + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Comparison of Means:\n", + "First Neighbourhood Mean: 36.56\n", + "Second Neighbourhood Mean: 27.155\n", + "\n", + "Comparison of Standard Deviations:\n", + "First Neighbourhood Standard Deviation: 12.81649962597677\n", + "Second Neighbourhood Standard Deviation: 2.9698139326891835\n" + ] + } + ], + "source": [ + "# Calculate the exact mean and standard deviation for the first dataset\n", + "exact_mean_1 = df_ages1['observation'].mean()\n", + "exact_std_dev_1 = df_ages1['observation'].std()\n", + "\n", + "print(\"Exact Mean for First Neighbourhood:\", exact_mean_1)\n", + "print(\"Exact Standard Deviation for First Neighbourhood:\", exact_std_dev_1)\n", + "\n", + "# Calculate the exact mean and standard deviation for the second dataset\n", + "exact_mean_2 = df_ages2['observation'].mean()\n", + "exact_std_dev_2 = df_ages2['observation'].std()\n", + "\n", + "print(\"Exact Mean for Second Neighbourhood:\", exact_mean_2)\n", + "print(\"Exact Standard Deviation for Second Neighbourhood:\", exact_std_dev_2)\n", + "\n", + "# Plot histograms for both datasets\n", + "plt.figure(figsize=(12, 6))\n", + "\n", + "plt.subplot(1, 2, 1)\n", + "plt.hist(df_ages1['observation'], bins=range(0, 85, 5), edgecolor='black')\n", + "plt.title('Histogram of Ages in the First Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "\n", + "plt.subplot(1, 2, 2)\n", + "plt.hist(df_ages2['observation'], bins=range(0, 85, 5), edgecolor='black')\n", + "plt.title('Histogram of Ages in the Second Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "\n", + "plt.tight_layout()\n", + "plt.show()\n", + "\n", + "# Compare the results\n", + "print(\"Comparison of Means:\")\n", + "print(\"First Neighbourhood Mean:\", exact_mean_1)\n", + "print(\"Second Neighbourhood Mean:\", exact_mean_2)\n", + "\n", + "print(\"\\nComparison of Standard Deviations:\")\n", + "print(\"First Neighbourhood Standard Deviation:\", exact_std_dev_1)\n", + "print(\"Second Neighbourhood Standard Deviation:\", exact_std_dev_2)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'The significantly lower mean in the second neighbourhood indicates a younger population compared to the first neighbourhood.\\nThe higher standard deviation in the first neighbourhood reflects a more diverse age range, whereas the low standard deviation in the second neighbourhood indicates that the ages are tightly clustered around the mean.\\nThese differences suggest that the first neighbourhood has a more varied age demographic, while the second neighbourhood has a younger and more homogenous age group'" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"The significantly lower mean in the second neighbourhood indicates a younger population compared to the first neighbourhood.\n", + "The higher standard deviation in the first neighbourhood reflects a more diverse age range, whereas the low standard deviation in the second neighbourhood indicates that the ages are tightly clustered around the mean.\n", + "These differences suggest that the first neighbourhood has a more varied age demographic, while the second neighbourhood has a younger and more homogenous age group\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 5\n", + "Now is the turn of `ages_population3.csv`.\n", + "\n", + "#### 1.- Read the file `ages_population3.csv`. Calculate the frequency distribution and plot it." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0sAAAI0CAYAAADMR7LWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAABzOUlEQVR4nO3dd3gU5fr/8c+mbRJC6JggJQhIEbGgIILSiYAUxYOISjlgO2BDj4KKBBBFVMRjAfUgNrCgiCJfQDoHERUU0KMi1UZHSaghZO/fH/yyhyUTMhs2bCDv13Xlgp2997mfmZ1ndu6dnRmPmZkAAAAAAAEiwt0BAAAAACiKKJYAAAAAwAHFEgAAAAA4oFgCAAAAAAcUSwAAAADggGIJAAAAABxQLAEAAACAA4olAAAAAHBAsQQAAAAADiiWAJxR0tLS5PF4TkmuFi1aqEWLFv7HixYtksfj0QcffHBK8vfp00cpKSmnJFdB7du3T/3791dSUpI8Ho/uueeecHcp5I5fDwqTx+PRwIEDT0muEzkd1r2CSklJUZ8+fQr82quvvjrfuNdff10ej0crVqwoUJ7C0qdPHyUkJIS7GwFO5v0AQoFiCQhSzoec09/gwYPD3b0zyvHLOjY2VpUqVVJqaqr+9a9/ae/evSHJs2XLFqWlpWnVqlUhaS+UinLf3Hj88cf1+uuv64477tBbb72lm2++Od/XZGdnq1KlSvJ4PJo1a9Yp6GXRsmzZMqWlpWnPnj1h60NKSkqe27lDhw6FPF+w89ynTx95PB41aNBAZpbr+aJSVAI4/UWFuwPA6WrEiBGqXr16wLT69euHqTdntpxlnZWVpW3btmnRokW65557NHbsWH3yySdq0KCBP/aRRx4JumjdsmWLhg8frpSUFF144YWuX/fZZ58FlacgTtS3V199VT6fr9D7cDIWLFigyy67TMOGDQvqNVu3blVKSoomT56s9u3bF2IPT16o14Nly5Zp+PDh6tOnj0qXLh3StoNx4YUX6r777ss1PSYmJuTrXkHn+bvvvtO0adPUrVu3kPVl7dq1iojgu2QAR1EsAQXUvn17XXLJJa5iDx06pJiYGD6AC+j4ZT1kyBAtWLBAV199tTp37qwff/xRcXFxkqSoqChFRRXupu3AgQOKj49XTExMoebJT3R0dFjzu7Fjxw7Vq1cvqNe8/fbbuvjii9W7d2899NBD2r9/v0qUKFFIPTx54V4PCsvZZ5+tm266yfE5N9uyI0eOyOfzFdryiYuLU5UqVTRixAhde+21Ifv5rdfrDUk7p5OczygAubHnBoRYznkr7777rh555BGdffbZio+PV0ZGhiTpyy+/1FVXXaVSpUopPj5ezZs31+eff56rnaVLl+rSSy9VbGysatSooZdffjnX+TibN2+Wx+PR66+/nuv1Ho9HaWlpAdP++OMP/f3vf9dZZ50lr9er8847T6+99ppj/99//32NGjVKlStXVmxsrFq3bq3169fnyvPll1+qQ4cOKlOmjEqUKKEGDRroueeekyRNmjRJHo9H3377ba7XPf7444qMjNQff/yR7zJ10qpVKw0dOlS//PKL3n77bf90p3OW5s6dq2bNmql06dJKSEhQ7dq19dBDD/nn99JLL5Uk9e3b1/9To5xl2qJFC9WvX18rV67UlVdeqfj4eP9r8zpXJTs7Ww899JCSkpJUokQJde7cWb/99ltATF6/wz+2zfz65nTeyP79+3XfffepSpUq8nq9ql27tp5++ulcP1XK+ZnS9OnTVb9+ff/6MHv2bOcFfpwdO3aoX79+OuussxQbG6sLLrhAb7zxhv/5nPVo06ZNmjlzpr/vmzdvPmG7Bw8e1EcffaQePXqoe/fuOnjwoD7++GPH2KlTp6pevXqKjY1V/fr19dFHHzkuE5/Pp3Hjxum8885TbGyszjrrLN12223666+/AuJWrFih1NRUlS9fXnFxcapevbr+/ve/57ss8jp3ze0YOlZaWpr++c9/SpKqV6+e53Jz8765Ge8FdfxyztkWPf300xo3bpxq1Kghr9erH374QZL0/PPP67zzzlN8fLzKlCmjSy65RFOmTAlqno8XERGhRx55RGvWrNFHH32Ub58zMzM1bNgw1axZU16vV1WqVNEDDzygzMzMgDinsblmzRo1b95ccXFxqly5sh577DH/9s2pn0uXLlWjRo0UGxurc845R2+++aZjnw4cOKDbbrtN5cqVU2Jionr16pVrvZSkl156Seedd568Xq8qVaqkAQMG5PrJopttipT/Z5R0dN3p2rWrEhISVKFCBd1///3Kzs4OaNfttubIkSMaOXKkf51ISUnRQw89lGu5m5kee+wxVa5cWfHx8WrZsqX++9//Oi434FTiyBJQQOnp6dq1a1fAtPLly/v/P3LkSMXExOj+++9XZmamYmJitGDBArVv314NGzbUsGHDFBERoUmTJqlVq1b6z3/+o0aNGkk6+tOSdu3aqUKFCkpLS9ORI0c0bNgwnXXWWQXu7/bt23XZZZf5d5IrVKigWbNmqV+/fsrIyMh14v3o0aMVERGh+++/X+np6RozZoxuvPFGffnll/6YuXPn6uqrr1ZycrLuvvtuJSUl6ccff9Snn36qu+++W9ddd50GDBigyZMn66KLLgpof/LkyWrRooXOPvvsAs/TzTffrIceekifffaZbrnlFseY//73v7r66qvVoEEDjRgxQl6vV+vXr/cXqHXr1tWIESP06KOP6tZbb9UVV1whSbr88sv9bezevVvt27dXjx49dNNNN+X7PowaNUoej0cPPvigduzYoXHjxqlNmzZatWqV/wiYG276diwzU+fOnbVw4UL169dPF154oebMmaN//vOf+uOPP/Tss88GxC9dulTTpk3TP/7xD5UsWVL/+te/1K1bN/36668qV65cnv06ePCgWrRoofXr12vgwIGqXr26pk6dqj59+mjPnj26++67VbduXb311lu69957VblyZf/PuSpUqHDCef7kk0+0b98+9ejRQ0lJSWrRooUmT56snj17BsTNnDlT119/vc4//3w98cQT+uuvv9SvXz/H9em2227T66+/rr59++quu+7Spk2b9MILL+jbb7/V559/rujoaO3YscM/5gYPHqzSpUtr8+bNmjZt2gn7eyJuxtDxrr32Wv38889655139Oyzz/q3KccuNzfvW7Dj3UlWVlaubVx8fLzi4+PzfM2kSZN06NAh3XrrrfJ6vSpbtqxeffVV3XXXXbruuut0991369ChQ1qzZo2+/PJL9ezZ09U856Vnz54aOXKkRowYoWuuuSbPo0s+n0+dO3fW0qVLdeutt6pu3br67rvv9Oyzz+rnn3/W9OnT88zxxx9/qGXLlvJ4PBoyZIhKlCihf//733kegVq/fr2uu+469evXT71799Zrr72mPn36qGHDhjrvvPMCYgcOHKjSpUsrLS1Na9eu1fjx4/XLL7/4CxrpaDE5fPhwtWnTRnfccYc/7uuvv/avvwXh9BklHf2yJzU1VY0bN9bTTz+tefPm6ZlnnlGNGjV0xx13SApuW9O/f3+98cYbuu6663Tffffpyy+/1BNPPKEff/wxoMh99NFH9dhjj6lDhw7q0KGDvvnmG7Vr106HDx8u0PwBIWMAgjJp0iST5PhnZrZw4UKTZOecc44dOHDA/zqfz2e1atWy1NRU8/l8/ukHDhyw6tWrW9u2bf3TunbtarGxsfbLL7/4p/3www8WGRlpxw7bTZs2mSSbNGlSrn5KsmHDhvkf9+vXz5KTk23Xrl0BcT169LBSpUr5+5rT/7p161pmZqY/7rnnnjNJ9t1335mZ2ZEjR6x69epWrVo1++uvvwLaPHb+brjhBqtUqZJlZ2f7p33zzTd59vtYOcv666+/zjOmVKlSdtFFF/kfDxs2LGAZPfvssybJdu7cmWcbX3/9dZ79ad68uUmyCRMmOD7XvHlz/+OcZXf22WdbRkaGf/r7779vkuy5557zT6tWrZr17t073zZP1LfevXtbtWrV/I+nT59ukuyxxx4LiLvuuuvM4/HY+vXr/dMkWUxMTMC01atXmyR7/vnnc+U61rhx40ySvf322/5phw8ftiZNmlhCQkLAvFerVs06dux4wvaOdfXVV1vTpk39j1955RWLioqyHTt2BMSdf/75VrlyZdu7d69/2qJFi0xSwDL5z3/+Y5Js8uTJAa+fPXt2wPSPPvoo33UtL3mtB/mNobw89dRTJsk2bdqU6zm375vb8Z6XatWqOW7jcrYpx697OduixMTEXO9Vly5d7LzzzivwPDvp3bu3lShRwszM3njjDZNk06ZN8z8vyQYMGOB//NZbb1lERIT95z//CWhnwoQJJsk+//zzgHk/dmzeeeed5vF47Ntvv/VP2717t5UtWzZXn3OW25IlS/zTduzYYV6v1+677z7/tJxtW8OGDe3w4cP+6WPGjDFJ9vHHH/tfGxMTY+3atQvYhr7wwgsmyV577bU8+50jr/Xz+M8os6PLVZKNGDEiYPpFF11kDRs29D92u61ZtWqVSbL+/fsHxN1///0myRYsWBAwnx07dgz4/HjooYdMkuN8AacKP8MDCujFF1/U3LlzA/6O1bt374CjCKtWrdK6devUs2dP7d69W7t27dKuXbu0f/9+tW7dWkuWLJHP51N2drbmzJmjrl27qmrVqv7X161bV6mpqQXqq5npww8/VKdOnWRm/ty7du1Samqq0tPT9c033wS8pm/fvgG/Yc85qrFx40ZJ0rfffqtNmzbpnnvuyXVC9rHf7vbq1UtbtmzRwoUL/dMmT56suLi4kJyUnZCQcMKr4uX07eOPPy7wCeler1d9+/Z1Hd+rVy+VLFnS//i6665TcnKy/u///q9A+d36v//7P0VGRuquu+4KmH7ffffJzHJdWa5NmzaqUaOG/3GDBg2UmJjof49PlCcpKUk33HCDf1p0dLTuuusu7du3T4sXLy5Q/3fv3q05c+YEtNutWzf/T9pybNmyRd9995169eoVcJnj5s2b6/zzzw9oc+rUqSpVqpTatm0bsN43bNhQCQkJ/vUyZz359NNPlZWVVaD+Hy+/MVRQ+b1vBRnvTho3bpxrG9erV68TvqZbt265jgiVLl1av//+u77++usCzG3+brzxRtWqVUsjRoxwvDKedHQ9qFu3rurUqROwPFq1aiVJAdun482ePVtNmjQJuMBK2bJldeONNzrG16tXz/9eS0ePkNWuXdvxfb/11lsDjgzdcccdioqK8m8r5s2bp8OHD+uee+4JOE/slltuUWJiombOnJlnv/Nz/GfUsW6//faAx1dccUVA/91ua3LmY9CgQbniJPn7nzOfd955Z8Dnx5l4qwGcfvgZHlBAjRo1OuEFHo6/Ut66deskHf2Aykt6eroyMzN18OBB1apVK9fztWvXLtAO986dO7Vnzx698soreuWVVxxjduzYEfD42EJNksqUKSNJ/t/Tb9iwQVL+VwBs27atkpOTNXnyZLVu3Vo+n0/vvPOOunTpElBQFNS+fftUsWLFPJ+//vrr9e9//1v9+/fX4MGD1bp1a1177bW67rrrXF9w4+yzzw7q5Ofj3zuPx6OaNWvmew7Gyfrll19UqVKlXMu1bt26/uePdfx7LB19n53OmTg+T61atXItv7zyuPXee+8pKytLF110UcC5PY0bN9bkyZM1YMCAgPZr1qyZq42aNWsGFALr1q1Tenp6nutIznrfvHlzdevWTcOHD9ezzz6rFi1aqGvXrurZs2eBT/jPbwwVVH7vW0HGu5Py5curTZs2QfXt+O2eJD344IOaN2+eGjVqpJo1a6pdu3bq2bOnmjZtGlTbeYmMjNQjjzyi3r17a/r06brmmmtyxaxbt04//vhjnj/tO9Hy+OWXX9SkSZNc053WPym4cXX8tiIhIUHJycn+bUXOul67du2AuJiYGJ1zzjkFHmuS83slSbGxsbmW0/H9d7ut+eWXXxQREZFrWSUlJal06dIBcVLu5VGhQgX/uAHChWIJKCTHf2OXc1TjqaeeyvPy1AkJCblOej2RvH6ff/yJuDm5b7rppjyLtWMvvy0d3QFxktc3t3mJjIxUz5499eqrr+qll17S559/ri1btuR5la1g/P7770pPT89zp0U6+j4sWbJECxcu1MyZMzV79my99957atWqlT777LM85/P4NkLtRO+dmz6FQqje41CZPHmyJOW5E71x40adc845QbXp8/lUsWJFf9vHy9kpzLmZ8PLlyzVjxgzNmTNHf//73/XMM89o+fLlBbpRZ2Et3/zaLch4DxWnsVK3bl2tXbtWn376qWbPnq0PP/xQL730kh599FENHz48JHlvvPFG/7lLXbt2zfW8z+fT+eefr7Fjxzq+vkqVKiHphxS+cRXsNiWv7VphbH9O1Y3CgcJAsQScIjk/m0lMTDzht7UVKlRQXFyc/0jUsdauXRvwOOcbt+OvinT8t40VKlRQyZIllZ2dHfQ3xXnJmZ/vv/8+3zZ79eqlZ555RjNmzNCsWbNUoUKFAv+k8FhvvfWWJOXbVkREhFq3bq3WrVtr7Nixevzxx/Xwww9r4cKFatOmTcg/yI9/78xM69evD9hBLVOmjOMNOH/55ZeAgiCYvlWrVk3z5s3T3r17A77x/emnn/zPh0K1atW0Zs0a+Xy+gKNLJ5Nn06ZNWrZsmQYOHKjmzZsHPOfz+XTzzTdrypQpeuSRR/ztO11Z7vhpNWrU0Lx589S0aVNXRe9ll12myy67TKNGjdKUKVN044036t1331X//v2DnqeCOtn1sTDG+8kqUaKErr/+el1//fU6fPiwrr32Wo0aNUpDhgxRbGzsSc9zztGlPn36OF49sUaNGlq9erVat24ddK5q1aq5WtcKYt26dWrZsqX/8b59+7R161Z16NDBn1s6uu0/drtw+PBhbdq0KeD9dbtNCQW325pq1arJ5/Np3bp1/qNO0tELkOzZsycgTjq6PI7t686dO0/6SCxwsjhnCThFGjZsqBo1aujpp5/Wvn37cj2/c+dOSUc/9FNTUzV9+nT9+uuv/ud//PFHzZkzJ+A1iYmJKl++vJYsWRIw/aWXXgp4HBkZqW7duunDDz/U999/n2fuYFx88cWqXr26xo0bl+sD+vhvUBs0aKAGDRro3//+tz788EP16NHjpO+FtGDBAo0cOVLVq1fP89wBSfrzzz9zTcs5spdzFC/nHj5OOxoF8eabbwacR/XBBx9o69atATdXrVGjhpYvXx5wpadPP/001yXGg+lbhw4dlJ2drRdeeCFg+rPPPiuPxxOym7t26NBB27Zt03vvveefduTIET3//PNKSEjIVey4kXPk54EHHtB1110X8Ne9e3c1b97cH1OpUiXVr19fb775ZsBYWrx4sb777ruAdrt3767s7GyNHDkyV84jR474l+tff/2Va709fj05VU52fSyM8X4ydu/eHfA4JiZG9erVk5n5zw8LxRi86aabVLNmTcejVd27d9cff/yhV199NddzBw8e1P79+/NsNzU1VV988YVWrVrln/bnn3/mebQyGK+88krAOXLjx4/XkSNH/GO1TZs2iomJ0b/+9a+A9XPixIlKT09Xx44d/dPcblNCwe22JqfoGzduXEBczhG+nP63adNG0dHRev755wPm8/jXAeHAkSXgFImIiNC///1vtW/fXuedd5769u2rs88+W3/88YcWLlyoxMREzZgxQ5I0fPhwzZ49W1dccYX+8Y9/+HdEzzvvPK1Zsyag3f79+2v06NHq37+/LrnkEi1ZskQ///xzrvyjR4/WwoUL1bhxY91yyy2qV6+e/vzzT33zzTeaN2+eY1GR3/yMHz9enTp10oUXXqi+ffsqOTlZP/30k/773//mKux69eql+++/X5KC/gnerFmz9NNPP+nIkSPavn27FixYoLlz56patWr65JNPFBsbm+drR4wYoSVLlqhjx46qVq2aduzYoZdeekmVK1dWs2bNJB3dyShdurQmTJigkiVLqkSJEmrcuHGev+nPT9myZdWsWTP17dtX27dv17hx41SzZs2Ay5v3799fH3zwga666ip1795dGzZs0Ntvvx1w4n6wfevUqZNatmyphx9+WJs3b9YFF1ygzz77TB9//LHuueeeXG0X1K233qqXX35Zffr00cqVK5WSkqIPPvhAn3/+ucaNG1egc9EmT56sCy+8MM+fQ3Xu3Fl33nmnvvnmG1188cV6/PHH1aVLFzVt2lR9+/bVX3/9pRdeeEH169cPKKCaN2+u2267TU888YRWrVqldu3aKTo6WuvWrdPUqVP13HPP6brrrtMbb7yhl156Sddcc41q1KihvXv36tVXX1ViYqJ/h+9UadiwoSTp4YcfVo8ePRQdHa1OnToFdWPeUI/3k9GuXTslJSWpadOmOuuss/Tjjz/qhRdeUMeOHf3rSijmOTIyUg8//LDjxVhuvvlmvf/++7r99tu1cOFCNW3aVNnZ2frpp5/0/vvva86cOXmeg/rAAw/o7bffVtu2bXXnnXf6Lx1etWpV/fnnnyd1VOzw4cNq3bq1unfvrrVr1+qll15Ss2bN1LlzZ0lHjxIOGTJEw4cP11VXXaXOnTv74y699NKAbanbbUoouN3WXHDBBerdu7deeeUV7dmzR82bN9dXX32lN954Q127dvUfVcu5l9MTTzyhq6++Wh06dNC3336rWbNmBdySAwiLU335PeB0l9/lrHMuyzp16lTH57/99lu79tprrVy5cub1eq1atWrWvXt3mz9/fkDc4sWLrWHDhhYTE2PnnHOOTZgwIddlsc2OXnq8X79+VqpUKStZsqR1797dduzYkevS4WZm27dvtwEDBliVKlUsOjrakpKSrHXr1vbKK6/k2/+8LlO+dOlSa9u2rZUsWdJKlChhDRo0cLz09NatWy0yMtLOPfdcx+Xi5PjLtMfExFhSUpK1bdvWnnvuuYBLVOc4fhnNnz/funTpYpUqVbKYmBirVKmS3XDDDfbzzz8HvO7jjz+2evXqWVRUVMB8Nm/ePM/LHud1Sd533nnHhgwZYhUrVrS4uDjr2LFjwGXgczzzzDN29tlnm9frtaZNm9qKFStytXmivh1/+WYzs71799q9995rlSpVsujoaKtVq5Y99dRTAZfjNct9aeUceV1++Hjbt2+3vn37Wvny5S0mJsbOP/98x8ubu7l0+MqVK02SDR06NM+YzZs3myS79957/dPeffddq1Onjnm9Xqtfv7598skn1q1bN6tTp06u17/yyivWsGFDi4uLs5IlS9r5559vDzzwgG3ZssXMjl7O/oYbbrCqVaua1+u1ihUr2tVXX20rVqzId1nktR64HUNORo4caWeffbZFREQEXJ46mPfNzXjPS37vW16XDn/qqadyxb788st25ZVX+rd5NWrUsH/+85+Wnp7uap7zyp9z6fBjZWVlWY0aNRyX0+HDh+3JJ5+08847z7xer5UpU8YaNmxow4cPD+iL07L89ttv7YorrjCv12uVK1e2J554wv71r3+ZJNu2bVvAa52W2/HrSM62bfHixXbrrbdamTJlLCEhwW688UbbvXt3rte/8MIL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S6DQtFkYn4so2hg7oWvzWPwML0RiYmK0evVq1a1bN9xd8du6davGjx+vpUuXauvWrYqIiNA555yjrl27qk+fPoqMjAx3FwEAAIAiq1jcZyk/v/32m4YNG6YXX3xRK1euVNmyZVWvXr2AmEOHDun999/XqlWrHNvIzs7W6NGjVa5cOUnS2LFjc8Xs379f77//vtavX6/k5GTdcMMN/vg777xT3bt31xVXXJFvf1944QV99dVX6tChg3r06KG33npLTzzxhHw+n6699lqNGDFCq1atUps2bVSzZk3FxcVp3bp16tmzpw4fPqz7779fr732mmbPnq2SJUsGubQQDl999ZW++OKLgJMVmzRpokaNGrl6/V9//aUZM2b4z0Hw+XyKiIjIFefz+fT777+ratWqkiQz0+bNm1WlShVFRUXp8OHD+uijj5SZmakOHTqofPnyeeZs1aqVJk2a5L/3lpNNmzb5x8Ox90XIzMxURESE/8TNDRs26LXXXtOvv/6qatWqqV+/fqpevbo+/PBDtW/fXvHx8fkug9WrV2vlypVq0aKFzjnnHP33v//Viy++KJ/Pp2uuuUapqakB8QsWLMj1RUPnzp1Vq1atfHOhaAj1uJHcjZ3CHjeS89gpjHEjBTd2GDenv8OHD2v69Om5xs7ll1+uLl26KCYmJt82tm/frpdffjng3J3ff/9dpUuXVkJCQkBsVlaWvvjiC1155ZXavXu31qxZowsuuEBly5bVrl27NHHiRGVmZupvf/vbCb+QPuecczRnzpwTrmtmpkWLFvnHTmpqqqKjo/X7778rNjbWPzb/85//aMKECf6xM2DAADVp0kTPPPOMrrvuunzHZ45PP/1UX331lVJTU9W0aVMtWLBATz/9tH9/7dZbb5UkHTx4UO+8847jl9utW7d2lQuFKOhjUWegVatWmcfjsWrVqvkvNXjllVfali1b/DHbtm3zX37wwgsvtBYtWgT8eTweu/TSS61Fixb+n0/VrVvXdu/ebWZmv/76q6WkpFipUqXs0ksvtbJly1rFihX9l2rNyVurVi0bPXq0bd261bGvI0eOtJIlS1q3bt0sKSnJRo8ebeXKlbPHHnvMHn/8catQoYI9+uij1rRpU0tLS/O/7q233rLGjRubmdmff/5pF154od11113+5zMzM+29996ze+65x3r06GE9evSwe+65x95//33LzMx0tRy3bduW6zejv/32m+3duzdX7OHDh23x4sVmZrZr1y5bsGCBf1nt3LnTRo8ebcOHD7cffvjhhDmrV69uP//88wljfD6fLViwwF555RWbMWOG/xKfv/32m+3cudMft2TJEuvZs6c1a9bMbrzxRv/lu59++mnbvHlzPnP/PzNmzLChQ4fa0qVLzcxs/vz51r59e0tNTbWXX37ZH3fgwAGbOHGi9e3b16666irr0KGDDRw40ObNm+eP2b59uzVr1sy/fjZq1MgaNWrkX1ebNWtm27dvz7dPq1atsoiICEtPT7e//e1vFhsbaxUrVrShQ4fakSNH/HE567mZ2U8//WTVqlWziIgIq1mzpm3cuNEaNmxoJUqUsPj4eCtfvrz9/PPP9vHHHzv+RUZG2gsvvOB/fMcdd/jXhQMHDli3bt38YyoiIsJatmzpf7558+Y2depUMzNbunSpeb1ea9CggV1//fV20UUXWXx8vC1btsw8Ho8lJibaLbfcYsuXL89z/j/88EOLjIy0cuXKWUJCgs2dO9dKly5tbdq0sdTUVIuMjLTJkyf7l3mjRo0sIiLCoqKiLCIiwho2bGhJSUkWGRlp//znPwPa/vLLL23cuHE2ePBgGzx4sI0bN86+/PLLfN+THH/++Weu31BnZ2c7xmZnZ9svv/xiZkfX640bN1pWVpaZHR3D7777rr3xxhsB67WTli1bulqnN27caJ999lnAHdEPHToUcJnc9evX20MPPWQ33XSTPfzww/5t2gcffGD79+/PN0eOVatW2cSJE23Dhg1mZvb999/bHXfcYbfddpvNnj07IHb+/Pk2fPhwu/322+0f//iHPf300wHbgVCPGzNzPXZCPW7MzPXYCfW4MXM/doIdN2ahHztuxo1Z4Y8dp3FjVjhjJ5hxY5b/2Fm3bp2dc845Fhsba82bN7fu3btb9+7drXnz5hYbG2s1a9a0devWuepXztjZsmWLXXrppRYREWGRkZF28803B+wX5IydL7/80kqVKmUej8fKlCljK1assOrVq1utWrWsRo0aFhcXZytXrrTnnnvO8S8yMtKGDBnif2xm1r59e9uzZ4+Zme3evdsaN25sHo/HKlSoYBEREVanTh3bsWOHNWrUyGbMmGFmR89riYiIsM6dO9uDDz5o11xzjUVHR9uMGTPM4/FYZGSktWnTxt59990T7h9NmDDBoqKirGHDhpaYmGhvvfWWlSxZ0vr372+33XabxcXF2bhx42zdunVWrVo1q1ixolWpUsU8Ho917NjRGjdubJGRkfa3v/3Nv67mYOyE5nPHrWJRLOX1oZTz9+yzz5ok69ixo+3cudPWrVtnHTt2tOrVq/tXkpzB/MQTT1j16tVt/vz5ATmioqLsv//9b8A0j8fj/0C+8cYb7fLLL/cP2r1791qbNm3shhtu8MfOmzfP7r77bitfvrxFR0db586dbcaMGQErcY0aNezDDz80s6Mbo8jISHv77bf9z0+bNs1q1qxpcXFx/o2n2dEVPjo62rZt22ZmZp999plVqlTJzNg4mhXdjWO3bt2sSZMm9tNPP+XK9dNPP9nll19u1113naWnp5/w7z//+Y9FRETYXXfdZeeee65NnTrVXn31VatWrZp17NjRP0/btm0zj8djZmZdunSxzp0725o1a+yee+6xunXrWpcuXezw4cN26NAh69Spk910003+Hbac+x44/eXc6yBnPAwZMsQqV65sCxYssP3799vSpUutRo0aNnjwYDMzS0xM9H+AN2/e3O69996AeX/kkUesadOm5vF4bMSIEXbRRReZx+Ox8847z5599lnbtWtXQPzFF19sjz32mJmZvfPOO1a6dGkbMWKE//mnn37aLrzwQjMzu/76661r166Wnp5uhw4dsoEDB1qvXr3M7OiORrly5WzcuHHskFvR3SEP9bgxM9djJ9Tjxsxcj51Qjxsz92PH7bgx40sgs6L7JVCbNm2sS5culp6enitfenq6denSxdq1a2erV68+4d97773nX+a9evWyxo0b29dff21z5861hg0b2iWXXGJ//vmn//3xeDzWpk0b69+/v2VkZNhTTz1llStXtv79+/vz9+3b17p27Woej8cqV65sKSkpAX8ej8fOPvtsS0lJ8Z+/cux+2B133GH16tXz71j/9ttv1rBhQ7v99tutRIkS/umNGze20aNHB8z7888/7x8vkyZNsi5dulh0dLSVK1fO7r777lw792Zm9erVs1deecXMzBYsWGCxsbH+G/+amU2aNMnq1q1r7du3t9tuu81/7vvo0aOtffv2Zmb2888/W0pKiv9Gqoyd0H3uBKNYFEtuPpQk2Zo1a/yv8fl8dvvtt1vVqlVtw4YNASvMV199Zeeee67dd999/ko3v2Lp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Zs2y2bNn2/nnn29///vfrXfv3ta8eXP78ccfbePGjf6fluVYtGiR/1dIjJ3Qfe4Eo1gUS0uWLPEfjXGyb98+u+WWW/w/g3Jyxx13+Af+8X777TebPn267du3L2B6WlpawN/xJ1vef//91qNHDzMzS0lJcXWYMDs720aNGmVXX321Pf744+bz+eydd96xKlWqWLly5axPnz4B/Th48KDjBRaOxcax6G4cDx06ZLfffrvFxMRYRESExcbGWmxsrEVERFhMTIzdcccddujQIXvllVdyFXvH2rZtm6Wlpdmdd97pLwqOl5GRYY0bN/ZvGG+77TZ79dVX82zziSeesA4dOgRMO3DggN12221Wq1Yti4yMDHhvmjdvHnBRlOPbHjlypDVv3tz/eNmyZXbZZZflOop59tln+899yO9LhmPnv23btpaQkGCpqam2Z88eGzhwoP/btVq1avk3+hs2bLAaNWpYVFSURUdHW+nSpW3u3Ln+tiZNmmSDBw9mh7wI75DnNW48Hk+Bxo2ZuR47oR43ZsGNnVCOm5xl4GbsuB03ZsaXQEX4SyCzoz8LT05ODjg64fF4LDk52f9+TJs2zd566608+/jnn3/a66+/bmZmDzzwgLVr184xLisryzp37mwRERGWlpZm77zzTp5tPvTQQ3bttdcGTPP5fPb444/7z706fuz06dMn4O+9994LeP6f//ynpaammtnRoxM9evSwkiVL+sdNdHS0XX755fbRRx+ZWXBjJ2ffsn79+nbrrbdaZmamPfXUUxYTE2Mej8datGhh27dvt+3bt/vHbEREhFWrVi3g6NHUqVPtX//6l5kxdkL5uROMYlEsIX/h2Dh6PB42ji42jmZHN4QLFiywKVOm2JQpU2zBggWO55jl588//8z17c2xMjIyTvit1bE2btwYcMXIY3388cd2zz33uF5uZkeLlN9++y3X9B07dtjy5ctt2bJlAUchzY5+81SQG0Ifm/O7777LdaWh/fv325w5c2zGjBl5XuEnmEI2ZyfVCTvkJ94h93g8BdohNzs6bubPn+8fN/Pnz3c1bpzWqbzGTk5sfmMnJy6/cXPXXXe5Xm45bTqNnWPHzfHfHG/evNnx6lfBjCWnseM0bpza5EugovEl0LE7p8ePHbOj6+qyZcsc16FgZGVlnXDcZWVlubo65/79++3QoUOOz61YscLGjRvn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E7V27VpVqlQp3F0CAJwhOLIEADht7du3T++9957uuOMOdezYUa+//nrA85988olq1aql2NhYtWzZUm+88YY8Ho/27Nnjj1m6dKmuuOIKxcXFqUqVKrrrrrtOeB80AEDxQbEEADhtvf/++6pTp45q166tm266Sa+99ppyfjCxadMmXXfdderatatWr16t2267TQ8//HDA6zds2KCrrrpK3bp105o1a/Tee+9p6dKlGjhwYDhmBwBQxPAzPADAaatp06bq3r277r77bh05ckTJycmaOnWqWrRoocGDB2vmzJn67rvv/PGPPPKIRo0apb/++kulS5dW//79FRkZqZdfftkfs3TpUjVv3lz79+9XbGxsOGYLAFBEcGQJAHBaWrt2rb766ivdcMMNkqSoqChdf/31mjhxov/5Sy+9NOA1jRo1Cni8evVqvf7660pISPD/paamyufzadOmTadmRgAARVZUuDsAAEBBTJw4UUeOHAm4oIOZyev16oUXXnDVxr59+3TbbbfprrvuyvVc1apVQ9ZXAMDpiWIJAHDaOXLkiN58800988wzateuXcBzXbt21TvvvKPatWvr//7v/wKe+/rrrwMeX3zxxfrhhx9Us2bNQu8zAOD0wzlLAIDTzvTp03X99ddrx44dKlWqVMBzDz74oBYsWKD3339ftWvX1r333qt+/fpp1apVuu+++/T7779rz549KlWqlNasWaPLLrtMf//739W/f3+VKFFCP/zwg+bOnev66BQA4MzFOUsAgNPOxIkT1aZNm1yFkiR169ZNK1as0N69e/XBBx9o2rRpatCggcaPH++/Gp7X65UkNWjQQIsXL9bPP/+sK664QhdddJEeffRR7tUEAJDEkSUAQDEyatQoTZgwQb/99lu4uwIAOA1wzhIA4Iz10ksv6dJLL1W5cuX0+eef66mnnuIeSgAA1yiWAABnrHXr1umxxx7Tn3/+qapVq+q+++7TkCFDwt0tAMBpgp/hAQAAAIADLvAAAAAAAA4olgAAAADAAcUSAAAAADigWAIAAAAABxRLAAAAAOCAYgkAAAAAHFAsAQAAAIADiiUAAAAAcECxBAAAAAAO/h8knTzzk3So3QAAAABJRU5ErkJggg==", + "text/plain": [ + "
    " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Read the file ages_population.csv\n", + "df_ages3 = pd.read_csv('/Users/gopikagowthaman/Desktop/IRONHACK/week03/Descriptive-Stats/data/ages_population3.csv')\n", + "\n", + "# Calculate the frequency distribution\n", + "age_counts = df_ages3['observation'].value_counts().sort_index()\n", + "\n", + "# Plot the frequency distribution\n", + "plt.figure(figsize=(10, 6))\n", + "age_counts.plot(kind='bar')\n", + "plt.title('Frequency Distribution of Ages in the First Neighbourhood')\n", + "plt.xlabel('Age')\n", + "plt.ylabel('Frequency')\n", + "plt.grid(True)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2.- Calculate the mean and standard deviation. Compare the results with the plot in step 1. What is happening?" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Exact Mean for Third Neighbourhood: 41.989\n", + "Exact Standard Deviation for Third Neighbourhood: 16.14470595986593\n", + "Comparison of Means:\n", + "First Neighbourhood Mean: 36.56\n", + "Second Neighbourhood Mean: 27.155\n", + "Third Neighbourhood Mean: 41.989\n", + "\n", + "Comparison of Standard Deviations:\n", + "First Neighbourhood Standard Deviation: 12.81649962597677\n", + "Second Neighbourhood Standard Deviation: 2.9698139326891835\n", + "Third Neighbourhood Standard Deviation: 16.14470595986593\n" + ] + } + ], + "source": [ + "# Calculate the exact mean and standard deviation for the third dataset\n", + "exact_mean_3 = df_ages3['observation'].mean()\n", + "exact_std_dev_3 = df_ages3['observation'].std()\n", + "\n", + "print(\"Exact Mean for Third Neighbourhood:\", exact_mean_3)\n", + "print(\"Exact Standard Deviation for Third Neighbourhood:\", exact_std_dev_3)\n", + "\n", + "# Compare the results with the plot in step 1\n", + "print(\"Comparison of Means:\")\n", + "print(\"First Neighbourhood Mean:\", exact_mean_1)\n", + "print(\"Second Neighbourhood Mean:\", exact_mean_2)\n", + "print(\"Third Neighbourhood Mean:\", exact_mean_3)\n", + "\n", + "print(\"\\nComparison of Standard Deviations:\")\n", + "print(\"First Neighbourhood Standard Deviation:\", exact_std_dev_1)\n", + "print(\"Second Neighbourhood Standard Deviation:\", exact_std_dev_2)\n", + "print(\"Third Neighbourhood Standard Deviation:\", exact_std_dev_3)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'The higher mean and standard deviation in the third neighbourhood suggest an older and more varied population. Compared to the first and second neighbourhoods, the third neighbourhood appears to have a more diverse age range with a tendency towards older ages'" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"The higher mean and standard deviation in the third neighbourhood suggest an older and more varied population. Compared to the first and second neighbourhoods, the third neighbourhood appears to have a more diverse age range with a tendency towards older ages\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3.- Calculate the four quartiles. Use the results to explain your reasoning for question in step 2. How much of a difference is there between the median and the mean?" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Quartiles for Third Neighbourhood:\n", + "0.25 30.0\n", + "0.50 40.0\n", + "0.75 53.0\n", + "1.00 77.0\n", + "Name: observation, dtype: float64\n", + "Median for Third Neighbourhood: 40.0\n" + ] + } + ], + "source": [ + "# Calculate the four quartiles\n", + "quartiles = df_ages3['observation'].quantile([0.25, 0.5, 0.75, 1.0])\n", + "median = df_ages3['observation'].median()\n", + "\n", + "print(\"Quartiles for Third Neighbourhood:\")\n", + "print(quartiles)\n", + "print(\"Median for Third Neighbourhood:\", median)" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Difference between Mean and Median: 1.9889999999999972\n", + "\n", + "Summary:\n", + "Mean: 41.989\n", + "Median: 40.0\n", + "Standard Deviation: 16.14470595986593\n", + "Quartiles: \n", + "0.25 30.0\n", + "0.50 40.0\n", + "0.75 53.0\n", + "1.00 77.0\n", + "Name: observation, dtype: float64\n", + "Difference between Mean and Median: 1.9889999999999972\n" + ] + } + ], + "source": [ + "# Compare the mean and the median\n", + "difference_mean_median = exact_mean_3 - median\n", + "print(\"Difference between Mean and Median:\", difference_mean_median)\n", + "\n", + "# Summary of results and interpretation\n", + "print(\"\\nSummary:\")\n", + "print(f\"Mean: {exact_mean_3}\")\n", + "print(f\"Median: {median}\")\n", + "print(f\"Standard Deviation: {exact_std_dev_3}\")\n", + "print(f\"Quartiles: \\n{quartiles}\")\n", + "print(f\"Difference between Mean and Median: {difference_mean_median}\")\n" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'The mean is higher than the median, which indicates that the distribution is slightly skewed to the right. This means there are some higher ages that are pulling the mean up. The standard deviation of 16.14 reflects a wide spread of ages, showing significant variability.\\nIn summary, the third neighbourhood has a relatively older population with a wide age range, and the distribution is slightly right-skewed, meaning a few higher age values are increasing the mean more than the median.\\n'" + ] + }, + "execution_count": 31, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"The mean is higher than the median, which indicates that the distribution is slightly skewed to the right. This means there are some higher ages that are pulling the mean up. The standard deviation of 16.14 reflects a wide spread of ages, showing significant variability.\n", + "In summary, the third neighbourhood has a relatively older population with a wide age range, and the distribution is slightly right-skewed, meaning a few higher age values are increasing the mean more than the median.\n", + "\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 4.- Calculate other percentiles that might be useful to give more arguments to your reasoning." + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Additional Percentiles for Third Neighbourhood:\n", + "0.10 22.0\n", + "0.20 28.0\n", + "0.30 32.0\n", + "0.40 36.0\n", + "0.60 45.0\n", + "0.70 50.0\n", + "0.80 57.0\n", + "0.90 67.0\n", + "0.95 70.0\n", + "0.99 74.0\n", + "Name: observation, dtype: float64\n" + ] + } + ], + "source": [ + "# Calculate additional percentiles\n", + "percentiles = df_ages3['observation'].quantile([0.1, 0.2, 0.3, 0.4, 0.6, 0.7, 0.8, 0.9, 0.95, 0.99])\n", + "\n", + "print(\"Additional Percentiles for Third Neighbourhood:\")\n", + "print(percentiles)" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'The 10th and 20th percentiles (22 and 28 years) show that a significant portion of the population is quite young.\\nThe median age is 40 years, indicating the middle point of the age distribution.\\nThe mean age is 41.99 years, slightly higher than the median, suggesting a right-skewed distribution with some higher age values pulling the mean up.\\nThe 60th and 70th percentiles (45 and 50 years) indicate that a considerable portion of the population is in the middle-aged category.\\nThe higher percentiles (90th and 95th) show that only a small fraction of the population is older than 67 and 70 years, respectively.'" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"The 10th and 20th percentiles (22 and 28 years) show that a significant portion of the population is quite young.\n", + "The median age is 40 years, indicating the middle point of the age distribution.\n", + "The mean age is 41.99 years, slightly higher than the median, suggesting a right-skewed distribution with some higher age values pulling the mean up.\n", + "The 60th and 70th percentiles (45 and 50 years) indicate that a considerable portion of the population is in the middle-aged category.\n", + "The higher percentiles (90th and 95th) show that only a small fraction of the population is older than 67 and 70 years, respectively.\"\"\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Bonus challenge\n", + "Compare the information about the three neighbourhoods. Prepare a report about the three of them. Remember to find out which are their similarities and their differences backing your arguments in basic statistics." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# your code here" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "\"\"\"\n", + "your comments here\n", + "\"\"\"" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "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.12.3" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +}