From ce012b1d25a1888755c1c956a05869d9793870d1 Mon Sep 17 00:00:00 2001
From: Dulce-04 <136611956+Dulce-04@users.noreply.github.com>
Date: Thu, 10 Aug 2023 19:38:26 +0100
Subject: [PATCH] Understanding Descriptve Statistics
---
your-code/maiin.ipynb | 1649 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 1649 insertions(+)
create mode 100644 your-code/maiin.ipynb
diff --git a/your-code/maiin.ipynb b/your-code/maiin.ipynb
new file mode 100644
index 0000000..2670f0e
--- /dev/null
+++ b/your-code/maiin.ipynb
@@ -0,0 +1,1649 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Understanding Descriptive Statistics\n",
+ "\n",
+ "Import the necessary libraries here:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd\n",
+ "import numpy as np\n",
+ "import matplotlib.pyplot as plt\n",
+ "from sklearn import linear_model\n",
+ "import random"
+ ]
+ },
+ {
+ "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": 9,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Roll \n",
+ " Dice Value \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 1 \n",
+ " 6 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 2 \n",
+ " 2 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 3 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " 4 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 5 \n",
+ " 5 \n",
+ " \n",
+ " \n",
+ " 5 \n",
+ " 6 \n",
+ " 2 \n",
+ " \n",
+ " \n",
+ " 6 \n",
+ " 7 \n",
+ " 6 \n",
+ " \n",
+ " \n",
+ " 7 \n",
+ " 8 \n",
+ " 2 \n",
+ " \n",
+ " \n",
+ " 8 \n",
+ " 9 \n",
+ " 5 \n",
+ " \n",
+ " \n",
+ " 9 \n",
+ " 10 \n",
+ " 2 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Roll Dice Value\n",
+ "0 1 6\n",
+ "1 2 2\n",
+ "2 3 1\n",
+ "3 4 1\n",
+ "4 5 5\n",
+ "5 6 2\n",
+ "6 7 6\n",
+ "7 8 2\n",
+ "8 9 5\n",
+ "9 10 2"
+ ]
+ },
+ "execution_count": 9,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "def roolling_dice_simulation(num = 10):\n",
+ " \n",
+ " dice_values = list(range(1, 7))\n",
+ "\n",
+ " rolls = random.choices(dice_values, k=num)\n",
+ "\n",
+ " df = pd.DataFrame({\"Roll\": list(range(1, num+1)), \"Dice Value\": rolls})\n",
+ "\n",
+ " return df\n",
+ "\n",
+ "dice_results = roolling_dice_simulation(10)\n",
+ "dice_results "
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "#### 2.- Plot the results sorted by value."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "sorted_results = sorted(dice_results, key=lambda x: x[2])\n",
+ "\n",
+ "sorted_values = [result[2] for result in sorted_results]\n",
+ "sorted_rolls = [result[0] for result in sorted_results]\n",
+ "\n",
+ "plt.figure(figsize = (6, 4))\n",
+ "plt.bar(sorted_rolls, sorted_values)\n",
+ "plt.xlabel('Roll')\n",
+ "plt.ylabel('Value')\n",
+ "\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "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": 21,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1cAAAK7CAYAAAAeM3W9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABKPklEQVR4nO3de5hVZd0//s/mNAMIgwgMEAfJkIMoIqiAghKCgpJaJmUCKmiGPoLotxoPCVoSmoiKxydkIh8RDU+VpngCDTJRoCczBR8ExCEUlQEUENi/P7zYP7cDAwwLNyOv13Wt62rd+173+qzF1nh7r3XvVDqdTgcAAAC7pUquCwAAAPg6EK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuACqguLg4UqnUNrfLL7881+XtE0aPHh2pVCqr7cADD4xzzjlnl8aZPXt2jB49Oj7++ONdOu7L53rhhRcilUrFH/7wh10apzyffPJJjB49Ol544YUyn239Dr7zzjuJnW9PuOqqq6JFixZRrVq1qFev3i4ff84558SBBx6Y1ZZKpWL06NGJ1AeQpGq5LgCgMps8eXK0bds2q61p06Y5qoZHHnkk6tatu0vHzJ49O8aMGRPnnHPOLv3lvyLn2lWffPJJjBkzJiIijj/++KzPTj755JgzZ040adJkj9awOx577LH41a9+FVdeeWX069cv8vLyEhl3zpw50axZs0TGAkiScAWwGzp06BBdunTZqb6fffZZpFKpqFbNv3r3lE6dOu3xc3z66adRs2bNr+Rc5WnYsGE0bNgwpzXsyD//+c+IiLjkkkuiUaNGiY3btWvXxMYCSJLHAgH2gK2PiP3+97+Pyy67LL7xjW9EXl5eLFq0KCIinnnmmejdu3fUrVs3atWqFcccc0w8++yzZcb585//HIcffnjk5eVFq1at4je/+U2Zx+HeeeedSKVSUVxcXOb4bT0+tXDhwjjrrLOiUaNGkZeXF+3atYvbb799m/VPnTo1rrzyymjatGnUrVs3TjjhhHjzzTfLnOcvf/lL9O7dOwoKCqJWrVrRrl27GDt2bERE/P73v49UKhVz5swpc9y1114b1atXj/fee6/c+7mt+7AtX35Ub8uWLfHLX/4y2rRpEzVr1ox69erFYYcdFrfccktEfP5o4f/7f/8vIiJatWqVebRz62N4Bx54YJxyyinx8MMPR6dOnSI/Pz8zk7S9RxDXr18fo0aNisaNG0fNmjXjuOOOi3nz5mX1Of7448vMREVkPwL3zjvvZMLTmDFjMrVtPef2Hgu89957o2PHjpGfnx/169eP008/Pd54440y59lvv/1i0aJF0b9//9hvv/2iefPmcdlll8WGDRu2eW+/aMuWLXHDDTdE27ZtIy8vLxo1ahSDBw+Od999N9PnwAMPjKuuuioiIgoLC3fqUb7i4uJo06ZN5ns5ZcqUbfbb1ljLly+PCy64IJo3bx41atSIpk2bxhlnnBH/+c9/Mn1KS0vj8ssvj1atWkWNGjXiG9/4RowcOTLWrVu3w2sG2Bn+8ynAbti8eXNs2rQpq+2LM1NFRUXRrVu3uOuuu6JKlSrRqFGjuO+++2Lw4MFx6qmnxu9+97uoXr163H333XHiiSfGU089Fb17946IiGeffTZOPfXU6NatWzzwwAOxefPmuOGGG7L+srir/vWvf0X37t2jRYsWcdNNN0Xjxo3jqaeeiksuuSQ++OCDuOaaa7L6X3HFFXHMMcfEb3/72ygtLY2f/exnMWDAgHjjjTeiatWqERExadKkOP/88+O4446Lu+66Kxo1ahRvvfVWZtZi4MCB8dOf/jRuv/326NatW2bsTZs2xd133x2nn356uY9S7s59uOGGG2L06NFx1VVXRc+ePeOzzz6Lf//735n3q4YNGxYffvhh3HbbbfHwww9nHrFr3759ZozXXnst3njjjbjqqquiVatWUbt27XLPecUVV8QRRxwRv/3tb2P16tUxevToOP7442PevHnxzW9+c4c1b9WkSZP4y1/+EieddFIMHTo0hg0bFhFR7mzV2LFj44orrogf/vCHMXbs2Fi1alWMHj06unXrFq+88kq0bt060/ezzz6L73znOzF06NC47LLLYtasWXHddddFQUFB/OIXvyi3tp/85Cdxzz33xMUXXxynnHJKvPPOO3H11VfHCy+8EK+99lo0aNAgHnnkkbj99ttj0qRJ8Ze//CUKCgrKfZSvuLg4zj333Dj11FPjpptuyty7DRs2RJUq5f+34OXLl8eRRx4Zn332WVxxxRVx2GGHxapVq+Kpp56Kjz76KAoLC+OTTz6J4447Lt59991Mn9dffz1+8YtfxP/+7//GM888U+YdPoBdlgZgl02ePDkdEdvcPvvss/Tzzz+fjoh0z549s45bt25dun79+ukBAwZktW/evDndsWPH9FFHHZVpO/roo9NNmzZNf/rpp5m20tLSdP369dNf/Nf34sWL0xGRnjx5cpk6IyJ9zTXXZPZPPPHEdLNmzdKrV6/O6nfxxRen8/Pz0x9++GE6nU5n6u/fv39WvwcffDAdEek5c+ak0+l0es2aNem6deumjz322PSWLVu2e7+uueaadI0aNdL/+c9/Mm3Tpk1LR0R65syZ2z1uV+5DOp1Ot2zZMj1kyJDM/imnnJI+/PDDyx3/xhtvTEdEevHixWU+a9myZbpq1arpN998c5ufffFcW+/ZEUcckXUv3nnnnXT16tXTw4YNy7Qdd9xx6eOOO67MmEOGDEm3bNkys//++++X+TPcaut3cGvdH330UbpmzZpl/syWLl2azsvLS5911llZ54mI9IMPPpjVt3///uk2bdqUOdcXvfHGG+mISA8fPjyr/eWXX05HRPqKK67ItF1zzTXpiEi///775Y65efPmdNOmTbd77754T9Lpst/r8847L129evX0v/71r+2eY+zYsekqVaqkX3nllaz2P/zhD+mISD/xxBPl1giwMzwWCLAbpkyZEq+88krW9sWZq+9973tZ/WfPnh0ffvhhDBkyJDZt2pTZtmzZEieddFK88sorsW7duli3bl288sor8d3vfjfy8/Mzx9epUycGDBhQoVrXr18fzz77bJx++ulRq1atrPP3798/1q9fH3/729+yjvnOd76TtX/YYYdFRMSSJUsy11NaWhrDhw8v97/6/+QnP4mIiP/+7//OtE2cODEOPfTQ6Nmz53aP2937cNRRR8WCBQti+PDh8dRTT0VpaekOj/myww47LA4++OCd7n/WWWdl3YuWLVtG9+7d4/nnn9/lc++KOXPmxKefflrmUcXmzZvHt7/97TKPnaZSqTL38LDDDsv82W7P1uv48nmOOuqoaNeu3TYfb92RN998M957773t3rsdefLJJ6NXr17Rrl277fb505/+FB06dIjDDz8867t/4oknZj0KCrA7PBYIsBvatWtX7oIWX17JbeujbGecccZ2j/nwww8jlUrFli1bonHjxmU+31bbzli1alVs2rQpbrvttrjtttu22eeDDz7I2j/ggAOy9reu9vbpp59GRMT7778fEbHDldsKCwtj4MCBcffdd8fPf/7zeP311+PFF1+Mu+++u9zjPvroo926D0VFRVG7du2477774q677oqqVatGz549Y9y4cTu9EMmursa3vVoXLFiwS+PsqlWrVkXEtutt2rRpzJgxI6utVq1aWYE14vM/3/Xr1+/WeXYUzsobc3v3bkfLzb///vs7/A7+5z//iUWLFkX16tW3+fmXv/sAFSFcAexBX57NadCgQURE3Hbbbdtd8aywsDCzsuCKFSvKfP7ltq1/Qf7yQgRb/8K61f777x9Vq1aNQYMGxUUXXbTNc7dq1aqcqylr6/s/X1zIYHtGjBgRv//97+Oxxx6Lv/zlL1GvXr340Y9+VO4x+++//07fh22pVq1ajBo1KkaNGhUff/xxPPPMM3HFFVfEiSeeGMuWLYtatWrtcIxdfQ9ne7V+Majm5+fH6tWry/Tbnb/gbx2/pKSkzGfvvfde5ru3u754ni8HmoqeZ+uYFf1zbtiw4Q6/gw0aNIiaNWvGvffeu93PAXaXxwIBvkLHHHNM1KtXL/71r39Fly5dtrnVqFEjateuHUcddVQ8/PDDWTMJa9asiT/+8Y9ZYxYWFkZ+fn784x//yGp/7LHHsvZr1aoVvXr1innz5sVhhx22zXN/eaZqR7p37x4FBQVx1113RTqdLrdv586do3v37jFu3Lj4n//5nzjnnHN2uDjErtyHHalXr16cccYZcdFFF8WHH36YmQ358mzc7po6dWrWvViyZEnMnj07a3XAAw88MN56662sQLxq1aqYPXt21li7Ulu3bt2iZs2acd9992W1v/vuu/Hcc89lFkrZXd/+9rcjIsqc55VXXok33nijQudp06ZNNGnSZLv3bkf69esXzz///DZXstzqlFNOibfffjsOOOCAbX73v/xDxQAVYeYK4Cu03377xW233RZDhgyJDz/8MM4444xo1KhRvP/++7FgwYJ4//33484774yIiOuuuy5OOumk6NOnT1x22WWxefPmGDduXNSuXTs+/PDDzJipVCrOPvvsuPfee+Oggw6Kjh07xt///ve4//77y5z/lltuiWOPPTZ69OgRP/nJT+LAAw+MNWvWxKJFi+KPf/xjPPfcc7t8PTfddFMMGzYsTjjhhDj//POjsLAwFi1aFAsWLIiJEydm9R8xYkQMHDgwUqlUDB8+fKfOsbP3YVsGDBiQ+S2yhg0bxpIlS2LChAnRsmXLzMp5hx56aObeDBkyJKpXrx5t2rSJOnXq7NK92GrlypVx+umnx/nnnx+rV6+Oa665JvLz86OoqCjTZ9CgQXH33XfH2WefHeeff36sWrUqbrjhhjI/SlynTp1o2bJlPPbYY9G7d++oX79+NGjQYJtBoF69enH11VfHFVdcEYMHD44f/vCHsWrVqhgzZkzk5+eXWQmyotq0aRMXXHBB3HbbbVGlSpXo169fZrXA5s2bx6WXXrrLY1apUiWuu+66GDZsWObeffzxxzF69Oidevzz2muvjSeffDJ69uwZV1xxRRx66KHx8ccfx1/+8pcYNWpUtG3bNkaOHBnTp0+Pnj17xqWXXhqHHXZYbNmyJZYuXRpPP/10XHbZZXH00UdX5JYA/P9yvKAGQKW0daW2L688ttXWleMeeuihbX4+c+bM9Mknn5yuX79+unr16ulvfOMb6ZNPPrlM/8cffzx92GGHpWvUqJFu0aJF+te//nVmBbYvWr16dXrYsGHpwsLCdO3atdMDBgxIv/POO9tcaW7x4sXp8847L/2Nb3wjXb169XTDhg3T3bt3T//yl7/cYf3bW5nwiSeeSB933HHp2rVrp2vVqpVu3759ety4cWWue8OGDem8vLz0SSedtM37sj07ex++vILfTTfdlO7evXu6QYMGmWOHDh2afuedd7KOKyoqSjdt2jRdpUqVdESkn3/++cx4J5988jZr2t5qgb///e/Tl1xySbphw4bpvLy8dI8ePdJz584tc/zvfve7dLt27dL5+fnp9u3bp6dNm1ZmtcB0Op1+5pln0p06dUrn5eWlIyJzzi+vFrjVb3/728y9KigoSJ966qnp119/PavPkCFD0rVr1y5T07bu6bZs3rw5PW7cuPTBBx+crl69erpBgwbps88+O71s2bJtjrej1QK/WHvr1q3TNWrUSB988MHpe++9d5v3ZFvf62XLlqXPO++8dOPGjdPVq1dPN23aNH3mmWdmrVC5du3a9FVXXZVu06ZN5v4ceuih6UsvvTS9YsWKnaoRoDypdHoHz3EAsFcZPXp0jBkzZoeP4e2N/vjHP8Z3vvOd+POf/xz9+/fPdTkAkCiPBQKwx/3rX/+KJUuWxGWXXRaHH3549OvXL9clAUDiLGgBwB43fPjw+M53vhP7779/TJ06dZdX4AOAysBjgQAAAAkwcwUAAJAA4QoAACABwhUAAEACrBa4DVu2bIn33nsv6tSp46VrAADYh6XT6VizZk00bdo0qlQpf25KuNqG9957L5o3b57rMgAAgL3EsmXLolmzZuX2Ea62oU6dOhHx+Q2sW7dujqsBAABypbS0NJo3b57JCOURrrZh66OAdevWFa4AAICdel3IghYAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABOQ1XY8eOjSOPPDLq1KkTjRo1itNOOy3efPPNHR43c+bM6Ny5c+Tn58c3v/nNuOuuu8r0mT59erRv3z7y8vKiffv28cgjj+yJSwAAAIiIHIermTNnxkUXXRR/+9vfYsaMGbFp06bo27dvrFu3brvHLF68OPr37x89evSIefPmxRVXXBGXXHJJTJ8+PdNnzpw5MXDgwBg0aFAsWLAgBg0aFGeeeWa8/PLLX8VlAQAA+6BUOp1O57qIrd5///1o1KhRzJw5M3r27LnNPj/72c/i8ccfjzfeeCPTduGFF8aCBQtizpw5ERExcODAKC0tjSeffDLT56STTor9998/pk6dusM6SktLo6CgIFavXh1169bdzasCAAAqq13JBnvVO1erV6+OiIj69etvt8+cOXOib9++WW0nnnhizJ07Nz777LNy+8yePXubY27YsCFKS0uzNgAAgF1RLdcFbJVOp2PUqFFx7LHHRocOHbbbb8WKFVFYWJjVVlhYGJs2bYoPPvggmjRpst0+K1as2OaYY8eOjTFjxuz+RZATB/78z7ku4Svxzq9PznUJ7IP88wUAO2+vmbm6+OKL4x//+MdOPbaXSqWy9rc+2fjF9m31+XLbVkVFRbF69erMtmzZsl0tHwAA2MftFTNX//Vf/xWPP/54zJo1K5o1a1Zu38aNG5eZgVq5cmVUq1YtDjjggHL7fHk2a6u8vLzIy8vbjSsAAAD2dTmduUqn03HxxRfHww8/HM8991y0atVqh8d069YtZsyYkdX29NNPR5cuXaJ69erl9unevXtyxQMAAHxBTsPVRRddFPfdd1/cf//9UadOnVixYkWsWLEiPv3000yfoqKiGDx4cGb/wgsvjCVLlsSoUaPijTfeiHvvvTcmTZoUl19+eabPiBEj4umnn45x48bFv//97xg3blw888wzMXLkyK/y8gAAgH1ITsPVnXfeGatXr47jjz8+mjRpktmmTZuW6VNSUhJLly7N7Ldq1SqeeOKJeOGFF+Lwww+P6667Lm699db43ve+l+nTvXv3eOCBB2Ly5Mlx2GGHRXFxcUybNi2OPvror/T6AACAfUdO37namZ/YKi4uLtN23HHHxWuvvVbucWeccUacccYZFS0NAABgl+w1qwUCAABUZsIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACQgp+Fq1qxZMWDAgGjatGmkUql49NFHy+1/zjnnRCqVKrMdcsghmT7FxcXb7LN+/fo9fDUAAMC+LKfhat26ddGxY8eYOHHiTvW/5ZZboqSkJLMtW7Ys6tevH9///vez+tWtWzerX0lJSeTn5++JSwAAAIiIiGq5PHm/fv2iX79+O92/oKAgCgoKMvuPPvpofPTRR3Huuedm9UulUtG4cePE6gQAANiRSv3O1aRJk+KEE06Ili1bZrWvXbs2WrZsGc2aNYtTTjkl5s2bV+44GzZsiNLS0qwNAABgV1TacFVSUhJPPvlkDBs2LKu9bdu2UVxcHI8//nhMnTo18vPz45hjjomFCxdud6yxY8dmZsUKCgqiefPme7p8AADga6bShqvi4uKoV69enHbaaVntXbt2jbPPPjs6duwYPXr0iAcffDAOPvjguO2227Y7VlFRUaxevTqzLVu2bA9XDwAAfN3k9J2rikqn03HvvffGoEGDokaNGuX2rVKlShx55JHlzlzl5eVFXl5e0mUCAAD7kEo5czVz5sxYtGhRDB06dId90+l0zJ8/P5o0afIVVAYAAOyrcjpztXbt2li0aFFmf/HixTF//vyoX79+tGjRIoqKimL58uUxZcqUrOMmTZoURx99dHTo0KHMmGPGjImuXbtG69ato7S0NG699daYP39+3H777Xv8egAAgH1XTsPV3Llzo1evXpn9UaNGRUTEkCFDori4OEpKSmLp0qVZx6xevTqmT58et9xyyzbH/Pjjj+OCCy6IFStWREFBQXTq1ClmzZoVRx111J67EAAAYJ+X03B1/PHHRzqd3u7nxcXFZdoKCgrik08+2e4xN998c9x8881JlAcAALDTKuU7VwAAAHsb4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJCCn4WrWrFkxYMCAaNq0aaRSqXj00UfL7f/CCy9EKpUqs/373//O6jd9+vRo37595OXlRfv27eORRx7Zg1cBAACQ43C1bt266NixY0ycOHGXjnvzzTejpKQks7Vu3Trz2Zw5c2LgwIExaNCgWLBgQQwaNCjOPPPMePnll5MuHwAAIKNaLk/er1+/6Nev3y4f16hRo6hXr942P5swYUL06dMnioqK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AABUNhUKV3369IkJEyZk9lOpVKxduzauueaa6N+/f1K1AQAAVBoVeizw5ptvjl69ekX79u1j/fr1cdZZZ8XChQujQYMGMXXq1KRrBAAA2OtVKFw1bdo05s+fH1OnTo3XXnsttmzZEkOHDo0f/ehHWQtcAAAA7CsqFK4iImrWrBnnnXdenHfeeUnWAwAAUClVKFxNmTKl3M8HDx5coWIAAAAqqwqFqxEjRmTtf/bZZ/HJJ59EjRo1olatWsIVAACwz6nQaoEfffRR1rZ27dp4880349hjj7WgBQAAsE+qULjaltatW8evf/3rMrNaAAAA+4LEwlVERNWqVeO9995LckgAAIBKoULvXD3++ONZ++l0OkpKSmLixIlxzDHHJFIYAABAZVKhcHXaaadl7adSqWjYsGF8+9vfjptuuimJugAAACqVCoWrLVu2JF0HAABApZboO1cAAAD7qgrNXI0aNWqn+44fP367n82aNStuvPHGePXVV6OkpCQeeeSRMo8cftnMmTNj1KhR8frrr0fTpk3jpz/9aVx44YVZfaZPnx5XX311vP3223HQQQfFr371qzj99NN3umYAAIBdVaFwNW/evHjttddi06ZN0aZNm4iIeOutt6Jq1apxxBFHZPqlUqlyx1m3bl107Ngxzj333Pje9763w/MuXrw4+vfvH+eff37cd9998de//jWGDx8eDRs2zBw/Z86cGDhwYFx33XVx+umnxyOPPBJnnnlmvPTSS3H00UdX5HIBAAB2qELhasCAAVGnTp343e9+F/vvv39EfP7Dwueee2706NEjLrvssp0ap1+/ftGvX7+dPu9dd90VLVq0iAkTJkRERLt27WLu3Lnxm9/8JhOuJkyYEH369ImioqKIiCgqKoqZM2fGhAkT/MAxAACwx1Tonaubbropxo4dmwlWERH7779//PKXv9yjqwXOmTMn+vbtm9V24oknxty5c+Ozzz4rt8/s2bO3O+6GDRuitLQ0awMAANgVFZq5Ki0tjf/85z9xyCGHZLWvXLky1qxZk0hh27JixYooLCzMaissLIxNmzbFBx98EE2aNNlunxUrVmx33LFjx8aYMWP2SM1JOfDnf851CXvcO78+OdclfC3tC9+diIp/f9wfdse+8P3x3dlzfH/YHb4/e6cKzVydfvrpce6558Yf/vCHePfdd+Pdd9+NP/zhDzF06ND47ne/m3SNWb78Hlc6nS7Tvq0+5b3/VVRUFKtXr85sy5YtS7BiAABgX1Chmau77rorLr/88jj77LMzj+NVq1Ythg4dGjfeeGOiBX5R48aNy8xArVy5MqpVqxYHHHBAuX2+PJv1RXl5eZGXl5d8wQAAwD6jQjNXtWrVijvuuCNWrVqVWTnwww8/jDvuuCNq166ddI0Z3bp1ixkzZmS1Pf3009GlS5eoXr16uX26d+++x+oCAADYrR8RLikpiZKSkjj44IOjdu3amUf0dtbatWtj/vz5MX/+/Ij4fKn1+fPnx9KlSyPi88f1Bg8enOl/4YUXxpIlS2LUqFHxxhtvxL333huTJk2Kyy+/PNNnxIgR8fTTT8e4cePi3//+d4wbNy6eeeaZGDly5O5cKgAAQLkqFK5WrVoVvXv3joMPPjj69+8fJSUlERExbNiwnV6GPSJi7ty50alTp+jUqVNEfP7jxJ06dYpf/OIXEfF5eNsatCIiWrVqFU888US88MILcfjhh8d1110Xt956a9ZvZHXv3j0eeOCBmDx5chx22GFRXFwc06ZN8xtXAADAHlWhd64uvfTSqF69eixdujTatWuXaR84cGBceumlO70c+/HHH1/ubFdxcXGZtuOOOy5ee+21csc944wz4owzztipGgAAAJJQoXD19NNPx1NPPRXNmjXLam/dunUsWbIkkcIAAAAqkwo9Frhu3bqoVatWmfYPPvjAqnsAAMA+qULhqmfPnjFlypTMfiqVii1btsSNN94YvXr1Sqw4AACAyqJCjwXeeOONcfzxx8fcuXNj48aN8dOf/jRef/31+PDDD+Ovf/1r0jUCAADs9So0c9W+ffv4xz/+EUcddVT06dMn1q1bF9/97ndj3rx5cdBBByVdIwAAwF5vl2euPvvss+jbt2/cfffdMWbMmD1REwAAQKWzyzNX1atXj3/+85+RSqX2RD0AAACVUoUeCxw8eHBMmjQp6VoAAAAqrQotaLFx48b47W9/GzNmzIguXbpE7dq1sz4fP358IsUBAABUFrsUrv7v//4vDjzwwPjnP/8ZRxxxREREvPXWW1l9PC4IAADsi3YpXLVu3TpKSkri+eefj4iIgQMHxq233hqFhYV7pDgAAIDKYpfeuUqn01n7Tz75ZKxbty7RggAAACqjCi1osdWXwxYAAMC+apfCVSqVKvNOlXesAAAAdvGdq3Q6Heecc07k5eVFRMT69evjwgsvLLNa4MMPP5xchQAAAJXALoWrIUOGZO2fffbZiRYDAABQWe1SuJo8efKeqgMAAKBS260FLQAAAPiccAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAnIebi64447olWrVpGfnx+dO3eOF198cbt9zznnnEilUmW2Qw45JNOnuLh4m33Wr1//VVwOAACwj8ppuJo2bVqMHDkyrrzyypg3b1706NEj+vXrF0uXLt1m/1tuuSVKSkoy27Jly6J+/frx/e9/P6tf3bp1s/qVlJREfn7+V3FJAADAPiqn4Wr8+PExdOjQGDZsWLRr1y4mTJgQzZs3jzvvvHOb/QsKCqJx48aZbe7cufHRRx/Fueeem9UvlUpl9WvcuPFXcTkAAMA+LGfhauPGjfHqq69G3759s9r79u0bs2fP3qkxJk2aFCeccEK0bNkyq33t2rXRsmXLaNasWZxyyikxb968csfZsGFDlJaWZm0AAAC7Imfh6oMPPojNmzdHYWFhVnthYWGsWLFih8eXlJTEk08+GcOGDctqb9u2bRQXF8fjjz8eU6dOjfz8/DjmmGNi4cKF2x1r7NixUVBQkNmaN29esYsCAAD2WTlf0CKVSmXtp9PpMm3bUlxcHPXq1YvTTjstq71r165x9tlnR8eOHaNHjx7x4IMPxsEHHxy33XbbdscqKiqK1atXZ7Zly5ZV6FoAAIB9V7VcnbhBgwZRtWrVMrNUK1euLDOb9WXpdDruvffeGDRoUNSoUaPcvlWqVIkjjzyy3JmrvLy8yMvL2/niAQAAviRnM1c1atSIzp07x4wZM7LaZ8yYEd27dy/32JkzZ8aiRYti6NChOzxPOp2O+fPnR5MmTXarXgAAgPLkbOYqImLUqFExaNCg6NKlS3Tr1i3uueeeWLp0aVx44YUR8fnjesuXL48pU6ZkHTdp0qQ4+uijo0OHDmXGHDNmTHTt2jVat24dpaWlceutt8b8+fPj9ttv/0quCQAA2DflNFwNHDgwVq1aFddee22UlJREhw4d4oknnsis/ldSUlLmN69Wr14d06dPj1tuuWWbY3788cdxwQUXxIoVK6KgoCA6deoUs2bNiqOOOmqPXw8AALDvymm4iogYPnx4DB8+fJufFRcXl2krKCiITz75ZLvj3XzzzXHzzTcnVR4AAMBOyflqgQAAAF8HwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJCDn4eqOO+6IVq1aRX5+fnTu3DlefPHF7fZ94YUXIpVKldn+/e9/Z/WbPn16tG/fPvLy8qJ9+/bxyCOP7OnLAAAA9nE5DVfTpk2LkSNHxpVXXhnz5s2LHj16RL9+/WLp0qXlHvfmm29GSUlJZmvdunXmszlz5sTAgQNj0KBBsWDBghg0aFCceeaZ8fLLL+/pywEAAPZhOQ1X48ePj6FDh8awYcOiXbt2MWHChGjevHnceeed5R7XqFGjaNy4cWarWrVq5rMJEyZEnz59oqioKNq2bRtFRUXRu3fvmDBhwh6+GgAAYF+Ws3C1cePGePXVV6Nv375Z7X379o3Zs2eXe2ynTp2iSZMm0bt373j++eezPpszZ06ZMU888cRyx9ywYUOUlpZmbQAAALsiZ+Hqgw8+iM2bN0dhYWFWe2FhYaxYsWKbxzRp0iTuueeemD59ejz88MPRpk2b6N27d8yaNSvTZ8WKFbs0ZkTE2LFjo6CgILM1b958N64MAADYF1XLdQGpVCprP51Ol2nbqk2bNtGmTZvMfrdu3WLZsmXxm9/8Jnr27FmhMSMiioqKYtSoUZn90tJSAQsAANglOZu5atCgQVStWrXMjNLKlSvLzDyVp2vXrrFw4cLMfuPGjXd5zLy8vKhbt27WBgAAsCtyFq5q1KgRnTt3jhkzZmS1z5gxI7p3777T48ybNy+aNGmS2e/WrVuZMZ9++uldGhMAAGBX5fSxwFGjRsWgQYOiS5cu0a1bt7jnnnti6dKlceGFF0bE54/rLV++PKZMmRIRn68EeOCBB8YhhxwSGzdujPvuuy+mT58e06dPz4w5YsSI6NmzZ4wbNy5OPfXUeOyxx+KZZ56Jl156KSfXCAAA7BtyGq4GDhwYq1atimuvvTZKSkqiQ4cO8cQTT0TLli0jIqKkpCTrN682btwYl19+eSxfvjxq1qwZhxxySPz5z3+O/v37Z/p07949Hnjggbjqqqvi6quvjoMOOiimTZsWRx999Fd+fQAAwL4j5wtaDB8+PIYPH77Nz4qLi7P2f/rTn8ZPf/rTHY55xhlnxBlnnJFEeQAAADslpz8iDAAA8HUhXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAnIeru64445o1apV5OfnR+fOnePFF1/cbt+HH344+vTpEw0bNoy6detGt27d4qmnnsrqU1xcHKlUqsy2fv36PX0pAADAPiyn4WratGkxcuTIuPLKK2PevHnRo0eP6NevXyxdunSb/WfNmhV9+vSJJ554Il599dXo1atXDBgwIObNm5fVr27dulFSUpK15efnfxWXBAAA7KOq5fLk48ePj6FDh8awYcMiImLChAnx1FNPxZ133hljx44t03/ChAlZ+9dff3089thj8cc//jE6deqUaU+lUtG4ceM9WjsAAMAX5WzmauPGjfHqq69G3759s9r79u0bs2fP3qkxtmzZEmvWrIn69etnta9duzZatmwZzZo1i1NOOaXMzNaXbdiwIUpLS7M2AACAXZGzcPXBBx/E5s2bo7CwMKu9sLAwVqxYsVNj3HTTTbFu3bo488wzM21t27aN4uLiePzxx2Pq1KmRn58fxxxzTCxcuHC744wdOzYKCgoyW/PmzSt2UQAAwD4r5wtapFKprP10Ol2mbVumTp0ao0ePjmnTpkWjRo0y7V27do2zzz47OnbsGD169IgHH3wwDj744Ljtttu2O1ZRUVGsXr06sy1btqziFwQAAOyTcvbOVYMGDaJq1aplZqlWrlxZZjbry6ZNmxZDhw6Nhx56KE444YRy+1apUiWOPPLIcmeu8vLyIi8vb+eLBwAA+JKczVzVqFEjOnfuHDNmzMhqnzFjRnTv3n27x02dOjXOOeecuP/+++Pkk0/e4XnS6XTMnz8/mjRpsts1AwAAbE9OVwscNWpUDBo0KLp06RLdunWLe+65J5YuXRoXXnhhRHz+uN7y5ctjypQpEfF5sBo8eHDccsst0bVr18ysV82aNaOgoCAiIsaMGRNdu3aN1q1bR2lpadx6660xf/78uP3223NzkQAAwD4hp+Fq4MCBsWrVqrj22mujpKQkOnToEE888US0bNkyIiJKSkqyfvPq7rvvjk2bNsVFF10UF110UaZ9yJAhUVxcHBERH3/8cVxwwQWxYsWKKCgoiE6dOsWsWbPiqKOO+kqvDQAA2LfkNFxFRAwfPjyGDx++zc+2BqatXnjhhR2Od/PNN8fNN9+cQGUAAAA7L+erBQIAAHwdCFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABIgXAEAACRAuAIAAEiAcAUAAJAA4QoAACABwhUAAEAChCsAAIAECFcAAAAJEK4AAAASIFwBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAE5D1d33HFHtGrVKvLz86Nz587x4osvltt/5syZ0blz58jPz49vfvObcdddd5XpM3369Gjfvn3k5eVF+/bt45FHHtlT5QMAAEREjsPVtGnTYuTIkXHllVfGvHnzokePHtGvX79YunTpNvsvXrw4+vfvHz169Ih58+bFFVdcEZdccklMnz4902fOnDkxcODAGDRoUCxYsCAGDRoUZ555Zrz88stf1WUBAAD7oJyGq/Hjx8fQoUNj2LBh0a5du5gwYUI0b9487rzzzm32v+uuu6JFixYxYcKEaNeuXQwbNizOO++8+M1vfpPpM2HChOjTp08UFRVF27Zto6ioKHr37h0TJkz4iq4KAADYF1XL1Yk3btwYr776avz85z/Pau/bt2/Mnj17m8fMmTMn+vbtm9V24oknxqRJk+Kzzz6L6tWrx5w5c+LSSy8t06e8cLVhw4bYsGFDZn/16tUREVFaWrorl7RHbdnwSa5L2OMqer/3hXsT4f7siPtTPvenfO7P9u1N/1/4deP7w+7w/fnqbK0jnU7vsG/OwtUHH3wQmzdvjsLCwqz2wsLCWLFixTaPWbFixTb7b9q0KT744INo0qTJdvtsb8yIiLFjx8aYMWPKtDdv3nxnL4cEFEzIdQV7N/enfO5P+dyf8rk/2+fesDt8f9gde9v3Z82aNVFQUFBun5yFq61SqVTWfjqdLtO2o/5fbt/VMYuKimLUqFGZ/S1btsSHH34YBxxwQLnHsW8qLS2N5s2bx7Jly6Ju3bq5LodKxveH3eH7w+7w/aGi9vXvTjqdjjVr1kTTpk132Ddn4apBgwZRtWrVMjNKK1euLDPztFXjxo232b9atWpxwAEHlNtne2NGROTl5UVeXl5WW7169Xb2UthH1a1bd5/8FwzJ8P1hd/j+sDt8f6ioffm7s6MZq61ytqBFjRo1onPnzjFjxoys9hkzZkT37t23eUy3bt3K9H/66aejS5cuUb169XL7bG9MAACAJOT0scBRo0bFoEGDokuXLtGtW7e45557YunSpXHhhRdGxOeP6y1fvjymTJkSEREXXnhhTJw4MUaNGhXnn39+zJkzJyZNmhRTp07NjDlixIjo2bNnjBs3Lk499dR47LHH4plnnomXXnopJ9cIAADsG3IargYOHBirVq2Ka6+9NkpKSqJDhw7xxBNPRMuWLSMioqSkJOs3r1q1ahVPPPFEXHrppXH77bdH06ZN49Zbb43vfe97mT7du3ePBx54IK666qq4+uqr46CDDopp06bF0Ucf/ZVfH19PeXl5cc0115R5lBR2hu8Pu8P3h93h+0NF+e7svFR6Z9YUBAAAoFw5/RFhAACArwvhCgAAIAHCFQAAQAKEKwAAgAQIV7CTxo4dG0ceeWTUqVMnGjVqFKeddlq8+eabuS6LSmjs2LGRSqVi5MiRuS6FSmL58uVx9tlnxwEHHBC1atWKww8/PF599dVcl0UlsGnTprjqqquiVatWUbNmzfjmN78Z1157bWzZsiXXpbEXmjVrVgwYMCCaNm0aqVQqHn300azP0+l0jB49Opo2bRo1a9aM448/Pl5//fXcFLuXEq5gJ82cOTMuuuii+Nvf/hYzZsyITZs2Rd++fWPdunW5Lo1K5JVXXol77rknDjvssFyXQiXx0UcfxTHHHBPVq1ePJ598Mv71r3/FTTfdFPXq1ct1aVQC48aNi7vuuismTpwYb7zxRtxwww1x4403xm233Zbr0tgLrVu3Ljp27BgTJ07c5uc33HBDjB8/PiZOnBivvPJKNG7cOPr06RNr1qz5iivde1mKHSro/fffj0aNGsXMmTOjZ8+euS6HSmDt2rVxxBFHxB133BG//OUv4/DDD48JEybkuiz2cj//+c/jr3/9a7z44ou5LoVK6JRTTonCwsKYNGlSpu173/te1KpVK37/+9/nsDL2dqlUKh555JE47bTTIuLzWaumTZvGyJEj42c/+1lERGzYsCEKCwtj3Lhx8eMf/ziH1e49zFxBBa1evToiIurXr5/jSqgsLrroojj55JPjhBNOyHUpVCKPP/54dOnSJb7//e9Ho0aNolOnTvHf//3fuS6LSuLYY4+NZ599Nt56662IiFiwYEG89NJL0b9//xxXRmWzePHiWLFiRfTt2zfTlpeXF8cdd1zMnj07h5XtXarlugCojNLpdIwaNSqOPfbY6NChQ67LoRJ44IEH4rXXXotXXnkl16VQyfzf//1f3HnnnTFq1Ki44oor4u9//3tccsklkZeXF4MHD851eezlfvazn8Xq1aujbdu2UbVq1di8eXP86le/ih/+8Ie5Lo1KZsWKFRERUVhYmNVeWFgYS5YsyUVJeyXhCirg4osvjn/84x/x0ksv5boUKoFly5bFiBEj4umnn478/Pxcl0Mls2XLlujSpUtcf/31ERHRqVOneP311+POO+8UrtihadOmxX333Rf3339/HHLIITF//vwYOXJkNG3aNIYMGZLr8qiEUqlU1n46nS7Tti8TrmAX/dd//Vc8/vjjMWvWrGjWrFmuy6ESePXVV2PlypXRuXPnTNvmzZtj1qxZMXHixNiwYUNUrVo1hxWyN2vSpEm0b98+q61du3Yxffr0HFVEZfL//t//i5///Ofxgx/8ICIiDj300FiyZEmMHTtWuGKXNG7cOCI+n8Fq0qRJpn3lypVlZrP2Zd65gp2UTqfj4osvjocffjiee+65aNWqVa5LopLo3bt3/O///m/Mnz8/s3Xp0iV+9KMfxfz58wUrynXMMceU+dmHt956K1q2bJmjiqhMPvnkk6hSJfuve1WrVrUUO7usVatW0bhx45gxY0ambePGjTFz5szo3r17Divbu5i5gp100UUXxf333x+PPfZY1KlTJ/PscUFBQdSsWTPH1bE3q1OnTpl382rXrh0HHHCAd/bYoUsvvTS6d+8e119/fZx55pnx97//Pe6555645557cl0alcCAAQPiV7/6VbRo0SIOOeSQmDdvXowfPz7OO++8XJfGXmjt2rWxaNGizP7ixYtj/vz5Ub9+/WjRokWMHDkyrr/++mjdunW0bt06rr/++qhVq1acddZZOax672IpdthJ23ueePLkyXHOOed8tcVQ6R1//PGWYmen/elPf4qioqJYuHBhtGrVKkaNGhXnn39+rsuiElizZk1cffXV8cgjj8TKlSujadOm8cMf/jB+8YtfRI0aNXJdHnuZF154IXr16lWmfciQIVFcXBzpdDrGjBkTd999d3z00Udx9NFHx+233+4/FH6BcAUAAJAA71wBAAAkQLgCAABIgHAFAACQAOEKAAAgAcIVAABAAoQrAACABAhXAAAACRCuAAAAEiBcAcA2HH/88TFy5MhclwFAJSJcAfC1M2DAgDjhhBO2+dmcOXMilUrFa6+99hVXBcDXnXAFwNfO0KFD47nnnoslS5aU+ezee++Nww8/PI444ogcVAbA15lwBcDXzimnnBKNGjWK4uLirPZPPvkkpk2bFqeddlr88Ic/jGbNmkWtWrXi0EMPjalTp5Y7ZiqVikcffTSrrV69elnnWL58eQwcODD233//OOCAA+LUU0+Nd955J5mLAmCvJ1wB8LVTrVq1GDx4cBQXF0c6nc60P/TQQ7Fx48YYNmxYdO7cOf70pz/FP//5z7jgggti0KBB8fLLL1f4nJ988kn06tUr9ttvv5g1a1a89NJLsd9++8VJJ50UGzduTOKyANjLCVcAfC2dd9558c4778QLL7yQabv33nvju9/9bnzjG9+Iyy+/PA4//PD45je/Gf/1X/8VJ554Yjz00EMVPt8DDzwQVapUid/+9rdx6KGHRrt27WLy5MmxdOnSrBoA+PqqlusCAGBPaNu2bXTv3j3uvffe6NWrV7z99tvx4osvxtNPPx2bN2+OX//61zFt2rRYvnx5bNiwITZs2BC1a9eu8PleffXVWLRoUdSpUyerff369fH222/v7uUAUAkIVwB8bQ0dOjQuvvjiuP3222Py5MnRsmXL6N27d9x4441x8803x4QJE+LQQw+N2rVrx8iRI8t9fC+VSmU9YhgR8dlnn2X+95YtW6Jz587xP//zP2WObdiwYXIXBcBeS7gC4GvrzDPPjBEjRsT9998fv/vd7+L888+PVCoVL774Ypx66qlx9tlnR8TnwWjhwoXRrl277Y7VsGHDKCkpyewvXLgwPvnkk8z+EUccEdOmTYtGjRpF3bp199xFAbDX8s4VAF9b++23XwwcODCuuOKKeO+99+Kcc86JiIhvfetbMWPGjJg9e3a88cYb8eMf/zhWrFhR7ljf/va3Y+LEifHaa6/F3Llz48ILL4zq1atnPv/Rj34UDRo0iFNPPTVefPHFWLx4ccycOTNGjBgR77777p68TAD2EsIVAF9rQ4cOjY8++ihOOOGEaNGiRUREXH311XHEEUfEiSeeGMcff3w0btw4TjvttHLHuemmm6J58+bRs2fPOOuss+Lyyy+PWrVqZT6vVatWzJo1K1q0aBHf/e53o127dnHeeefFp59+aiYLYB+RSn/5AXIAAAB2mZkrAACABAhXAAAACRCuAAAAEiBcAQAAJEC4AgAASIBwBQAAkADhCgAAIAHCFQAAQAKEKwAAgAQIVwAAAAkQrgAAABLw/wHBjZBEuVB3sQAAAABJRU5ErkJggg==\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "values = [result[2] for result in dice_results]\n",
+ "\n",
+ "frequency_distribution = {}\n",
+ "for value in values:\n",
+ " frequency_distribution[value] = frequency_distribution.get(value, 0) + 1\n",
+ "\n",
+ "sorted_values = sorted(frequency_distribution.keys())\n",
+ "frequencies = [frequency_distribution[value] for value in sorted_values]\n",
+ "\n",
+ "plt.figure(figsize=(10, 8))\n",
+ "plt.bar(sorted_values, frequencies)\n",
+ "plt.xlabel('Value')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Frequency distribution of dice')\n",
+ "\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# The relationship between the two plots is that they provide complementary information \n",
+ "# about the data. The first plot gives us insight into the distribution of values, showing which values are \n",
+ "# more likely to occur and how they are spread across the rolls. On the other hand, the second plot gives us \n",
+ "# a clearer picture of how often each value occurs, showing the frequency or count of each value in the data. \n",
+ "# Together, these plots give a comprehensive understanding of the distribution of values and their occurrences \n",
+ "# when rolling the dice."
+ ]
+ },
+ {
+ "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": 25,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "3.2"
+ ]
+ },
+ "execution_count": 25,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "def calculate_mean(data):\n",
+ " total_sum = 0\n",
+ " total_observations = len(data)\n",
+ "\n",
+ " for observation in data:\n",
+ " total_sum += observation\n",
+ "\n",
+ " mean = total_sum / total_observations\n",
+ " return mean\n",
+ "\n",
+ "mean_value = calculate_mean(dice_results)\n",
+ "\n",
+ "mean_value"
+ ]
+ },
+ {
+ "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": 91,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Frequency Distribution:\n",
+ "{6: 2, 2: 4, 1: 2, 5: 2}\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "3.2"
+ ]
+ },
+ "execution_count": 91,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "def calculate_frequency_distribution(data):\n",
+ " frequency_distribution = {}\n",
+ " for value in data:\n",
+ " frequency_distribution[value] = frequency_distribution.get(value, 0) + 1\n",
+ " return frequency_distribution\n",
+ "\n",
+ "frequency_distribution = calculate_frequency_distribution(dice_results)\n",
+ "print(\"Frequency Distribution:\")\n",
+ "print(frequency_distribution)\n",
+ "\n",
+ "def calculate_mean_from_frequency_distribution(frequency_distribution):\n",
+ " total_sum = 0\n",
+ " total_observations = 0\n",
+ "\n",
+ " for value, frequency in frequency_distribution.items():\n",
+ " total_sum += value * frequency\n",
+ " total_observations += frequency\n",
+ "\n",
+ " mean = total_sum / total_observations\n",
+ " return mean\n",
+ "\n",
+ "mean_from_frequency = calculate_mean_from_frequency_distribution(frequency_distribution)\n",
+ "\n",
+ "mean_from_frequency"
+ ]
+ },
+ {
+ "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": 90,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "2.0"
+ ]
+ },
+ "execution_count": 90,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "def calculate_median(data):\n",
+ " sorted_data = sorted(data)\n",
+ " total_observations = len(data)\n",
+ "\n",
+ " if total_observations % 2 == 1:\n",
+ " median_index = total_observations // 2\n",
+ " median = sorted_data[median_index]\n",
+ " else:\n",
+ " upper_median_index = total_observations // 2\n",
+ " lower_median_index = upper_median_index - 1\n",
+ " median = (sorted_data[lower_median_index] + sorted_data[upper_median_index]) / 2\n",
+ "\n",
+ " return median\n",
+ "\n",
+ "median_value = calculate_median(dice_results)\n",
+ "\n",
+ "median_value"
+ ]
+ },
+ {
+ "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": 93,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "1st Quartile: 2\n",
+ "2nd Quartile (Median): 2\n",
+ "3rd Quartile: 5\n"
+ ]
+ }
+ ],
+ "source": [
+ "def calculate_quartiles(data):\n",
+ " sorted_data = sorted(data)\n",
+ " total_observations = len(data)\n",
+ "\n",
+ " q1_index = total_observations // 4\n",
+ " q2_index = total_observations // 2\n",
+ " q3_index = q1_index * 3\n",
+ "\n",
+ " q1_value = sorted_data[q1_index]\n",
+ " q2_value = sorted_data[q2_index]\n",
+ " q3_value = sorted_data[q3_index]\n",
+ "\n",
+ " return q1_value, q2_value, q3_value\n",
+ "\n",
+ "q1, q2, q3 = calculate_quartiles(dice_results)\n",
+ "print(\"1st Quartile:\", q1)\n",
+ "print(\"2nd Quartile (Median):\", q2)\n",
+ "print(\"3rd Quartile:\", q3)"
+ ]
+ },
+ {
+ "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": 5,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Unnamed: 0 \n",
+ " roll \n",
+ " value \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 0 \n",
+ " 0 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 1 \n",
+ " 1 \n",
+ " 2 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 2 \n",
+ " 2 \n",
+ " 6 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " 3 \n",
+ " 3 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 4 \n",
+ " 4 \n",
+ " 6 \n",
+ " \n",
+ " \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " \n",
+ " \n",
+ " 95 \n",
+ " 95 \n",
+ " 95 \n",
+ " 4 \n",
+ " \n",
+ " \n",
+ " 96 \n",
+ " 96 \n",
+ " 96 \n",
+ " 6 \n",
+ " \n",
+ " \n",
+ " 97 \n",
+ " 97 \n",
+ " 97 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ " 98 \n",
+ " 98 \n",
+ " 98 \n",
+ " 3 \n",
+ " \n",
+ " \n",
+ " 99 \n",
+ " 99 \n",
+ " 99 \n",
+ " 6 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
100 rows × 3 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Unnamed: 0 roll value\n",
+ "0 0 0 1\n",
+ "1 1 1 2\n",
+ "2 2 2 6\n",
+ "3 3 3 1\n",
+ "4 4 4 6\n",
+ ".. ... ... ...\n",
+ "95 95 95 4\n",
+ "96 96 96 6\n",
+ "97 97 97 1\n",
+ "98 98 98 3\n",
+ "99 99 99 6\n",
+ "\n",
+ "[100 rows x 3 columns]"
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "dice_rool = pd.read_csv(r\"C:\\Users\\dulce\\OneDrive\\Documentos\\Ironhack git\\Labs\\Labs week 4\\Descriptive-Stats\\data\\roll_the_dice_hundred.csv\")\n",
+ "\n",
+ "dice_rool"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0EAAAIhCAYAAACIfrE3AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA6nElEQVR4nO3de5SVdb0/8M+e22YGYZSbiKACmRdQMFEDTDTDK3o8rY5FGqatzqm8gFhSWj+yk2KevJWJ2UVOVzgdxUOevFApaqUhijdULDUv3A0ZmIGBYZ7fHzT7OII64Oz97M1+vdaatdrPfvbsz3Y9jfvt9/P9PJkkSZIAAAAoExVpFwAAAFBIQhAAAFBWhCAAAKCsCEEAAEBZEYIAAICyIgQBAABlRQgCAADKihAEAACUFSEIAAAoK0IQQJF6+OGH45//+Z9jr732imw2G7vvvnuMHDkyLrrook5/rxtvvDFmzJjR6b83IiKTycTXv/71HXrtfffdF5lMJu67777csU9/+tOxzz77dEptaXnppZcik8nk7Z85AO9MCAIoQv/7v/8bo0aNioaGhrjqqqvinnvuieuvvz5Gjx4ds2bN6vT3y2cI6mxf+9rXYvbs2WmXAUAJq0q7AAC2dtVVV8XAgQPj7rvvjqqq//tT/YlPfCKuuuqqTnufpqamqKur67TfVwiDBw9OuwQASpyVIIAi9Prrr0evXr3aBaA2FRXt/3S3trbGVVddFfvvv39ks9no06dPTJgwIV599dV25x199NExdOjQuP/++2PUqFFRV1cX55xzTuyzzz7x9NNPx7x58yKTyUQmk2nXbtbQ0BBf/OIXY+DAgVFTUxN77rlnTJo0KRobG9v9/oaGhvjsZz8bPXv2jF122SVOOOGEWLx4cYc/87PPPhsnnHBC1NXVRa9eveJzn/tcrF27dqvzttUO19raGt/97ndj+PDhUVtbG7vuumt88IMfjDlz5rQ7b9asWTFy5Mjo2rVr7LLLLnH88cfHY4899o51Pf7445HJZOJHP/rRVs/deeedkclkcu/zl7/8Jc4+++zYd999o66uLvbcc8845ZRT4sknn3zXz/92bX5f//rXI5PJtDuWJEnceOONuc+72267xcc+9rF44YUX2p332GOPxbhx46JPnz6RzWajX79+cfLJJ291bQCUGyEIoAiNHDkyHn744bjgggvi4Ycfjk2bNr3tuZ///OdjypQpMXbs2JgzZ078+7//e9x1110xatSoWLVqVbtzly5dGmeeeWZ88pOfjN/85jfxhS98IWbPnh2DBg2KQw45JP70pz/Fn/70p1y7WVNTU4wZMyb+8z//My644IK48847Y8qUKTFjxow49dRTI0mSiNjypfy0006Ln/70p3HRRRfF7Nmz44Mf/GCceOKJHfq8y5cvjzFjxsRTTz0VN954Y/z0pz+NdevWxXnnndeh13/605+OiRMnxmGHHRazZs2KmTNnxqmnnhovvfRS7pwrrrgixo8fHwceeGD813/9V/z0pz+NtWvXxoc+9KFYtGjR2/7uYcOGxSGHHBK33HLLVs/NmDEj+vTpEyeddFJERCxZsiR69uwZV155Zdx1113xve99L6qqquKII46I5557rkOfpSP+7d/+LSZNmhQf+chH4vbbb48bb7wxnn766Rg1alQsX748IiIaGxtj7NixsXz58vje974Xc+fOjeuuuy722muvbYZLgLKSAFB0Vq1alRx55JFJRCQRkVRXVyejRo1Kpk2blqxduzZ33jPPPJNERPKFL3yh3esffvjhJCKSSy65JHdszJgxSUQkv/vd77Z6vyFDhiRjxozZ6vi0adOSioqKZP78+e2O//d//3cSEclvfvObJEmS5M4770wiIrn++uvbnXf55ZcnEZFMnTr1HT/vlClTkkwmkyxcuLDd8bFjxyYRkdx77725Y2eddVay99575x7ff//9SUQkl1566dv+/pdffjmpqqpKzj///HbH165dm/Tt2zc5/fTT37G+73znO0lEJM8991zu2N///vckm80mF1100du+rqWlJdm4cWOy7777JhdeeGHu+IsvvphERHLLLbe87edqM3Xq1OTN/7r+05/+lEREcvXVV7c775VXXklqa2uTiy++OEmSJHnkkUeSiEhuv/32d/xsAOXIShBAEerZs2c88MADMX/+/Ljyyivjn/7pn2Lx4sXxla98JQ466KDcCs+9994bEVtWQt7s8MMPjwMOOCB+97vftTu+2267xYc//OEO13HHHXfE0KFDY/jw4dHS0pL7Of7449tNbWur44wzzmj3+k9+8pMdep977703hgwZEsOGDdvu1995550REXHuuee+7Tl33313tLS0xIQJE9p9ji5dusSYMWPaTZ/bljPOOCOy2Wy74RG//OUvo7m5Oc4+++zcsZaWlrjiiiviwAMPjJqamqiqqoqampp4/vnn45lnnnnXz9IRd9xxR2QymTjzzDPbfZa+ffvGsGHDcp/lfe97X+y2224xZcqUuOmmm95xtQug3AhBAEVsxIgRMWXKlPjVr34VS5YsiQsvvDBeeuml3HCE119/PSIi9thjj61e269fv9zzbbZ13jtZvnx5PPHEE1FdXd3up1u3bpEkSS6Mvf7661FVVRU9e/Zs9/q+fft26H1ef/31bZ7bkdevXLkyKisr3/Hcthaxww47bKvPMmvWrK3aBt+qR48eceqpp8ZPfvKT2Lx5c0RsaYU7/PDDY8iQIbnzJk+eHF/72tfitNNOi1//+tfx8MMPx/z582PYsGGxfv36d/0sHbF8+fJIkiR23333rT7LQw89lPss9fX1MW/evBg+fHhccsklMWTIkOjXr19MnTr1HdsrAcqB6XAAJaK6ujqmTp0a1157bTz11FMREbnQsXTp0ujfv3+785csWRK9evVqd+ytG+zfTa9evaK2tjZ+/OMfv+3zbXW0tLTE66+/3i4ILVu2rEPv07Nnz22e25HX9+7dOzZv3hzLli1725DXVud///d/x957792hmt7q7LPPjl/96lcxd+7c2GuvvWL+/Pkxffr0duf87Gc/iwkTJsQVV1zR7viqVati1113fcff36VLl2hubt7q+FsDWq9evSKTycQDDzwQ2Wx2q/PffOyggw6KmTNnRpIk8cQTT8SMGTPiG9/4RtTW1saXv/zld/vIADstK0EARWjp0qXbPN7WUtWvX7+IiFxr289+9rN2582fPz+eeeaZOPbYYzv0ftlsdpsrFePGjYu//vWv0bNnzxgxYsRWP23TzI455piIiPj5z3/e7vW/+MUvOvT+xxxzTDz99NPx+OOPb/fr24YvvDWQvNnxxx8fVVVV8de//nWbn2PEiBHv+j7HHXdc7LnnnnHLLbfELbfcEl26dInx48e3OyeTyWwVTP73f/83XnvttXf9/fvss0+sWLEit2oVEbFx48a4++672503bty4SJIkXnvttW1+joMOOmir353JZGLYsGFx7bXXxq677hqPPvrou9YDsDOzEgRQhI4//vjo379/nHLKKbH//vtHa2trLFy4MK6++urYZZddYuLEiRERsd9++8W//uu/xne/+92oqKiIE088MV566aX42te+FgMGDIgLL7ywQ+/XtmIwa9asGDRoUHTp0iUOOuigmDRpUtx6661x1FFHxYUXXhgHH3xwtLa2xssvvxz33HNPXHTRRXHEEUfEcccdF0cddVRcfPHF0djYGCNGjIg//OEP8dOf/rRD7z9p0qT48Y9/HCeffHJ885vfjN133z1+/vOfx7PPPvuur/3Qhz4Un/rUp+Kb3/xmLF++PMaNGxfZbDYee+yxqKuri/PPPz/22Wef+MY3vhGXXnppvPDCC3HCCSfEbrvtFsuXL48///nP0bVr17jsssve8X0qKytjwoQJcc0110T37t3jox/9aNTX17c7Z9y4cTFjxozYf//94+CDD44FCxbEf/zHf2y1SrctH//4x+P//b//F5/4xCfiS1/6UmzYsCG+853v5Nrv2owePTr+9V//Nc4+++x45JFH4qijjoquXbvG0qVL48EHH4yDDjooPv/5z8cdd9wRN954Y5x22mkxaNCgSJIkbrvttnjjjTdi7Nix71oPwE4t1bEMAGzTrFmzkk9+8pPJvvvum+yyyy5JdXV1stdeeyWf+tSnkkWLFrU7d/Pmzcm3vvWt5P3vf39SXV2d9OrVKznzzDOTV155pd15Y8aMSYYMGbLN93vppZeS4447LunWrVsSEe2mlK1bty756le/muy3335JTU1NUl9fnxx00EHJhRdemCxbtix33htvvJGcc845ya677prU1dUlY8eOTZ599tkOTYdLkiRZtGhRMnbs2KRLly5Jjx49ks985jPJ//zP/7zrdLi2fwbXXnttMnTo0FyNI0eOTH7961+3O+/2229PjjnmmKR79+5JNptN9t577+RjH/tY8tvf/vZd60uSJFm8eHFuYt/cuXO3en716tXJZz7zmaRPnz5JXV1dcuSRRyYPPPBAMmbMmHbT97Y1HS5JkuQ3v/lNMnz48KS2tjYZNGhQcsMNN2w1Ha7Nj3/84+SII45IunbtmtTW1iaDBw9OJkyYkDzyyCNJkiTJs88+m4wfPz4ZPHhwUltbm9TX1yeHH354MmPGjA59VoCdWSZJ/nGTBwAAgDJgTxAAAFBWhCAAAKCsCEEAAEBZEYIAAICyIgQBAABlRQgCAADKSknfLLW1tTWWLFkS3bp1i0wmk3Y5AABASpIkibVr10a/fv2iouKd13pKOgQtWbIkBgwYkHYZAABA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7bzwwgsxffr0mDx5clxyySXx5z//OS644ILIZrMxYcIE1w7bNGXKlFizZk3sv//+UVlZGZs3b47LL788xo8fHxH+5vDuOnKNLFu2LGpqamK33Xbb6pxCfncWgjpJJpNp9zhJkq2OQUTEeeedF0888UQ8+OCDWz3nOuLNXnnllZg4cWLcc8890aVLl7c9z3XDW7W2tsaIESPiiiuuiIiIQw45JJ5++umYPn16TJgwIXeea4c3mzVrVvzsZz+LX/ziFzFkyJBYuHBhTJo0Kfr16xdnnXVW7jzXDe9mR66RQl9H2uHeo169ekVlZeVWyXXFihVbpWA4//zzY86cOXHvvfdG//79c8f79u0bEeE6op0FCxbEihUr4tBDD42qqqqoqqqKefPmxXe+852oqqrKXRuuG95qjz32iAMPPLDdsQMOOCA3sMffHLblS1/6Unz5y1+OT3ziE3HQQQfFpz71qbjwwgtj2rRpEeG64d115Brp27dvbNy4MVavXv225xSCEPQe1dTUxKGHHhpz585td3zu3LkxatSolKqi2CRJEuedd17cdttt8fvf/z4GDhzY7vmBAwdG3759211HGzdujHnz5rmOytixxx4bTz75ZCxcuDD3M2LEiDjjjDNi4cKFMWjQINcN2zR69OitxvAvXrw49t5774jwN4dta2pqioqK9l8NKysrcyOyXTe8m45cI4ceemhUV1e3O2fp0qXx1FNPFfY6KtgIhp3YzJkzk+rq6uRHP/pRsmjRomTSpElJ165dk5deeint0igSn//855P6+vrkvvvuS5YuXZr7aWpqyp1z5ZVXJvX19cltt92WPPnkk8n48eOTPfbYI2loaEixcorNm6fDJYnrhm3785//nFRVVSWXX3558vzzzyc///nPk7q6uuRnP/tZ7hzXDm911llnJXvuuWdyxx13JC+++GJy2223Jb169Uouvvji3DmuG9auXZs89thjyWOPPZZERHLNNdckjz32WPK3v/0tSZKOXSOf+9znkv79+ye//e1vk0cffTT58Ic/nAwbNixpaWkp2OcQgjrJ9773vWTvvfdOampqkg984AO50ceQJFtGSG7r55Zbbsmd09ramkydOjXp27dvks1mk6OOOip58skn0yuaovTWEOS64e38+te/ToYOHZpks9lk//33T26++eZ2z7t2eKuGhoZk4sSJyV577ZV06dIlGTRoUHLppZcmzc3NuXNcN9x7773b/E5z1llnJUnSsWtk/fr1yXnnnZf06NEjqa2tTcaNG5e8/PLLBf0cmSRJksKtOwEAAKTLniAAAKCsCEEAAEBZEYIAAICyIgQBAABlRQgCAADKihAEAACUFSEIAAAoK0IQAABQVoQgAHZKL730UmQymVi4cGFERNx3332RyWTijTfeSLUuANInBAFQlD796U9HJpOJTCYTVVVVsddee8XnP//5WL16ddqlAVDihCAAitYJJ5wQS5cujZdeeil++MMfxq9//ev4whe+kHZZAJQ4IQiAopXNZqNv377Rv3//OO644+LjH/943HPPPRER0draGt/4xjeif//+kc1mY/jw4XHXXXelXDEApUAIAqAkvPDCC3HXXXdFdXV1RERcf/31cfXVV8e3v/3teOKJJ+L444+PU089NZ5//vmUKwWg2AlBABStO+64I3bZZZeora2NwYMHx6JFi2LKlCkREfHtb387pkyZEp/4xCdiv/32i29961sxfPjwuO6669ItGoCiV5V2AQDwdo455piYPn16NDU1xQ9/+MNYvHhxnH/++dHQ0BBLliyJ0aNHtzt/9OjR8fjjj6dULQClwkoQAEWra9eu8b73vS8OPvjg+M53vhPNzc1x2WWX5Z7PZDLtzk+SZKtjAPBWQhAAJWPq1Knx7W9/O9atWxf9+vWLBx98sN3zf/zjH+OAAw5IqToASoV2OABKxtFHHx1DhgyJK664Ir70pS/F1KlTY/DgwTF8+PC45ZZbYuHChfHzn/887TIBKHJCEAAlZfLkyXH22WfH4sWLo6GhIS666KJYsWJFHHjggTFnzpzYd9990y4RgCKXSZIkSbsIAACAQrEnCAAAKCtCEAAAUFaEIAAAoKwIQQAAQFkRggAAgLIiBAEAAGVFCAIAAMqKEAQAAJQVIQgAACgrQhAAAFBWhCAAAKCs/H+sYSkO/c05bwAAAABJRU5ErkJggg==\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "sorted_values = sorted(dice_rool['value'])\n",
+ "\n",
+ "plt.figure(figsize=(10, 6))\n",
+ "plt.plot(sorted_values, color='purple')\n",
+ "plt.xlabel('Roll')\n",
+ "plt.ylabel('Value')\n",
+ "plt.title('Sorted dice values')\n",
+ "\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "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": 36,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "3.74"
+ ]
+ },
+ "execution_count": 36,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "def calculate_mean(data):\n",
+ " total_sum = 0\n",
+ " total_observations = len(data)\n",
+ "\n",
+ " for observation in data:\n",
+ " total_sum += observation\n",
+ "\n",
+ " mean = total_sum / total_observations\n",
+ " return mean\n",
+ "\n",
+ "mean_value = calculate_mean(dice_rool['value'])\n",
+ "\n",
+ "mean_value"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "#### 3.- Now, calculate the frequency distribution.\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 11,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "{1: 12, 2: 17, 6: 23, 5: 12, 4: 22, 3: 14}"
+ ]
+ },
+ "execution_count": 11,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "def calculate_frequency_distribution(data):\n",
+ " \n",
+ " frequency_distribution = {}\n",
+ " \n",
+ " for value in data:\n",
+ " frequency_distribution[value] = frequency_distribution.get(value, 0) + 1\n",
+ " return frequency_distribution\n",
+ "\n",
+ "frequency_distribution = calculate_frequency_distribution(dice_rool['value'])\n",
+ "\n",
+ "frequency_distribution"
+ ]
+ },
+ {
+ "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": 12,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0oAAAIhCAYAAABwnkrAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAy+0lEQVR4nO3deZRUhZ334W9FsFlEEJBtWGQiKiquGAMaBRUVIuKSd4iKgqKjURMccDKDybxi4kjUF8eMZtBoBIxxSTJGs7rEBU3QibuJYRQVARWCgGETEKHePzz0Sd9GlLalmvZ5zrnneG/dqvp1dR3hw711q1Qul8sBAACg2mcqPQAAAEBDI5QAAAAKhBIAAECBUAIAACgQSgAAAAVCCQAAoEAoAQAAFAglAACAAqEEAABQIJQAKmTq1KkplUobXS688MJKj/epMGHChJRKpRrbdtppp4waNWqzHmfGjBmZMGFC/vrXv27W/YrP9fDDD6dUKuWnP/3pZj3OprzzzjuZMGFCHn744Vq3bXgPvvbaa/X2fACNRZNKDwDwaTdlypTstttuNbZ16dKlQtPws5/9LNtvv/1m3WfGjBm55JJLMmrUqLRp0+YTfa7N9c477+SSSy5JkgwYMKDGbV/84hfz2GOPpXPnzp/oDABbI6EEUGF77rln+vbt+5H2Xbt2bUqlUpo08b/vT8q+++77iT/HqlWr0rx58y3yXJuy4447Zscdd6zoDAANlVPvABqoDadh/fCHP8y4cePyd3/3d6mqqsrLL7+cJPntb3+bww8/PNtvv31atGiRgw46KA888ECtx/nVr36VffbZJ1VVVenZs2f+3//7f7VOOXvttddSKpUyderUWvcvlUqZMGFCjW2zZs3KySefnA4dOqSqqiq9e/fO9773vY3Of9ttt+Ub3/hGunTpku233z5HHHFEXnzxxVrPc8899+Twww9P69at06JFi/Tu3TsTJ05Mkvzwhz9MqVTKY489Vut+3/rWt9K0adO8+eabm3w9N/Y6bEzxdLj169fn0ksvza677prmzZunTZs22WuvvfLd7343yfun7/3zP/9zkqRnz57Vp09uONVtp512yjHHHJM777wz++67b5o1a1Z9hOeDTvNbvXp1xo4dm06dOqV58+Y59NBD88wzz9TYZ8CAAbWOECXJqFGjstNOOyV5//e6IYQuueSS6tk2POcHnXp30003Ze+9906zZs3Stm3bHH/88Zk5c2at59luu+3y8ssvZ8iQIdluu+3SrVu3jBs3LmvWrNnoawuwNfFPkgAVtm7durz33ns1tv3tEaPx48enX79+ue666/KZz3wmHTp0yC233JLTTjstw4YNy7Rp09K0adNcf/31Oeqoo3Lvvffm8MMPT5I88MADGTZsWPr165fbb78969atyxVXXJG//OUvdZ73z3/+c/r375/u3btn0qRJ6dSpU+6999587Wtfy6JFi3LxxRfX2P+iiy7KQQcdlBtvvDHLli3Lv/zLv2To0KGZOXNmttlmmyTJD37wg5x11lk59NBDc91116VDhw556aWX8qc//SlJMnz48Hz961/P9773vfTr16/6sd97771cf/31Of744zd5uuLHeR2uuOKKTJgwId/85jdzyCGHZO3atfnf//3f6s8jnXnmmVmyZEmuueaa3HnnndWnse2+++7Vj/H0009n5syZ+eY3v5mePXumZcuWm3zOiy66KPvtt19uvPHGLF26NBMmTMiAAQPyzDPP5O///u8/dOYNOnfunHvuuSdHH310Ro8enTPPPDNJNnkUaeLEibnoooty0kknZeLEiVm8eHEmTJiQfv365YknnkivXr2q9127dm2OPfbYjB49OuPGjcsjjzySb3/722ndunX+7//9vx95ToAGqQxARUyZMqWcZKPL2rVryw899FA5SfmQQw6pcb+VK1eW27ZtWx46dGiN7evWrSvvvffe5c997nPV2w488MByly5dyqtWraretmzZsnLbtm3Lf/tHwOzZs8tJylOmTKk1Z5LyxRdfXL1+1FFHlbt27VpeunRpjf3OP//8crNmzcpLliwpl8vl6vmHDBlSY78f//jH5STlxx57rFwul8vLly8vb7/99uWDDz64vH79+g98vS6++OLytttuW/7LX/5Sve2OO+4oJylPnz79A++3Oa9DuVwu9+jRozxy5Mjq9WOOOaa8zz77bPLxr7zyynKS8uzZs2vd1qNHj/I222xTfvHFFzd6298+14bXbL/99qvxWrz22mvlpk2bls8888zqbYceemj50EMPrfWYI0eOLPfo0aN6/a233qr1O9xgw3tww9xvv/12uXnz5rV+Z3Pnzi1XVVWVTz755BrPk6T84x//uMa+Q4YMKe+66661ngtga+PUO4AKu/nmm/PEE0/UWP72iNKJJ55YY/8ZM2ZkyZIlGTlyZN57773qZf369Tn66KPzxBNPZOXKlVm5cmWeeOKJnHDCCWnWrFn1/Vu1apWhQ4fWadbVq1fngQceyPHHH58WLVrUeP4hQ4Zk9erVefzxx2vc59hjj62xvtdeeyVJ5syZU/3zLFu2LOeee26tK9D9ra985StJkhtuuKF627XXXps+ffrkkEMO+cD7fdzX4XOf+1yee+65nHvuubn33nuzbNmyD71P0V577ZVddtnlI+9/8skn13gtevTokf79++ehhx7a7OfeHI899lhWrVpV63TAbt265bDDDqt1amepVKr1Gu61117Vv1uArZlT7wAqrHfv3pu8mEPximQbThf70pe+9IH3WbJkSUqlUtavX59OnTrVun1j2z6KxYsX57333ss111yTa665ZqP7LFq0qMZ6u3btaqxXVVUlef+CBkny1ltvJUm6du26yefu2LFjhg8fnuuvvz7/+q//mhdeeCGPPvporr/++k3e7+233/5Yr8P48ePTsmXL3HLLLbnuuuuyzTbb5JBDDsnll1/+kS/CsblXlfugWZ977rnNepzNtXjx4iQbn7dLly65//77a2xr0aJFjfhM3v/9rl69+pMbEmALEUoADVzxKEv79u2TJNdcc00+//nPb/Q+HTt2rL5C3oIFC2rdXty24S+7xQ/hb/iL8wY77LBDttlmm5x66qk577zzNvrcPXv23MRPU9uGz8u8/vrrH7rvmDFj8sMf/jB333137rnnnrRp0yannHLKJu+zww47fOTXYWOaNGmSsWPHZuzYsfnrX/+a3/72t7noooty1FFHZd68eWnRosWHPsamjpRtzAfN+rfR2axZsyxdurTWfsVQ3RwbHn/+/Pm1bnvzzTer33sAnwZOvQPYyhx00EFp06ZN/vznP6dv374bXbbddtu0bNkyn/vc53LnnXfW+Bf+5cuX5xe/+EWNx+zYsWOaNWuW559/vsb2u+++u8Z6ixYtMnDgwDzzzDPZa6+9NvrcxSNIH6Z///5p3bp1rrvuupTL5U3uu//++6d///65/PLL86Mf/SijRo360AsjbM7r8GHatGmTL33pSznvvPOyZMmS6qvFFY+SfVy33XZbjddizpw5mTFjRo2r3O2000556aWXasTt4sWLM2PGjBqPtTmz9evXL82bN88tt9xSY/vrr7+eBx98sPoiIQCfBo4oAWxltttuu1xzzTUZOXJklixZki996Uvp0KFD3nrrrTz33HN56623Mnny5CTJt7/97Rx99NEZNGhQxo0bl3Xr1uXyyy9Py5Yts2TJkurHLJVKGTFiRG666aZ89rOfzd57750//OEPufXWW2s9/3e/+90cfPDB+cIXvpCvfOUr2WmnnbJ8+fK8/PLL+cUvfpEHH3xws3+eSZMm5cwzz8wRRxyRs846Kx07dszLL7+c5557Ltdee22N/ceMGZPhw4enVCrl3HPP/UjP8VFfh40ZOnRo9Xdd7bjjjpkzZ06uvvrq9OjRo/oKcH369Kl+bUaOHJmmTZtm1113TatWrTbrtdhg4cKFOf7443PWWWdl6dKlufjii9OsWbOMHz++ep9TTz01119/fUaMGJGzzjorixcvzhVXXFHrC2xbtWqVHj165O67787hhx+etm3bpn379tWXEP9bbdq0yb/927/loosuymmnnZaTTjopixcvziWXXJJmzZrVuqIhQGPmiBLAVmjEiBF56KGHsmLFipx99tk54ogjMmbMmDz99NM1/tV/0KBBueuuu7Js2bIMHz48Y8eOzYknnpgzzjij1mNOmjQpI0aMyBVXXJFhw4blscceyy9/+cta++2+++55+umns+eee+ab3/xmjjzyyIwePTo//elP63zEYfTo0fn1r3+ddevW5cwzz8wxxxyTq6++Ot27d6+173HHHZeqqqocddRRNS5VvSmb8zoUDRw4MI888kjOOeecDBo0KN/85jdz+OGHZ/r06WnatGmS97/TaPz48fnFL36Rgw8+OAcccECeeuqpzXsR/sZll12WHj165PTTT88ZZ5yRzp0756GHHspnP/vZ6n0OOuigTJs2LS+88EKGDRuWSy+9NOPHj9/odyv94Ac/SIsWLXLsscfmgAMOqPW9WH9r/PjxufHGG/Pcc8/luOOOy/nnn5899tgjM2bM+MivN0BjUCp/2HkOADQ6EyZMyCWXXPKhp7o1RL/4xS9y7LHH5le/+lWGDBlS6XEAaKScegfAVuHPf/5z5syZk3HjxmWfffbJ4MGDKz0SAI2YU+8A2Cqce+65OfbYY7PDDjvktttu2+wryQHA5nDqHQAAQIEjSgAAAAVCCQAAoEAoAQAAFDT6q96tX78+b775Zlq1auWDvwAA8ClWLpezfPnydOnSJZ/5zKaPGTX6UHrzzTfTrVu3So8BAAA0EPPmzUvXrl03uU+jD6VWrVolef/F2H777Ss8DQAAUCnLli1Lt27dqhthUxp9KG043W777bcXSgAAwEf6SI6LOQAAABQIJQAAgAKhBAAAUCCUAAAACoQSAABAgVACAAAoEEoAAAAFQgkAAKBAKAEAABQIJQAAgAKhBAAAUCCUAAAACoQSAABAgVACAAAoEEoAAAAFQgkAAKBAKAEAABQIJQAAgIImlR4AAAA2mDt3bhYtWlTpMahn7du3T/fu3Ss9xmYRSgAANAhz587Nrrv1zupV71R6FOpZs+Yt8uL/ztyqYkkoAQDQICxatCirV72TdseMS9N23So9DvVk7eJ5WfzLSVm0aJFQAgCAumrarluqOu1c6TH4lHMxBwAAgAKhBAAAUCCUAAAACoQSAABAgVACAAAoEEoAAAAFQgkAAKBAKAEAABQIJQAAgAKhBAAAUCCUAAAACoQSAABAgVACAAAoEEoAAAAFQgkAAKCgSaUHAIAtZe7cuVm0aFGlx6AetW/fPt27d6/0GEAjJJQA+FSYO3dudt2td1aveqfSo1CPmjVvkRf/d6ZYAuqdUALgU2HRokVZveqdtDtmXJq261bpcagHaxfPy+JfTsqiRYuEElDvhBIAnypN23VLVaedKz0GAA2cizkAAAAUCCUAAIACoQQAAFAglAAAAAqEEgAAQIFQAgAAKBBKAAAABUIJAACgQCgBAAAUCCUAAIACoQQAAFAglAAAAAqEEgAAQIFQAgAAKBBKAAAABUIJAACgQCgBAAAUCCUAAIACoQQAAFAglAAAAAqEEgAAQIFQAgAAKBBKAAAABUIJAACgQCgBAAAUCCUAAIACoQQAAFAglAAAAAqEEgAAQIFQAgAAKBBKAAAABRUNpYkTJ+aAAw5Iq1at0qFDhxx33HF58cUXa+xTLpczYcKEdOnSJc2bN8+AAQPywgsvVGhiAADg06CioTR9+vScd955efzxx3P//ffnvffey5FHHpmVK1dW73PFFVfkqquuyrXXXpsnnnginTp1yqBBg7J8+fIKTg4AADRmTSr55Pfcc0+N9SlTpqRDhw556qmncsghh6RcLufqq6/ON77xjZxwwglJkmnTpqVjx4659dZbc/bZZ1dibAAAoJFrUJ9RWrp0aZKkbdu2SZLZs2dnwYIFOfLII6v3qaqqyqGHHpoZM2Zs9DHWrFmTZcuW1VgAAAA2R4MJpXK5nLFjx+bggw/OnnvumSRZsGBBkqRjx4419u3YsWP1bUUTJ05M69atq5du3bp9soMDAACNToMJpfPPPz/PP/98brvttlq3lUqlGuvlcrnWtg3Gjx+fpUuXVi/z5s37ROYFAAAar4p+RmmDr371q/n5z3+eRx55JF27dq3e3qlTpyTvH1nq3Llz9faFCxfWOsq0QVVVVaqqqj7ZgQEAgEatokeUyuVyzj///Nx555158MEH07Nnzxq39+zZM506dcr9999fve3dd9/N9OnT079//y09LgAA8ClR0SNK5513Xm699dbcfffdadWqVfXnjlq3bp3mzZunVCrlggsuyGWXXZZevXqlV69eueyyy9KiRYucfPLJlRwdAABoxCoaSpMnT06SDBgwoMb2KVOmZNSoUUmSr3/961m1alXOPffcvP322znwwANz3333pVWrVlt4WgAA4NOioqFULpc/dJ9SqZQJEyZkwoQJn/xAAAAAaUBXvQMAAGgohBIAAECBUAIAACgQSgAAAAVCCQAAoEAoAQAAFAglAACAAqEEAABQIJQAAAAKhBIAAECBUAIAACgQSgAAAAVCCQAAoEAoAQAAFAglAACAAqEEAABQIJQAAAAKhBIAAECBUAIAACgQSgAAAAVCCQAAoEAoAQAAFAglAACAAqEEAABQIJQAAAAKhBIAAECBUAIAACgQSgAAAAVCCQAAoEAoAQAAFAglAACAAqEEAABQIJQAAAAKhBIAAECBUAIAACgQSgAAAAVCCQAAoEAoAQAAFAglAACAAqEEAABQIJQAAAAKhBIAAECBUAIAACgQSgAAAAVCCQAAoEAoAQAAFAglAACAAqEEAABQIJQAAAAKhBIAAEBBk0oPAI3B3Llzs2jRokqPQT1q3759unfvXukxAIAKEUrwMc2dOze77tY7q1e9U+lRqEfNmrfIi/87UywBwKeUUIKPadGiRVm96p20O2ZcmrbrVulxqAdrF8/L4l9OyqJFi4QSAHxKCSWoJ03bdUtVp50rPQYAAPXAxRwAAAAKhBIAAECBUAIAACgQSgAAAAVCCQAAoEAoAQAAFAglAACAAqEEAABQIJQAAAAKhBIAAECBUAIAACgQSgAAAAVCCQAAoEAoAQAAFAglAACAAqEE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zygBAABUglACAAAoEEoAAAAFQgkAAKBAKG0BjzzySIYOHZouXbqkVCrlrrvuqvRINHATJ07MAQcckFatWqVDhw457rjj8uKLL1Z6LBqwyZMnZ6+99qr+Mr9+/frlN7/5TaXHYisxceLElEqlXHDBBZUehQZswoQJKZVKNZZOnTpVeiwasDfeeCMjRoxIu3bt0qJFi+yzzz556qmnKj3WRyaUtoCVK1dm7733zrXXXlvpUdhKTJ8+Peedd14ef/zx3H///Xnvvfdy5JFHZuXKlZUejQaqa9eu+c53vpMnn3wyTz75ZA477LAMGzYsL7zwQqVHo4F74okn8v3vfz977bVXpUdhK7DHHntk/vz51csf//jHSo9EA/X222/noIMOStOmTfOb3/wmf/7znzNp0qS0adOm0qN9ZA3+e5Qag8GDB2fw4MGVHoOtyD333FNjfcqUKenQoUOeeuqpHHLIIRWaioZs6NChNdb//d//PZMnT87jjz+ePfbYo0JT0dCtWLEip5xySm644YZceumllR6HrUCTJk0cReIjufzyy9OtW7dMmTKlettOO+1UuYHqwBEl2AosXbo0SdK2bdsKT8LWYN26dbn99tuzcuXK9OvXr9Lj0ICdd955+eIXv5gjjjii0qOwlZg1a1a6dOmSnj175stf/nJeffXVSo9EA/Xzn/88ffv2zf/5P/8nHTp0yL777psbbrih0mNtFqEEDVy5XM7YsWNz8MEHZ88996z0ODRgf/zjH7Pddtulqqoq55xzTn72s59l9913r/RYNFC33357nn766UycOLHSo7CVOPDAA3PzzTfn3nvvzQ033JAFCxakf//+Wbx4caVHowF69dVXM3ny5PTq1Sv33ntvzjnnnHzta1/LzTffXOnRPjKn3kEDd/755+f555/P7373u0qPQgO366675tlnn81f//rX/Pd//3dGjhyZ6dOniyVqmTdvXsaMGZP77rsvzZo1q/Q4bCX+9mMEffr0Sb9+/fLZz34206ZNy9ixYys4GQ3R+vXr07dv31x22WVJkn333TcvvPBCJk+enNNOO63C0300jihBA/bVr341P//5z/PQQw+la9eulR6HBm7bbbfNzjvvnL59+2bixInZe++9893vfrfSY9EAPfXUU1m4cGH233//NGnSJE2aNMn06dPzn//5n2nSpEnWrVtX6RHZCrRs2TJ9+vTJrFmzKj0KDVDnzp1r/UNd7969M3fu3ApNtPkcUYIGqFwu56tf/Wp+9rOf5eGHH07Pnj0rPRJboXK5nDVr1lR6DBqgww8/vNbVyk4//fTstttu+Zd/+Zdss802FZqMrcmaNWsyc+bMfOELX6j0KDRABx10UK2vNnnppZfSo0ePCk20+YTSFrBixYq8/PLL1euzZ8/Os88+m7Zt26Z79+4VnIyG6rzzzsutt96au+++O61atcqCBQuSJK1bt07z5s0rPB0N0UUXXZTBgwenW7duWb58eW6//fY8/PDDta6gCEnSqlWrWp95bNmyZdq1a+ezkHygCy+8MEOHDk337t2zcOHCXHrppVm2bFlGjhxZ6dFogP7pn/4p/fv3z2WXXZZ/+Id/yB/+8Id8//vfz/e///1Kj/aRCaUt4Mknn8zAgQOr1zecxzty5MhMnTq1QlPRkE2ePDlJMmDAgBrbp0yZklGjRm35gWjw/vKXv+TUU0/N/Pnz07p16+y111655557MmjQoEqPBjQSr7/+ek466aQsWrQoO+64Yz7/+c/n8ccf36qOELDlHHDAAfnZz36W8ePH51vf+lZ69uyZq6++OqecckqlR/vISuVyuVzpIQAAABoSF3MAAAAoEEoAAAAFQgkAAKBAKAEAABQIJQAAgAKhBAAAUCCUAAAACoQSAABAgVACoNEbMGBALrjggkqPAcBWRCgB0KANHTo0RxxxxEZve+yxx1IqlfL0009v4akAaOyEEgAN2ujRo/Pggw9mzpw5tW676aabss8++2S//farwGQANGZCCYAG7ZhjjkmHDh0yderUGtvfeeed3HHHHTnuuONy0kknpWvXrmnRokX69OmT2267bZOPWSqVctddd9XY1qZNmxrP8cYbb2T48OHZYYcd0q5duwwbNiyvvfZa/fxQADR4QgmABq1JkyY57bTTMnXq1JTL5ertP/nJT/Luu+/mzDPPzP77759f/vKX+dOf/pR//Md/zKmnnpr/+Z//qfNzvvPOOxk4cGC22267PPLII/nd736X7bbbLkcffXTefffd+vixAGjghBIADd4ZZ5yR1157LQ8//HD1tptuuiknnHBC/u7v/i4XXnhh9tlnn/z93/99vvrVr+aoo47KT37ykzo/3+23357PfOYzufHGG9OnT5/07t07U6ZMydy5c2vMAEDj1aTSAwDAh9ltt93Sv3//3HTTTRk4cGBeeeWVPProo7nvvvuybt26fOc738kdd9yRN954I2vWrMmaNWvSsmXLOj/fU089lZdffjmtWrWqsX316tV55ZVXPu6PA8BWQCgBsFUYPXp0zj///Hzve9/LlClT0qNHjxx++OG58sor8x//8R+5+uqr06dPn7Rs2TIXXHDBJk+RK5VKNU7jS5K1a9dW//f69euz//7750c/+lGt++64447190MB0GAJJQC2Cv/wD/+QMWPG5NZbb820adNy1llnpVQq5dFHH82wYcMyYsSIJO9HzqxZs9K7d+8PfKwdd9wx8+fPr16fNWtW3nnnner1/fbbL3fccUc6dOiQ7bff/pP7oQBosHxGCYCtwnbbbZfhw4fnoosuyptvvplRo0YlSXbeeefcf//9mTFjRmbOnJmzzz47CxYs2ORjHXbYYbn22mvz9NNP58knn8w555yTpk2bVt9+yimnpH379hk2bFgeffTRzJ49O9OnT8+YMWPy+uuvf5I/JgANhFACYKsxevTovP322zniiCPSvXv3JMm//du/Zb/99stRRx2VAQMGpFOnTjnuuOM2+TiTJk1Kt27dcsghh+Tkk0/OhRdemBYtWlTf3qJFizzyyCPp3r17TjjhhPTu3TtnnHFGVq1a5QgTwKdEqVw8SRsAAOBTzhElAACAAqEEAABQIJQAAAAKhBIAAECBUAIAACgQSgAAAAVCCQAAoEAoAQAAFAglAACAAqEEAABQIJQAAAAK/j96cpMKrj98qAAAAABJRU5ErkJggg==\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "plt.figure(figsize=(10, 6))\n",
+ "\n",
+ "plt.hist(dice_rool['value'], bins=len(frequency_distribution.keys()), edgecolor='black')\n",
+ "plt.xlabel('Value')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Frequency distribution')\n",
+ "\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "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": 14,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Unnamed: 0 \n",
+ " roll \n",
+ " value \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 0 \n",
+ " 0 \n",
+ " 5 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 1 \n",
+ " 1 \n",
+ " 6 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 2 \n",
+ " 2 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " 3 \n",
+ " 3 \n",
+ " 6 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 4 \n",
+ " 4 \n",
+ " 5 \n",
+ " \n",
+ " \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " \n",
+ " \n",
+ " 995 \n",
+ " 995 \n",
+ " 995 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ " 996 \n",
+ " 996 \n",
+ " 996 \n",
+ " 4 \n",
+ " \n",
+ " \n",
+ " 997 \n",
+ " 997 \n",
+ " 997 \n",
+ " 4 \n",
+ " \n",
+ " \n",
+ " 998 \n",
+ " 998 \n",
+ " 998 \n",
+ " 3 \n",
+ " \n",
+ " \n",
+ " 999 \n",
+ " 999 \n",
+ " 999 \n",
+ " 6 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
1000 rows × 3 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Unnamed: 0 roll value\n",
+ "0 0 0 5\n",
+ "1 1 1 6\n",
+ "2 2 2 1\n",
+ "3 3 3 6\n",
+ "4 4 4 5\n",
+ ".. ... ... ...\n",
+ "995 995 995 1\n",
+ "996 996 996 4\n",
+ "997 997 997 4\n",
+ "998 998 998 3\n",
+ "999 999 999 6\n",
+ "\n",
+ "[1000 rows x 3 columns]"
+ ]
+ },
+ "execution_count": 14,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "rool_dice_thousand = pd.read_csv(r\"C:\\Users\\dulce\\OneDrive\\Documentos\\Ironhack git\\Labs\\Labs week 4\\Descriptive-Stats\\data\\roll_the_dice_thousand.csv\")\n",
+ "\n",
+ "rool_dice_thousand "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 15,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAArcAAAIhCAYAAABUopIpAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA/l0lEQVR4nO3deVxWZf7/8fedwI0goohsiUilaaHm0qKWQi6JRqY1mUtiLo2jmY76bcJmvuKMSdloNlpmi6hpac3XrMbS3K3MySXNLbdUNCESFwQFEc7vjx7eP28BhVvkhsvX8/E4Dz3Xuc45n/ucG3l77uuc22ZZliUAAADAADe5uwAAAACgrBBuAQAAYAzCLQAAAIxBuAUAAIAxCLcAAAAwBuEWAAAAxiDcAgAAwBiEWwAAABiDcAsAAABjEG6BcjR79mzZbLYipzFjxri7vBtCYmKibDabU1u9evXUv3//Um1n/fr1SkxM1KlTp0q13uX7WrNmjWw2m/7973+XajtXcvbsWSUmJmrNmjWFll18Dx46dKjM9nc1V3rfXzrVq1dPktS/f39Vq1at3OqryGw2mxITE6/7for6uYiOjlZ0dPR13zdQ1jzcXQBwI0pOTlbDhg2d2sLCwtxUDT755BNVr169VOusX79e48ePV//+/VWjRo3ruq/SOnv2rMaPHy9JhcJJ165d9d133yk0NPS61lDUPi/VqlUrPf744xo9erSjzW63l1tNAMxFuAXcICoqSi1btixR37y8PNlsNnl48ON6vTRr1uy67+PcuXOqWrVquezrSmrXrq3atWtXiH0GBwfrvvvuK9dabhT8u4EbGcMSgArk4kfU77//vkaPHq2bb75Zdrtd+/fvlyStWLFC7du3V/Xq1eXj46M2bdpo5cqVhbazZMkS3XXXXbLb7YqMjNQ///nPQh87Hjp0SDabTbNnzy60flEfhe7bt0+9e/dWUFCQ7Ha7GjVqpDfeeKPI+j/88EO9+OKLCgsLU/Xq1dWhQwft2bOn0H6WLl2q9u3by9/fXz4+PmrUqJGSkpIkSe+//75sNluhK36S9Pe//12enp46duzYFY9nUcehKJcPFSgoKNCECRN0++23q2rVqqpRo4aaNGmi119/XdLvH+H+z//8jyQpMjLS8bH6xWEA9erV08MPP6xFixapWbNm8vb2dlxJLW4IRE5OjkaNGqWQkBBVrVpV7dq10w8//ODUp7iPifv37+/4SP/QoUOOIDl+/HhHbRf3WdywhFmzZqlp06by9vZWQECAunfvrt27dxfaT7Vq1bR//3516dJF1apVU3h4uEaPHq3c3Nwij+21KMl+Tpw4oaFDh+rmm2+Wl5eXbrnlFr344otO/UrzXv/tt9/0zDPPKDw8XHa7XbVr11abNm20YsUKR5/ly5erW7duqlOnjry9vXXbbbfpj3/8o44fP+607Ys/czt37lSvXr3k7++v4OBgDRgwQKdPn3bqm5mZqcGDB6tWrVqqVq2aOnfurL1795boOF3t342SnNuSmjFjhpo2bapq1arJz89PDRs21NixY13aFnC98F86wA3y8/N14cIFp7ZLr7AkJCSoVatWeuutt3TTTTcpKChI8+bNU79+/dStWzfNmTNHnp6emjlzph566CEtW7ZM7du3lyStXLlS3bp1U6tWrbRgwQLl5+dr0qRJ+vXXX12ud9euXWrdurXq1q2ryZMnKyQkRMuWLdNzzz2n48ePa9y4cU79x44dqzZt2ujdd99VZmam/vKXvyguLk67d+9WlSpVJEnvvfeeBg8erHbt2umtt95SUFCQ9u7dqx07dkiSevbsqeeff15vvPGGWrVq5dj2hQsXNHPmTHXv3v2KQzmu5ThMmjRJiYmJ+utf/6q2bdsqLy9PP/30k2N87aBBg3TixAlNmzZNixYtcnzEf8cddzi2sWXLFu3evVt//etfFRkZKV9f3yvuc+zYsWrevLneffddnT59WomJiYqOjtYPP/ygW2655ao1XxQaGqqlS5eqc+fOGjhwoAYNGiRJV7xam5SUpLFjx6pXr15KSkpSRkaGEhMT1apVK23cuFH169d39M3Ly9MjjzyigQMHavTo0Vq3bp3+8Y9/yN/fX//7v/9b4jqvpiT7ycnJUUxMjA4cOKDx48erSZMm+vrrr5WUlKStW7dqyZIlpd7vU089pS1btuill15SgwYNdOrUKW3ZskUZGRmOPgcOHFCrVq00aNAg+fv769ChQ5oyZYruv/9+bd++XZ6enk7bfOyxx9SzZ08NHDhQ27dvV0JCgqTfQ6ckWZalRx99VOvXr9f//u//6u6779a3336r2NjYUtVe1L8bpTm3V7NgwQINHTpUw4cP1z//+U/ddNNN2r9/v3bt2lWqOoHrzgJQbpKTky1JRU55eXnW6tWrLUlW27ZtndbLzs62AgICrLi4OKf2/Px8q2nTptY999zjaLv33nutsLAw69y5c462zMxMKyAgwLr0R/7gwYOWJCs5OblQnZKscePGOeYfeughq06dOtbp06ed+j377LOWt7e3deLECcuyLEf9Xbp0cer30UcfWZKs7777zrIsyzpz5oxVvXp16/7777cKCgqKPV7jxo2zvLy8rF9//dXRtnDhQkuStXbt2mLXK81xsCzLioiIsOLj4x3zDz/8sHXXXXddcfuvvvqqJck6ePBgoWURERFWlSpVrD179hS57NJ9XTxmzZs3dzoWhw4dsjw9Pa1BgwY52tq1a2e1a9eu0Dbj4+OtiIgIx/xvv/1W6BxedPE9eLHukydPWlWrVi10zlJSUiy73W717t3baT+SrI8++sipb5cuXazbb7+90L6uRJI1bNiwIpeVdD9vvfVWkf1eeeUVS5L11VdfWZZVuvd6tWrVrJEjR5b4dRQUFFh5eXnW4cOHLUnWp59+6lg2btw4S5I1adIkp3WGDh1qeXt7O873l19+aUmyXn/9dad+L730UrHn8VLF/btRmnN7sdZLXf5+e/bZZ60aNWpcsRagImBYAuAGc+fO1caNG52mS6/cPvbYY079169frxMnTig+Pl4XLlxwTAUFBercubM2btyo7OxsZWdna+PGjerRo4e8vb0d6/v5+SkuLs6lWnNycrRy5Up1795dPj4+Tvvv0qWLcnJytGHDBqd1HnnkEaf5Jk2aSJIOHz7seD2ZmZkaOnRooTu0L/WnP/1JkvTOO+842qZPn67GjRurbdu2xa53rcfhnnvu0bZt2zR06FAtW7ZMmZmZV13nck2aNFGDBg1K3L93795OxyIiIkKtW7fW6tWrS73v0vjuu+907ty5QkMlwsPD9eCDDxYa9mKz2QodwyZNmjjObVkpyX5WrVolX19fPf744079Lr6WoobsXM0999yj2bNna8KECdqwYYPy8vIK9UlPT9eQIUMUHh4uDw8PeXp6KiIiQpKK/Li/qJ+HnJwcpaenS5LjHPfp08epX+/evUtV++X/bpT23F7NPffco1OnTqlXr1769NNPCw3DACoKwi3gBo0aNVLLli2dpktdfif7xY/SH3/8cXl6ejpNr7zyiizL0okTJ3Ty5EkVFBQoJCSk0D6LaiuJjIwMXbhwQdOmTSu07y5dukhSoV9ytWrVcpq/eBf8uXPnJP0+rlGS6tSpc8V9BwcHq2fPnpo5c6by8/P1448/6uuvv9azzz57xfWu9TgkJCTon//8pzZs2KDY2FjVqlVL7du316ZNm6667kWlfRpBcbVe+nH49XBx+0XVGxYWVmj/Pj4+Tv9hkH4/vzk5OWVaV0n2k5GRoZCQkEL/QQoKCpKHh4dLx27hwoWKj4/Xu+++q1atWikgIED9+vVTWlqapN/HY3fq1EmLFi3S888/r5UrV+r77793/Afv4nv8Ulf7ecjIyJCHh0ehfqX9mb38HJb23F7NU089pVmzZunw4cN67LHHFBQUpHvvvVfLly8v1XaA640xt0AFdPkv68DAQEnStGnTir27PDg42HGH9MVfxJe6vO1icLj8Bp3Lf+HVrFlTVapU0VNPPaVhw4YVue/IyMgrvJrCLo7/PHr06FX7jhgxQu+//74+/fRTLV26VDVq1Ch0hetyNWvWLPFxKIqHh4dGjRqlUaNG6dSpU1qxYoXGjh2rhx56SEeOHJGPj89Vt3GlK9JFKa7WSwOPt7d3oRuRpML/uSiNi9tPTU0ttOzYsWOO915FVKtWLf33v/+VZVlOxzs9PV0XLlxw1F7S97r0+8/a1KlTNXXqVKWkpOizzz7TCy+8oPT0dC1dulQ7duzQtm3bNHv2bMXHxzvWu3jzlquv48KFC8rIyHA63yV5r17q8vfc9Ti3Tz/9tJ5++mllZ2dr3bp1GjdunB5++GHt3bvXcfUacDeu3AKVQJs2bVSjRg3t2rWr0BXfi5OXl5d8fX11zz33aNGiRU5XuM6cOaPPP//caZvBwcHy9vbWjz/+6NT+6aefOs37+PgoJiZGP/zwg5o0aVLkvi+/4nQ1rVu3lr+/v9566y1ZlnXFvi1atFDr1q31yiuvaP78+erfv/9Vb84qzXG4mho1aujxxx/XsGHDdOLECcdTBi6/+natPvzwQ6djcfjwYa1fv97p6Qj16tXT3r17nUJaRkaG1q9f77St0tTWqlUrVa1aVfPmzXNqP3r0qFatWuW4UbEiat++vbKysrR48WKn9rlz5zqWSyV/r1+ubt26evbZZ9WxY0dt2bJF0v8PkJc/k3fmzJkuv46YmBhJ0vz5853aP/jgA5e3KV3fc+vr66vY2Fi9+OKLOn/+vHbu3HlNtQJliSu3QCVQrVo1TZs2TfHx8Tpx4oQef/xxBQUF6bffftO2bdv022+/acaMGZKkf/zjH+rcubM6duyo0aNHKz8/X6+88op8fX114sQJxzZtNpv69u2rWbNm6dZbb1XTpk31/fffF/kL9fXXX9f999+vBx54QH/6059Ur149nTlzRvv379fnn3+uVatWlfr1TJ48WYMGDVKHDh00ePBgBQcHa//+/dq2bZumT5/u1H/EiBHq2bOnbDabhg4dWqJ9lPQ4FCUuLs7xLOLatWvr8OHDmjp1qiIiIhx3lzdu3NhxbOLj4+Xp6anbb79dfn5+pToWF6Wnp6t79+4aPHiwTp8+rXHjxsnb29txZ730+8fCM2fOVN++fTV48GBlZGRo0qRJhb4Uws/PTxEREfr000/Vvn17BQQEKDAw0PG4sEvVqFFDf/vb3zR27Fj169dPvXr1UkZGhsaPHy9vb+9CT8KoSPr166c33nhD8fHxOnTokBo3bqxvvvlGEydOVJcuXdShQwdJJX+vnz59WjExMerdu7caNmwoPz8/bdy4UUuXLlWPHj0kSQ0bNtStt96qF154QZZlKSAgQJ9//vk1fTTfqVMntW3bVs8//7yys7PVsmVLffvtt3r//fddPzgq+3M7ePBgVa1aVW3atFFoaKjS0tKUlJQkf39/3X333ddUK1Cm3Ho7G3CDuXin+saNG4tcfvGu548//rjI5WvXrrW6du1qBQQEWJ6entbNN99sde3atVD/zz77zGrSpInl5eVl1a1b13r55ZeLvBv69OnT1qBBg6zg4GDL19fXiouLsw4dOlTkHdoHDx60BgwYYN18882Wp6enVbt2bat169bWhAkTrlp/cXerf/HFF1a7du0sX19fy8fHx7rjjjusV155pdDrzs3Ntex2u9W5c+cij0txSnocLn+CweTJk63WrVtbgYGBjnUHDhxoHTp0yGm9hIQEKywszLrpppssSdbq1asd2+vatWuRNRX3tIT333/feu6556zatWtbdrvdeuCBB6xNmzYVWn/OnDlWo0aNLG9vb+uOO+6wFi5cWOhpCZZlWStWrLCaNWtm2e12S5Jjn5c/LeGid99913Gs/P39rW7dulk7d+506hMfH2/5+voWqqmoY3o1usrTEkq6n4yMDGvIkCFWaGio5eHhYUVERFgJCQlWTk6OU7+SvNdzcnKsIUOGWE2aNLGq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wqVwO2LECKf5vLw8nT17Vl5eXvLx8SHcAgAAwC1celrCyZMnnaasrCzt2bNH999/PzeUAQAAwG1cCrdFqV+/vl5++eVCV3UBAACA8lJm4VaSqlSpomPHjpXlJgEAAIASc2nM7WeffeY0b1mWUlNTNX36dLVp06ZMCgMAAABKy6Vw++ijjzrN22w21a5dWw8++KAmT55cFnUBAAAApeZSuC0oKCjrOgAAAIBrVqZjbgEAAAB3cunK7ahRo0rcd8qUKa7sAgAAACg1l8LtDz/8oC1btujChQu6/fbbJUl79+5VlSpV1Lx5c0c/m81WNlUCAAAAJeBSuI2Li5Ofn5/mzJmjmjVrSvr9ix2efvppPfDAAxo9enSZFgkAAACUhEtjbidPnqykpCRHsJWkmjVrasKECTwtAQAAAG7jUrjNzMzUr7/+Wqg9PT1dZ86cueaiAAAAAFe4FG67d++up59+Wv/+97919OhRHT16VP/+9781cOBA9ejRo6xrBAAAAErEpTG3b731lsaMGaO+ffsqLy/v9w15eGjgwIF69dVXy7RAAAAAoKRcCrc+Pj5688039eqrr+rAgQOyLEu33XabfH19y7o+AAAAoMSu6UscUlNTlZqaqgYNGsjX11eWZZVVXQAAAECpuRRuMzIy1L59ezVo0EBdunRRamqqJGnQoEE8BgwAAABu41K4/fOf/yxPT0+lpKTIx8fH0d6zZ08tXbq0zIoDAAAASsOlMbdfffWVli1bpjp16ji1169fX4cPHy6TwgAAAIDScunKbXZ2ttMV24uOHz8uu91+zUUBAAAArnAp3LZt21Zz5851zNtsNhUUFOjVV19VTExMmRUHAAAAlIZLwxJeffVVRUdHa9OmTTp//ryef/557dy5UydOnNC3335b1jUCAAAAJeLSlds77rhDP/74o+655x517NhR2dnZ6tGjh3744QfdeuutZV0jAAAAUCKlvnKbl5enTp06aebMmRo/fvz1qAkAAABwSamv3Hp6emrHjh2y2WzXox4AAADAZS4NS+jXr5/ee++9sq4FAAAAuCYu3VB2/vx5vfvuu1q+fLlatmwpX19fp+VTpkwpk+IAAACA0ihVuP35559Vr1497dixQ82bN5ck7d2716kPwxUAAADgLqUKt/Xr11dqaqpWr14t6fev2/3Xv/6l4ODg61IcAAAAUBqlGnNr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HdP27dvdXRJK6OTJk2rTpo08PT315ZdfateuXZo8ebJbvum1OEY857ayiI2NVWxsrLvLgIuWLl3qNJ+cnKygoCBt3rxZbdu2dVNVKI24uDin+ZdeekkzZszQhg0bdOedd7qpKrgiKytLffr00TvvvKMJEya4uxyUkoeHB1drK6lXXnlF4eHhSk5OdrTVq1fPfQUVgSu3gItOnz4tSQoICHBzJXBFfn6+FixYoOzsbLVq1crd5aCUhg0bpq5du6pDhw7uLgUu2Ldvn8LCwhQZGaknn3xSP//8s7tLQgl99tlnatmypf7whz8oKChIzZo10zvvvOPuspwQbgEXWJalUaNG6f7771dUVJS7y0EpbN++XdWqVZPdbteQIUP0ySef6I477nB3WSiFBQsWaMuWLUpKSnJ3KXDBvffeq7lz52rZsmV65513lJaWptatWysjI8PdpaEEfv75Z82YMUP169fXsmXLNGTIED333HOaO3euu0tzYFgC4IJnn31WP/74o7755ht3l4JSuv3227V161adOnVK//d//6f4+HitXbuWgFtJHDlyRCNGjNBXX30lb29vd5cDF1w6PK9x48Zq1aqVbr31Vs2ZM0ejRo1yY2UoiYKCArVs2VITJ06UJDVr1kw7d+7UjBkz1K9fPzdX9zuu3AKlNHz4cH322WdavXq16tSp4+5yUEpeXl667bbb1LJlSyUlJalp06Z6/fXX3V0WSmjz5s1KT09XixYt5OHhIQ8PD61du1b/+te/5OHhofz8fHeXiFLy9fVV48aNtW/fPneXghIIDQ0tdDGgUaNGSklJcVNFhXHlFighy7I0fPhwffLJJ1qzZo0iIyPdXRLKgGVZys3NdXcZKKH27dsXurP+6aefVsOGDfWXv/xFVapUcVNlcFVubq52796tBx54wN2loATatGlT6DGYe/fuVUREhJsqKoxwW46ysrK0f/9+x/zBgwe1detWBQQEqG7dum6sDCUxbNgwffDBB/r000/l5+entLQ0SZK/v7+qVq3q5upQEmPHjlVsbKzCw8N15swZLViwQGvWrCn0JAxUXH5+foXGufv6+qpWrVqMf68kxowZo7i4ONWtW1fp6emaMGGCMjMzFR8f7+7SUAJ//vOf1bp1a02cOFFPPPGEvv/+e7399tt6++233V2aA+G2HG3atEkxMTGO+Ytji+Lj4zV79mw3VYWSmjFjhiQpOjraqT05OVn9+/cv/4JQar/++queeuoppaamyt/fX02aNNHSpUvVsWNHd5cG3DCOHj2qXr166fjx46pdu7buu+8+bdiwoUJd+UPx7r77bn3yySdKSEjQ3//+d0VGRmrq1Knq06ePu0tzsFmWZbm7CAAAAKAscEMZAAAAjEG4BQAAgDEItwAAADAG4RYAAADGINwCAADAGIRbAAAAGINwCwAAAGMQbgEAAGAMwi0AGCY6OlojR450dxkA4BaEWwCoQOLi4tShQ4cil3333Xey2WzasmVLOVcFAJUH4RYAKpCBAwdq1apVOnz4cKFls2bN0l133aXmzZu7oTIAqBwItwBQgTz88MMKCgrS7NmzndrPnj2rhQsX6tFHH1WvXr1Up04d+fj4qHHjxvrwww+vuE2bzabFixc7tdWoUcNpH7/88ot69uypmjVrqlatWurWrZsOHTpUNi8KAMoR4RYAKhAPDw/169dPs2fPlmVZjvaPP/5Y58+f16BBg9SiRQv95z//0Y4dO/TMM8/oqaee0n//+1+X93n27FnFxMSoWrVqWrdunb755htVq1ZNnTt31vnz58viZQFAuSHcAkAFM2DAAB06dEhr1qxxtM2aNUs9evTQzTffrDFjxuiuu+7SLbfcouHDh+uhhx7Sxx9/7PL+FixYoJtuuknvvvuuGjdurEaNGik5OVkpKSlONQBAZeDh7gIAAM4aNmyo1q1ba9asWYqJidGBAwf09ddf66uvvlJ+fr5efvllLVy4UL/88otyc3OVm5srX19fl/e3efNm7d+/X35+fk7tOTk5OnDgwLW+HAAoV4RbAKiABg4cqGeffVZvvPGGkpOTFRERofbt2+vVV1/Va6+9pqlTp6px48by9fXVyJEjrzh8wGazOQ1xkKS8vDzH3wsKCtSiRQvNnz+/0Lq1a9cuuxcFAOWAcAsAFdATTzyhESNG6IMPPtCcOXM0ePBg2Ww2ff311+rWrZv69u0r6fdgum/fPjVq1KjYbdWuXVupqamO+X379uns2bOO+ebNm2vhwoUKCgpS9erVr9+LAoBywJhbAKiAqlWrpp49e2rs2LE6duyY+vfvL0m67bbbtHz5cq1fv167d+/WH//4R6WlpV1xWw8++KCmT5+uLVu2aNOmTRoyZIg8PT0dy/v06aPAwEB169ZNX3/9tQ4ePKi1a9dqxIgROnr06PV8mQBQ5gi3AFBBDRw4UCdPnlSHDh1Ut25dSdLf/vY3NW/eXA899JCio6MVEhKiRx999IrbmTx5ssLDw9W2bVv17t1bY8aMkY+Pj2O5j4+P1q1bp7p166pHjx5q1KiRBgwYoHPnznElF0ClY7MuH4gFAAAAVFJcuQUAAIAxCLcAAAAwBuEWAAAAxiDcAgAAwBiEWwAAABiDcAsAAABjEG4BAABgDMItAAAAjEG4BQAAgDEItwAAADAG4RYAAADG+H+GdHng0WJnegAAAABJRU5ErkJggg==\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "frequency_distribution_1000 = calculate_frequency_distribution(rool_dice_thousand ['value'])\n",
+ "\n",
+ "plt.figure(figsize=(8, 6))\n",
+ "plt.hist(rool_dice_thousand ['value'], bins=len(frequency_distribution_1000.keys()), color = 'orange', edgecolor='black')\n",
+ "plt.xlabel('Value')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Frequency distribution Thousand rolls')\n",
+ "\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# The frequency distribution of the dice values becomes more normally distributed.\n",
+ "# As the size of the sample increases, the means, became more normally distributed."
+ ]
+ },
+ {
+ "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": 16,
+ "metadata": {
+ "scrolled": true
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " observation \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 68.0 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 12.0 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 45.0 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " 38.0 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 49.0 \n",
+ " \n",
+ " \n",
+ " ... \n",
+ " ... \n",
+ " \n",
+ " \n",
+ " 995 \n",
+ " 27.0 \n",
+ " \n",
+ " \n",
+ " 996 \n",
+ " 47.0 \n",
+ " \n",
+ " \n",
+ " 997 \n",
+ " 53.0 \n",
+ " \n",
+ " \n",
+ " 998 \n",
+ " 33.0 \n",
+ " \n",
+ " \n",
+ " 999 \n",
+ " 31.0 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
1000 rows × 1 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " observation\n",
+ "0 68.0\n",
+ "1 12.0\n",
+ "2 45.0\n",
+ "3 38.0\n",
+ "4 49.0\n",
+ ".. ...\n",
+ "995 27.0\n",
+ "996 47.0\n",
+ "997 53.0\n",
+ "998 33.0\n",
+ "999 31.0\n",
+ "\n",
+ "[1000 rows x 1 columns]"
+ ]
+ },
+ "execution_count": 16,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "import pandas as pd\n",
+ "\n",
+ "population = pd.read_csv(r\"C:\\Users\\dulce\\OneDrive\\Documentos\\Ironhack git\\Labs\\Labs week 4\\Descriptive-Stats\\data\\ages_population.csv\")\n",
+ "\n",
+ "population"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 28,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAq8AAAIhCAYAAABg21M1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABHC0lEQVR4nO3deXgUVfr+/7sh0FkIayAhSkLUAEFAQRSJCiiyyyi4IUZAxa8jOoKgKItDcCAIfGBwRDZlEEVEGXEbN6JiXKIDIpsYAyoQFGJstgBZkOT8/vCXlqazb5VKv1/X1Zf2OVXVTx9CclOpetphjDECAAAAbKCO1QUAAAAApUV4BQAAgG0QXgEAAGAbhFcAAADYBuEVAAAAtkF4BQAAgG0QXgEAAGAbhFcAAADYBuEVAAAAtkF4BWqB559/Xg6Ho9DHww8/bHV5PiE+Pl4Oh8NjrHXr1ho1alSZjpOcnKz4+HgdPXq0TPud/VqffPKJHA6H/vOf/5TpOMXJyspSfHy8PvnkE6+5gq/BvXv3VtrrVYWpU6cqIiJCfn5+aty4sdXlACgHP6sLAFB5VqxYoXbt2nmMhYeHW1QNXn/9dTVs2LBM+yQnJ2v69OkaNWpUmcJVeV6rrLKysjR9+nRJUq9evTzmBg0apC+//FItW7as0hoq4s0339TMmTM1ZcoUDRgwQE6n0+qSAJQD4RWoRTp06KCuXbuWatvff/9dDodDfn58G6gqnTt3rvLXyM7OVkBAQLW8VnGaN2+u5s2bW1pDSb799ltJ0oMPPqgWLVpYXA2A8uKyAcAHFPwK+cUXX9SECRN0zjnnyOl06ocffpAkffjhh+rdu7caNmyowMBAXXHFFfroo4+8jvPOO+/o4osvltPpVFRUlP7v//7P69fle/fulcPh0PPPP++1v8PhUHx8vMfY7t27NXz4cLVo0UJOp1MxMTF65plnCq3/5Zdf1pQpUxQeHq6GDRvq2muvVWpqqtfrvP/+++rdu7caNWqkwMBAxcTEaNasWZKkF198UQ6HQ19++aXXfk888YTq1aunAwcOFLueha1DYc7+VX5+fr5mzJihtm3bKiAgQI0bN1anTp301FNPSfrj0oNHHnlEkhQVFeW+9KPg1/StW7fWddddp3Xr1qlz587y9/d3nwkt6hKFnJwcjR8/XmFhYQoICFDPnj21ZcsWj2169erldSZVkkaNGqXWrVtL+uPPtSCcTp8+3V1bwWsWddnAv//9b1100UXy9/dX06ZNNWTIEKWkpHi9ToMGDfTDDz9o4MCBatCggVq1aqUJEyYoNze30LU9U35+vubMmaN27drJ6XSqRYsWGjFihH7++Wf3Nq1bt9bUqVMlSaGhoYV+LZ7p66+/1rBhw9S6dWsFBASodevWuu2227Rv3z6vbT///HN1795d/v7+Ouecc/T444/rueeeK3Q9XnnlFXXv3l1BQUFq0KCB+vXr5/Xn8dNPP2nYsGEKDw+X0+lUaGioevfura1bt5a4FoAv4JQLUIvk5eXp9OnTHmNnnlmdNGmSunfvriVLlqhOnTpq0aKFVq1apREjRuj666/XypUrVa9ePS1dulT9+vXTBx98oN69e0uSPvroI11//fXq3r271qxZo7y8PM2ZM0e//vpruev97rvvFBsbq4iICM2bN09hYWH64IMP9OCDD8rlcmnatGke20+ePFlXXHGFnnvuOWVmZurRRx/V4MGDlZKSorp160qSli9frnvuuUc9e/bUkiVL1KJFC+3atct91u3WW2/VxIkT9cwzz6h79+7uY58+fVpLly7VkCFDir3UoiLrMGfOHMXHx2vq1Knq0aOHfv/9d33//ffu61tHjx6tw4cP6+mnn9a6devcv4Jv3769+xjffPONUlJSNHXqVEVFRSkoKKjY15w8ebK6dOmi5557TseOHVN8fLx69eqlLVu26Lzzziux5gItW7bU+++/r/79++vuu+/W6NGjJanYs62zZs3S5MmTddttt2nWrFk6dOiQ4uPj1b17d23atEnR0dHubX///Xf95S9/0d13360JEybo008/1T/+8Q81atRIf//734ut7b777tOyZcv0wAMP6LrrrtPevXv1+OOP65NPPtE333yjkJAQvf7663rmmWe0fPlyvf/++2rUqJHOPffcIo+5d+9etW3bVsOGDVPTpk118OBBLV68WJdeeqm+++47hYSESJK2b9+uPn36qE2bNlq5cqUCAwO1ZMkSrVq1yuuYCQkJmjp1qu68805NnTpVp06d0ty5c3XVVVdp48aN7j/ngQMHur+uIiIi5HK5lJycXObroIFaywCwvRUrVhhJhT5+//13s2HDBiPJ9OjRw2O/kydPmqZNm5rBgwd7jOfl5ZmLLrrIXHbZZe6xbt26mfDwcJOdne0ey8zMNE2bNjVnfivZs2ePkWRWrFjhVackM23aNPfzfv36mXPPPdccO3bMY7sHHnjA+Pv7m8OHDxtjjLv+gQMHemz36quvGknmyy+/NMYYc/z4cdOwYUNz5ZVXmvz8/CLXa9q0aaZ+/frm119/dY+98sorRpJJSkoqcr+yrIMxxkRGRpqRI0e6n1933XXm4osvLvb4c+fONZLMnj17vOYiIyNN3bp1TWpqaqFzZ75WwZp16dLFYy327t1r6tWrZ0aPHu0e69mzp+nZs6fXMUeOHGkiIyPdz3/77TevP8MCBV+DBXUfOXLEBAQEeP2ZpaWlGafTaYYPH+7xOpLMq6++6rHtwIEDTdu2bb1e60wpKSlGkhkzZozH+P/+9z8jyUyePNk9Nm3aNCPJ/Pbbb8UeszCnT582J06cMEFBQeapp55yj998880mKCjI45h5eXmmffv2HuuRlpZm/Pz8zN/+9jeP4x4/ftyEhYWZW265xRhjjMvlMpLMggULylwj4Cu4bACoRV544QVt2rTJ43Hmmdcbb7zRY/vk5GQdPnxYI0eO1OnTp92P/Px89e/fX5s2bdLJkyd18uRJbdq0SUOHDpW/v797/+DgYA0ePLhctebk5Oijjz7SkCFDFBgY6PH6AwcOVE5Ojr766iuPff7yl794PO/UqZMkuX+Vm5ycrMzMTI0ZM8brzv8z3XfffZKkZ5991j22cOFCdezYUT169Chyv4quw2WXXaZt27ZpzJgx+uCDD5SZmVniPmfr1KmT2rRpU+rthw8f7rEWkZGRio2N1YYNG8r82mXx5ZdfKjs72+tShlatWumaa67xuizF4XB4rWGnTp0K/TX9mQrex9mvc9lllykmJqbQy19K48SJE3r00Ud1wQUXyM/PT35+fmrQoIFOnjzpcdlDUlKSrrnmGveZWEmqU6eObrnlFo/jffDBBzp9+rRGjBjh8bXu7++vnj17ui8Nadq0qc4//3zNnTtX8+fP15YtW5Sfn1+u9wDUVlw2ANQiMTExxd6wdfad4AW/6r7pppuK3Ofw4cNyOBzKz89XWFiY13xhY6Vx6NAhnT59Wk8//bSefvrpQrdxuVwez5s1a+bxvOBu8ezsbEnSb7/9JknF/jpY+uOax1tvvVVLly7VY489pp07d+qzzz7T0qVLi93vyJEjFVqHSZMmKSgoSKtWrdKSJUtUt25d9ejRQ7Nnzy71jXZlvZu/qFq3bdtWpuOU1aFDhyQVXm94eLgSExM9xgIDAz3+QSD98eebk5NTodcpKfwWZfjw4froo4/0+OOP69JLL1XDhg3lcDg0cOBA99dbweuHhoZ67X/2WMHftUsvvbTQ16tT549zSQ6HQx999JGeeOIJzZkzRxMmTFDTpk11++23a+bMmQoODi7X+wFqE8Ir4EPOPhtZcLbo6aef1uWXX17oPqGhoe7OBOnp6V7zZ48VBJCzb7QpCBkFmjRporp16+qOO+7Q/fffX+hrR0VFFfNuvBVcf3nmjTpFGTt2rF588UW9+eabev/999W4cWPdfvvtxe7TpEmTUq9DYfz8/DR+/HiNHz9eR48e1YcffqjJkyerX79+2r9/vwIDA0s8RnFnlAtTVK1n/kPA399fx44d89ru7H88lEXB8Q8ePOg1d+DAAY8zlRVx5uuc/Y+W8r7OsWPH9N///lfTpk3TY4895h7Pzc3V4cOHvV6/sOudz173gjr+85//KDIystjXj4yM1PLlyyVJu3bt0quvvqr4+HidOnVKS5YsKfP7AWobLhsAfNgVV1yhxo0b67vvvlPXrl0LfdSvX19BQUG67LLLtG7dOo8zYcePH9fbb7/tcczQ0FD5+/tr+/btHuNvvvmmx/PAwEBdffXV2rJlizp16lToa599prUksbGxatSokZYsWSJjTLHbXnLJJYqNjdXs2bP10ksvadSoUSXe/FSWdShJ48aNddNNN+n+++/X4cOH3Xeln302uaJefvllj7XYt2+fkpOTPboLtG7dWrt27fL4B8ehQ4eUnJzscayy1Na9e3cFBAR43bj0888/6+OPP3bfCFhR11xzjSR5vc6mTZuUkpJSrtdxOBwyxnj1gX3uueeUl5fnMdazZ099/PHHHkE/Pz9fa9eu9diuX79+8vPz048//ljk37XCtGnTRlOnTlXHjh31zTfflPm9ALURZ14BH9agQQM9/fTTGjlypA4fPqybbrpJLVq00G+//aZt27bpt99+0+LFiyVJ//jHP9S/f3/16dNHEyZMUF5enmbPnq2goCCPs1EOh0NxcXH697//rfPPP18XXXSRNm7cqNWrV3u9/lNPPaUrr7xSV111le677z61bt1ax48f1w8//KC3335bH3/8cZnfz7x58zR69Ghde+21uueeexQaGqoffvhB27Zt08KFCz22Hzt2rG699VY5HA6NGTOmVK9R2nUozODBg929eJs3b659+/ZpwYIFioyMdN9537FjR/fajBw5UvXq1VPbtm3L/evijIwMDRkyRPfcc4+OHTumadOmyd/fX5MmTXJvc8cdd2jp0qWKi4vTPffco0OHDmnOnDleH3oQHBysyMhIvfnmm+rdu7eaNm2qkJAQdzutMzVu3FiPP/64Jk+erBEjRui2227ToUOHNH36dPn7+3t1kiivtm3b6v/9v/+np59+WnXq1NGAAQPc3QZatWqlhx56qMzHbNiwoXr06KG5c+e6319SUpKWL1/u9cERU6ZM0dtvv63evXtrypQpCggI0JIlS3Ty5ElJf14O0Lp1az3xxBOaMmWKfvrpJ/Xv319NmjTRr7/+qo0bNyooKEjTp0/X9u3b9cADD+jmm29WdHS06tevr48//ljbt2/3OAsM+DSLbxgDUAkK7vTetGlTofMFd56vXbu20PmkpCQzaNAg07RpU1OvXj1zzjnnmEGDBnlt/9Zbb5lOnTqZ+vXrm4iICPPkk0+67+A+07Fjx8zo0aNNaGioCQoKMoMHDzZ79+4t9E71PXv2mLvuusucc845pl69eqZ58+YmNjbWzJgxo8T6i+ps8O6775qePXuaoKAgExgYaNq3b29mz57t9b5zc3ON0+k0/fv3L3RdilLadTi7A8C8efNMbGysCQkJce979913m71793rsN2nSJBMeHm7q1KljJJkNGza4jzdo0KBCayqq28CLL75oHnzwQdO8eXPjdDrNVVddZb7++muv/VeuXGliYmKMv7+/ad++vXnllVe8ug0YY8yHH35oOnfubJxOp5Hkfs2zuw0UeO6559xr1ahRI3P99debnTt3emwzcuRIExQU5FVTYWtamLy8PDN79mzTpk0bU69ePRMSEmLi4uLM/v37Cz1eaboN/Pzzz+bGG280TZo0McHBwaZ///7m22+/9VpnY4z57LPPTLdu3YzT6TRhYWHmkUceMbNnzzaSzNGjRz22feONN8zVV19tGjZsaJxOp4mMjDQ33XST+fDDD40xxvz6669m1KhRpl27diYoKMg0aNDAdOrUyfzzn/80p0+fLrFuwBc4jCnhd2sAUIz4+HhNnz69xF/T10Rvv/22/vKXv+idd97RwIEDrS4HtUjfvn21d+9e7dq1y+pSgFqHywYA+JzvvvtO+/bt04QJE3TxxRdrwIABVpcEGxs/frw6d+6sVq1a6fDhw3rppZeUmJjovukKQOUivALwOWPGjNEXX3yhLl26aOXKlWW+gx84U15env7+978rPT1dDodD7du314svvqi4uDirSwNqJS4bAAAAgG3QKgsAAAC2QXgFAACAbRBeAQAAYBu1/oat/Px8HThwQMHBwdyUAQAAUAMZY3T8+HGFh4e7P9yjKLU+vB44cECtWrWyugwAAACUYP/+/Tr33HOL3abWh9eCj1Tcv3+/10cdAgAAwHqZmZlq1apVqT4Ku9aH14JLBRo2bEh4BQAAqMFKc4knN2wBAADANgivAAAAsA3CKwAAAGyD8AoAAADbILwCAADANgivAAAAsA3CKwAAAGyD8AoAAADbILwCAADANgivAAAAsA3CKwAAAGyD8AoAAADbILwCAADANgivAAAAsA3CKwAAAGzD8vD6yy+/KC4uTs2aNVNgYKAuvvhibd682T1vjFF8fLzCw8MVEBCgXr16aefOnRZWDAAAAKtYGl6PHDmiK664QvXq1dN7772n7777TvPmzVPjxo3d28yZM0fz58/XwoULtWnTJoWFhalPnz46fvy4dYUDAADAEg5jjLHqxR977DF98cUX+uyzzwqdN8YoPDxc48aN06OPPipJys3NVWhoqGbPnq177723xNfIzMxUo0aNdOzYMTVs2LBS6wcAAEDFlSWv+VVTTYV666231K9fP918881KSkrSOeecozFjxuiee+6RJO3Zs0fp6enq27evex+n06mePXsqOTm50PCam5ur3Nxc9/PMzMyqfyMAfFJaWppcLleR8yEhIYqIiKjGigCg9rM0vP70009avHixxo8fr8mTJ2vjxo168MEH5XQ6NWLECKWnp0uSQkNDPfYLDQ3Vvn37Cj3mrFmzNH369CqvHYBvS0tLU0y7tsrKzilym8AAf6V8n0qABYBKZGl4zc/PV9euXZWQkCBJ6ty5s3bu3KnFixdrxIgR7u0cDofHfsYYr7ECkyZN0vjx493PMzMz1apVqyqoHoAvc7lcysrO0aoxUky493zKASluUY5cLhfhFQAqkaXhtWXLlmrfvr3HWExMjF577TVJUlhYmCQpPT1dLVu2dG+TkZHhdTa2gNPplNPprKKKAcBTTLjUJcrqKgDAd1jabeCKK65Qamqqx9iuXbsUGRkpSYqKilJYWJgSExPd86dOnVJSUpJiY2OrtVYAAABYz9Izrw899JBiY2OVkJCgW265RRs3btSyZcu0bNkySX9cLjBu3DglJCQoOjpa0dHRSkhIUGBgoIYPH25l6QAAALCApeH10ksv1euvv65JkybpiSeeUFRUlBYsWKDbb7/dvc3EiROVnZ2tMWPG6MiRI+rWrZvWr1+v4OBgCysHAACAFSwNr5J03XXX6brrrity3uFwKD4+XvHx8dVXFAAAAGokyz8eFgAAACgtwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsw9LwGh8fL4fD4fEICwtzzxtjFB8fr/DwcAUEBKhXr17auXOnhRUDAADASpafeb3wwgt18OBB92PHjh3uuTlz5mj+/PlauHChNm3apLCwMPXp00fHjx+3sGIAAABYxfLw6ufnp7CwMPejefPmkv4467pgwQJNmTJFQ4cOVYcOHbRy5UplZWVp9erVFlcNAAAAK1geXnfv3q3w8HBFRUVp2LBh+umnnyRJe/bsUXp6uvr27eve1ul0qmfPnkpOTi7yeLm5ucrMzPR4AAAAoHawNLx269ZNL7zwgj744AM9++yzSk9PV2xsrA4dOqT09HRJUmhoqMc+oaGh7rnCzJo1S40aNXI/WrVqVaXvAQAAANXH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V06ns8h52oABsKtyhdf8/Hzl5eV5jf/8888KDg6ucFEAgKIdPCrVcUhxcXFFblO3jpSXX/QxaAMGwK7KFV779OmjBQsWaNmyZZIkh8OhEydOaNq0aXxkLABUsaNZUr5RkW2+3t0mPb626HnagAGws3KF13/+85+6+uqr1b59e+Xk5Gj48OHavXu3QkJC9PLLL1d2jQCAQhTV5ivlQPHzAGBn5Qqv4eHh2rp1q15++WV98803ys/P1913363bb7/d4wYuAAAAoDKVK7xKUkBAgO666y7dddddlVkPAAAAUKRyhdcXXnih2PkRI0aUqxgAAACgOOUKr2PHjvV4/vvvvysrK0v169dXYGAg4RVArVFUO6ri2lQBAKpOucLrkSNHvMZ2796t++67T4888kiFiwIAq5WmHRUAoPqV+5rXs0VHR+vJJ59UXFycvv/++8o6LABYorTtqAAA1avSwqsk1a1bVwcOHKjMQwKApUpqRwUAqF7lCq9vvfWWx3NjjA4ePKiFCxfqiiuuqJTCAAAAgLOVK7zecMMNHs8dDoeaN2+ua665RvPmzSv1cRYvXqzFixdr7969kqQLL7xQf//73zVgwABJf4Ti6dOna9myZTpy5Ii6deumZ555RhdeeGF5ygYAAIDNlSu85ucX84HZZXDuuefqySef1AUXXCBJWrlypa6//npt2bJFF154oebMmaP58+fr+eefV5s2bTRjxgz16dNHqampCg4OrpQaAAAAYB91rHzxwYMHa+DAgWrTpo3atGmjmTNnqkGDBvrqq69kjNGCBQs0ZcoUDR06VB06dNDKlSuVlZWl1atXW1k2AAAALFKuM6/jx48v9bbz588v1XZ5eXlau3atTp48qe7du2vPnj1KT09X37593ds4nU717NlTycnJuvfeews9Tm5urnJzc93PMzMzS10rgJonLS1NLper0LmQkBBFRERUc0UAACuVK7xu2bJF33zzjU6fPq22bdtKknbt2qW6deuqS5cu7u0cDkeJx9qxY4e6d++unJwcNWjQQK+//rrat2+v5ORkSVJoaKjH9qGhodq3b1+Rx5s1a5amT59enrcFoIZJS0tTTLu2ysrOKXQ+MMBfKd+nEmABwIeUK7wOHjxYwcHBWrlypZo0aSLpjw8uuPPOO3XVVVdpwoQJpT5W27ZttXXrVh09elSvvfaaRo4cqaSk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4bUcFi1apKioKPn7++uSSy7RZ599ZnVJ1erTTz/V4MGDFR4eLofDoTfeeMNj3hij+Ph4hYeHKyAgQL169dLOnTutKbaazJo1S5deeqmCg4PVokUL3XDDDe7PjS7ga+uyePFiderUyd0Yu3v37nrvvffc8762HoWZNWuWHA6Hxo0b5x7zxXWJj4+Xw+HweISFhbnnfXFNCvzyyy+Ki4tTs2bNFBgYqIsvvlibN292z/vi2rRu3drr68XhcOj++++X5Jtrcvr0aU2dOlVRUVEKCAjQeeedpyeeeEL5+fnubWrVupT4AbLwsGbNGlOvXj3z7LPPmu+++86MHTvWBAUFmX379lldWrV59913zZQpU8xrr71mJJnXX3/dY/7JJ580wcHB5rXXXjM7duwwt956q2nZsqXJzMy0puBq0K9fP7NixQrz7bffmq1bt5pBgwaZiIgIc+LECfc2vrYub731lnnnnXdMamqqSU1NNZMnTzb16tUz3377rTHG99bjbBs3bjStW7c2nTp1MmPHjnWP++K6TJs2zVx44YXm4MGD7kdGRoZ73hfXxBhjDh8+bCIjI82oUaPM//73P7Nnzx7z4Ycfmh9++MG9jS+uTUZGhsfXSmJiopFkNmzYYIzxzTWZMWOGadasmfnvf/9r9uzZY9auXWsaNGhgFixY4N6mNq0L4bWMLrvsMvPXv/7VY6xdu3bmscces6gia50dXvPz801YWJh58skn3WM5OTmmUaNGZsmSJRZUaI2MjAwjySQlJRljWJcCTZo0Mc8995zPr8fx48dNdHS0SUxMND179nSHV19dl2nTppmLLrqo0DlfXRNjjHn00UfNlVdeWeS8L6/NmcaOHWvOP/98k5+f77NrMmjQIHPXXXd5jA0dOtTExcUZY2rf1wqXDZTBqVOntHnzZvXt29djvG/fvkpOTraoqpplz549Sk9P91gjp9Opnj17+tQaHTt2TJLUtGlTSaxLXl6e1qxZo5MnT6p79+4+vx7333+/Bg0apGuvvdZj3JfXZffu3QoPD1dUVJSGDRumn376SZJvr8lbb72lrl276uabb1aLFi3UuXNnPfvss+55X16bAqdOndKqVat01113yeFw+OyaXHnllfroo4+0a9cuSdK2bdv0+eefa+DAgZJq39dKjf+ErZrE5XIpLy9PoaGhHuOhoaFKT0+3qKqapWAdClujffv2WVFStTPGaPz48bryyivVoUMHSb67Ljt27FD37t2Vk5OjBg0a6PXXX1f79u3d3yx9bT0kac2aNfrmm2+0adMmrzlf/Trp1q2bXnjhBbVp00a//vqrZsyYodjYWO3cudNn10SSfvrpJy1evFjjx4/X5MmTtXHjRj344INyOp0aMWKET69NgTfeeENHjx7VqFGjJPnu36FHH31Ux44dU7t27VS3bl3l5eVp5syZuu222yTVvnUhvJaDw+HweG6M8Rrzdb68Rg888IC2b9+uzz//3GvO19albdu22rp1q44eParXXntNI0eOVFJSknve19Zj//79Gjt2rNavXy9/f/8it/O1dRkwYID7/zt27Kju3bvr/PPP18qVK3X55ZdL8r01kaT8/Hx17dpVCQkJkqTOnTtr586dWrx4sUaMGOHezhfXpsDy5cs1YMAAhYeHe4z72pq88sorWrVqlVavXq0LL7xQW7du1bhx4xQeHq6RI0e6t6st68JlA2UQEhKiunXrep1lzcjI8PrXjK8quEPYV9fob3/7m9566y1t2LBB5557rnvcV9elfv36uuCCC9S1a1fNmjVLF110kZ566imfXY/NmzcrIyNDl1xyifz8/OTn56ekpCT961//kp+fn/u9+9q6nC0oKEgdO3bU7t27ffZrRZJatmyp9u3be4zFxMQoLS1Nku9+Xymwb98+ffjhhxo9erR7zFfX5JFHHtFjjz2mYcOGqWPHjrrjjjv00EMPadasWZJq37oQXsugfv36uuSSS5SYmOgxnpiYqNjYWIuqqlmioqIUFhbmsUanTp1SUlJSrV4jY4weeOABrVu3Th9//LGioqI85n11Xc5mjFFubq7Prkfv3r21Y8cObd261f3o2rWrbr/9dm3dulXnnXeeT67L2XJzc5WSkqKWLVv67NeKJF1xxRVeLfd27dqlyMhISXxfWbFihVq0aKFBgwa5x3x1TbKyslSnjmekq1u3rrtVVq1bF2vuE7OvglZZy5cvN999950ZN26cCQoKMnv37rW6tGpz/Phxs2XLFrNlyxYjycyfP99s2bLF3S7sySefNI0aNTLr1q0zO3bsMLfddptt23GU1n333WcaNWpkPvnkE48WLllZWe5tfG1dJk2aZD799FOzZ88es337djN58mRTp04ds379emOM761HUc7sNmCMb67LhAkTzCeffGJ++ukn89VXX5nrrrvOBAcHu7+v+uKaGPNHOzU/Pz8zc+ZMs3v3bvPSSy+ZwMBAs2rVKvc2vro2eXl5JiIiwjz66KNec764JiNHjjTnnHOOu1XWunXrTEhIiJk4caJ7m9q0LoTXcnjmmWdMZGSkqV+/vunSpYu7HZKv2LBhg5Hk9Rg5cqQx5o+WHNOmTTNhYWHG6XSaHj16mB07dlhbdBUrbD0kmRUrVri38bV1ueuuu9x/T5o3b2569+7tDq7G+N56FOXs8OqL61LQb7JevXomPDzcDB061OzcudM974trUuDtt982HTp0ME6n07Rr184sW7bMY95X1+aDDz4wkkxqaqrXnC+uSWZmphk7dqyJiIgw/v7+5rzzzjNTpkwxubm57m1q07o4jDHGklO+AAAAQBlxzSsAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKAAAA2yC8AgAAwDYIrwAAALANwisAAABsg/AKADVIcnKy6tatq/79+1tdCgDUSHw8LADUIKNHj1aDBg303HPP6bvvvlNERITVJQFAjcKZVwCoIU6ePKlXX31V9913n6677jo9//zzHvNvvfWWoqOjFRAQoKuvvlorV66Uw+HQ0aNH3dskJyerR48eCggIUKtWrfTggw/q5MmT1ftGAKAKEV4BoIZ45ZVX1LZtW7Vt21ZxcXFasWKFCn45tnfvXt1000264YYbtHXrVt17772aMmWKx/47duxQv379NHToUG3fvl2vvPKKPv/8cz3wwANWvB0AqBJcNgAANcQVV1yhW265RWPHjtXp06fVsmVLvfzyy7r22mv12GOP6Z133tGOHTvc20+dOlUzZ87UkSNH1LhxY40YMUIBAQFaunSpe5vPP/9cPXv21MmTJ+Xv72/F2wKASsWZVwCoAVJTU7Vx40YNGzZMkuTn56dbb71V//73v93zl156qcc+l112mcfzzZs36/nnn1eDBg3cj379+ik/P1979uypnjcCAFXMz+oCAADS8uXLdfr0aZ1zzjnuMWOM6tWrpyNHjsgYI4fD4bHP2b84y8/P17333qsHH3zQ6/jc+AWgtiC8AoDFTp8+rRdeeEHz5s1T3759PeZuvPFGvfTSS2rXrp3effddj7mvv/7a43mXLl20c+dOXXDBBVVeMwBYhWteAcBib7zxhm699VZlZGSoUaNGHnNTpkzRu+++q3Xr1qlt27Z66KGHdPfdd2vr1q2aMGGCfv75Zx09elSNGjXS9u3bdfnll+vOO+/UPffco6CgIKWkpCgxMVFPP/20Re8OACoX17wCgMWWL1+ua6+91iu4Sn+ced26dauOHDmi//znP1q3bp06deqkxYsXu7sNOJ1OSVKnTp2UlJSk3bt366qrrlLnzp31+OOPq2XLltX6fgCgKnHmFQBsaubMmVqyZIn2799vdSkAUG245hUAbGLRokW69NJL1axZM33xxReaO3cuPVwB+BzCKwDYxO7duzVjxgwdPnxYERERmjBhgiZNmmR1WQBQrbhsAAAAALbBDVsAAACwDcIrAAAAbIPwCgAAANsgvAIAAMA2CK8AAACwDcIrAAAAbIPwCgAAANsgvAIAAMA2/j9+h/R9DL2l1wAAAABJRU5ErkJggg==\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "frequency_distribution = population['observation'].value_counts().sort_index()\n",
+ "\n",
+ "plt.figure(figsize=(8, 6))\n",
+ "plt.hist(population['observation'], bins=len(frequency_distribution), color = 'orange', edgecolor='black')\n",
+ "plt.xlabel('Age')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Frequency distribution of ages')\n",
+ "\n",
+ "plt.show()\n",
+ "\n",
+ "\n",
+ "# I would say 30 to 40 for the mean.\n",
+ "# 10 to 15 to the standard deviation."
+ ]
+ },
+ {
+ "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": 88,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "The exact mean is: 36.56\n",
+ "The exact standard deviation is: 12.816499625976762\n"
+ ]
+ }
+ ],
+ "source": [
+ "mean_value = population['observation'].mean()\n",
+ "std_value = population['observation'].std()\n",
+ "\n",
+ "print('The exact mean is:', mean_value)\n",
+ "print('The exact standard deviation is:', std_value)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Yes, kind of fall inside the ranges that I tought it could be."
+ ]
+ },
+ {
+ "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": 18,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " observation \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 25.0 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 31.0 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 29.0 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " 31.0 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 29.0 \n",
+ " \n",
+ " \n",
+ " ... \n",
+ " ... \n",
+ " \n",
+ " \n",
+ " 995 \n",
+ " 26.0 \n",
+ " \n",
+ " \n",
+ " 996 \n",
+ " 22.0 \n",
+ " \n",
+ " \n",
+ " 997 \n",
+ " 21.0 \n",
+ " \n",
+ " \n",
+ " 998 \n",
+ " 19.0 \n",
+ " \n",
+ " \n",
+ " 999 \n",
+ " 28.0 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
1000 rows × 1 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " observation\n",
+ "0 25.0\n",
+ "1 31.0\n",
+ "2 29.0\n",
+ "3 31.0\n",
+ "4 29.0\n",
+ ".. ...\n",
+ "995 26.0\n",
+ "996 22.0\n",
+ "997 21.0\n",
+ "998 19.0\n",
+ "999 28.0\n",
+ "\n",
+ "[1000 rows x 1 columns]"
+ ]
+ },
+ "execution_count": 18,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "population_ages2 = pd.read_csv(r\"C:\\Users\\dulce\\OneDrive\\Documentos\\Ironhack git\\Labs\\Labs week 4\\Descriptive-Stats\\data\\ages_population2.csv\")\n",
+ "\n",
+ "population_ages2"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 29,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAArcAAAIhCAYAAABUopIpAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABL10lEQVR4nO3deVxV5d7///dWZDOIKJogCcg5oeJUTlk0OM9DRystc8i0rycqNW0y8xY7zt4Z3VpqtyamaVrHyk5lYZpleMrZBo5aoWhKRCqoDCpcvz/8sW+3DArC3rh4PR+P/ai11rXW9VkXi+2btdda22aMMQIAAAAsoIq7CwAAAADKCuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWlhcXFyebzVbo6+mnn3Z3eZVCTEyMbDab07wGDRro4YcfLtF2EhISFBMTo1OnTpVovcv7+vLLL2Wz2fTee++VaDvFyczMVExMjL788ssCy/KPwUOHDpVZf+XhxRdfVGhoqDw8PFSzZk13l1OmCjsGK4NDhw7JZrMpLi6uxOseO3ZMMTEx2rNnT4Fl7hrPjIwMTZ8+XR06dFBQUJCqV6+u5s2ba/bs2crOznZ5PaiYPNxdAOAqy5YtU+PGjZ3mBQcHu6kavP/++6pRo0aJ1klISNDUqVP18MMPlyh8laavksrMzNTUqVMlSR06dHBa1rt3b23btk316tUr1xquxYcffqjp06dr0qRJ6tmzp+x2u7tLKlOjRo1Sjx493F3GdeXYsWOaOnWqGjRooFtuucVpmbvGMzk5WbGxsRo6dKjGjx+v6tWr6+uvv1ZMTIzi4+MVHx9fKf+IgTPCLSqNZs2aqU2bNlfV9vz587LZbPLw4FekvLRs2bLc+8jKypK3t7dL+irODTfcoBtuuMGtNVzJDz/8IEkaM2aM6tat6+Zqyl79+vVVv359d5dhGe4az/DwcB06dEi+vr6OeZ06dZKvr6+eeeYZffPNN7rzzjtdXhcqFi5LQKWX/xH1ihUrNGHCBN14442y2+36+eefJUkbN25U586dVaNGDfn4+OiOO+7QF198UWA7H3/8sW655RbZ7XaFh4frv//7vwt8dFfcR4Q2m00xMTFO8w4ePKjBgwerbt26stvtioyM1GuvvVZo/atXr9akSZMUHBysGjVqqEuXLtq/f3+BfjZs2KDOnTvL399fPj4+ioyM1MyZMyVJK1askM1m07Zt2wqs99JLL6latWo6duxYseNZ2DgU5vJLBfLy8jRt2jQ1atRI3t7eqlmzplq0aKFXX31V0sWPQZ955hlJF/+By7+0JP8ygAYNGqhPnz5at26dWrZsKS8vL8eZ1KIugcjOztb48eMVFBQkb29vtW/fXrt373Zq06FDhwJnYiXp4YcfVoMGDSRd/Lnmh9epU6c6asvvs6jLEt58803dfPPN8vLyUkBAgPr376/ExMQC/VSvXl0///yzevXqperVqyskJEQTJkxQTk5OoWN7qby8PM2ZM0eNGzeW3W5X3bp1NWzYMB09etTRpkGDBnrxxRclSYGBgYUei5fasWOHHnjgATVo0EDe3t5q0KCBHnzwQR0+fLhA261bt+r222+Xl5eXbrzxRk2ePFlLliwpdDzWrFmj22+/Xb6+vqpevbq6d+9e4Ofx66+/6oEHHlBwcLDsdrsCAwPVuXPnQj86v1RRl8b06dNHGzZsUKtWreTt7a3GjRvrzTffLHZb0v/9Ls+ZM0fTp09XaGiovLy81KZNm0LfH7Zu3arOnTvLz89PPj4+ioqK0scff+zUJv84iY+P14gRIxQQECBfX1/17dtXv/76a4HaCzumizpeL/Xzzz9rxIgRioiIkI+Pj2688Ub17dtX33//vaPNl19+qbZt20qSRowY4Tim84+Lwsbzao61/BqbNWum7du366677pKPj4/+8pe/aNasWcrLyyu2dl9fX6dgm+/WW2+VJB05cqTY9VE5EG5RaeTm5urChQtOr0tNnDhRycnJWrRokT766CPVrVtXK1euVLdu3VSjRg0tX75ca9euVUBAgLp37+70D9gXX3yhe+65R35+fnrnnXc0d+5crV27VsuWLSt1vT/99JPatm2rH374QS+//LL+9a9/qXfv3hozZowjtF3qhRde0OHDh7VkyRK98cYbOnjwoPr27avc3FxHm6VLl6pXr17Ky8tz7OeYMWMc//gMGjRIQUFBBQL0hQsXtHjxYvXv37/YSzmuZRzmzJmjmJgYPfjgg/r444+1Zs0ajRw50nF97ahRo/Tkk09KktatW6dt27Zp27ZtatWqlWMbu3bt0jPPPKMxY8Zow4YNuvfee4vt84UXXtCvv/6qJUuWaMmSJTp27Jg6dOhQIEhcSb169bRhwwZJ0siRIx21TZ48uch1Zs6cqZEjR6pp06Zat26dXn31Ve3bt0+33367Dh486NT2/Pnz6tevnzp37qwPP/xQjzzyiF555RXNnj37irU99thjeu6559S1a1etX79e//jHP7RhwwZFRUUpLS1N0sXLNkaOHCnp4h8/27Zt06hRo4rc5qFDh9SoUSPFxsbqs88+0+zZs3X8+HG1bdvWsU1J2rdvn7p27arMzEwtX75cixYt0q5duzR9+vQC25wxY4YefPBBNWnSRGvXrtWKFSt0+vRp3XXXXfrpp58c7Xr16qWdO3dqzpw5io+P18KFC9WyZcsSX4edb+/evZowYYKeeuopffjhh2rRooVGjhypr7766qrWX7BggTZs2KDY2FitXLlSVapUUc+ePZ3+QNyyZYs6deqk9PR0LV26VKtXr5afn5/69u2rNWvWFNjmyJEjVaVKFa1atUqxsbH67rvv1KFDh1Lv4+WOHTum2rVra9asWdqwYYNee+01eXh4qF27do4/iFu1auX4vX3xxRcdx3Rxx8XVHGv5UlJS9NBDD2nIkCFav369evbsqYkTJ2rlypWl2qdNmzZJkpo2bVqq9WExBrC4ZcuWGUmFvs6fP282b95sJJm7777bab2zZ8+agIAA07dvX6f5ubm55uabbza33nqrY167du1McHCwycrKcszLyMgwAQEB5tJfs6SkJCPJLFu2rECdksyUKVMc0927dzf169c36enpTu2eeOIJ4+XlZU6cOGGMMY76e/Xq5dRu7dq1RpLZtm2bMcaY06dPmxo1apg777zT5OXlFTleU6ZMMZ6enub33393zFuzZo2RZLZs2VLkeiUZB2OMCQsLM8OHD3dM9+nTx9xyyy3Fbn/u3LlGkklKSiqwLCwszFStWtXs37+/0GWX9pU/Zq1atXIai0OHDplq1aqZUaNGOea1b9/etG/fvsA2hw8fbsLCwhzTf/zxR4GfYb78YzC/7pMnTxpvb+8CP7Pk5GRjt9vN4MGDnfqRZNauXevUtlevXqZRo0YF+rpUYmKikWSio6Od5n/77bdGknnhhRcc86ZMmWIkmT/++KPYbRbmwoUL5syZM8bX19e8+uqrjvn333+/8fX1ddpmbm6uadKkidN4JCcnGw8PD/Pkk086bff06dMmKCjIDBw40BhjTFpampFkYmNjS1xj/v5dKiwszHh5eZnDhw875mVlZZmAgAAzevToYreX/7tc1PHepUsXx7zbbrvN1K1b15w+fdox78KFC6ZZs2amfv36jmMw/zjp37+/U1/ffPONkWSmTZvmVPulx3S+y4/X4t5zLq3l3LlzJiIiwjz11FOO+du3by9y3cvHsyTHWvv27Y0k8+233zq1bdKkienevXuRdRZl7969xtvbu8C4ofLizC0qjbfeekvbt293el16Te3lZ/kSEhJ04sQJDR8+3Olsb15ennr06KHt27fr7NmzOnv2rLZv364BAwbIy8vLsX7+mZnSyM7O1hdffKH+/fvLx8fHqf9evXopOztb//73v53W6devn9N0ixYtJMnxUXFCQoIyMjIUHR1d7A0Xjz32mCTpf//3fx3zFixYoObNm+vuu+8ucr1rHYdbb71Ve/fuVXR0tD777DNlZGRccZ3LtWjRQg0bNrzq9oMHD3Yai7CwMEVFRWnz5s0l7rsktm3bpqysrAIfK4eEhKhTp04FPta22WwFxrBFixaFXgZwqfz9uLyfW2+9VZGRkYV+fH41zpw5o+eee0433XSTPDw85OHhoerVq+vs2bNOl1Xkn7GsU6eOY16VKlU0cOBAp+199tlnunDhgoYNG+Z0rHt5eal9+/aOS08CAgL017/+VXPnztW8efO0e/fuK36MfSW33HKLQkNDHdNeXl5q2LDhFcc2X1HH+1dffaXc3FydPXtW3377re677z5Vr17d0a5q1aoaOnSojh49WuDyoYceeshpOioqSmFhYWV2XF64cEEzZsxQkyZN5OnpKQ8PD3l6eurgwYMFLou5WiU91oKCghyXEuS7mmP6cocOHVKfPn0UEhKiJUuWlLxwWBJ3y6DSiIyMLPaGssvvZP/9998lSffdd1+R65w4cUI2m015eXkKCgoqsLyweVfjzz//1IULFzR//nzNnz+/0DaXf8xXu3Ztp+n8u92zsrIkSX/88YckXfEmkMDAQA0aNEiLFy/W888/rx9//FFff/21Fi9eXOx6J0+evKZxmDhxonx9fbVy5UotWrRIVatW1d13363Zs2df9Y2AJX0aQVG17t27t0TbKak///xTUuH1BgcHKz4+3mmej4+PU4CSLv58r/Tooyv1U9IgkW/w4MH64osvNHnyZLVt21Y1atSQzWZTr169HMdbfv+BgYEF1r98Xv7vWv41nperUuXieRibzaYvvvhCL730kubMmaMJEyYoICBADz30kKZPny4/P78S78vlvzfSxbG9dD+KU9QxdO7cOZ05c0anT5+WMabIn4H0fz+nK23z8nalNX78eL322mt67rnn1L59e9WqVUtVqlTRqFGjrnq/L1fSY+1ax126+Id7x44d5eHhoS+++EIBAQElrBpWRbgF/n+Xn83MP9s0f/583XbbbYWuExgY6HiyQkpKSoHll8/LDyiX3wh0+T9atWrVcpzZefzxxwvtOzw8vJi9KSj/hqfLb+4ozNixY7VixQp9+OGH2rBhg2rWrFngbNLlatWqddXjUBgPDw+NHz9e48eP16lTp7Rx40a98MIL6t69u44cOSIfH58rbqOkjwAqqtZL/+H18vJSenp6gXaX/3FREvnbP378eIFlx44dczrTeS0u7efyP2pK2096err+9a9/acqUKXr++ecd83NycnTixIkC/ecH10tdPu75dbz33nsKCwsrtv+wsDAtXbpUknTgwAGtXbtWMTExOnfunBYtWlTi/blWRR1Dnp6eql69ujw8PFSlSpUif9aSCvwcitrmTTfd5Jj28vIq9IbCtLS0K/5cV65cqWHDhmnGjBkF1i3t843L41grzuHDh9WhQwcZY/Tll1/yJAw44bIEoAh33HGHatasqZ9++klt2rQp9OXp6SlfX1/deuutWrdundOZtNOnT+ujjz5y2mZgYKC8vLy0b98+p/kffvih07SPj486duyo3bt3q0WLFoX2XdiZj+JERUXJ399fixYtkjGm2LatW7dWVFSUZs+erbffflsPP/xwoXcoX6ok43AlNWvW1H333afHH39cJ06ccNxVf/nZ6Gu1evVqp7E4fPiwEhISnO42b9CggQ4cOOAUJP78808lJCQ4basktd1+++3y9vYucPPM0aNHtWnTJnXu3Lk0u1NAp06dJKlAP9u3b1diYmKp+rHZbDLGFHgO7pIlS5xuXpSk9u3ba9OmTU5/COTl5endd991ate9e3d5eHjol19+KfJ3rTANGzbUiy++qObNm2vXrl0l3peyUNTxftddd6lq1ary9fVVu3bttG7dOqdjIy8vTytXrlT9+vULXErz9ttvO00nJCQ4wly+Bg0aFHgfOXDgQKFPSLmczWYr8PP7+OOP9dtvvznNK8kxXR7HWlGSk5PVoUMH5ebmatOmTVf8gwiVD2dugSJUr15d8+fP1/Dhw3XixAndd999qlu3rv744w/t3btXf/zxhxYuXChJ+sc//qEePXqoa9eumjBhgnJzczV79mz5+vo6nc2y2WwaMmSI3nzzTf31r3/VzTffrO+++06rVq0q0P+rr76qO++8U3fddZcee+wxNWjQQKdPn9bPP/+sjz76yHF3cEn25+WXX9aoUaPUpUsXPfroowoMDNTPP/+svXv3asGCBU7tx44dq0GDBslmsyk6Ovqq+rjacShM3759Hc8ivuGGG3T48GHFxsYqLCxMERERkqTmzZs7xmb48OGqVq2aGjVqVKqPoyUpNTVV/fv316OPPqr09HRNmTJFXl5emjhxoqPN0KFDtXjxYg0ZMkSPPvqo/vzzT82ZM6fAl0L4+fkpLCxMH374oTp37qyAgADVqVPH8biwS9WsWVOTJ0/WCy+8oGHDhunBBx/Un3/+qalTp8rLy0tTpkwp1f5crlGjRvp//+//af78+Y67+A8dOqTJkycrJCRETz31VIm3WaNGDd19992aO3euY/+2bNmipUuXFjjrN2nSJH300Ufq3LmzJk2aJG9vby1atEhnz56V9H+XGzRo0EAvvfSSJk2apF9//VU9evRQrVq19Pvvv+u7776Tr6+vpk6dqn379umJJ57Q/fffr4iICHl6emrTpk3at2+f01lkV6pataq6du2q8ePHKy8vT7Nnz1ZGRobTE01mzpyprl27qmPHjnr66afl6emp119/XT/88INWr15d4BOHHTt2aNSoUbr//vt15MgRTZo0STfeeKPT7+HQoUM1ZMgQRUdH695779Xhw4c1Z86cq3qecp8+fRQXF6fGjRurRYsW2rlzp+bOnVvg7Odf//pXeXt76+2331ZkZKSqV6+u4ODgQp+YUh7HWmFSU1PVsWNHHT9+XEuXLlVqaqpSU1Mdy3meMSTxtARYX/4dyNu3by90ef6d8++++26hy7ds2WJ69+5tAgICTLVq1cyNN95oevfuXaD9+vXrTYsWLYynp6cJDQ01s2bNKvQO7fT0dDNq1CgTGBhofH19Td++fc2hQ4cKvdM+KSnJPPLII+bGG2801apVMzfccIOJiopyumu6qPqLukv6k08+Me3btze+vr7Gx8fHNGnSxMyePbvAfufk5Bi73W569OhR6LgU5WrH4fK7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li1bppSUFN15551q2rSp5s2bpz/++KOs6wQAAACu6JpuKPPw8FD//v21du1azZ49W7/88ouefvpp1a9fX8OGDdPx48fLqk4AAADgiq4p3O7YsUPR0dGqV6+e5s2bp6efflq//PKLNm3apN9++0333HNPWdUJAAAAXJFHaVaaN2+eli1bpv3796tXr15666231KtXL1WpcjErh4eHa/HixWrcuHGZFgsAAAAUp1RnbhcuXKjBgwcrOTlZH3zwgfr06eMItvlCQ0O1dOnSayruwoULevHFFxUeHi5vb2/95S9/0UsvvaS8vDxHG2OMYmJiFBwcLG9vb3Xo0EE//vjjNfULAACA61OpztwePHjwim08PT01fPjw0mzeYfbs2Vq0aJGWL1+upk2baseOHRoxYoT8/f01duxYSdKcOXM0b948xcXFqWHDhpo2bZq6du2q/fv3y8/P75r6BwAAwPWlVOF22bJlql69uu6//36n+e+++64yMzOvOdTm27Ztm+655x717t1bktSgQQOtXr1aO3bskHTxrG1sbKwmTZqkAQMGSJKWL1+uwMBArVq1SqNHjy50uzk5OcrJyXFMZ2RklEm9AAAAcK9SXZYwa9Ys1alTp8D8unXrasaMGddcVL4777xTX3zxhQ4cOCDp4vN1t27dql69ekm6+E1pKSkp6tatm2Mdu92u9u3bKyEhocjtzpw5U/7+/o5XSEhImdUMAAAA9ynVmdvDhw8rPDy8wPywsDAlJydfc1H5nnvuOaWnp6tx48aqWrWqcnNzNX36dD344IOSpJSUFElSYGCg03qBgYE6fPhwkdudOHGixo8f75jOyMgg4AIAAFhAqcJt3bp1tW/fPjVo0MBp/t69e1W7du2yqEuStGbNGq1cuVKrVq1S06ZNtWfPHo0bN07BwcFOlz7YbDan9YwxBeZdym63y263l1mdAAAAqBhKFW4feOABjRkzRn5+frr77rslSVu2bNHYsWP1wAMPlFlxzzzzjJ5//nnHNps3b67Dhw9r5syZGj58uIKCgiRdPINbr149x3qpqakFzuYCAADA+kp1ze20adPUrl07de7cWd7e3vL29la3bt3UqVOnMr3mNjMzs8AjxqpWrep4FFh4eLiCgoIUHx/vWH7u3Dlt2bJFUVFRZVYHAAAArg+lOnPr6empNWvW6B//+If27t0rb29vNW/e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3XvvvcVuu7Idk/Xr19esWbO0Y8cO7dixQ506ddI999zjCLC8T1694saS98mSudJxKfE+WWIGlpOammokmS1bthhjjMnLyzNBQUFm1qxZjjbZ2dnG39/fLFq0qMjtDBw40PTo0cNpXvfu3c0DDzxQPoVXQJePZWG+++47I8kcPny4yDbLli0z/v7+5VDh9aOwsRw+fLi55557SrSdyn5cXs0xec8995hOnToVux2OyYtq1apllixZwvtkGcgfy8LwPlkyl44l75Mlx5lbC0pPT5ckBQQESJKSkpKUkpKibt26OdrY7Xa1b99eCQkJRW5n27ZtTutIUvfu3Ytdx2ouH8ui2thsNtWsWbPYbZ05c0ZhYWGqX7+++vTpo927d5dlqRVeUWP55Zdfqm7dumrYsKEeffRRpaamFrudyn5cXumY/P333/Xxxx9r5MiRV9xWZT4mc3Nz9c477+js2bO6/fbbeZ+8BpePZWF4n7w6RY0l75MlQ7i1GGOMxo8frzvvvFPNmjWTJKWkpEiSAgMDndoGBgY6lhUmJSWlxOtYSWFjebns7Gw9//zzGjx4sGrUqFHktho3bqy4uDitX79eq1evlpeXl+644w4dPHiwvMqvUIoay549e+rtt9/Wpk2b9PLLL2v79u3q1KmTcnJyitxWZT4ur+aYXL58ufz8/DRgwIBit1VZj8nvv/9e1atXl91u19///ne9//77atKkCe+TpVDUWF6O98krK24seZ8sOUt8/S7+zxNPPKF9+/Zp69atBZbZbDanaWNMgXllsY5VFDeW0sWbJh544AHl5eXp9ddfL3Zbt912m9MNAHfccYdatWql+fPn63/+53/KtO6KqKixHDRokOP/mzVrpjZt2igsLEwff/xxseGssh6XVzomJenNN9/UQw89dMXrFCvrMdmoUSPt2bNHp06d0j//+U8NHz5cW7ZscSznffLqFTWWlwZc3ievTnFjyftkyRFuLeTJJ5/U+vXr9dVXX6l+/fqO+UFBQZIu/iVXr149x/zU1NQCf9ldKigoqMBfeVdaxyqKGst858+f18CBA5WUlKRNmzYVezaiMFWqVFHbtm0rxRmJK43lperVq6ewsLBix6WyHpdXM45ff/219u/frzVr1pR4+5XlmPT09NRNN90kSWrTpo22b9+uV199Vc8995wk3idLoqixXLx4sSTeJ0viSmN5Kd4nr4zLEizAGKMnnnhC69at06ZNmxQeHu60PDw8XEFBQYqPj3fMO3funLZs2aKoqKgit3v77bc7rSNJn3/+ebHrXO+uNJbS/71hHzx4UBs3blTt2rVL1c+ePXuc/hG1mqsZy8v9+eefOnLkSLHjUtmOy5KM49KlS9W6dWvdfPPNperH6sdkYYwxysnJ4X2yDOSPpcT75LW6dCwvx/vkVXDt/WsoD4899pjx9/c3X375pTl+/LjjlZmZ6Wgza9Ys4+/vb9atW2e+//578+CDD5p69eqZjIwMR5uhQ4ea559/3jH9zTffmKpVq5pZs2aZxMREM2vWLOPh4WH+/e9/u3T/XOlKY3n+/HnTr18/U79+fbNnzx6nNjk5OY7tXD6WMTExZsOGDeaXX34xu3fvNiNGjDAeHh7m22+/dfk+usqVxvL06dNmwoQJJiEhwSQlJZnNmzeb22+/3dx4440cl5e4mt9vY4xJT083Pj4+ZuHChYVuh2PSmIkTJ5qvvvrKJCUlmX379pkXXnjBVKlSxXz++efGGN4nS6K4seR9smSKG0veJ0uHcGsBkgp9LVu2zNEmLy/PTJkyxQQFBRm73W7uvvtu8/333zttp3379mb48OFO8959913TqFEjU61aNdO4cWPzz3/+0wV75D5XGsukpKQi22zevNmxncvHcty4cSY0NNR4enqaG264wXTr1s0kJCS4dudc7EpjmZmZabp162ZuuOEGU61aNRMaGmqGDx9ukpOTnbZT2Y/Lq/n9NsaYxYsXG29vb3Pq1KlCt8MxacwjjzxiwsLCHPvcuXNnR7A1hvfJkihuLHmfLJnixpL3ydKxGWNM+Z4bBgAAAFyDa24BAABgGYRbAAAAWAbhFgAAAJZBuAUAAIBlEG4BAABgGYRbAAAAWAbhFgAAAJZBuAUAAIBlEG4BAABgGYRbALjOJCQkqGrVqurRo4e7SwGACoev3wWA68yoUaNUvXp1LVmyRD/99JNCQ0PdXRIAVBicuQWA68jZs2e1du1aPfbYY+rTp4/i4uKclq9fv14RERHy9vZWx44dtXz5ctlsNp06dcrRJiEhQXfffbe8vb0VEhKiMWPG6OzZs67dEQAoJ4RbALiOrFmzRo0aNVKjRo00ZMgQLVu2TPkfwB06dEj33Xef/va3v2nPnj0aPXq0Jk2a5LT+999/r+7du2vAgAHat2+f1qxZo61bt+qJJ55wx+4AQJnjsgQAuI7ccccdGjhwoMaOHasLFy6oXr16Wr16tbp06aLnn39eH3/8sb7//ntH+xdffFHTp0/XyZMnVbNmTQ0bNkze3t5avHixo83WrVvVvn17nT17Vl5eXu7YLQAoM5y5BYDrxP79+/Xdd9/pgQcekCR5eHho0KBBevPNNx3L27Zt67TOrbfe6jS9c+dOxcXFqXr16o5X9+7dlZeXp6SkJNfsCACUIw93FwAAuDpLly7VhQsXdOONNzrmGWNUrVo1nTx5UsYY2Ww2p3Uu/3AuLy9Po0eP1pgxYwpsnxvTAFgB4RYArgMXLlzQW2+9pZdfflndunVzWnbvvffq7bffVuPGjfXJJ584LduxY4fTdKtWrfTjjz/qpptuKveaAcAduOYWAK4DH3zwgQYNGqTU1FT5+/s7LZs0aZI++eQTrVu3To0aNdJTTz2lkSNHas+ePZowYYKOHj2qU6dOyd/fX/v27dNtt92mESNG6NFHH5Wvr68SExMVHx+v+fPnu2nvAKDscM0tAFwHli5dqi5duhQIttLFM7d79uzRyZMn9d5772ndunVq0aKFFi5c6Hhagt1ulyS1aNFCW7Zs0cGDB3XXXXepZcuWmjx5surVq+fS/QGA8sKZWwCwsOnTp2vRokU6cuSIu0sBAJfgmlsAsJDXX39dbdu2Ve3atfXNN99o7ty5PMMWQKVCuAUACzl48KCmTZumEydOKDQ0VBMmTNDEiRPdXRYAuAyXJQAAAMAyuKEMAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYxv8H0VHTXUhS/u0AAAAASUVORK5CYII=\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "frequency_distribution_ages2 = population_ages2['observation'].value_counts().sort_index()\n",
+ "\n",
+ "plt.figure(figsize=(8, 6))\n",
+ "plt.hist(population_ages2['observation'], bins=len(frequency_distribution_ages2), color = 'orange', edgecolor='black')\n",
+ "plt.xlabel('Age')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Frequency distribution of ages in population 2')\n",
+ "\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "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": [
+ "# the frequency distribution in population is clearly different \n",
+ "# from the distribution of ages_population2 because the age range is distinct, indicating that the populations\n",
+ "# in the two datasets have different age distributions. \n",
+ "# Indicating that the two neighborhoods have different age demographics and/or characteristics."
+ ]
+ },
+ {
+ "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": 31,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "27.155\n",
+ "2.969813932689186\n"
+ ]
+ }
+ ],
+ "source": [
+ "mean_value_ages2 = population_ages2['observation'].mean()\n",
+ "std_value_ages2 = population_ages2['observation'].std()\n",
+ "\n",
+ "print(mean_value_ages2)\n",
+ "print(std_value_ages2)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Population_ages2 represents a population with a narrower age range and more closer ages, being possible to see, \n",
+ "# by its lower mean and smaller standard deviation."
+ ]
+ },
+ {
+ "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": 21,
+ "metadata": {
+ "scrolled": true
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " observation \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 21.0 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 21.0 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 24.0 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " 31.0 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 54.0 \n",
+ " \n",
+ " \n",
+ " ... \n",
+ " ... \n",
+ " \n",
+ " \n",
+ " 995 \n",
+ " 16.0 \n",
+ " \n",
+ " \n",
+ " 996 \n",
+ " 55.0 \n",
+ " \n",
+ " \n",
+ " 997 \n",
+ " 30.0 \n",
+ " \n",
+ " \n",
+ " 998 \n",
+ " 35.0 \n",
+ " \n",
+ " \n",
+ " 999 \n",
+ " 43.0 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
1000 rows × 1 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " observation\n",
+ "0 21.0\n",
+ "1 21.0\n",
+ "2 24.0\n",
+ "3 31.0\n",
+ "4 54.0\n",
+ ".. ...\n",
+ "995 16.0\n",
+ "996 55.0\n",
+ "997 30.0\n",
+ "998 35.0\n",
+ "999 43.0\n",
+ "\n",
+ "[1000 rows x 1 columns]"
+ ]
+ },
+ "execution_count": 21,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "population_ages3 = pd.read_csv(r\"C:\\Users\\dulce\\OneDrive\\Documentos\\Ironhack git\\Labs\\Labs week 4\\Descriptive-Stats\\data\\ages_population3.csv\")\n",
+ "\n",
+ "population_ages3"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 30,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAArEAAAIhCAYAAABZvOJuAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABO4UlEQVR4nO3deXgUVd728bshpLMQQIjZhISgEIKIgsgmssouo6AOLhFQ8FFxQYOjAvISHHYeGXx0AGdEFlFBHVQcGBRFUMQFkJ2IOAINQsQGQiAbQs77B1damnRnI0l3Jd/PdfWlXaeq+tenqys31VV1bMYYIwAAAMBCqvm6AAAAAKCkCLEAAACwHEIsAAAALIcQCwAAAMshxAIAAMByCLEAAACwHEIsAAAALIcQCwAAAMshxAIAAMByCLGwtAULFshms3l8PP30074ur0pISUmRzWZzm9awYUMNHTq0ROvZsGGDUlJSlJ6eXqLlLn6ttWvXymaz6b333ivRegqTlZWllJQUrV27tkBb/ja4f//+Mnu98vD8888rNjZWAQEBqlOnjq/LKVOetsGqYP/+/bLZbFqwYEGJlz18+LBSUlK0devWAm2+7M+xY8eqZcuWqlu3roKCgtSoUSP9z//8jw4cOOCTeuDfAnxdAFAW5s+fr6ZNm7pNi4mJ8VE1eP/991WrVq0SLbNhwwZNmDBBQ4cOLVHIKs1rlVRWVpYmTJggSerSpYtbW79+/fT1118rOjq6XGu4FB9++KEmTZqksWPHqk+fPrLb7b4uqUwNHz5cvXv39nUZlnL48GFNmDBBDRs21HXXXefW5sv+TE9P1913363ExESFhYVp9+7dmjhxopYvX65du3apXr16PqkL/okQi0qhefPmat26dbHm/f3332Wz2RQQwOZfXlq2bFnur5Gdna3g4OAKea3CXH755br88st9WkNRdu7cKUl64oknFBER4eNqyl79+vVVv359X5dRafiyP//+97+7Pe/SpYvi4+PVt29fffjhh3rggQd8Uhf8E6cToFLL/2n5jTfe0KhRo3TFFVfIbrfrp59+kiR9+umn6t69u2rVqqWQkBDdeOON+uyzzwqsZ8WKFbruuutkt9sVHx+v//3f/y3wk1thP+3ZbDalpKS4Tdu7d6/uueceRUREyG63KzExscAOPL/+t99+W2PHjlVMTIxq1aqlm2++WXv27CnwOqtWrVL37t1Vu3ZthYSEKDExUVOmTJEkvfHGG7LZbPr6668LLPfCCy+oRo0aOnz4cKH96akfPLn4J/68vDxNnDhRCQkJCg4OVp06ddSiRQu99NJLks7/fPmXv/xFkhQfH+86JST/5/uGDRvqlltu0bJly9SyZUsFBQW5jox6O3UhJydHycnJioqKUnBwsDp37qwtW7a4zdOlS5cCR1YlaejQoWrYsKGk859rfkidMGGCq7b81/R2OsHrr7+ua6+9VkFBQapbt64GDBig1NTUAq9Ts2ZN/fTTT+rbt69q1qypBg0aaNSoUcrNzfXYtxfKy8vT9OnT1bRpU9ntdkVERGjw4ME6dOiQa56GDRvq+eeflyRFRkZ63BYvtGnTJt11111q2LChgoOD1bBhQ919990ef85dv3692rdvr6CgIF1xxRUaN26cXnvtNY/9sXTpUrVv316hoaGqWbOmevXqVeDz+Pnnn3XXXXcpJiZGdrtdkZGR6t69u8efvC/k7ZSWW265RatWrVKrVq0UHByspk2b6vXXXy90XdIf3+Xp06dr0qRJio2NVVBQkFq3bu1x/7B+/Xp1795dYWFhCgkJUYcOHbRixQq3efK3k9WrV+v+++9X3bp1FRoaqv79++vnn38uULunbdrb9nqhn376Sffff78aN26skJAQXXHFFerfv7927Njhmmft2rW64YYbJEn333+/a5vO3y489WdxtrX8Gps3b66NGzfqpptuUkhIiBo1aqSpU6cqLy+v0Nq9yf/+ceABFyPEolI4d+6czp496/a40OjRo+VwODR37lx99NFHioiI0OLFi9WzZ0/VqlVLCxcu1DvvvKO6deuqV69ebn+oPvvsM916660KCwvTkiVLNGPGDL3zzjuaP39+qevdvXu3brjhBu3cuVMvvvii/v3vf6tfv3564oknXOHsQmPGjNGBAwf02muv6R//+If27t2r/v3769y5c6555s2bp759+yovL8/1Pp944gnXH5lBgwYpKiqqQFA+e/asXn31VQ0YMKDQUzAupR+mT5+ulJQU3X333VqxYoWWLl2qYcOGuc5/HT58uB5//HFJ0rJly/T111/r66+/VqtWrVzr+P777/WXv/xFTzzxhFatWqXbb7+90NccM2aMfv75Z7322mt67bXXdPjwYXXp0qVAYChKdHS0Vq1aJUkaNmyYq7Zx48Z5XWbKlCkaNmyYrr76ai1btkwvvfSStm/frvbt22vv3r1u8/7+++/605/+pO7du7uONP3tb3/TtGnTiqztkUce0bPPPqsePXpo+fLl+utf/6pVq1apQ4cOcjqdks6fbjFs2DBJ5/+R8/XXX2v48OFe17l//34lJCRo1qxZ+vjjjzVt2jQdOXJEN9xwg2udkrR9+3b16NFDWVlZWrhwoebOnavvv/9ekyZNKrDOyZMn6+6771azZs30zjvv6I033tCpU6d00003affu3a75+vbtq82bN2v69OlavXq15syZo5YtW5b4POl827Zt06hRo/TUU0/pww8/VIsWLTRs2DB98cUXxVr+lVde0apVqzRr1iwtXrxY1apVU58+fdz+Ibhu3Tp169ZNJ0+e1Lx58/T2228rLCxM/fv319KlSwusc9iwYapWrZreeustzZo1S9999526dOlS6vd4scOHD6tevXqaOnWqVq1apb///e8KCAhQ27ZtXf/wbdWqlet7+/zzz7u26cK2i+Jsa/nS0tJ07733KikpScuXL1efPn00evRoLV68uNjv4+zZs8rOztaWLVv05JNPqkmTJho4cGApegSVmgEsbP78+UaSx8fvv/9uPv/8cyPJdOrUyW25zMxMU7duXdO/f3+36efOnTPXXnutadOmjWta27ZtTUxMjMnOznZNy8jIMHXr1jUXfoX27dtnJJn58+cXqFOSGT9+vOt5r169TP369c3Jkyfd5nvsscdMUFCQOX78uDHGuOrv27ev23zvvPOOkWS+/vprY4wxp06dMrVq1TIdO3Y0eXl5Xvtr/PjxJjAw0Pz666+uaUuXLjWSzLp167wuV5J+MMaYuLg4M2TIENfzW265xVx33XWFrn/GjBlGktm3b1+Btri4OFO9enWzZ88ej20XvlZ+n7Vq1cqtL/bv329q1Khhhg8f7prWuXNn07lz5wLrHDJkiImLi3M9/+233wp8hvnyt8H8uk+cOGGCg4MLfGYOh8PY7XZzzz33uL2OJPPOO++4zdu3b1+TkJBQ4LUulJqaaiSZESNGuE3/9ttvjSQzZswY17Tx48cbSea3334rdJ2enD171pw+fdqEhoaal156yTX9zjvvNKGhoW7rPHfunGnWrJlbfzgcDhMQEGAef/xxt/WeOnXKREVFmT//+c/GGGOcTqeRZGbN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6JdffnGbVpJtujy2tZL46aefdOjQIbegD0gciUUVVbNmTb388ssaMmSIjh8/rjvuuEMRERH67bfftG3bNv3222+aM2eOJOmvf/2revfurR49emjUqFE6d+6cpk2bptDQULejUzabTUlJSXr99dd15ZVX6tprr9V3332nt956q8Drv/TSS+rYsaNuuukmPfLII2rYsKFOnTqln376SR999JHWrFlT4vfz4osvavjw4br55pv14IMPKjIyUj/99JO2bdumV155xW3+kSNHatCgQbLZbBoxYkSxXqO4/eBJ//79Xffyvfzyy3XgwAHNmjVLcXFxaty4sSTpmmuucfXNkCFDVKNGDSUkJJTqZ2RJOnr0qAYMGKAHH3xQJ0+e1Pjx4xUUFKTRo0e75rnvvvv06quvKikpSQ8++KCOHTum6dOnFxg8ISwsTHFxcfrwww/VvXt31a1bV+Hh4a7bcF2oTp06GjdunMaMGaPBgwfr7rvv1rFjxzRhwgQFBQVp/PjxpXo/F0tISND//M//6OWXX3ZdNb9//36NGzdODRo00FNPPVXiddaqVUudOnXSjBkzXO9v3bp1mjdvXoGjeGPHjtVHH32k7t27a+zYsQoODtbcuXOVmZkp6Y/TBBo2bKgXXnhBY8eO1c8//6zevXvrsssu06+//qrvvvtOoaGhmjBhgrZv367HHntMd955pxo3bqzAwECtWbNG27dvdzsqXJGqV6+uHj16KDk5WXl5eZo2bZoyMjLc7iAyZcoU9ejRQ127dtXTTz+twMBAzZ49Wzt37tTbb79d4BeETZs2afjw4brzzjt18OBBjR07VldccYXb9/C+++5TUlKSRowYodtvv10HDhzQ9OnTi3U/4ltuuUULFixQ06ZN1aJFC23evFkzZswocAT1yiuvVHBwsN58800lJiaqZs2aiomJ8XiHkvLY1jzZvn27nnrqKd1xxx1q1KiRqlWrph07duhvf/ub6tWrxyiMKMi315UBlyb/it+NGzd6bM+/Uv3dd9/12L5u3TrTr18/U7duXVOjRg1zxRVXmH79+hWYf/ny5aZFixYmMDDQxMbGmqlTp3q8IvrkyZNm+PDhJjIy0oSGhpr+/fub/fv3e7yyfd++feaBBx4wV1xxhalRo4a5/PLLTYcOHdyuUvZWv7erkleuXGk6d+5sQkNDTUhIiGnWrJmZNm1a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kjGm7LYnTicopjNnzmjz5s3q2bOn2/SePXtqw4YNPqrK/+3bt09paWlu/Wa329W5c+cq3W8nT56UJNWtW1cS/eTJuXPntGTJEmVmZqp9+/b0kQePPvqo+vXrp5tvvtltOn3lbu/evYqJiVF8fLzuuusu/fzzz5LopwstX75crVu31p133qmIiAi1bNlS//znP13t9FVBZ86c0eLFi/XAAw/IZrPRRxfo2LGjPvvsM/3444+SpG3btmn9+vXq27evpLLbnvx+xC5/4XQ6de7cOUVGRrpNj4yMVFpamo+q8n/5feOp3w4cOOCLknzOGKPk5GR17NhRzZs3l0Q/XWjHjh1q3769cnJyVLNmTb3//vtq1qyZa8dGH523ZMkSff/999q4cWOBNranP7Rt21aLFi1SkyZN9Ouvv2rixInq0KGDdu3aRT9d4Oeff9acOXOUnJysMWPG6LvvvtMTTzwhu92uwYMH01cefPDBB0pPT9fQoUMl8b270LPPPquTJ0+qadOmql69us6dO6dJkybp7rvvllR2fUWILSGbzeb23BhTYBoKot/+8Nhjj2n79u1av359gTb6SUpISNDWrVuVnp6uf/3rXxoyZIjWrVvnaqePpIMHD2rkyJH65JNPFBQU5HU++krq06eP6/+vueYatW/fXldeeaUWLlyodu3aSaKfJCkvL0+tW7fW5MmTJUktW7bUrl27NGfOHA0ePNg1H331h3nz5qlPnz6KiYlxm04fSUuXLtXixYv11ltv6eqrr9bWrVv15JNPKiYmRkOGDHHNd6l9xekExRQeHq7q1asXOOp69OjRAv+SwB/yrwKm3857/PHHtXz5cn3++eeqX7++azr99IfAwEBdddVVat26taZMmaJrr71WL730En10gc2bN+vo0aO6/vrrFRAQoICAAK1bt07/93//p4CAAFd/0FcFhYaG6pprrtHevXvZpi4QHR2tZs2auU1LTEyUw+GQxD7qYgcOHNCnn36q4cOHu6bRR3/4y1/+oueee0533XWXrrnmGt1333166qmnNGXKFEll11eE2GIKDAzU9ddfr9WrV7tNX716tTp06OCjqvxffHy8oqKi3PrtzJkzWrduXZXqN2OMHnvsMS1btkxr1qxRfHy8Wzv95J0xRrm5ufTRBbp3764dO3Zo69atrkfr1q117733auvWrWrUqBF95UVubq5SU1MVHR3NNnWBG2+8scBt/3788UfFxcVJYh91sfnz5ysiIkL9+vVzTaOP/pCVlaVq1dwjZvXq1V232Cqzvir9tWdVT/4ttubNm2d2795tnnzySRMaGmr279/v69J86tSpU2bLli1my5YtRpKZOXOm2bJli+vWY1OnTjW1a9c2y5YtMzt27DB33313lbvlyCOPPGJq165t1q5d63Z7lqysLNc89JMxo0ePNl988YXZt2+f2b59uxkzZoypVq2a+eSTT4wx9FFhLrw7gTH0Vb5Ro0aZtWvXmp9//tl888035pZbbjFhYWGu/Tb9dN53331nAgICzKRJk8zevXvNm2++aUJCQszixYtd89BX5507d87ExsaaZ599tkAbfXTekCFDzBVXXOG6xdayZctMeHi4eeaZZ1zzlEVfEWJL6O9//7uJi4szgYGBplWrVq5bJFVln3/+uZFU4DFkyBBjzPlbaYwfP95ERUUZu91uOnXqZHbs2OHboiuYp/6RZObPn++ah34y5oEHHnB9vy6//HLTvXt3V4A1hj4qzMUhlr46L//ekzVq1DAxMTFm4MCBZteuXa52+ukPH330kWnevLmx2+2madOm5h//+IdbO3113scff2wkmT179hRoo4/Oy8jIMCNHjjSxsbEmKCjINGrUyIwdO9bk5ua65imLvrIZY0xpDxcDAAAAvsA5sQAAALAcQiwAAAAshxALAAAAyyHEAgAAwHIIsQAAALAcQiwAAAAshxALAAAAyyHEAgAAwHIIsQAAALAcQiwA+JENGzaoevXq6t27t69LAQC/xrCzAOBHhg8frpo1a+q1117T7t27FRsb6+uSAMAvcSQWAPxEZmam3nnnHT3yyCO65ZZbtGDBArf25cuXq3HjxgoODlbXrl21cOFC2Ww2paenu+bZsGGDOnXqpODgYDVo0EBPPPGEMjMzK/aNAEAFIMQCgJ9YunSpEhISlJCQoKSkJM2fP1/5P5bt379fd9xxh2677TZt3bpVDz30kMaOHeu2/I4dO9SrVy8NHDhQ27dv19KlS7V+/Xo99thjvng7AFCuOJ0AAPzEjTfeqD//+c8aOXKkzp49q+joaL399tu6+eab9dxzz2nFihXasWOHa/7nn39ekyZN0okTJ1SnTh0NHjxYwcHBevXVV13zrF+/Xp07d1ZmZqaCgoJ88bYAoFxwJBYA/MCePXv03Xff6a677pIkBQQEaNCgQXr99ddd7TfccIPbMm3atHF7vnnzZi1YsEA1a9Z0PXr16qW8vDzt27evYt4IAFSQAF8XAACQ5s2bp7Nnz+qKK65wTTPGqEaNGjpx4oSMMbLZbG7LXPxDWl5enh566CE98cQTBdbPBWIAKhtCLAD42NmzZ7Vo0SK9+OKL6tmzp1vb7bffrjfffFNNmzbVypUr3do2bdrk9rxVq1batWuXrrrqqnKvGQB8jXNiAcDHPvjgAw0aNEhHjx5V7dq13drGjh2rlStXatmyZUpISNBTTz2lYcOGaevWrRo1apQOHTqk9PR01a5dW9u3b1e7du10//3368EHH1RoaKhSU1O1evVqvfzyyz56dwBQPjgnFgB8bN68ebr55psLBFjp/JHYrVu36sSJE3rvvfe0bNkytWjRQnPmzHHdncBut0uSWrRooXXr1mnv3r266aab1LJlS40bN07R0dEV+n4AoCJwJBYALGrSpEmaO3euDh486OtSAKDCcU4sAFjE7NmzdcMNN6hevXr66quvNGPGDO4BC6DKIsQCgEXs3btXEydO1PHjxxUbG6tRo0Zp9OjRvi4LAHyC0wkAAABgOVzYBQAAAMshxAIAAMByCLEAAACwHEIsAAAALIcQCwAAAMshxAIAAMByCLEAAACwHEIsAAAALOf/A6H7BUebdvOBAAAAAElFTkSuQmCC\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "frequency_distribution_ages3 = population_ages3['observation'].value_counts().sort_index()\n",
+ "\n",
+ "plt.figure(figsize=(8, 6))\n",
+ "plt.hist(population_ages3['observation'], bins=len(frequency_distribution_ages3), color = 'orange', edgecolor='black')\n",
+ "plt.xlabel('Age')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Frequency distribution of ages in population 3')\n",
+ "\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": 78,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Mean of population 3: 41.989\n",
+ "Standard Deviation of population 3: 16.144705959865934\n"
+ ]
+ }
+ ],
+ "source": [
+ "mean_value_ages3 = population_ages3['observation'].mean()\n",
+ "std_value_ages3 = population_ages3['observation'].std()\n",
+ "\n",
+ "print(\"Mean of population 3:\", mean_value_ages3)\n",
+ "print(\"Standard Deviation of population 3:\", std_value_ages3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# When comparing the mean and standard deviation of population_ages3 with population in step 1, \n",
+ "# it seems that the mean and standard deviation age have increased.\n",
+ "# Shows a more spread out 'ages' than the dataset 'population'.\n",
+ "# Having a higher 'pick' on 30."
+ ]
+ },
+ {
+ "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": 79,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "1st Quartile: 30.0\n",
+ "2nd Quartile (Median): 40.0\n",
+ "3rd Quartile: 53.0\n",
+ "Difference between Median and Mean: 1.9889999999999972\n"
+ ]
+ }
+ ],
+ "source": [
+ "q1_ages3 = population_ages3['observation'].quantile(0.25)\n",
+ "q2_ages3 = population_ages3['observation'].quantile(0.50) \n",
+ "q3_ages3 = population_ages3['observation'].quantile(0.75)\n",
+ "\n",
+ "print(\"1st Quartile:\", q1_ages3)\n",
+ "print(\"2nd Quartile (Median):\", q2_ages3)\n",
+ "print(\"3rd Quartile:\", q3_ages3)\n",
+ "\n",
+ "median_difference = abs(mean_value_ages3 - q2_ages3)\n",
+ "print(\"Difference between Median and Mean:\", median_difference)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Its seems that the data in population_ages3 is relatively normally distributed, \n",
+ "# The larger standard deviation could be contributing to the wider spread of ages observed."
+ ]
+ },
+ {
+ "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": 24,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "22.0\n",
+ "67.0\n"
+ ]
+ }
+ ],
+ "source": [
+ "percentile_10 = population_ages3['observation'].quantile(0.10)\n",
+ "percentile_90 = population_ages3['observation'].quantile(0.90)\n",
+ "\n",
+ "print(percentile_10)\n",
+ "print(percentile_90)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# This distribution, along with the calculated quartiles and the comparison between mean and median, \n",
+ "# reinforces the idea that the age distribution in population_ages3 is slightly positively, with a \n",
+ "# concentration of ages around the median."
+ ]
+ },
+ {
+ "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": [
+ "# In this report, I analyze the age distributions of three different neighborhoods in Barcelona based on the provided data. \n",
+ "\n",
+ "# Dataset:\n",
+ "\n",
+ "# Neighborhood 1 - population\n",
+ "# Neighborhood 2 - ages_population2 \n",
+ "# Neighborhood 3 - population_ages3\n",
+ "\n",
+ "# The mean of ages:\n",
+ " \n",
+ "# Neighborhood 1: 36.56\n",
+ "# Neighborhood 2: 27.15\n",
+ "# Neighborhood 3: 41.989\n",
+ "\n",
+ "# The standard deviations:\n",
+ " \n",
+ "# Neighborhood 1: 12.81 \n",
+ "# Neighborhood 3: 16.144\n",
+ "\n",
+ "# Distribution Characteristics:\n",
+ "\n",
+ "# The quartile and percentile analyses revealed that Neighborhood 2 has a narrower IQR and lower percentiles, \n",
+ "# indicating a relatively younger population.\n",
+ "# Neighborhood 3 exhibits both younger and older individuals with a wider IQR and higher percentiles.\n",
+ "\n",
+ "# Comparisons:\n",
+ "\n",
+ "# Neighborhood 1 and Neighborhood 3 share similarities in terms of wider spreads, \n",
+ "# higher mean ages, but, Neighborhood 1 has a wider age range compared to Neighborhood 3.\n",
+ "\n",
+ "# Neighborhood 2 stands out with a narrower age range, lower mean age, and a more \n",
+ "# normal distribution. It has a younger population.\n",
+ "\n",
+ "\n",
+ "# In conclusion, the three neighborhoods have distinct age distributions.\n",
+ "# Neighborhood 1 and Neighborhood 3 are similar in terms of wider spreads, but they have different age ranges. \n",
+ "# Neighborhood 2 has a less spred out age and the population is younger."
+ ]
+ }
+ ],
+ "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.10.9"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}