"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "#Jesus' method\n",
+ "\n",
+ "#Here sort it by value, not frequency distribution\n",
+ "dice = dice_values.sort_values(by='Number').reset_index()['Number'] \n",
+ "#by = name of the column\n",
+ "#reset index so we have value count plot (otherwise we have plot as we would not done value count as \n",
+ "#we reset the number)\n",
+ "\n",
+ "#After resetting the index, we select the 'Number' column using square brackets, \n",
+ "#which returns a Series containing only the 'Number' column. \n",
+ "#This is useful to work with the sorted and reset 'Number' values as a 1-D data structure (Series) \n",
+ "#rather than a 2-D DataFrame.\n",
+ "\n",
+ "\n",
+ "#Step 2 - Set parameters \n",
+ "plt.plot(range(1, len(dice) + 1), dice)\n",
+ "\n",
+ "# Set x-axis ticks starting from 1 with a step of 1\n",
+ "plt.xticks(range(1, len(dice) + 1))\n",
+ "\n",
+ "# Set y-axis ticks starting from 1 with a step of 1\n",
+ "plt.yticks(range(1, int(dice.max()) + 1))\n",
+ "\n",
+ "\n",
+ "plt.xlabel(\"Index\")\n",
+ "plt.ylabel(\"Number\")\n",
+ "plt.title(\"Plot of Sorted 'Number' Values\")\n",
+ "\n",
+ "plt.show()\n",
+ "\n",
+ "#Here we create a new dataframe, we sort it by column, we reset the index (we wanna get rid of the first column indexed)\n",
+ "#we give the column name in which we wanna put this value \n",
+ "#after the reset we add [name of the column] because we put the column values in it."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Plot explanation :\n",
+ "\n",
+ "1. The x-axis (horizontal) represents the index values of the DataFrame after resetting the index. These values start from 0 and go up to 9, which correspond to the sorted positions of the 'Number' values in the DataFrame.\n",
+ "\n",
+ "2. The y-axis (vertical) represents the actual 'Number' values in your DataFrame, which have been sorted in ascending order.\n",
+ "\n",
+ "The plot itself consists of points connected by lines. Each point on the plot represents a 'Number' value from your DataFrame, and the lines connect these points in ascending order."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "metadata": {
+ "scrolled": true
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0 1\n",
+ "1 1\n",
+ "2 2\n",
+ "3 3\n",
+ "4 3\n",
+ "5 3\n",
+ "6 4\n",
+ "7 4\n",
+ "8 6\n",
+ "9 6\n",
+ "Name: Number, dtype: int64"
+ ]
+ },
+ "execution_count": 36,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "dice #Check we now we have the column sorted by ascending order"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "{'whiskers': [,\n",
+ " ],\n",
+ " 'caps': [,\n",
+ " ],\n",
+ " 'boxes': [],\n",
+ " 'medians': [],\n",
+ " 'fliers': [],\n",
+ " 'means': []}"
+ ]
+ },
+ "execution_count": 19,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhYAAAGdCAYAAABO2DpVAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAPmElEQVR4nO3dX4iV9Z/A8c9R6aQ2M5UUOXlyShJHzUqLEtkLywg3JYK6CKcklvhBgpVEkQQpmVNX20UgWVEXUkKI0o0SXWgsZelIIOKklm7WtP5ot+aMfzqxevbiR0Pzy1k9M5+Z4+jrBSHnmefP5yaeN9955jyFarVaDQCABKPqPQAAcPEQFgBAGmEBAKQRFgBAGmEBAKQRFgBAGmEBAKQRFgBAmjHDfcEzZ85EV1dXNDQ0RKFQGO7LAwADUK1Wo6enJ5qbm2PUqP7XJYY9LLq6uqJUKg33ZQGABEePHo1Jkyb1+/NhD4uGhoaI+MdgjY2Nw315AGAAyuVylEql3vt4f4Y9LP749UdjY6OwAIAR5lyPMXh4EwBIIywAgDTCAgBIIywAgDTCAgBIIywAgDTCAgBIIywAgDTCAgBIU3NY/Pjjj9HW1hYTJkyIcePGxW233RYdHR1DMRsAMMLU9JXev/zyS8ybNy/mz58fW7dujWuvvTa+/fbbuPLKK4doPABgJKkpLF5//fUolUrx3nvv9W5raWnJngkAGKFqCouPP/447r///njkkUdix44dcf3118dTTz0VTz75ZL/HVCqVqFQqvZ/L5fLApwXSnTx5Mjo7O1POderUqThy5Ei0tLTE2LFjB32+adOmxbhx4xImA4ZLTWHx3Xffxbp162LFihWxcuXK+Oqrr2L58uVRLBbj8ccfP+sx7e3tsXr16pRhgXydnZ0xZ86ceo9xVh0dHTF79ux6jwHUoFCtVqvnu/Nll10Wd9xxR3z++ee925YvXx67du2KL7744qzHnG3FolQqRXd3t9emwwUgc8Vi//790dbWFhs2bIjW1tZBn8+KBVw4yuVyNDU1nfP+XdOKxcSJE2P69Ol9trW2tsamTZv6PaZYLEaxWKzlMsAwGjduXPqqQGtrq5UGuETV9Oem8+bNi2+++abPtgMHDsTkyZNThwIARqaawuLZZ5+NnTt3xtq1a+PQoUPxwQcfxPr162PZsmVDNR8AMILUFBZ33nlnbN68OT788MOYOXNmvPLKK/HGG2/EkiVLhmo+AGAEqekZi4iIRYsWxaJFi4ZiFgBghPOuEAAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgTU1hsWrVqigUCn3+u+6664ZqNgBghBlT6wEzZsyITz/9tPfz6NGjUwcCAEaumsNizJgxVikAgLOqOSwOHjwYzc3NUSwW46677oq1a9fGTTfd1O/+lUolKpVK7+dyuTywSYE+Dh48GD09PfUeo4/9+/f3+fdC0dDQEDfffHO9x4BLQqFarVbPd+etW7fGyZMnY+rUqXHs2LFYs2ZNdHZ2xr59+2LChAlnPWbVqlWxevXqv2zv7u6OxsbGgU8Ol7CDBw/G1KlT6z3GiHLgwAFxAYNQLpejqanpnPfvmsLin504cSKmTJkSzz//fKxYseKs+5xtxaJUKgkLGIQ9e/bEnDlzYsOGDdHa2lrvcXqdOnUqjhw5Ei0tLTF27Nh6jxMR/1g9aWtri46Ojpg9e3a9x4ER63zDouZfhfzZ+PHj45ZbbomDBw/2u0+xWIxisTiYywD9aG1tveBulvPmzav3CEAdDep7LCqVSuzfvz8mTpyYNQ8AMILVFBbPPfdc7NixIw4fPhxffvllPPzww1Eul2Pp0qVDNR8AMILU9KuQH374IR599NH4+eef45prrom77747du7cGZMnTx6q+QCAEaSmsNi4ceNQzQEAXAS8KwQASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASDOosGhvb49CoRDPPPNM0jgAwEg24LDYtWtXrF+/PmbNmpU5DwAwgg0oLI4fPx5LliyJt99+O6666qrsmQCAEWrMQA5atmxZPPDAA7FgwYJYs2bN/7tvpVKJSqXS+7lcLg/kksCf/NbzP3H7daPiP3d+HGN/PVDvcXpVKpXo6uqK5ubmKBaL9R4nIiL+6/DhuP26UVH439/qPQpcEmoOi40bN8aePXti165d57V/e3t7rF69uubBgP4d2/cfsedvV0T8/d8j/l7vafq6LSLiaJ2H+JPWiPjXv10R31f/u96jwCWhprA4evRoPP300/HJJ5/E5Zdffl7HvPjii7FixYrez+VyOUqlUm1TAn38y0P/Fps3R7S0tJz3/4vD4fDhw/HSSy/FmjVr4sYbb6z3OL3Gjx8fN9x+b73HgEtCoVqtVs935y1btsRDDz0Uo0eP7t12+vTpKBQKMWrUqKhUKn1+djblcjmampqiu7s7GhsbBz45cMHZs2dPzJkzJzo6OmL27Nn1HgdIdL7375pWLO69997Yu3dvn21PPPFETJs2LV544YVzRgUAcHGrKSwaGhpi5syZfbaNHz8+JkyY8JftAMClxzdvAgBpBvTnpn+2ffv2hDEAgIuBFQsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAIE1NYbFu3bqYNWtWNDY2RmNjY8ydOze2bt06VLMBACNMTWExadKkeO2112L37t2xe/fuuOeee+LBBx+Mffv2DdV8AMAIMqaWnRcvXtzn86uvvhrr1q2LnTt3xowZM1IHAwBGnprC4s9Onz4dH330UZw4cSLmzp3b736VSiUqlUrv53K5PNBLAkPg5MmT0dnZmXKu/fv39/l3sKZNmxbjxo1LORcwPGoOi71798bcuXPjt99+iyuuuCI2b94c06dP73f/9vb2WL169aCGBIZOZ2dnzJkzJ/WcbW1tKefp6OiI2bNnp5wLGB6FarVareWA33//Pb7//vv49ddfY9OmTfHOO+/Ejh07+o2Ls61YlEql6O7ujsbGxsFNDwxa5orFqVOn4siRI9HS0hJjx44d9PmsWMCFo1wuR1NT0znv3zWHxT9bsGBBTJkyJd56663UwQCAC8f53r8H/T0W1Wq1z4oEAHDpqukZi5UrV8bChQujVCpFT09PbNy4MbZv3x7btm0bqvkAgBGkprA4duxYPPbYY/HTTz9FU1NTzJo1K7Zt2xb33XffUM0HAIwgNYXFu+++O1RzAAAXAe8KAQDSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADS1PTNmxn+eJlquVwe7ksDAAP0x337XC9FH/aw6OnpiYiIUqk03JcGAAapp6cnmpqa+v15oXqu9Eh25syZ6OrqioaGhigUCsN5aWCIlcvlKJVKcfTo0WhsbKz3OECiarUaPT090dzcHKNG9f8kxbCHBXDxKpfL0dTUFN3d3cICLlEe3gQA0ggLACCNsADSFIvFePnll6NYLNZ7FKBOPGMBAKSxYgEApBEWAEAaYQEApBEWAEAaYQEM2meffRaLFy+O5ubmKBQKsWXLlnqPBNSJsAAG7cSJE3HrrbfGm2++We9RgDob9peQARefhQsXxsKFC+s9BnABsGIBAKQRFgBAGmEBAKQRFgBAGmEBAKTxVyHAoB0/fjwOHTrU+/nw4cPx9ddfx9VXXx033HBDHScDhpu3mwKDtn379pg/f/5fti9dujTef//94R8IqBthAQCk8YwFAJBGWAAAaYQFAJBGWAAAaYQFAJBGWAAAaYQFAJBGWAAAaYQFAJBGWAAAaYQFAJBGWAAAaf4PMLHRcNLeq7QAAAAASUVORK5CYII=\n",
+ "text/plain": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "#Boxplot\n",
+ "\n",
+ "# your code here\n",
+ "sorted_rolls = dice_rolls['Number'].sort_values()\n",
+ "\n",
+ "plt.yticks([1,2,3,4,5,6]) #add all values for the plot\n",
+ "\n",
+ "plt.boxplot(sorted_rolls)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Line plot:\n",
+ "It is often used to visualize the trend or pattern in data over a continuous or ordered variable, such as time.\n",
+ "\n",
+ "Boxplot (more useful for data summary and comparisons):\n",
+ "used to visualize the distribution and summary statistics of a dataset.\n",
+ "useful for comparing the distribution of data between different categories or groups and for identifying the presence of outliers.\n",
+ "\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "#### 3.- Calculate the frequency distribution and plot it. What is the relation between this plot and the plot above? Describe it with words."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 64,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# Define the bin edges to center the bars between integers\n",
+ "bin_edges = [i - 0.5 for i in range(1, 8)] # Centered between 1 and 6\n",
+ "\n",
+ "# Create the histogram with centered columns\n",
+ "hist_values, bin_edges, _ = plt.hist(dice, bins=bin_edges, rwidth=0.8)\n",
+ "\n",
+ "# Calculate the median\n",
+ "median = np.median(dice)\n",
+ "\n",
+ "# Set the y-axis ticks with a step of 1, considering the maximum count in the histogram\n",
+ "plt.yticks(range(1, int(max(hist_values)) + 1))\n",
+ "\n",
+ "plt.xlabel(\"Number\")\n",
+ "plt.ylabel(\"Frequency\")\n",
+ "plt.title(\"Histogram of 'Number' Values\")\n",
+ "\n",
+ "# Display the median as text on the plot\n",
+ "plt.text(median, 1, f\"Median: {median}\", ha='center', va='bottom', fontsize=12)\n",
+ "\n",
+ "plt.show()\n",
+ "\n",
+ "#The [0] is used to access the first element of the return value from plt.hist. \n",
+ "#The plt.hist function returns a tuple of values, and we're interested in the first element of that tuple, \n",
+ "#which contains the frequency counts of the histogram.\n",
+ "\n",
+ "#plt.hist returns tuples containing 3 elements :\n",
+ "\n",
+ "#The histogram values (frequency counts in each bin).\n",
+ "#The bin edges.\n",
+ "#The patches (the individual bars in the histogram).\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 65,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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N07OnX6zLgAAqBjZ2dkKDAy0/h6/ld9cuCm6FVWzZk3CDQAAd5nSTClhQjEAADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVp4abhQsXqlWrVtavQoiIiNCGDRtuOWbbtm1q3769PDw8dO+992rRokUVVC0AALgbODXcBAQEaMaMGUpNTVVqaqoefvhh9e7dW4cOHSqx/8mTJxUbG6vOnTtr7969mjRpksaMGaPk5OQKrhwAAFRWFsMwDGcX8Ut16tTR7NmzNWzYsGLb/v73v2vt2rU6fPiwtS0uLk779+/Xjh07SrX/7OxseXt76/Lly3xxJgAAd4my/P6uNHNuCgoK9M477+jatWuKiIgosc+OHTsUExNj09a9e3elpqYqLy+vIsoEAACVnIuzCzh48KAiIiJ0/fp11ahRQ6tXr1bz5s1L7JuVlSVfX1+bNl9fX+Xn5+vChQvy8/MrNiYnJ0c5OTnW9ezsbMceAAAAqFScHm5CQ0O1b98+Xbp0ScnJyRo0aJC2bdt204BjsVhs1ovuqv26vUhiYqKmTp3q2KKBChb87Dpnl3DXODXjEWeXAMDJnH5bys3NTY0aNVJ4eLgSExPVunVrvfLKKyX2bdCggbKysmzazp8/LxcXF9WtW7fEMRMnTtTly5etS0ZGhsOPAQAAVB5Ov3Lza4Zh2NxG+qWIiAh9+OGHNm2bNm1SeHi4XF1dSxzj7u4ud3d3h9cJAAAqJ6deuZk0aZI+++wznTp1SgcPHtRzzz2nlJQU9e/fX9KNqy4DBw609o+Li1NaWpri4+N1+PBhLV26VEuWLFFCQoKzDgEAAFQyTr1yc+7cOT311FPKzMyUt7e3WrVqpY0bN6pbt26SpMzMTKWnp1v7h4SEaP369Ro/frwWLFggf39/zZ8/X3379nXWIQAAgEqm0n3OTXnjc25wN2JCcekxoRgwp7vyc24AAAAcgXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABM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u+9q5syZOn78uBISEhQQEKCBAwcqMzPTUXUCAACUyh2Fm9TUVI0YMUJ+fn6aO3euEhISdPz4cW3ZskVnzpxR7969HVUnAABAqbjYM2ju3LlKSkrS0aNHFRsbq+XLlys2NlZVqtzISiEhIXrjjTfUtGlThxYLAABwO3aFm4ULF2ro0KEaMmSIGjRoUGKfhg0basmSJXdUHAAAQFnZFW6+++672/Zxc3PToEGD7Nk9AACA3eyac5OUlKT33nuvWPt7772nN998846LAgAAsJdd4WbGjBmqV69esXYfHx9Nnz79josCAACwl13hJi0tTSEhIcXag4KClJ6efsdFAQAA2MuucOPj46MDBw4Ua9+/f7/q1q17x0UBAADYy65w8+STT2rMmDHaunWrCgoKVFBQoC1btmjs2LF68sknHV0jAABAqdn1tNS0adOUlpam6Ohoubjc2EVhYaEGDhzInBsAAOBUdoUbNzc3rVy5Ui+99JL2798vT09PtWzZUkFBQY6uDwAAoEzsCjdFmjRpoiZNmjiqFgAAgDtmV7gpKCjQsmXL9Omnn+r8+fMqLCy02b5lyxaHFAcAAFBWdoWbsWPHatmyZXrkkUfUokULWSwWR9cFAABgF7vCzTvvvKN3331XsbGxjq4HAADgjtj1KLibm5saNWrk6FoAAADumF3hZsKECXrllVdkGIaj6wEAALgjdt2W+vzzz7V161Zt2LBBYWFhcnV1tdm+atUqhxQHAABQVnaFm1q1aqlPnz6OrgUAAOCO2RVukpKSHF0HAACAQ9g150aS8vPz9cknn+iNN97QlStXJElnz57V1atXHVYcAABAWdl15SYtLU2///3vlZ6erpycHHXr1k1eXl6aNWuWrl+/rkWLFjm6TgAAgFKx68rN2LFjFR4erp9++kmenp7W9j59+ujTTz91WHEAAABlZffTUl988YXc3Nxs2oOCgnTmzBmHFAYAAGAPu67cFBYWqqCgoFj76dOn5eXldcdFAQAA2MuucNOtWzfNmzfPum6xWHT16lVNnjyZr2QAAABOZddtqf/3//6funbtqubNm+v69ev685//rO+++0716tXT22+/7egaAQAASs2ucOPv7699+/bp7bff1p49e1RYWKhhw4apf//+NhOMAQAAKppd4UaSPD09NXToUA0dOtSR9QAAANwRu8LN8uXLb7l94MCBdhUDAABwp+wKN2PHjrVZz8vL088//yw3NzdVq1aNcAMAAJzGrqelfvrpJ5vl6tWrOnr0qDp16sSEYgAA4FR2f7fUrzVu3FgzZswodlXnVrZv365evXrJ399fFotFa9asuWX/lJQUWSyWYsuRI0fusHoAAGAWdk8oLknVqlV19uzZUve/du2aWrdurSFDhqhv376lHnf06FHVrFnTul6/fv0y1QkAAMzLrnCzdu1am3XDMJSZmanXXntNDz30UKn306NHD/Xo0aPMr+/j46NatWqVeRwAADA/u8LNY489ZrNusVhUv359Pfzww3r55ZcdUdcttW3bVtevX1fz5s31/PPPq2vXruX+mgAA4O5gV7gpLCx0dB2l4ufnp8WLF6t9+/bKycnRf/7zH0VHRyslJUVdunQpcUxOTo5ycnKs69nZ2RVVLgAAcAKHzrkpb6GhoQoNDbWuR0REKCMjQ3PmzLlpuElMTNTUqVMrqkQAAOBkdoWb+Pj4UvedO3euPS9Rag8++KBWrFhx0+0TJ060qTc7O1uBgYHlWhMAAHAeu8LN3r17tWfPHuXn51uvpBw7dkxVq1ZVu3btrP0sFotjqrxNLX5+fjfd7u7uLnd393KvAwAAVA52hZtevXrJy8tLb775pmrXri3pxgf7DRkyRJ07d9aECRNKtZ+rV6/q+++/t66fPHlS+/btU506ddSwYUNNnDhRZ86csX7dw7x58xQcHKywsDDl5uZqxYoVSk5OVnJysj2HAQAATMiucPPyyy9r06ZN1mAjSbVr19a0adMUExNT6nCTmppq86RT0e2jQYMGadmyZcrMzFR6erp1e25urhISEnTmzBl5enoqLCxM69atU2xsrD2HAQAATMiucJOdna1z584pLCzMpv38+fO6cuVKqfcTFRUlwzBuun3ZsmU2688884yeeeaZMtUKAAB+W+z6+oU+ffpoyJAhev/993X69GmdPn1a77//voYNG6bHH3/c0TUCAACUml1XbhYtWqSEhAQNGDBAeXl5N3bk4qJhw4Zp9uzZDi0QAACgLOwKN9WqVdPrr7+u2bNn6/jx4zIMQ40aNVL16tUdXR8AAECZ3NG3gmdmZiozM1NNmjRR9erVbzl/BgAAoCLYFW4uXryo6OhoNWnSRLGxscrMzJQkDR8+vNRPSgEAAJQHu8LN+PHj5erqqvT0dFWrVs3a3q9fP23cuNFhxQEAAJSVXXNuNm3apI8//lgBAQE27Y0bN1ZaWppDCgMAALCHXVdurl27ZnPFpsiFCxf4qgMAAOBUdoWbLl26WL8SQbrxHVKFhYWaPXu2zScOAwAAVDS7bkvNnj1bUVFRSk1NVW5urp555hkdOnRIP/74o7744gtH1wgAAFBqdl25ad68uQ4cOKAHHnhA3bp107Vr1/T4449r7969uu+++xxdIwAAQKmV+cpNXl6eYmJi9MYbb2jq1KnlURMAAIDdynzlxtXVVd98840sFkt51AMAAHBH7LotNXDgQC1ZssTRtQAAANwxuyYU5+bm6t///rc2b96s8PDwYt8pNXfuXIcUBwAAUFZlCjcnTpxQcHCwvvnmG7Vr106SdOzYMZs+3K4CAADOVKZw07hxY2VmZmrr1q2Sbnzdwvz58+Xr61suxQEAAJRVmebc/Ppbvzds2KBr1645tCAAAIA7YdeE4iK/DjsAAADOVqZwY7FYis2pYY4NAACoTMo058YwDA0ePNj65ZjXr19XXFxcsaelVq1a5bgKAQAAyqBM4WbQoEE26wMGDHBoMQAAAHeqTOEmKSmpvOoAAABwiDuaUAwAAFDZEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpODXcbN++Xb169ZK/v78sFovWrFlz2zHbtm1T+/bt5eHhoXvvvVeLFi0q/0IBAMBdw6nh5tq1a2rdurVee+21UvU/efKkYmNj1blzZ+3du1eTJk3SmDFjlJycXM6VAgCAu4WLM1+8R48e6tGjR6n7L1q0SA0bNtS8efMkSc2aNVNqaqrmzJmjvn37llOVAADgbnJXzbnZsWOHYmJibNq6d++u1NRU5eXllTgmJydH2dnZNgsAADAvp165KausrCz5+vratPn6+io/P18XLlyQn59fsTGJiYmaOnVqRZWIMgh+dp2zSwAAmNBddeVGkiwWi826YRgltheZOHGiLl++bF0yMjLKvUYAAOA8d9WVmwYNGigrK8um7fz583JxcVHdunVLHOPu7i53d/eKKA8AAFQCd9WVm4iICG3evNmmbdOmTQoPD5erq6uTqgIAAJWJU8PN1atXtW/fPu3bt0/SjUe99+3bp/T0dEk3bikNHDjQ2j8uLk5paWmKj4/X4cOHtXTpUi1ZskQJCQnOKB8AAFRCTr0tlZqaqq5du1rX4+PjJUmDBg3SsmXLlJmZaQ06khQSEqL169dr/PjxWrBggfz9/TV//nweAwcAAFZODTdRUVHWCcElWbZsWbG2yMhI7dmzpxyrAgAAd7O7as4NAADA7RBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqTg93Lz++usKCQmRh4eH2rdvr88+++ymfVNSUmSxWIotR44cqcCKAQBAZebUcLNy5UqNGzdOzz33nPbu3avOnTurR48eSk9Pv+W4o0ePKjMz07o0bty4gioGAACVnVPDzdy5czVs2DANHz5czZo107x58xQYGKiFCxfecpyPj48aNGhgXapWrVpBFQMAgMrOaeEmNzdXu3fvVkxMjE17TEyMvvzyy1uObdu2rfz8/BQdHa2tW7fesm9OTo6ys7NtFgAAYF5OCzcXLlxQQUGBfH19bdp9fX2VlZVV4hg/Pz8tXrxYycnJWrVqlUJDQxUdHa3t27ff9HUSExPl7e1tXQIDAx16HAAAoHJxcXYBFovFZt0wjGJtRUJDQxUaGmpdj4iIUEZGhubMmaMuXbqUOGbixImKj4+3rmdnZxNwAAAwMaddualXr56qVq1a7CrN+fPni13NuZUHH3xQ33333U23u7u7q2bNmjYLAAAwL6eFGzc3N7Vv316bN2+2ad+8ebM6duxY6v3s3btXfn5+ji4PAADcpZx6Wyo+Pl5PPfWUwsPDFRERocWLFys9PV1xcXGSbtxSOnPmjJYvXy5JmjdvnoKDgxUWFqbc3FytWLFCycnJSk5OduZhAACASsSp4aZfv366ePGiXnzxRWVmZqpFixZav369goKCJEmZmZk2n3mTm5urhIQEnTlzRp6engoLC9O6desUGxvrrEMAAACVjMUwDMPZRVSk7OxseXt76/Lly+Uy/yb42XUO3ycAlJdTMx5xdgl3Df5+L73yeF+V5fe3079+AQAAwJEINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFScHm5ef/11hYSEyMPDQ+3bt9dnn312y/7btm1T+/bt5eHhoXvvvVeLFi2qoEoBAMDdwKnhZuXKlRo3bpyee+457d27V507d1aPHj2Unp5eYv+TJ08qNjZWnTt31t69ezVp0iSNGTNGycnJFVw5AACorJwabubOnathw4Zp+PDhatasmebNm6fAwEAtXLiwxP6LFi1Sw4YNNW/ePDVr1kzDhw/X0KFDNWfOnAquHAAAVFZOCze5ubnavXu3YmJibNpjYmL05Zdfljhmx44dxfp3795dqampysvLK7daAQDA3cPFWS984cIFFRQUyNfX16bd19dXWVlZJY7JysoqsX9+fr4uXLggPz+/YmNycnKUk5NjXb98+bIkKTs7+04PoUSFOT+Xy34BoDyU19+FZsTf76VXHu+ron0ahnHbvk4LN0UsFovNumEYxdpu17+k9iKJiYmaOnVqsfbAwMCylgoApuM9z9kVwIzK83115coVeXt737KP08JNvXr1VLVq1WJXac6fP1/s6kyRBg0alNjfxcVFdevWLXHMxIkTFR8fb10vLCzUjz/+qLp1694yRNkjOztb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FJvt3377rWJjY1WjRg35+vrqqaee0oULF6zbo6KiNGrUKMXHx6tevXrq1q2b3ecCQPkh3ACoMFWrVtX06dP16quv6vTp03bvZ8uWLTp79qy2b9+uuXPnasqUKerZs6dq166tr776SnFxcYqLi1NGRobNuL/97W+aMGGC9u7dq44dO+rRRx/VxYsXJUmZmZmKjIxUmzZtlJqaqo0bN+rcuXN64oknbPbx5ptvysXFRV988YXeeOMNu48BQPkh3ACoUH369FGbNm00efJku/dRp04dzZ8/X6GhoRo6dKhCQ0P1888/a9KkSWrcuLEmTpwoNzc3ffHFFzbjRo0apb59+6pZs2ZauHChvL29tWTJEknSwoUL1a5dO02fPl1NmzZV27ZttXTpUm3dulXHjh2z7qNRo0aaNWuWQkND1bRpU7uPAUD5IdwAqHAzZ87Um2++qW+//dau8WFhYapS5f/++vL19VXLli2t61WrVlXdunV1/vx5m3ERERHW/3dxcVF4eLgOHz4sSdq9e7e2bt2qGjVqWJei8HL8+HHruPDwcLtqBlBxXJxdAIDfni5duqh79+6aNGmSBg8ebG2vUqWKDMOw6ZuXl1dsvKurq826xWIpsa2wsPC2tRQ9qVVYWKhevXpp5syZxfr4+flZ/7969eq33ScA5yLcAHCKGTNmqE2bNmrSpIm1rX79+srKypJhGNbQ4cjPptm5c6e6dOkiScrPz9fu3bs1atQoSVK7du2UnJys4OBgubjwVyNwN+O2FACnaNmypfr3769XX33V2hYVFaUffvhBs2bN0vHjx7VgwQJt2LDBYa+5YMECrV69WkeOHNHIkSP1008/aejQoZKkkSNH6scff9Sf/vQn7dq1SydOnNCmTZs0dOhQFRQUOKwGAOWPcAPAaV566SWb21DNmjXT66+/rgULFqh169batWuXEhISHPZ6M2bM0MyZM9W6dWt99tln+uCDD1SvXj1Jkr+/v7744gsVFBSoe/fuatGihcaOHStvb2+b+T0AKj+L8esb3AAAAHcx/jkCAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABM5f8Ds2cQesrCHQYAAAAASUVORK5CYII=\n",
+ "text/plain": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "#Jesus' method\n",
+ "\n",
+ "bin_edges = [i - 0.5 for i in range(1, 8)]\n",
+ "\n",
+ "plt.hist(dice_thousand['value'], bins=bin_edges, rwidth=0.8, color='powderblue')\n",
+ "\n",
+ "# Calculate the mean\n",
+ "mean_value = dice_thousand['value'].mean()\n",
+ "\n",
+ "# Display the mean as a vertical line on the histogram\n",
+ "plt.axvline(mean_value, color='cadetblue', linestyle='dashed', linewidth=2, label=f'Mean: {mean_value}')\n",
+ "\n",
+ "# Set labels and title\n",
+ "plt.xlabel('Value')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Histogram of Value')\n",
+ "\n",
+ "# Add a legend\n",
+ "plt.legend()\n",
+ "\n",
+ "# Show the plot\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Here we see more uniform chart and mean line closer to the 3.\n",
+ "Almost all the values will have the same count (more flat/uniform distribution).\n",
+ "The more values we have, the closer we gonna be to the mean."
+ ]
+ },
+ {
+ "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": 235,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "bin_edges = [i - 0.5 for i in range(1, 36)]\n",
+ "\n",
+ "plt.hist(ages_population2_df, bins=bin_edges, rwidth=0.8, color='powderblue')\n",
+ "\n",
+ "# Calculate the mean\n",
+ "mean_value = ages_population2_df['observation'].mean()\n",
+ "\n",
+ "# Display the mean as a vertical line on the histogram\n",
+ "plt.axvline(mean_value, color='cadetblue', linestyle='dashed', linewidth=2, label=f'Mean: {mean_value}')\n",
+ "\n",
+ "plt.xlabel('Age')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Histogram of age')\n",
+ "\n",
+ "plt.legend()\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": "markdown",
+ "metadata": {},
+ "source": [
+ "The distribution appears to be unimodal (having one mode) and skewed to the right. Vs almost perfect normal distribution in the previous graph.\n",
+ "\n",
+ "This means that the majority of individuals in the dataset are concentrated in the younger age groups, with fewer individuals in the older age groups. Vs previous graph where age distribution is more sparsed.\n",
+ "\n",
+ "The mode appears to be in the age group around 26.0.\n",
+ "\n",
+ "There are very few individuals in the age groups 19.0, 34.0, 35.0, and 36.0, which can be considered outliers or less common age groups in the dataset. There is less outliers value in the previous data set (one above 80)\n",
+ "\n",
+ "Standard deviation is very narrowed, compared to previous distribution where the spread was large."
+ ]
+ },
+ {
+ "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": 205,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "The mean age is 27.16\n",
+ "The standard deviation for age is 2.969813932689186\n"
+ ]
+ }
+ ],
+ "source": [
+ "# your code here\n",
+ "mean_age = ages_population2_df['observation'].mean()\n",
+ "print(f\"The mean age is {mean_age:.2f}\")\n",
+ "\n",
+ "\n",
+ "std_age = ages_population2_df['observation'].std()\n",
+ "print(f\"The standard deviation for age is {std_age}\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Age mean is younger and the spread is very narrowed, indicated high concentration of individuals around the mean."
+ ]
+ },
+ {
+ "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": 207,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "bin_edges = [i - 0.5 for i in range(1, 90)]\n",
+ "\n",
+ "plt.hist(ages_population3, bins=bin_edges, rwidth=0.8, color='powderblue')\n",
+ "\n",
+ "# Calculate the mean\n",
+ "mean_value = ages_population3['observation'].mean()\n",
+ "\n",
+ "# Display the mean as a vertical line on the histogram\n",
+ "plt.axvline(mean_value, color='cadetblue', linestyle='dashed', linewidth=2, label=f'Mean: {mean_value}')\n",
+ "\n",
+ "plt.xlabel('Age')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Histogram of age')\n",
+ "\n",
+ "plt.legend()\n",
+ "\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Here we have two maximum.\n",
+ "\n",
+ "Normal distribution skewed to the right.\n",
+ "\n",
+ "Mean around 40/50 but withhigher standard deviation.\n",
+ "\n",
+ "Because if we look at the right, we have lots of values away from the mean, on the left we have values close to the mean."
+ ]
+ },
+ {
+ "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": 212,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "The mean age is 41.99\n",
+ "The standard deviation for age is 16.14\n"
+ ]
+ }
+ ],
+ "source": [
+ "# your code here\n",
+ "mean_age = ages_population3['observation'].mean()\n",
+ "print(f\"The mean age is {mean_age:.2f}\")\n",
+ "\n",
+ "\n",
+ "std_age = ages_population3['observation'].std()\n",
+ "print(f\"The standard deviation for age is {std_age: .2f}\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Value more sparsed and far away from the mean.\n",
+ "\n",
+ "Spread is larger."
+ ]
+ },
+ {
+ "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": 213,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "the first quartile is 30.0\n",
+ "the second quartile is 40.0\n",
+ "the third quartile is 53.0\n",
+ "the fourth quartile is 77.0\n"
+ ]
+ }
+ ],
+ "source": [
+ "# your code here\n",
+ "\n",
+ "sorted_ages = ages_population3['observation'].sort_values()\n",
+ "\n",
+ "q1 = np.quantile(sorted_ages, 0.25) \n",
+ "print(\"the first quartile is\", q1)\n",
+ "q2 = np.quantile(sorted_ages, 0.50)\n",
+ "print(\"the second quartile is\",q2)\n",
+ "q3 = np.quantile(sorted_ages, 0.75)\n",
+ "print(\"the third quartile is\", q3)\n",
+ "q4 = np.quantile(sorted_ages, 1)\n",
+ "print(\"the fourth quartile is\", q4)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Difference = |Mean - Median| = |41.99 - 40.0| = 1.99\n",
+ "\n",
+ "The result show that the data set is positively skewed. \n",
+ "\n",
+ "The small difference suggest a cluster around the median (40 yo).\n",
+ "\n",
+ "Very reduced spread, values highly concentrated around the median."
+ ]
+ },
+ {
+ "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": 222,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "10th Percentile: 22.000\n",
+ "90th Percentile: 67.000\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Jesus' method\n",
+ "\n",
+ "#print(np.percentile(name of dataframe, % we want))\n",
+ "\n",
+ "percentiles = np.percentile(sorted_ages, [10, 90])\n",
+ "\n",
+ "print(f\"10th Percentile: {percentiles[0]:.3f}\")\n",
+ "print(f\"90th Percentile: {percentiles[1]:.3f}\")\n",
+ "\n",
+ "#Very skewed, difference between 2nd and 3rd quartile is lower than diff between 3rd and 4th quartile.\n",
+ "\n",
+ "#10th and 90th percentile are useful to identify outliers. Those are very far away from the mean and the IQR."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 243,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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wNLSEo8fP4YQAiqVSus1b3bEp6SkoH///hg2bFia43NAOZHxY9JEREYvKSkJ69evx4IFC9CkSROt59q3b4/vv/8e5cuXx969e7WeO3PmjNbX3t7euHz5MsqUKZPjMRNR3sMxTURk9Hbu3InOnTsjKioKDg4OWs9NmjQJe/fuxfbt21GuXDmMHDkSffv2RXh4OAIDA/Hvv//iyZMncHBwwMWLF1GrVi307t0b/fr1g52dHa5evYqQkBB88803Cl0dEeUWjmkiIqMXHByMRo0apUmYANnTFB4ejsePH2Pr1q3Yvn07qlatiqCgIM3sOSsrKwBA1apVERoaiuvXr8PPzw9eXl747LPP4OrqmqvXQ0TKYE8TEVEGvvjiCyxfvhx37txROhQiygM4pomI6P+WLVuGGjVqoHDhwjh+/DjmzZvHGkxEpMGkiYjo/65fv46ZM2fi0aNHKFmyJAIDAzFhwgSlwyKiPIK354iIiIh0wIHgRERERDpg0kRERESkAyZNRERERDpg0kRERESkAyZNRERERDpg0kRERESkAyZNRERERDpg0kRERESkAyZNRERERDr4HztO3TmyFIx7AAAAAElFTkSuQmCC\n",
+ "text/plain": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "#Here we can try to do normal distribution to see if it's gonna be skewed to the left\n",
+ "\n",
+ "from scipy.stats import norm\n",
+ "\n",
+ "#ages_population3_bis = np.array(ages_population3, dtype=float)\n",
+ "\n",
+ "mean = np.mean(ages_population3)\n",
+ "std_dev = np.std(ages_population3)\n",
+ "\n",
+ "# Create a range of x-values (ages)\n",
+ "x = np.linspace(min(ages_population3), max(ages_population3), 1000)\n",
+ "\n",
+ "# Calculate the corresponding y-values using the normal distribution\n",
+ "y = norm.pdf(x, mean, std_dev)\n",
+ "\n",
+ "# Plot the normal distribution curve\n",
+ "plt.plot(x, y, 'b-', label='Normal Distribution')\n",
+ "\n",
+ "# Set the x-axis and y-axis labels\n",
+ "plt.xlabel('Age')\n",
+ "plt.ylabel('Probability Density')\n",
+ "plt.title('Normal Distribution of Age Data')\n",
+ "\n",
+ "# Add a legend\n",
+ "plt.legend()\n",
+ "\n",
+ "# Show the plot\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "\"\"\"\n",
+ "your comments here\n",
+ "\"\"\"\n",
+ "#Steps to analyse\n",
+ "\n",
+ "#1 do some cleaning\n",
+ "#2 do EDA -> Try to do something general for everything\n",
+ "#3 analysis\n",
+ "\n",
+ "#with enumerate function = make sure all the values are numerical\n",
+ "#but better to use enumerate(num) -> better to have random value so it is template \n",
+ "#then put num = name of the dataframe =ages3.np.select_dtypes(np.number) ???\n",
+ "#num = ages3.select_dtypes(np.number)"
+ ]
+ },
+ {
+ "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": 283,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "#we can put a function with \"warning ignore\" to ignore the warning function in Python"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 289,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Statistics for Neighborhood 1:\n",
+ " observation\n",
+ "count 1000.0000\n",
+ "mean 36.5600\n",
+ "std 12.8165\n",
+ "min 1.0000\n",
+ "25% 28.0000\n",
+ "50% 37.0000\n",
+ "75% 45.0000\n",
+ "max 82.0000\n",
+ "Statistics for Neighborhood 2:\n",
+ " observation\n",
+ "count 1000.000000\n",
+ "mean 27.155000\n",
+ "std 2.969814\n",
+ "min 19.000000\n",
+ "25% 25.000000\n",
+ "50% 27.000000\n",
+ "75% 29.000000\n",
+ "max 36.000000\n",
+ "Statistics for Neighborhood 3:\n",
+ " observations\n",
+ "count 1000.000000\n",
+ "mean 41.989000\n",
+ "std 16.144706\n",
+ "min 1.000000\n",
+ "25% 30.000000\n",
+ "50% 40.000000\n",
+ "75% 53.000000\n",
+ "max 77.000000\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Create a list of DataFrame objects for the three neighborhoods\n",
+ "neighborhoods = [ages_population_df, ages_population2_df, ages_population3] \n",
+ "\n",
+ "# Define the attributes you want to analyze\n",
+ "attributes = ['mean', 'std', 'min', 'max'] # Replace with actual attribute names from your dataset\n",
+ "\n",
+ "# Create a dictionary to store statistics for each neighborhood\n",
+ "neighborhood_stats = {}\n",
+ "\n",
+ "# Create string identifiers for neighborhoods\n",
+ "neighborhood_names = ['Neighborhood 1', 'Neighborhood 2', 'Neighborhood 3']\n",
+ "\n",
+ "# Calculate and store basic statistics for each attribute in each neighborhood\n",
+ "for i, neighborhood in enumerate(neighborhoods):\n",
+ " stats = neighborhood.describe()\n",
+ " neighborhood_stats[neighborhood_names[i]] = stats\n",
+ "\n",
+ "# Print and display statistics for each neighborhood and attribute\n",
+ "for neighborhood, stats in neighborhood_stats.items():\n",
+ " print(f\"Statistics for {neighborhood}:\")\n",
+ " print(stats)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 292,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "#Jesus' method\n",
+ "\n",
+ "#Here sort it by value, not frequency distribution\n",
+ "dice = dice_values.sort_values(by='Number').reset_index()['Number'] \n",
+ "#by = name of the column\n",
+ "#reset index so we have value count plot (otherwise we have plot as we would not done value count as \n",
+ "#we reset the number)\n",
+ "\n",
+ "#After resetting the index, we select the 'Number' column using square brackets, \n",
+ "#which returns a Series containing only the 'Number' column. \n",
+ "#This is useful to work with the sorted and reset 'Number' values as a 1-D data structure (Series) \n",
+ "#rather than a 2-D DataFrame.\n",
+ "\n",
+ "\n",
+ "#Step 2 - Set parameters \n",
+ "plt.plot(range(1, len(dice) + 1), dice)\n",
+ "\n",
+ "# Set x-axis ticks starting from 1 with a step of 1\n",
+ "plt.xticks(range(1, len(dice) + 1))\n",
+ "\n",
+ "# Set y-axis ticks starting from 1 with a step of 1\n",
+ "plt.yticks(range(1, int(dice.max()) + 1))\n",
+ "\n",
+ "\n",
+ "plt.xlabel(\"Index\")\n",
+ "plt.ylabel(\"Number\")\n",
+ "plt.title(\"Plot of Sorted 'Number' Values\")\n",
+ "\n",
+ "plt.show()\n",
+ "\n",
+ "#Here we create a new dataframe, we sort it by column, we reset the index (we wanna get rid of the first column indexed)\n",
+ "#we give the column name in which we wanna put this value \n",
+ "#after the reset we add [name of the column] because we put the column values in it."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Plot explanation :\n",
+ "\n",
+ "1. The x-axis (horizontal) represents the index values of the DataFrame after resetting the index. These values start from 0 and go up to 9, which correspond to the sorted positions of the 'Number' values in the DataFrame.\n",
+ "\n",
+ "2. The y-axis (vertical) represents the actual 'Number' values in your DataFrame, which have been sorted in ascending order.\n",
+ "\n",
+ "The plot itself consists of points connected by lines. Each point on the plot represents a 'Number' value from your DataFrame, and the lines connect these points in ascending order."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "metadata": {
+ "scrolled": true
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0 1\n",
+ "1 1\n",
+ "2 2\n",
+ "3 3\n",
+ "4 3\n",
+ "5 3\n",
+ "6 4\n",
+ "7 4\n",
+ "8 6\n",
+ "9 6\n",
+ "Name: Number, dtype: int64"
+ ]
+ },
+ "execution_count": 36,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "dice #Check we now we have the column sorted by ascending order"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "{'whiskers': [,\n",
+ " ],\n",
+ " 'caps': [,\n",
+ " ],\n",
+ " 'boxes': [],\n",
+ " 'medians': [],\n",
+ " 'fliers': [],\n",
+ " 'means': []}"
+ ]
+ },
+ "execution_count": 19,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhYAAAGdCAYAAABO2DpVAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAPmElEQVR4nO3dX4iV9Z/A8c9R6aQ2M5UUOXlyShJHzUqLEtkLywg3JYK6CKcklvhBgpVEkQQpmVNX20UgWVEXUkKI0o0SXWgsZelIIOKklm7WtP5ot+aMfzqxevbiR0Pzy1k9M5+Z4+jrBSHnmefP5yaeN9955jyFarVaDQCABKPqPQAAcPEQFgBAGmEBAKQRFgBAGmEBAKQRFgBAGmEBAKQRFgBAmjHDfcEzZ85EV1dXNDQ0RKFQGO7LAwADUK1Wo6enJ5qbm2PUqP7XJYY9LLq6uqJUKg33ZQGABEePHo1Jkyb1+/NhD4uGhoaI+MdgjY2Nw315AGAAyuVylEql3vt4f4Y9LP749UdjY6OwAIAR5lyPMXh4EwBIIywAgDTCAgBIIywAgDTCAgBIIywAgDTCAgBIIywAgDTCAgBIU3NY/Pjjj9HW1hYTJkyIcePGxW233RYdHR1DMRsAMMLU9JXev/zyS8ybNy/mz58fW7dujWuvvTa+/fbbuPLKK4doPABgJKkpLF5//fUolUrx3nvv9W5raWnJngkAGKFqCouPP/447r///njkkUdix44dcf3118dTTz0VTz75ZL/HVCqVqFQqvZ/L5fLApwXSnTx5Mjo7O1POderUqThy5Ei0tLTE2LFjB32+adOmxbhx4xImA4ZLTWHx3Xffxbp162LFihWxcuXK+Oqrr2L58uVRLBbj8ccfP+sx7e3tsXr16pRhgXydnZ0xZ86ceo9xVh0dHTF79ux6jwHUoFCtVqvnu/Nll10Wd9xxR3z++ee925YvXx67du2KL7744qzHnG3FolQqRXd3t9emwwUgc8Vi//790dbWFhs2bIjW1tZBn8+KBVw4yuVyNDU1nfP+XdOKxcSJE2P69Ol9trW2tsamTZv6PaZYLEaxWKzlMsAwGjduXPqqQGtrq5UGuETV9Oem8+bNi2+++abPtgMHDsTkyZNThwIARqaawuLZZ5+NnTt3xtq1a+PQoUPxwQcfxPr162PZsmVDNR8AMILUFBZ33nlnbN68OT788MOYOXNmvPLKK/HGG2/EkiVLhmo+AGAEqekZi4iIRYsWxaJFi4ZiFgBghPOuEAAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgjbAAANIICwAgTU1hsWrVqigUCn3+u+6664ZqNgBghBlT6wEzZsyITz/9tPfz6NGjUwcCAEaumsNizJgxVikAgLOqOSwOHjwYzc3NUSwW46677oq1a9fGTTfd1O/+lUolKpVK7+dyuTywSYE+Dh48GD09PfUeo4/9+/f3+fdC0dDQEDfffHO9x4BLQqFarVbPd+etW7fGyZMnY+rUqXHs2LFYs2ZNdHZ2xr59+2LChAlnPWbVqlWxevXqv2zv7u6OxsbGgU8Ol7CDBw/G1KlT6z3GiHLgwAFxAYNQLpejqanpnPfvmsLin504cSKmTJkSzz//fKxYseKs+5xtxaJUKgkLGIQ9e/bEnDlzYsOGDdHa2lrvcXqdOnUqjhw5Ei0tLTF27Nh6jxMR/1g9aWtri46Ojpg9e3a9x4ER63zDouZfhfzZ+PHj45ZbbomDBw/2u0+xWIxisTiYywD9aG1tveBulvPmzav3CEAdDep7LCqVSuzfvz8mTpyYNQ8AMILVFBbPPfdc7NixIw4fPhxffvllPPzww1Eul2Pp0qVDNR8AMILU9KuQH374IR599NH4+eef45prrom77747du7cGZMnTx6q+QCAEaSmsNi4ceNQzQEAXAS8KwQASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASCMsAIA0wgIASDOosGhvb49CoRDPPPNM0jgAwEg24LDYtWtXrF+/PmbNmpU5DwAwgg0oLI4fPx5LliyJt99+O6666qrsmQCAEWrMQA5atmxZPPDAA7FgwYJYs2bN/7tvpVKJSqXS+7lcLg/kksCf/NbzP3H7daPiP3d+HGN/PVDvcXpVKpXo6uqK5ubmKBaL9R4nIiL+6/DhuP26UVH439/qPQpcEmoOi40bN8aePXti165d57V/e3t7rF69uubBgP4d2/cfsedvV0T8/d8j/l7vafq6LSLiaJ2H+JPWiPjXv10R31f/u96jwCWhprA4evRoPP300/HJJ5/E5Zdffl7HvPjii7FixYrez+VyOUqlUm1TAn38y0P/Fps3R7S0tJz3/4vD4fDhw/HSSy/FmjVr4sYbb6z3OL3Gjx8fN9x+b73HgEtCoVqtVs935y1btsRDDz0Uo0eP7t12+vTpKBQKMWrUqKhUKn1+djblcjmampqiu7s7GhsbBz45cMHZs2dPzJkzJzo6OmL27Nn1HgdIdL7375pWLO69997Yu3dvn21PPPFETJs2LV544YVzRgUAcHGrKSwaGhpi5syZfbaNHz8+JkyY8JftAMClxzdvAgBpBvTnpn+2ffv2hDEAgIuBFQsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAIE1NYbFu3bqYNWtWNDY2RmNjY8ydOze2bt06VLMBACNMTWExadKkeO2112L37t2xe/fuuOeee+LBBx+Mffv2DdV8AMAIMqaWnRcvXtzn86uvvhrr1q2LnTt3xowZM1IHAwBGnprC4s9Onz4dH330UZw4cSLmzp3b736VSiUqlUrv53K5PNBLAkPg5MmT0dnZmXKu/fv39/l3sKZNmxbjxo1LORcwPGoOi71798bcuXPjt99+iyuuuCI2b94c06dP73f/9vb2WL169aCGBIZOZ2dnzJkzJ/WcbW1tKefp6OiI2bNnp5wLGB6FarVareWA33//Pb7//vv49ddfY9OmTfHOO+/Ejh07+o2Ls61YlEql6O7ujsbGxsFNDwxa5orFqVOn4siRI9HS0hJjx44d9PmsWMCFo1wuR1NT0znv3zWHxT9bsGBBTJkyJd56663UwQCAC8f53r8H/T0W1Wq1z4oEAHDpqukZi5UrV8bChQujVCpFT09PbNy4MbZv3x7btm0bqvkAgBGkprA4duxYPPbYY/HTTz9FU1NTzJo1K7Zt2xb33XffUM0HAIwgNYXFu+++O1RzAAAXAe8KAQDSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADS1PTNmxn+eJlquVwe7ksDAAP0x337XC9FH/aw6OnpiYiIUqk03JcGAAapp6cnmpqa+v15oXqu9Eh25syZ6OrqioaGhigUCsN5aWCIlcvlKJVKcfTo0WhsbKz3OECiarUaPT090dzcHKNG9f8kxbCHBXDxKpfL0dTUFN3d3cICLlEe3gQA0ggLACCNsADSFIvFePnll6NYLNZ7FKBOPGMBAKSxYgEApBEWAEAaYQEApBEWAEAaYQEM2meffRaLFy+O5ubmKBQKsWXLlnqPBNSJsAAG7cSJE3HrrbfGm2++We9RgDob9peQARefhQsXxsKFC+s9BnABsGIBAKQRFgBAGmEBAKQRFgBAGmEBAKTxVyHAoB0/fjwOHTrU+/nw4cPx9ddfx9VXXx033HBDHScDhpu3mwKDtn379pg/f/5fti9dujTef//94R8IqBthAQCk8YwFAJBGWAAAaYQFAJBGWAAAaYQFAJBGWAAAaYQFAJBGWAAAaYQFAJBGWAAAaYQFAJBGWAAAaf4PMLHRcNLeq7QAAAAASUVORK5CYII=\n",
+ "text/plain": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "#Boxplot\n",
+ "\n",
+ "# your code here\n",
+ "sorted_rolls = dice_rolls['Number'].sort_values()\n",
+ "\n",
+ "plt.yticks([1,2,3,4,5,6]) #add all values for the plot\n",
+ "\n",
+ "plt.boxplot(sorted_rolls)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Line plot:\n",
+ "It is often used to visualize the trend or pattern in data over a continuous or ordered variable, such as time.\n",
+ "\n",
+ "Boxplot (more useful for data summary and comparisons):\n",
+ "used to visualize the distribution and summary statistics of a dataset.\n",
+ "useful for comparing the distribution of data between different categories or groups and for identifying the presence of outliers.\n",
+ "\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "#### 3.- Calculate the frequency distribution and plot it. What is the relation between this plot and the plot above? Describe it with words."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 64,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# Define the bin edges to center the bars between integers\n",
+ "bin_edges = [i - 0.5 for i in range(1, 8)] # Centered between 1 and 6\n",
+ "\n",
+ "# Create the histogram with centered columns\n",
+ "hist_values, bin_edges, _ = plt.hist(dice, bins=bin_edges, rwidth=0.8)\n",
+ "\n",
+ "# Calculate the median\n",
+ "median = np.median(dice)\n",
+ "\n",
+ "# Set the y-axis ticks with a step of 1, considering the maximum count in the histogram\n",
+ "plt.yticks(range(1, int(max(hist_values)) + 1))\n",
+ "\n",
+ "plt.xlabel(\"Number\")\n",
+ "plt.ylabel(\"Frequency\")\n",
+ "plt.title(\"Histogram of 'Number' Values\")\n",
+ "\n",
+ "# Display the median as text on the plot\n",
+ "plt.text(median, 1, f\"Median: {median}\", ha='center', va='bottom', fontsize=12)\n",
+ "\n",
+ "plt.show()\n",
+ "\n",
+ "#The [0] is used to access the first element of the return value from plt.hist. \n",
+ "#The plt.hist function returns a tuple of values, and we're interested in the first element of that tuple, \n",
+ "#which contains the frequency counts of the histogram.\n",
+ "\n",
+ "#plt.hist returns tuples containing 3 elements :\n",
+ "\n",
+ "#The histogram values (frequency counts in each bin).\n",
+ "#The bin edges.\n",
+ "#The patches (the individual bars in the histogram).\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 65,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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N07OnX6zLgAAqBjZ2dkKDAy0/h6/ld9cuCm6FVWzZk3CDQAAd5nSTClhQjEAADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVp4abhQsXqlWrVtavQoiIiNCGDRtuOWbbtm1q3769PDw8dO+992rRokUVVC0AALgbODXcBAQEaMaMGUpNTVVqaqoefvhh9e7dW4cOHSqx/8mTJxUbG6vOnTtr7969mjRpksaMGaPk5OQKrhwAAFRWFsMwDGcX8Ut16tTR7NmzNWzYsGLb/v73v2vt2rU6fPiwtS0uLk779+/Xjh07SrX/7OxseXt76/Lly3xxJgAAd4my/P6uNHNuCgoK9M477+jatWuKiIgosc+OHTsUExNj09a9e3elpqYqLy+vIsoEAACVnIuzCzh48KAiIiJ0/fp11ahRQ6tXr1bz5s1L7JuVlSVfX1+bNl9fX+Xn5+vChQvy8/MrNiYnJ0c5OTnW9ezsbMceAAAAqFScHm5CQ0O1b98+Xbp0ScnJyRo0aJC2bdt204BjsVhs1ovuqv26vUhiYqKmTp3q2KKBChb87Dpnl3DXODXjEWeXAMDJnH5bys3NTY0aNVJ4eLgSExPVunVrvfLKKyX2bdCggbKysmzazp8/LxcXF9WtW7fEMRMnTtTly5etS0ZGhsOPAQAAVB5Ov3Lza4Zh2NxG+qWIiAh9+OGHNm2bNm1SeHi4XF1dSxzj7u4ud3d3h9cJAAAqJ6deuZk0aZI+++wznTp1SgcPHtRzzz2nlJQU9e/fX9KNqy4DBw609o+Li1NaWpri4+N1+PBhLV26VEuWLFFCQoKzDgEAAFQyTr1yc+7cOT311FPKzMyUt7e3WrVqpY0bN6pbt26SpMzMTKWnp1v7h4SEaP369Ro/frwWLFggf39/zZ8/X3379nXWIQAAgEqm0n3OTXnjc25wN2JCcekxoRgwp7vyc24AAAAcgXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABM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u+9q5syZOn78uBISEhQQEKCBAwcqMzPTUXUCAACUyh2Fm9TUVI0YMUJ+fn6aO3euEhISdPz4cW3ZskVnzpxR7969HVUnAABAqbjYM2ju3LlKSkrS0aNHFRsbq+XLlys2NlZVqtzISiEhIXrjjTfUtGlThxYLAABwO3aFm4ULF2ro0KEaMmSIGjRoUGKfhg0basmSJXdUHAAAQFnZFW6+++672/Zxc3PToEGD7Nk9AACA3eyac5OUlKT33nuvWPt7772nN998846LAgAAsJdd4WbGjBmqV69esXYfHx9Nnz79josCAACwl13hJi0tTSEhIcXag4KClJ6efsdFAQAA2MuucOPj46MDBw4Ua9+/f7/q1q17x0UBAADYy65w8+STT2rMmDHaunWrCgoKVFBQoC1btmjs2LF68sknHV0jAABAqdn1tNS0adOUlpam6Ohoubjc2EVhYaEGDhzInBsAAOBUdoUbNzc3rVy5Ui+99JL2798vT09PtWzZUkFBQY6uDwAAoEzsCjdFmjRpoiZNmjiqFgAAgDtmV7gpKCjQsmXL9Omnn+r8+fMqLCy02b5lyxaHFAcAAFBWdoWbsWPHatmyZXrkkUfUokULWSwWR9cFAABgF7vCzTvvvKN3331XsbGxjq4HAADgjtj1KLibm5saNWrk6FoAAADumF3hZsKECXrllVdkGIaj6wEAALgjdt2W+vzzz7V161Zt2LBBYWFhcnV1tdm+atUqhxQHAABQVnaFm1q1aqlPnz6OrgUAAOCO2RVukpKSHF0HAACAQ9g150aS8vPz9cknn+iNN97QlStXJElnz57V1atXHVYcAABAWdl15SYtLU2///3vlZ6erpycHHXr1k1eXl6aNWuWrl+/rkWLFjm6TgAAgFKx68rN2LFjFR4erp9++kmenp7W9j59+ujTTz91WHEAAABlZffTUl988YXc3Nxs2oOCgnTmzBmHFAYAAGAPu67cFBYWqqCgoFj76dOn5eXldcdFAQAA2MuucNOtWzfNmzfPum6xWHT16lVNnjyZr2QAAABOZddtqf/3//6funbtqubNm+v69ev685//rO+++0716tXT22+/7egaAQAASs2ucOPv7699+/bp7bff1p49e1RYWKhhw4apf//+NhOMAQAAKppd4UaSPD09NXToUA0dOtSR9QAAANwRu8LN8uXLb7l94MCBdhUDAABwp+wKN2PHjrVZz8vL088//yw3NzdVq1aNcAMAAJzGrqelfvrpJ5vl6tWrOnr0qDp16sSEYgAA4FR2f7fUrzVu3FgzZswodlXnVrZv365evXrJ399fFotFa9asuWX/lJQUWSyWYsuRI0fusHoAAGAWdk8oLknVqlV19uzZUve/du2aWrdurSFDhqhv376lHnf06FHVrFnTul6/fv0y1QkAAMzLrnCzdu1am3XDMJSZmanXXntNDz30UKn306NHD/Xo0aPMr+/j46NatWqVeRwAADA/u8LNY489ZrNusVhUv359Pfzww3r55ZcdUdcttW3bVtevX1fz5s31/PPPq2vXruX+mgAA4O5gV7gpLCx0dB2l4ufnp8WLF6t9+/bKycnRf/7zH0VHRyslJUVdunQpcUxOTo5ycnKs69nZ2RVVLgAAcAKHzrkpb6GhoQoNDbWuR0REKCMjQ3PmzLlpuElMTNTUqVMrqkQAAOBkdoWb+Pj4UvedO3euPS9Rag8++KBWrFhx0+0TJ060qTc7O1uBgYHlWhMAAHAeu8LN3r17tWfPHuXn51uvpBw7dkxVq1ZVu3btrP0sFotjqrxNLX5+fjfd7u7uLnd393KvAwAAVA52hZtevXrJy8tLb775pmrXri3pxgf7DRkyRJ07d9aECRNKtZ+rV6/q+++/t66fPHlS+/btU506ddSwYUNNnDhRZ86csX7dw7x58xQcHKywsDDl5uZqxYoVSk5OVnJysj2HAQAATMiucPPyyy9r06ZN1mAjSbVr19a0adMUExNT6nCTmppq86RT0e2jQYMGadmyZcrMzFR6erp1e25urhISEnTmzBl5enoqLCxM69atU2xsrD2HAQAATMiucJOdna1z584pLCzMpv38+fO6cuVKqfcTFRUlwzBuun3ZsmU2688884yeeeaZMtUKAAB+W+z6+oU+ffpoyJAhev/993X69GmdPn1a77//voYNG6bHH3/c0TUCAACUml1XbhYtWqSEhAQNGDBAeXl5N3bk4qJhw4Zp9uzZDi0QAACgLOwKN9WqVdPrr7+u2bNn6/jx4zIMQ40aNVL16tUdXR8AAECZ3NG3gmdmZiozM1NNmjRR9erVbzl/BgAAoCLYFW4uXryo6OhoNWnSRLGxscrMzJQkDR8+vNRPSgEAAJQHu8LN+PHj5erqqvT0dFWrVs3a3q9fP23cuNFhxQEAAJSVXXNuNm3apI8//lgBAQE27Y0bN1ZaWppDCgMAALCHXVdurl27ZnPFpsiFCxf4qgMAAOBUdoWbLl26WL8SQbrxHVKFhYWaPXu2zScOAwAAVDS7bkvNnj1bUVFRSk1NVW5urp555hkdOnRIP/74o7744gtH1wgAAFBqdl25ad68uQ4cOKAHHnhA3bp107Vr1/T4449r7969uu+++xxdIwAAQKmV+cpNXl6eYmJi9MYbb2jq1KnlURMAAIDdynzlxtXVVd98840sFkt51AMAAHBH7LotNXDgQC1ZssTRtQAAANwxuyYU5+bm6t///rc2b96s8PDwYt8pNXfuXIcUBwAAUFZlCjcnTpxQcHCwvvnmG7Vr106SdOzYMZs+3K4CAADOVKZw07hxY2VmZmrr1q2Sbnzdwvz58+Xr61suxQEAAJRVmebc/Ppbvzds2KBr1645tCAAAIA7YdeE4iK/DjsAAADOVqZwY7FYis2pYY4NAACoTMo058YwDA0ePNj65ZjXr19XXFxcsaelVq1a5bgKAQAAyqBM4WbQoEE26wMGDHBoMQAAAHeqTOEmKSmpvOoAAABwiDuaUAwAAFDZEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpEG4AAICpODXcbN++Xb169ZK/v78sFovWrFlz2zHbtm1T+/bt5eHhoXvvvVeLFi0q/0IBAMBdw6nh5tq1a2rdurVee+21UvU/efKkYmNj1blzZ+3du1eTJk3SmDFjlJycXM6VAgCAu4WLM1+8R48e6tGjR6n7L1q0SA0bNtS8efMkSc2aNVNqaqrmzJmjvn37llOVAADgbnJXzbnZsWOHYmJibNq6d++u1NRU5eXllTgmJydH2dnZNgsAADAvp165KausrCz5+vratPn6+io/P18XLlyQn59fsTGJiYmaOnVqRZWIMgh+dp2zSwAAmNBddeVGkiwWi826YRgltheZOHGiLl++bF0yMjLKvUYAAOA8d9WVmwYNGigrK8um7fz583JxcVHdunVLHOPu7i53d/eKKA8AAFQCd9WVm4iICG3evNmmbdOmTQoPD5erq6uTqgIAAJWJU8PN1atXtW/fPu3bt0/SjUe99+3bp/T0dEk3bikNHDjQ2j8uLk5paWmKj4/X4cOHtXTpUi1ZskQJCQnOKB8AAFRCTr0tlZqaqq5du1rX4+PjJUmDBg3SsmXLlJmZaQ06khQSEqL169dr/PjxWrBggfz9/TV//nweAwcAAFZODTdRUVHWCcElWbZsWbG2yMhI7dmzpxyrAgAAd7O7as4NAADA7RBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqTg93Lz++usKCQmRh4eH2rdvr88+++ymfVNSUmSxWIotR44cqcCKAQBAZebUcLNy5UqNGzdOzz33nPbu3avOnTurR48eSk9Pv+W4o0ePKjMz07o0bty4gioGAACVnVPDzdy5czVs2DANHz5czZo107x58xQYGKiFCxfecpyPj48aNGhgXapWrVpBFQMAgMrOaeEmNzdXu3fvVkxMjE17TEyMvvzyy1uObdu2rfz8/BQdHa2tW7fesm9OTo6ys7NtFgAAYF5OCzcXLlxQQUGBfH19bdp9fX2VlZVV4hg/Pz8tXrxYycnJWrVqlUJDQxUdHa3t27ff9HUSExPl7e1tXQIDAx16HAAAoHJxcXYBFovFZt0wjGJtRUJDQxUaGmpdj4iIUEZGhubMmaMuXbqUOGbixImKj4+3rmdnZxNwAAAwMaddualXr56qVq1a7CrN+fPni13NuZUHH3xQ33333U23u7u7q2bNmjYLAAAwL6eFGzc3N7Vv316bN2+2ad+8ebM6duxY6v3s3btXfn5+ji4PAADcpZx6Wyo+Pl5PPfWUwsPDFRERocWLFys9PV1xcXGSbtxSOnPmjJYvXy5JmjdvnoKDgxUWFqbc3FytWLFCycnJSk5OduZhAACASsSp4aZfv366ePGiXnzxRWVmZqpFixZav369goKCJEmZmZk2n3mTm5urhIQEnTlzRp6engoLC9O6desUGxvrrEMAAACVjMUwDMPZRVSk7OxseXt76/Lly+Uy/yb42XUO3ycAlJdTMx5xdgl3Df5+L73yeF+V5fe3079+AQAAwJEINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFQINwAAwFScHm5ef/11hYSEyMPDQ+3bt9dnn312y/7btm1T+/bt5eHhoXvvvVeLFi2qoEoBAMDdwKnhZuXKlRo3bpyee+457d27V507d1aPHj2Unp5eYv+TJ08qNjZWnTt31t69ezVp0iSNGTNGycnJFVw5AACorJwabubOnathw4Zp+PDhatasmebNm6fAwEAtXLiwxP6LFi1Sw4YNNW/ePDVr1kzDhw/X0KFDNWfOnAquHAAAVFZOCze5ubnavXu3YmJibNpjYmL05Zdfljhmx44dxfp3795dqampysvLK7daAQDA3cPFWS984cIFFRQUyNfX16bd19dXWVlZJY7JysoqsX9+fr4uXLggPz+/YmNycnKUk5NjXb98+bIkKTs7+04PoUSFOT+Xy34BoDyU19+FZsTf76VXHu+ron0ahnHbvk4LN0UsFovNumEYxdpu17+k9iKJiYmaOnVqsfbAwMCylgoApuM9z9kVwIzK83115coVeXt737KP08JNvXr1VLVq1WJXac6fP1/s6kyRBg0alNjfxcVFdevWLXHMxIkTFR8fb10vLCzUjz/+qLp1694yRNkjOztb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FJvt3377rWJjY1WjRg35+vrqqaee0oULF6zbo6KiNGrUKMXHx6tevXrq1q2b3ecCQPkh3ACoMFWrVtX06dP16quv6vTp03bvZ8uWLTp79qy2b9+uuXPnasqUKerZs6dq166tr776SnFxcYqLi1NGRobNuL/97W+aMGGC9u7dq44dO+rRRx/VxYsXJUmZmZmKjIxUmzZtlJqaqo0bN+rcuXN64oknbPbx5ptvysXFRV988YXeeOMNu48BQPkh3ACoUH369FGbNm00efJku/dRp04dzZ8/X6GhoRo6dKhCQ0P1888/a9KkSWrcuLEmTpwoNzc3ffHFFzbjRo0apb59+6pZs2ZauHChvL29tWTJEknSwoUL1a5dO02fPl1NmzZV27ZttXTpUm3dulXHjh2z7qNRo0aaNWuWQkND1bRpU7uPAUD5IdwAqHAzZ87Um2++qW+//dau8WFhYapS5f/++vL19VXLli2t61WrVlXdunV1/vx5m3ERERHW/3dxcVF4eLgOHz4sSdq9e7e2bt2qGjVqWJei8HL8+HHruPDwcLtqBlBxXJxdAIDfni5duqh79+6aNGmSBg8ebG2vUqWKDMOw6ZuXl1dsvKurq826xWIpsa2wsPC2tRQ9qVVYWKhevXpp5syZxfr4+flZ/7969eq33ScA5yLcAHCKGTNmqE2bNmrSpIm1rX79+srKypJhGNbQ4cjPptm5c6e6dOkiScrPz9fu3bs1atQoSVK7du2UnJys4OBgubjwVyNwN+O2FACnaNmypfr3769XX33V2hYVFaUffvhBs2bN0vHjx7VgwQJt2LDBYa+5YMECrV69WkeOHNHIkSP1008/aejQoZKkkSNH6scff9Sf/vQn7dq1SydOnNCmTZs0dOhQFRQUOKwGAOWPcAPAaV566SWb21DNmjXT66+/rgULFqh169batWuXEhISHPZ6M2bM0MyZM9W6dWt99tln+uCDD1SvXj1Jkr+/v7744gsVFBSoe/fuatGihcaOHStvb2+b+T0AKj+L8esb3AAAAHcx/jkCAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABMhXADAABM5f8Ds2cQesrCHQYAAAAASUVORK5CYII=\n",
+ "text/plain": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "#Jesus' method\n",
+ "\n",
+ "bin_edges = [i - 0.5 for i in range(1, 8)]\n",
+ "\n",
+ "plt.hist(dice_thousand['value'], bins=bin_edges, rwidth=0.8, color='powderblue')\n",
+ "\n",
+ "# Calculate the mean\n",
+ "mean_value = dice_thousand['value'].mean()\n",
+ "\n",
+ "# Display the mean as a vertical line on the histogram\n",
+ "plt.axvline(mean_value, color='cadetblue', linestyle='dashed', linewidth=2, label=f'Mean: {mean_value}')\n",
+ "\n",
+ "# Set labels and title\n",
+ "plt.xlabel('Value')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Histogram of Value')\n",
+ "\n",
+ "# Add a legend\n",
+ "plt.legend()\n",
+ "\n",
+ "# Show the plot\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Here we see more uniform chart and mean line closer to the 3.\n",
+ "Almost all the values will have the same count (more flat/uniform distribution).\n",
+ "The more values we have, the closer we gonna be to the mean."
+ ]
+ },
+ {
+ "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": 235,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "bin_edges = [i - 0.5 for i in range(1, 36)]\n",
+ "\n",
+ "plt.hist(ages_population2_df, bins=bin_edges, rwidth=0.8, color='powderblue')\n",
+ "\n",
+ "# Calculate the mean\n",
+ "mean_value = ages_population2_df['observation'].mean()\n",
+ "\n",
+ "# Display the mean as a vertical line on the histogram\n",
+ "plt.axvline(mean_value, color='cadetblue', linestyle='dashed', linewidth=2, label=f'Mean: {mean_value}')\n",
+ "\n",
+ "plt.xlabel('Age')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Histogram of age')\n",
+ "\n",
+ "plt.legend()\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": "markdown",
+ "metadata": {},
+ "source": [
+ "The distribution appears to be unimodal (having one mode) and skewed to the right. Vs almost perfect normal distribution in the previous graph.\n",
+ "\n",
+ "This means that the majority of individuals in the dataset are concentrated in the younger age groups, with fewer individuals in the older age groups. Vs previous graph where age distribution is more sparsed.\n",
+ "\n",
+ "The mode appears to be in the age group around 26.0.\n",
+ "\n",
+ "There are very few individuals in the age groups 19.0, 34.0, 35.0, and 36.0, which can be considered outliers or less common age groups in the dataset. There is less outliers value in the previous data set (one above 80)\n",
+ "\n",
+ "Standard deviation is very narrowed, compared to previous distribution where the spread was large."
+ ]
+ },
+ {
+ "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": 205,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "The mean age is 27.16\n",
+ "The standard deviation for age is 2.969813932689186\n"
+ ]
+ }
+ ],
+ "source": [
+ "# your code here\n",
+ "mean_age = ages_population2_df['observation'].mean()\n",
+ "print(f\"The mean age is {mean_age:.2f}\")\n",
+ "\n",
+ "\n",
+ "std_age = ages_population2_df['observation'].std()\n",
+ "print(f\"The standard deviation for age is {std_age}\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Age mean is younger and the spread is very narrowed, indicated high concentration of individuals around the mean."
+ ]
+ },
+ {
+ "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": 207,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "bin_edges = [i - 0.5 for i in range(1, 90)]\n",
+ "\n",
+ "plt.hist(ages_population3, bins=bin_edges, rwidth=0.8, color='powderblue')\n",
+ "\n",
+ "# Calculate the mean\n",
+ "mean_value = ages_population3['observation'].mean()\n",
+ "\n",
+ "# Display the mean as a vertical line on the histogram\n",
+ "plt.axvline(mean_value, color='cadetblue', linestyle='dashed', linewidth=2, label=f'Mean: {mean_value}')\n",
+ "\n",
+ "plt.xlabel('Age')\n",
+ "plt.ylabel('Frequency')\n",
+ "plt.title('Histogram of age')\n",
+ "\n",
+ "plt.legend()\n",
+ "\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Here we have two maximum.\n",
+ "\n",
+ "Normal distribution skewed to the right.\n",
+ "\n",
+ "Mean around 40/50 but withhigher standard deviation.\n",
+ "\n",
+ "Because if we look at the right, we have lots of values away from the mean, on the left we have values close to the mean."
+ ]
+ },
+ {
+ "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": 212,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "The mean age is 41.99\n",
+ "The standard deviation for age is 16.14\n"
+ ]
+ }
+ ],
+ "source": [
+ "# your code here\n",
+ "mean_age = ages_population3['observation'].mean()\n",
+ "print(f\"The mean age is {mean_age:.2f}\")\n",
+ "\n",
+ "\n",
+ "std_age = ages_population3['observation'].std()\n",
+ "print(f\"The standard deviation for age is {std_age: .2f}\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Value more sparsed and far away from the mean.\n",
+ "\n",
+ "Spread is larger."
+ ]
+ },
+ {
+ "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": 213,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "the first quartile is 30.0\n",
+ "the second quartile is 40.0\n",
+ "the third quartile is 53.0\n",
+ "the fourth quartile is 77.0\n"
+ ]
+ }
+ ],
+ "source": [
+ "# your code here\n",
+ "\n",
+ "sorted_ages = ages_population3['observation'].sort_values()\n",
+ "\n",
+ "q1 = np.quantile(sorted_ages, 0.25) \n",
+ "print(\"the first quartile is\", q1)\n",
+ "q2 = np.quantile(sorted_ages, 0.50)\n",
+ "print(\"the second quartile is\",q2)\n",
+ "q3 = np.quantile(sorted_ages, 0.75)\n",
+ "print(\"the third quartile is\", q3)\n",
+ "q4 = np.quantile(sorted_ages, 1)\n",
+ "print(\"the fourth quartile is\", q4)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Difference = |Mean - Median| = |41.99 - 40.0| = 1.99\n",
+ "\n",
+ "The result show that the data set is positively skewed. \n",
+ "\n",
+ "The small difference suggest a cluster around the median (40 yo).\n",
+ "\n",
+ "Very reduced spread, values highly concentrated around the median."
+ ]
+ },
+ {
+ "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": 222,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "10th Percentile: 22.000\n",
+ "90th Percentile: 67.000\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Jesus' method\n",
+ "\n",
+ "#print(np.percentile(name of dataframe, % we want))\n",
+ "\n",
+ "percentiles = np.percentile(sorted_ages, [10, 90])\n",
+ "\n",
+ "print(f\"10th Percentile: {percentiles[0]:.3f}\")\n",
+ "print(f\"90th Percentile: {percentiles[1]:.3f}\")\n",
+ "\n",
+ "#Very skewed, difference between 2nd and 3rd quartile is lower than diff between 3rd and 4th quartile.\n",
+ "\n",
+ "#10th and 90th percentile are useful to identify outliers. Those are very far away from the mean and the IQR."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 243,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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wNLSEo8fP4YQAiqVSus1b3bEp6SkoH///hg2bFia43NAOZHxY9JEREYvKSkJ69evx4IFC9CkSROt59q3b4/vv/8e5cuXx969e7WeO3PmjNbX3t7euHz5MsqUKZPjMRNR3sMxTURk9Hbu3InOnTsjKioKDg4OWs9NmjQJe/fuxfbt21GuXDmMHDkSffv2RXh4OAIDA/Hvv//iyZMncHBwwMWLF1GrVi307t0b/fr1g52dHa5evYqQkBB88803Cl0dEeUWjmkiIqMXHByMRo0apUmYANnTFB4ejsePH2Pr1q3Yvn07qlatiqCgIM3sOSsrKwBA1apVERoaiuvXr8PPzw9eXl747LPP4OrqmqvXQ0TKYE8TEVEGvvjiCyxfvhx37txROhQiygM4pomI6P+WLVuGGjVqoHDhwjh+/DjmzZvHGkxEpMGkiYjo/65fv46ZM2fi0aNHKFmyJAIDAzFhwgSlwyKiPIK354iIiIh0wIHgRERERDpg0kRERESkAyZNRERERDpg0kRERESkAyZNRERERDpg0kRERESkAyZNRERERDpg0kRERESkAyZNRERERDr4HztO3TmyFIx7AAAAAElFTkSuQmCC\n",
+ "text/plain": [
+ "
"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "#Here we can try to do normal distribution to see if it's gonna be skewed to the left\n",
+ "\n",
+ "from scipy.stats import norm\n",
+ "\n",
+ "#ages_population3_bis = np.array(ages_population3, dtype=float)\n",
+ "\n",
+ "mean = np.mean(ages_population3)\n",
+ "std_dev = np.std(ages_population3)\n",
+ "\n",
+ "# Create a range of x-values (ages)\n",
+ "x = np.linspace(min(ages_population3), max(ages_population3), 1000)\n",
+ "\n",
+ "# Calculate the corresponding y-values using the normal distribution\n",
+ "y = norm.pdf(x, mean, std_dev)\n",
+ "\n",
+ "# Plot the normal distribution curve\n",
+ "plt.plot(x, y, 'b-', label='Normal Distribution')\n",
+ "\n",
+ "# Set the x-axis and y-axis labels\n",
+ "plt.xlabel('Age')\n",
+ "plt.ylabel('Probability Density')\n",
+ "plt.title('Normal Distribution of Age Data')\n",
+ "\n",
+ "# Add a legend\n",
+ "plt.legend()\n",
+ "\n",
+ "# Show the plot\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "\"\"\"\n",
+ "your comments here\n",
+ "\"\"\"\n",
+ "#Steps to analyse\n",
+ "\n",
+ "#1 do some cleaning\n",
+ "#2 do EDA -> Try to do something general for everything\n",
+ "#3 analysis\n",
+ "\n",
+ "#with enumerate function = make sure all the values are numerical\n",
+ "#but better to use enumerate(num) -> better to have random value so it is template \n",
+ "#then put num = name of the dataframe =ages3.np.select_dtypes(np.number) ???\n",
+ "#num = ages3.select_dtypes(np.number)"
+ ]
+ },
+ {
+ "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": 283,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "#we can put a function with \"warning ignore\" to ignore the warning function in Python"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 289,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Statistics for Neighborhood 1:\n",
+ " observation\n",
+ "count 1000.0000\n",
+ "mean 36.5600\n",
+ "std 12.8165\n",
+ "min 1.0000\n",
+ "25% 28.0000\n",
+ "50% 37.0000\n",
+ "75% 45.0000\n",
+ "max 82.0000\n",
+ "Statistics for Neighborhood 2:\n",
+ " observation\n",
+ "count 1000.000000\n",
+ "mean 27.155000\n",
+ "std 2.969814\n",
+ "min 19.000000\n",
+ "25% 25.000000\n",
+ "50% 27.000000\n",
+ "75% 29.000000\n",
+ "max 36.000000\n",
+ "Statistics for Neighborhood 3:\n",
+ " observations\n",
+ "count 1000.000000\n",
+ "mean 41.989000\n",
+ "std 16.144706\n",
+ "min 1.000000\n",
+ "25% 30.000000\n",
+ "50% 40.000000\n",
+ "75% 53.000000\n",
+ "max 77.000000\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Create a list of DataFrame objects for the three neighborhoods\n",
+ "neighborhoods = [ages_population_df, ages_population2_df, ages_population3] \n",
+ "\n",
+ "# Define the attributes you want to analyze\n",
+ "attributes = ['mean', 'std', 'min', 'max'] # Replace with actual attribute names from your dataset\n",
+ "\n",
+ "# Create a dictionary to store statistics for each neighborhood\n",
+ "neighborhood_stats = {}\n",
+ "\n",
+ "# Create string identifiers for neighborhoods\n",
+ "neighborhood_names = ['Neighborhood 1', 'Neighborhood 2', 'Neighborhood 3']\n",
+ "\n",
+ "# Calculate and store basic statistics for each attribute in each neighborhood\n",
+ "for i, neighborhood in enumerate(neighborhoods):\n",
+ " stats = neighborhood.describe()\n",
+ " neighborhood_stats[neighborhood_names[i]] = stats\n",
+ "\n",
+ "# Print and display statistics for each neighborhood and attribute\n",
+ "for neighborhood, stats in neighborhood_stats.items():\n",
+ " print(f\"Statistics for {neighborhood}:\")\n",
+ " print(stats)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 292,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
\n",
+ "
Neighborhood 1
\n",
+ "
Neighborhood 2
\n",
+ "
Neighborhood 3
\n",
+ "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ "
mean
\n",
+ "
36.5600
\n",
+ "
27.155000
\n",
+ "
41.989000
\n",
+ "
\n",
+ "
\n",
+ "
std
\n",
+ "
12.8165
\n",
+ "
2.969814
\n",
+ "
16.144706
\n",
+ "
\n",
+ "
\n",
+ "
min
\n",
+ "
1.0000
\n",
+ "
19.000000
\n",
+ "
1.000000
\n",
+ "
\n",
+ "
\n",
+ "
25%
\n",
+ "
28.0000
\n",
+ "
25.000000
\n",
+ "
30.000000
\n",
+ "
\n",
+ "
\n",
+ "
50%
\n",
+ "
37.0000
\n",
+ "
27.000000
\n",
+ "
40.000000
\n",
+ "
\n",
+ "
\n",
+ "
75%
\n",
+ "
45.0000
\n",
+ "
29.000000
\n",
+ "
53.000000
\n",
+ "
\n",
+ "
\n",
+ "
max
\n",
+ "
82.0000
\n",
+ "
36.000000
\n",
+ "
77.000000
\n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Neighborhood 1 Neighborhood 2 Neighborhood 3\n",
+ "mean 36.5600 27.155000 41.989000\n",
+ "std 12.8165 2.969814 16.144706\n",
+ "min 1.0000 19.000000 1.000000\n",
+ "25% 28.0000 25.000000 30.000000\n",
+ "50% 37.0000 27.000000 40.000000\n",
+ "75% 45.0000 29.000000 53.000000\n",
+ "max 82.0000 36.000000 77.000000"
+ ]
+ },
+ "execution_count": 292,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "data = {\n",
+ " 'Neighborhood 1': [36.5600, 12.8165, 1.0000, 28.0000, 37.0000, 45.0000, 82.0000],\n",
+ " 'Neighborhood 2': [27.1550, 2.969814, 19.0000, 25.0000, 27.0000, 29.0000, 36.0000],\n",
+ " 'Neighborhood 3': [41.9890, 16.144706, 1.0000, 30.0000, 40.0000, 53.0000, 77.0000]\n",
+ "}\n",
+ "\n",
+ "# Define attributes and create a DataFrame with neighborhoods as columns\n",
+ "attributes = ['mean', 'std', 'min', '25%', '50%', '75%', 'max']\n",
+ "neighborhood_stats_df = pd.DataFrame(data, index=attributes)\n",
+ "\n",
+ "# Display the DataFrame\n",
+ "neighborhood_stats_df"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 295,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "image/png": "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gAAkJSWhSZMm2LVrF4yNjUs4WiIiIiJ6lVaTSSHEW+vIZDIolUoolcriD4iIiIiICqXUXM1NRERERO8fJpNEREREpDEmk0RERESkMSaTRERERKQxJpNEREREpDEmk0RERESkMSaTRERERKQxJpNEREREpDEmk0RERESkMa0+AYeIiKhYKU0LWf9J8cRB9AHjyCQRERERaYzJJBERERFpjMkkEREREWmMySQRERERaYzJJBERERFpjMkkEREREWmMySQRERERaYzJJBERERFpjMkkEREREWmMySQRERERaYzJJBERERFpjMkkEREREWmMySQRERERaYzJJBERERFprKy2AyANKU0LWf9J8cRBREREHzWOTBIRERGRxphMEhEREZHGmEwSERERkcaYTBIRERGRxphMEhEREZHGmEwSERERkcaYTBIRERGRxrSaTB48eBCdO3eGra0tZDIZNm7cqDZfCAGlUglbW1soFAp4eXnh0qVL2gmWiIiIiPLQajL57Nkz1KtXD3Pnzs13flhYGGbOnIm5c+ciOjoa1tbW8Pb2RmpqaglHSkRERET50eoTcNq3b4/27dvnO08IgdmzZyM4OBjdunUDAERERMDKygqrVq3CkCFDSjJUIiIiIspHqT1nMjY2FgkJCWjTpo1UJpfL4enpiaioqNcul56ejpSUFLUXERERERWPUptMJiQkAACsrKzUyq2srKR5+QkNDYWpqan0srOzK9Y4iYiIiD5mpTaZVJHJZGrTQog8ZbmNGzcOT548kV7x8fHFHSIRERHRR0ur50y+ibW1NYCXI5Q2NjZSeWJiYp7Rytzkcjnkcnmxx0dEREREpXhk0tHREdbW1ti9e7dUlpGRgQMHDsDd3V2LkRERERGRilZHJp8+fYobN25I07GxsTh79iwqVKiAypUrIygoCCEhIXBycoKTkxNCQkJgYGCA3r17azFqIiIiIlLRajJ58uRJtGjRQpoeNWoUAMDHxwfLli3D2LFjkZaWhoCAACQlJaFJkybYtWsXjI2NtRUyEREREeWi1WTSy8sLQojXzpfJZFAqlVAqlSUXFBEREREVWKk9Z5KIiIiISj8mk0RERESkMSaTRERERKQxJpNEREREpDEmk0RERESkMSaTRERERKQxJpNEREREpDEmk0RERESkMSaTRERERKQxJpNEREREpDEmk0RERESkMSaTRERERKQxJpNEREREpDEmk0RERESkMSaTRERERKQxJpNEREREpDEmk0RERESkMSaTRERERKQxJpNEREREpDEmk0RERESkMSaTRERERKQxJpNEREREpDEmk0RERESksbLaDoCIPiBK04LXdaxcfHEQEVGJ4cgkEREREWmMySQRERERaYzJJBERERFpjMkkEREREWmMySQRERERaYzJJBERERFpjMkkEREREWnsvbjP5G+//Yaff/4Z9+/fR+3atTF79mx8+umn2g7rveIS4VKo+uuKKQ4iotKsMN+V/J4keqnUj0yuXbsWQUFBCA4OxpkzZ/Dpp5+iffv2uHPnjrZDIyIiIvrolfpkcubMmRg0aBC+/vpr1KxZE7Nnz4adnR3mz5+v7dCIiIiIPnqlOpnMyMjAqVOn0KZNG7XyNm3aICoqSktREREREZFKqT5n8t9//0V2djasrKzUyq2srJCQkJDvMunp6UhPT5emnzx5AgBISUkpvkCLQE7680LVT5GJQtXPTssuVP2n2YWrn5bxrMB10zMzC9V2anrB2wZK/3v9PinOflma+iRQvP2SfbLolKbvyve5TwKlv1+q4hOicO8hlTyZKMXv0r1791CxYkVERUXBzc1NKv/pp5+wYsUKXLlyJc8ySqUSkydPLskwiYiIqJjEx8ejUqVK2g6D3qBUj0yam5tDR0cnzyhkYmJintFKlXHjxmHUqFHSdE5ODh4/fgwzMzPIZLJijfdDl5KSAjs7O8THx8PExETb4RCxT1Kpwz5ZdIQQSE1Nha2trbZDobco1cmknp4ePvnkE+zevRtdu3aVynfv3o0uXbrku4xcLodcLlcrK1euXHGG+dExMTHhlySVKuyTVNqwTxYNU1NTbYdABVCqk0kAGDVqFPr16wdXV1e4ublh0aJFuHPnDr755htth0ZERET00Sv1yWSPHj3w6NEj/Pjjj7h//z7q1KmDbdu2wd7eXtuhEREREX30Sn0yCQABAQEICAjQdhgfPblcjkmTJuU5jYBIW9gnqbRhn6SPUam+mpuIiIiISrdSfdNyIiIiIirdmEwSERERkcaYTBIRERGRxphMlnIODg6YPXt2gevHxcVBJpPh7Nmzr62zbNmyYrv3plKpRP369Yul7bfx8vJCUFCQVtb9MWGfLDj2yZLDfllw7JdU1JhMFgNfX1/IZDJMmzZNrXzjxo2FfgpPdHQ0Bg8eXJThfbTu37+P3r17w9nZGWXKlPmovkzZJ0un9evXw9vbGxYWFjAxMYGbmxt27typ7bBKDPtl6XT48GF4eHjAzMwMCoUCNWrUwKxZs7QdFpViTCaLib6+PqZPn46kpKR3asfCwgIGBgZFFFXxyszM1HYIb5Seng4LCwsEBwejXr162g6nxLFPlj4HDx6Et7c3tm3bhlOnTqFFixbo3Lkzzpw5o+3QSgz7ZeljaGiIYcOG4eDBg4iJicEPP/yAH374AYsWLdJ2aFRKMZksJq1bt4a1tTVCQ0PfWC8qKgrNmzeHQqGAnZ0dhg8fjmfPnknzXz10c+XKFTRr1gz6+vqoVasW9uzZA5lMho0bN6q1e+vWLbRo0QIGBgaoV68ejh49mmfdGzduRPXq1aGvrw9vb2/Ex8erzZ8/fz6qVq0KPT09ODs7Y8WKFWrzZTIZFixYgC5dusDQ0BBTp06V5q1YsQIODg4wNTVFz549kZqaKs1LT0/H8OHDYWlpCX19fTRr1gzR0dFqbR84cACNGzeGXC6HjY0Nvv/+e2RlZUnznz17hv79+8PIyAg2NjaYMWPGG/ezal/++uuv6N+//0f5iC72ydLXJ2fPno2xY8eiUaNGcHJyQkhICJycnLB58+a3LvuhYL8sff2yQYMG6NWrF2rXrg0HBwf07dsXbdu2xaFDh966LH2kBBU5Hx8f0aVLF7F+/Xqhr68v4uPjhRBCbNiwQeTe5efPnxdGRkZi1qxZ4tq1a+LIkSOiQYMGwtfXV6pjb28vZs2aJYQQIjs7Wzg7Owtvb29x9uxZcejQIdG4cWMBQGzYsEEIIURsbKwAIGrUqCG2bNkirl69Kr788kthb28vMjMzhRBChIeHC11dXeHq6iqioqLEyZMnRePGjYW7u7u03vXr1wtdXV0xb948cfXqVTFjxgyho6Mj9u3bJ9UBICwtLcWSJUvEzZs3RVxcnJg0aZIwMjIS3bp1ExcuXBAHDx4U1tbWYvz48dJyw4cPF7a2tmLbtm3i0qVLwsfHR5QvX148evRICCHE3bt3hYGBgQgICBAxMTFiw4YNwtzcXEyaNElqw9/fX1SqVEns2rVLnD9/XnTq1EkYGRmJESNGFOg98vT0LHDdDwH7ZOnvk6r9aWdnJ+bMmVPgZd5n7JfvR788ffq0sLKyEosXLy7wMvRxYTJZDFRfkEII0bRpUzFw4EAhRN4vyH79+onBgwerLXvo0CFRpkwZkZaWJoRQ/4Lcvn27KFu2rLh//75Uf/fu3fl+Qf7+++9SnUuXLgkAIiYmRgjx8gsSgDh27JhUJyYmRgAQx48fF0II4e7uLvz8/NRi++qrr0SHDh2kaQAiKChIrc6kSZOEgYGBSElJkcrGjBkjmjRpIoQQ4unTp0JXV1esXLlSmp+RkSFsbW1FWFiYEEKI8ePHC2dnZ5GTkyPVmTdvnjAyMhLZ2dkiNTVV6OnpiTVr1kjzHz16JBQKBZPJ12CfLP19UgghwsLCRIUKFcSDBw8KvMz7jP2ydPfLihUrCj09PVGmTBnx448/vrU+fbx4mLuYTZ8+HREREbh8+XKeeadOncKyZctgZGQkvdq2bYucnBzExsbmqX/16lXY2dnB2tpaKmvcuHG+661bt670t42NDQAgMTFRKitbtixcXV2l6Ro1aqBcuXKIiYkBAMTExMDDw0OtTQ8PD2m+Su42VBwcHGBsbKy2ftW6b968iczMTLW2dXV10bhxY7V1u7m5qZ2A7+HhgadPn+Lu3bu4efMmMjIy4ObmJs2vUKECnJ2d890XpI59snT2ydWrV0OpVGLt2rWwtLQs8HIfCvbL0tcvDx06hJMnT2LBggWYPXs2Vq9eXaDl6OPzXjyb+33WvHlztG3bFuPHj4evr6/avJycHAwZMgTDhw/Ps1zlypXzlAkhCnyFo66urvS3apmcnBy1Ovm1lbvs1fn5rd/Q0PCN61a1o1q3+P+nd76p7fzWk3s5wSeAvhP2ydLXJ9euXYtBgwbhzz//ROvWrd+prfcV+2Xp65eOjo4AABcXFzx48ABKpRK9evV6pzbpw8SRyRIwbdo0bN68GVFRUWrlDRs2xKVLl1CtWrU8Lz09vTzt1KhRA3fu3MGDBw+ksldPxi6orKwsnDx5Upq+evUqkpOTUaNGDQBAzZo1cfjwYbVloqKiULNmTY3Wp6LattxtZ2Zm4uTJk1LbtWrVQlRUlNoXYVRUFIyNjVGxYkVUq1YNurq6OHbsmDQ/KSkJ165de6fYPibsk/+j7T65evVq+Pr6YtWqVejYseM7bcv7jv3yf7TdL18lhEB6evo7bBF9yDgyWQJcXFzQp08fzJkzR638u+++Q9OmTTF06FD4+fnB0NAQMTEx2L17d566AODt7Y2qVavCx8cHYWFhSE1NRXBwMID8/+f8Jrq6uggMDMR//vMf6OrqYtiwYWjatKl0KGjMmDHo3r07GjZsiFatWmHz5s1Yv3499uzZo+FeeMnQ0BD+/v4YM2YMKlSogMqVKyMsLAzPnz/HoEGDAAABAQGYPXs2AgMDMWzYMFy9ehWTJk3CqFGjUKZMGRgZGWHQoEEYM2YMzMzMYGVlheDgYJQp8/b/G6luUPz06VM8fPgQZ8+ehZ6eHmrVqvVO2/W+YZ/8H232ydWrV6N///749ddf0bRpUyQkJAAAFArFR3nHAfbL/9Fmv5w3bx4qV64sJcyHDx/GL7/8gsDAwHfaJvqAldjZmR+R3CeVq8TFxQm5XC5e3eUnTpwQ3t7ewsjISBgaGoq6deuKn376SZqf+6RyIV6e/O3h4SH09PREjRo1xObNmwUAsWPHDiHE/04qP3PmjLRMUlKSACD2798vhHh5Urmpqan4+++/RZUqVYSenp5o2bKliIuLU4vtt99+E1WqVBG6urqievXqYvny5WrzketkdpVJkyaJevXqqZXNmjVL2NvbS9NpaWkiMDBQmJubC7lcLjw8PMSJEyfUlomMjBSNGjUSenp6wtraWnz33XfSFZZCCJGamir69u0rDAwMhJWVlQgLCyvQRTUA8rxyx/ahYp+sp1ZWWvqkp6dnvn3Sx8fntct8SNgv66mVlZZ++Z///EfUrl1bGBgYCBMTE9GgQQPx22+/iezs7NcuQx83mRA8Ae19duTIETRr1gw3btxA1apVtR0OEfsklUrsl0TFh8nke2bDhg0wMjKCk5MTbty4gREjRqB8+fJ5ztkhKinsk1QasV8SlRyeM/meSU1NxdixYxEfHw9zc3O0bt26QE80ICou7JNUGrFfEpUcjkwSERERkcZ4ayAiIiIi0hiTSSIiIiLSGJNJIiIiItIYk0kiIiIi0hiTSSIqEg4ODpg9e3aB68fFxUEmk0lPJcrPsmXLUK5cuXeOLT9KpRL169cvlrbfxsvLC0FBQVpZNxFRUWMySfSR8/X1hUwmw7Rp09TKN27cWKhHz0VHR2Pw4MFFHR4REZVyTCaJCPr6+pg+fTqSkpI0bsPCwgIGBgZFGFXxyczM1HYIREQfDCaTRITWrVvD2toaoaGhr60TFRWF5s2bQ6FQwM7ODsOHD8ezZ8+k+a8e5r5y5QqaNWsGfX191KpVC3v27IFMJsPGjRvV2r116xZatGgBAwMD1KtXD0ePHs2z7o0bN6J69erQ19eHt7c34uPj1ebPnz8fVatWhZ6eHpydnbFixQq1+TKZDAsWLECXLl1gaGiIqVOnSvNWrFgBBwcHmJqaomfPnkhNTZXmpaenY/jw4bC0tIS+vj6aNWuG6OhotbYPHDiAxo0bQy6Xw8bGBt9//z2ysrKk+c+ePUP//v1hZGQEGxsb3jibiD44TCaJCDo6OggJCcGcOXNw9+7dPPMvXLiAtm3bolu3bjh//jzWrl2Lw4cPY9iwYfm2l5OTg88//xwGBgY4fvw4Fi1ahODg4HzrBgcHY/To0Th79iyqV6+OXr16qSVjz58/x08//YSIiAgcOXIEKSkp6NmzpzR/w4YNGDFiBL799ltcvHgRQ4YMwYABA7B//3619UyaNAldunTBhQsXMHDgQADAzZs3sXHjRmzZsgVbtmzBgQMH1A73jx07Fn///TciIiJw+vRpVKtWDW3btsXjx48BAP/973/RoUMHNGrUCOfOncP8+fOxZMkStWR1zJgx2L9/PzZs2IBdu3YhMjISp06dettbQkT0/hBE9FHz8fERXbp0EUII0bRpUzFw4EAhhBAbNmwQqq+Ifv36icGDB6std+jQIVGmTBmRlpYmhBDC3t5ezJo1SwghxPbt20XZsmXF/fv3pfq7d+8WAMSGDRuEEELExsYKAOL333+X6ly6dEkAEDExMUIIIcLDwwUAcezYMalOTEyMACCOHz8uhBDC3d1d+Pn5qcX21VdfiQ4dOkjTAERQUJBanUmTJgkDAwORkpIilY0ZM0Y0adJECCHE06dPha6urli5cqU0PyMjQ9ja2oqwsDAhhBDjx48Xzs7OIicnR6ozb948YWRkJLKzs0VqaqrQ09MTa9askeY/evRIKBQKMWLECEFE9CHgyCQRSaZPn46IiAhcvnxZrfzUqVNYtmwZjIyMpFfbtm2Rk5OD2NjYPO1cvXoVdnZ2sLa2lsoaN26c7zrr1q0r/W1jYwMASExMlMrKli0LV1dXabpGjRooV64cYmJiAAAxMTHw8PBQa9PDw0Oar5K7DRUHBwcYGxurrV+17ps3byIzM1OtbV1dXTRu3Fht3W5ubmoXKnl4eODp06e4e/cubt68iYyMDLi5uUnzK1SoAGdn53z3BRHR+6istgMgotKjefPmaNu2LcaPHw9fX1+pPCcnB0OGDMHw4cPzLFO5cuU8ZUKIAl8JrqurK/2tWiYnJ0etTn5t5S57dX5+6zc0NHzjulXtqNYthHhr2/mtJ/dyqr+JiD5kHJkkIjXTpk3D5s2bERUVJZU1bNgQly5dQrVq1fK89PT08rRRo0YN3LlzBw8ePJDKXr1wpaCysrJw8uRJafrq1atITk5GjRo1AAA1a9bE4cOH1ZaJiopCzZo1NVqfimrbcredmZmJkydPSm3XqlULUVFRakljVFQUjI2NUbFiRVSrVg26uro4duyYND8pKQnXrl17p9iIiEoTJpNEpMbFxQV9+vTBnDlzpLLvvvsOR48exdChQ3H27Flcv34dmzZtQmBgYL5teHt7o2rVqvDx8cH58+dx5MgR6QKcwty7Eng5ehgYGIjjx4/j9OnTGDBgAJo2bSodNh8zZgyWLVuGBQsW4Pr165g5cybWr1+P0aNHa7gHXjI0NIS/vz/GjBmDHTt24PLly/Dz88Pz588xaNAgAEBAQADi4+MRGBiIK1eu4J9//sGkSZMwatQolClTBkZGRhg0aBDGjBmDvXv34uLFi/D19UWZMvzqJaIPB7/RiCiPKVOmqI221a1bFwcOHMD169fx6aefokGDBpgwYYJ0juOrdHR0sHHjRjx9+hSNGjXC119/jR9++AHAy3taFoaBgQG+++479O7dG25ublAoFFizZo00//PPP8evv/6Kn3/+GbVr18bChQsRHh4OLy+vwm/4K6ZNm4YvvvgC/fr1Q8OGDXHjxg3s3LkT5cuXBwBUrFgR27Ztw4kTJ1CvXj188803GDRokLStAPDzzz+jefPm+Oyzz9C6dWs0a9YMn3zyyTvHRkRUWsgET+ohohJw5MgRNGvWDDdu3EDVqlW1HQ4RERURJpNEVCw2bNgAIyMjODk54caNGxgxYgTKly+f5/xGIiJ6v/FqbiIqFqmpqRg7dizi4+Nhbm6O1q1b8+kvREQfII5MEhEREZHGeAEOEREREWmMySQRERERaYzJJBERERFpjMkkEREREWmMySQRERERaYzJJBERERFpjMkkEREREWmMySQRERERaYzJJBERERFp7P8AgrPkV1zThLQAAAAASUVORK5CYII=\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# Transpose the DataFrame for plotting\n",
+ "neighborhood_stats_df = neighborhood_stats_df.T\n",
+ "\n",
+ "# Create a bar plot\n",
+ "plt.figure(figsize=(10, 6))\n",
+ "neighborhood_stats_df.plot(kind='bar', rot=0)\n",
+ "plt.title('Comparison of Ages between different Neighborhoods')\n",
+ "plt.xlabel('Neighborhood')\n",
+ "plt.ylabel('Value')\n",
+ "plt.legend(title='Attributes', loc='upper left', bbox_to_anchor=(1, 1))\n",
+ "\n",
+ "# Show the plot\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 301,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "image/png": "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jcWdO3ewePFiOeIkIiIiInrhaH1me8KECWjdujVu3LgBY2NjqbxPnz747bffajQ4IiIiIqIXmdZntnfv3o09e/bA0NBQo9zR0RF///13jQVGRERERPSi0/rMdnl5Oe7du1eh/OLFizAzM6uRoIiIiIiIXgZaJ9sBAQFYsGCB9FyhUKCwsBCRkZHo3r17TcZGRERERPRC03oZyeeff45OnTqhSZMmuHPnDoKCgnDq1CnUq1cPq1evliNGIiIiIqIXktbJtr29PTIyMrB69WocPHgQ5eXlGDZsGAYOHKhxwSQRERER0b+d1sk2ABgbG2Po0KEYOnRoTcdDRERERPTS0DrZXrFixSPrBw8e/MTBEBERPVLpQe3aG7SSJw4iomrSOtmeMGGCxvPS0lIUFxfD0NAQKpWKyTYRERER0f+n9d1Ibty4ofEoLCxEVlYWfH19eYEkEREREdEDtE62K+Pq6orZs2dXOOtNRERERPRvViPJNgDo6enh0qVLNdUdEREREdELT+s12+vXr9d4LoTA5cuXsWjRIvj4+NRYYERERERELzqtk+3evXtrPFcoFLCyssLrr7+Ozz77rKbiIiIiIiJ64WmdbJeXl8sRBxERERHRS6fG1mwTEREREZGmap3ZnjhxYrU7nD9//hMHQ0RERET0MqlWsn3o0KFqdaZQKJ4qGCIiIiKil0m1ku2dO3fKHQcRERER0UtH6wskSSabf9eufbeO8sRBRERERDXmiZLttLQ0/O9//8OFCxdw9+5djbp169bVSGBERERERC86re9G8uOPP8LHxwcnTpxAYmIiSktLceLECezYsQPm5uZyxEhERERE9ELSOtmOjo7G559/jo0bN8LQ0BBffPEFMjMz0a9fPzRs2FCOGImIiIiIXkhaJ9tnzpxBjx49AABKpRJFRUVQKBR4//33sXTp0hoPkIiIiIjoRaV1sm1paYmCggIAQP369XHs2DEAwM2bN1FcXPzEgcTExEChUCAsLEwqE0IgKioK9vb2MDY2hr+/P44fP/7EYxARERERPUvVTrYzMjIAAK+99hqSk5MBAP369cOECRMwYsQIDBgwAJ07d36iINLS0rB06VK0aNFCozw2Nhbz58/HokWLkJaWBltbWwQEBEjJPhERERHR86zayXarVq3w6quvwtPTEwMGDAAATJs2DZMmTcKVK1fQt29fLFu2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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# Transpose the DataFrame for plotting\n",
+ "neighborhood_stats_df = neighborhood_stats_df.T\n",
+ "\n",
+ "colors = ['lemonchiffon', 'palegreen', 'lightpink']\n",
+ "\n",
+ "# Create a bar plot\n",
+ "plt.figure(figsize=(10, 6))\n",
+ "neighborhood_stats_df.plot(kind='bar', rot=0, color=colors)\n",
+ "plt.title('Comparison of Ages between different Neighborhoods')\n",
+ "plt.xlabel('Neighborhood')\n",
+ "plt.ylabel('Value')\n",
+ "plt.legend(title='Neighborhoods', loc='upper left', bbox_to_anchor=(1, 1))\n",
+ "\n",
+ "plt.show()"
+ ]
+ }
+ ],
+ "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
+}
diff --git a/your-code/main.ipynb b/your-code/main.ipynb
deleted file mode 100644
index 5759add..0000000
--- a/your-code/main.ipynb
+++ /dev/null
@@ -1,522 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "# Understanding Descriptive Statistics\n",
- "\n",
- "Import the necessary libraries here:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# Libraries"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Challenge 1\n",
- "#### 1.- Define a function that simulates rolling a dice 10 times. Save the information in a dataframe.\n",
- "**Hint**: you can use the *choices* function from module *random* to help you with the simulation."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 2.- Plot the results sorted by value."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 3.- Calculate the frequency distribution and plot it. What is the relation between this plot and the plot above? Describe it with words."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "\"\"\"\n",
- "your comments here\n",
- "\"\"\""
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Challenge 2\n",
- "Now, using the dice results obtained in *challenge 1*, your are going to define some functions that will help you calculate the mean of your data in two different ways, the median and the four quartiles. \n",
- "\n",
- "#### 1.- Define a function that computes the mean by summing all the observations and dividing by the total number of observations. You are not allowed to use any methods or functions that directly calculate the mean value. "
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 2.- First, calculate the frequency distribution. Then, calculate the mean using the values of the frequency distribution you've just computed. You are not allowed to use any methods or functions that directly calculate the mean value. "
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 3.- Define a function to calculate the median. You are not allowed to use any methods or functions that directly calculate the median value. \n",
- "**Hint**: you might need to define two computation cases depending on the number of observations used to calculate the median."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 4.- Define a function to calculate the four quartiles. You can use the function you defined above to compute the median but you are not allowed to use any methods or functions that directly calculate the quartiles. "
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Challenge 3\n",
- "Read the csv `roll_the_dice_hundred.csv` from the `data` folder.\n",
- "#### 1.- Sort the values and plot them. What do you see?"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "\"\"\"\n",
- "your comments here\n",
- "\"\"\""
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 2.- Using the functions you defined in *challenge 2*, calculate the mean value of the hundred dice rolls."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 3.- Now, calculate the frequency distribution.\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 4.- Plot the histogram. What do you see (shape, values...) ? How can you connect the mean value to the histogram? "
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "\"\"\"\n",
- "your comments here\n",
- "\"\"\""
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 5.- Read the `roll_the_dice_thousand.csv` from the `data` folder. Plot the frequency distribution as you did before. Has anything changed? Why do you think it changed?"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "\"\"\"\n",
- "your comments here\n",
- "\"\"\""
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Challenge 4\n",
- "In the `data` folder of this repository you will find three different files with the prefix `ages_population`. These files contain information about a poll answered by a thousand people regarding their age. Each file corresponds to the poll answers in different neighbourhoods of Barcelona.\n",
- "\n",
- "#### 1.- Read the file `ages_population.csv`. Calculate the frequency distribution and plot it as we did during the lesson. Try to guess the range in which the mean and the standard deviation will be by looking at the plot. "
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 2.- Calculate the exact mean and standard deviation and compare them with your guesses. Do they fall inside the ranges you guessed?"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "\"\"\"\n",
- "your comments here\n",
- "\"\"\""
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 3.- Now read the file `ages_population2.csv` . Calculate the frequency distribution and plot it."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 4.- What do you see? Is there any difference with the frequency distribution in step 1?"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "\"\"\"\n",
- "your comments here\n",
- "\"\"\""
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 5.- Calculate the mean and standard deviation. Compare the results with the mean and standard deviation in step 2. What do you think?"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "\"\"\"\n",
- "your comments here\n",
- "\"\"\""
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Challenge 5\n",
- "Now is the turn of `ages_population3.csv`.\n",
- "\n",
- "#### 1.- Read the file `ages_population3.csv`. Calculate the frequency distribution and plot it."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 2.- Calculate the mean and standard deviation. Compare the results with the plot in step 1. What is happening?"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "\"\"\"\n",
- "your comments here\n",
- "\"\"\""
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 3.- Calculate the four quartiles. Use the results to explain your reasoning for question in step 2. How much of a difference is there between the median and the mean?"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "\"\"\"\n",
- "your comments here\n",
- "\"\"\""
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "#### 4.- Calculate other percentiles that might be useful to give more arguments to your reasoning."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "\"\"\"\n",
- "your comments here\n",
- "\"\"\""
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Bonus challenge\n",
- "Compare the information about the three neighbourhoods. Prepare a report about the three of them. Remember to find out which are their similarities and their differences backing your arguments in basic statistics."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "# your code here"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": [
- "\"\"\"\n",
- "your comments here\n",
- "\"\"\""
- ]
- }
- ],
- "metadata": {
- "kernelspec": {
- "display_name": "ironhack-3.7",
- "language": "python",
- "name": "ironhack-3.7"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.7.3"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 2
-}