{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# IntroStat Week 1 Python\n", "\n", "Welcome to the first lecture in IntroStat\n", "\n", "During the lectures we will present both slides and notebooks. \n", "\n", "This is the notebook used in the lecture in week 1.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### First steps using python code" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "5" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Addition\n", "2+3" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# Define a variable\n", "x = 3" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3\n" ] } ], "source": [ "# print out the value of the variable\n", "print(x)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n" ] } ], "source": [ "print(type(x))" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "# try changing x to 3.8 and see what happens to the type" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice how jupyter notebooks work in two **modes**: **command** mode and **edit** mode.
\n", "\n", "To enter command mode press **esc**
\n", "\n", "To enter edit mode press **enter**
\n", "\n", "(you can also use the mouse/clicking for most tasks)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "# define a variable of the data-type \"list\", which can contain several values\n", "x = [1,4,6,2] " ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[1, 4, 6, 2]\n" ] } ], "source": [ "print(x)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n" ] } ], "source": [ "print(type(x))" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[1, 4, 'hello', 0.232]" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# lists can contain many different types of data\n", "x = [1,4,'hello',0.232] \n", "x" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[1, 4, 'hello', 0.232, 1, 4, 'hello', 0.232, 1, 4, 'hello', 0.232, 1, 4, 'hello', 0.232, 1, 4, 'hello', 0.232]\n" ] } ], "source": [ "# what happens if we multiply a list by a number?\n", "print(x*5)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "ename": "TypeError", "evalue": "can't multiply sequence by non-int of type 'float'", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)", "Cell \u001b[1;32mIn[19], line 2\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;66;03m# what if we had chosen a non-integer number?\u001b[39;00m\n\u001b[1;32m----> 2\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[43mx\u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m1.2\u001b[39;49m)\n", "\u001b[1;31mTypeError\u001b[0m: can't multiply sequence by non-int of type 'float'" ] } ], "source": [ "# what if we had chosen a non-integer number?\n", "print(x*1.2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In conclusion: lists do not behave as vectors.
\n", "For example multiplication does not operate elementwise.
\n", "We want to work with a variable type that behave more like a vector (or matrix)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Using Numpy for vectors (ndarrays)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "### import the NUMPY package for vectors (ndarray data type for multidimentional arrays), math functions, etc.\n", "import numpy as np" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# store data of student height in variable x (which is now an array, not a list)\n", "x = np.array([168, 161, 167, 179, 184, 166, 198, 187, 191, 179])" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[168 161 167 179 184 166 198 187 191 179]\n" ] } ], "source": [ "print(x)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n" ] } ], "source": [ "print(type(x))" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# type is 'numpy.ndarray' - stands for n-dimensional array (1D = vector, 2D = matrix, etc.)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Calculate the mean" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "178.0" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# calculate mean of x (average height of students)\n", "np.mean(x)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "178.0" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# \"mean()\" can also be called as a method\n", "x.mean()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Have a look in the online documentation: https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html\n", "\n", "The datatype \"ndarray\" (also called a numpy array) has many methods." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "161" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# lets try some other \"methods\"\n", "x.min()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "198" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x.max()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "149.11111111111111" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# what about variance? \n", "# OBS: need to remember ddof = 1 if you want to calculate the \"sample variance\"\n", "x.var(ddof=1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "ddof?? look in documentation for explanation: https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "12.211106056009468" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# standard deviation (also remember ddof=1 for \"sample standard deviation\")\n", "x.std(ddof=1)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "ename": "AttributeError", "evalue": "'numpy.ndarray' object has no attribute 'median'", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mAttributeError\u001b[0m Traceback (most recent call last)", "Cell \u001b[1;32mIn[24], line 2\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;66;03m# what about the median?\u001b[39;00m\n\u001b[1;32m----> 2\u001b[0m \u001b[43mx\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mmedian\u001b[49m()\n", "\u001b[1;31mAttributeError\u001b[0m: 'numpy.ndarray' object has no attribute 'median'" ] } ], "source": [ "# what about the median?\n", "x.median()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "no method called median? \n", "\n", "OK, then we call the median() function directly from numpy" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "179.0" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.median(x)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([163.5, 166.5, 179. , 189. , 194.5])" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# we can also get other percentiles (50th percentile is the same as the median)\n", "np.percentile(x, [10,20,50,80,90], method='averaged_inverted_cdf')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Notice the method=\"averaged inverted cdf\"\n", "\n", "There are many different ways to define percentiles!\n", "\n", "See the documentaion: https://numpy.org/doc/stable/reference/generated/numpy.percentile.html#numpy.percentile\n", "\n", "In this course (and in the book) we use the 'averaged_inverted_cdf' method." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[161 166 167 168 179 179 184 187 191 198]\n" ] } ], "source": [ "# compare with sorted data\n", "x.sort()\n", "print(x)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Coefficient of variation\n", "Ceofficient of variation is generally expressed as percentage" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Coefficient of Variation: 6.51%\n" ] } ], "source": [ "import numpy as np\n", "\n", "# Store student heights in an array\n", "x = np.array([168, 161, 167, 179, 184, 166, 198, 187, 191, 179])\n", "\n", "# Calculate the mean and standard deviation\n", "mean_x = np.mean(x)\n", "std_x = np.std(x)\n", "\n", "# Calculate the coefficient of variation\n", "cv = (std_x / mean_x) * 100\n", "\n", "print(f\"Coefficient of Variation: {cv:.2f}%\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Covariance and Correlation Coefficient\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Covariance: 165.92\n", "Correlation coefficient: 0.97\n" ] } ], "source": [ "import numpy as np\n", "\n", "# Data from the table\n", "heights = np.array([168, 161, 167, 179, 184, 166, 198, 187, 191, 179])\n", "weights = np.array([65.5, 58.3, 68.1, 85.7, 80.5, 63.4, 102.6, 91.4, 86.7, 78.9])\n", "\n", "# Covariance calculation\n", "cov_matrix = np.cov(heights, weights)\n", "covariance = cov_matrix[0, 1]\n", "\n", "# Correlation coefficient calculation\n", "correlation = np.corrcoef(heights, weights)[0, 1]\n", "\n", "print(f\"Covariance: {covariance:.2f}\")\n", "print(f\"Correlation coefficient: {correlation:.2f}\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Scatter Plot and Show the Correlation Coefficient" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "image/png": "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GJOWlmZsNpu58cYbzeLFi80XX3xh3n33XXPrrbcWe+wCLVq0MA0aNHC8/uijj0zFihXNsWPHzMiRI03btm0d22bMmGEkmU8//dTxeSpVqmSaNWtm/vvf/5ply5aZRx55xFSoUMEkJycX+XMrfN599tlnpkKFCiYuLs7Mnz/fzJ0717Rr185ER0eb0/9VXdDbK664wnz44Ydm8eLFJi4uzlSsWNFs3brVGHPmv5eA1RFuAQv566+/zFVXXWUkGUnGy8vLdOjQwYwfP94cPXrUMe+PP/4wdrvd3HzzzW4fOy8vz+Tk5JgdO3YYSebjjz92bHvhhReKBKECTZo0cQo+BcaPH28qVKhg1q1b5zQ+b948I8ksXrzYMSbJVKpUyRw8eNCtWmvXrm1sNptZv36903i3bt1McHCwycrKMsa4Dhnt27c3NWrUcOrXqVOnTNOmTU1kZKQjdM+dO9dIMitWrHCrJnePW1BT4RBenIK5Z/sp+HPJysoyISEhpm/fvk7Hyc3NNS1atDBXXHGFY+z0cHvw4EHj4+NjBgwY4LTv2rVrjSSX4bZXr15Ocz/88EMjySnA9u7d29SuXfusn9UYY3JyckxoaKhJSkpyGn/ssceMt7e3+euvv4wxxrz44otGkjl8+LBbxy1s2LBhRpLZu3evMcaYBx980LRv394YY8zixYuN3W53BMTbb7/d2O12k5mZaYwxpnv37iYyMrJIgHzggQeMr6+v4/x1dd61bdvWREVFmezsbMfY0aNHTdWqVV2G29DQUMf7GmNMRkaGqVChghk/frxj7Ex/LwEr47YEwEKqVq2q1atXa926dXr++efVr18//fbbbxo1apSaNWvmuJ0gNTVVubm5uv/++894vH379unee+9VVFSUKlasKC8vL9WuXVuStHnz5vOqddGiRWratKlatmypU6dOOX66d+/u8tenXbp08eje0yZNmqhFixZOY0lJScrMzNQPP/zgcp+srCx988036t+/vwIDAx3jdrtdt956q3bv3u30a3V3ldZxCwwdOlTr1q0r8jN06FCneWlpaTp48KAGDhzo1PO8vDz16NFD69atK3JLSIGvv/5a2dnZuuGGG5zG27dvX+ytE9dcc43T6+bNm0uSduzYcU6fs2LFirrllluUkpKiI0eOSJJyc3M1c+ZM9evXT1WrVpUktW3bVpJ0ww036MMPP9SePXvcfo/T77tduXKl45aLq666SpL05ZdfOra1adNGQUFB+vvvv7V8+XJdd9118vf3d+pvr1699Pfff+vrr792+Z5ZWVn67rvvdO2118rb29sxHhgYqL59+xZbZ1BQkON1aGioatSocc69BayEcAtYUJs2bTRy5EjNnTtXe/fu1fDhw7V9+3ZNnDhRkrR//35Jctzf6UpeXp4SEhKUkpKixx57TMuXL9e3337r+Bf0+X6h688//9TPP/8sLy8vp5+goCAZY5zu65Xk8bf2w8LCih07cOCAy30OHTokY4zL94qIiDjjvmdSWsctEBkZqTZt2hT5Of3P988//5Qk9e/fv0jfJ0yYIGOMDh486PI9CuoLDQ0tss3VmCRH2CxQ8OW08zl37rjjDv3999+aM2eOJGnp0qVKT0/X7bff7pjTuXNnLViwQKdOndJtt92myMhINW3aVLNnzz7r8WNjY1WhQgWtWLFCBw4c0IYNGxyrVQQFBalVq1ZauXKldu7cqW3btjnC8IEDB3Tq1ClNmzatSG979eolSUXO6QIF58f59FbK769Vv2gJeKLot04AWIqXl5dGjx6tl19+WRs2bJAkx7e0d+/eraioKJf7bdiwQT/99JOmT5+ugQMHOsa3bNlSInVVq1ZNfn5+euedd4rdXtiZvmjkyunLORUecxUMJKlKlSqqUKGC0tPTi2zbu3evy7rcUVrH9VTBe0ybNk3t27d3OedsYaogIBeWkZFRKl98c6Vx48a64oor9O6772rw4MF69913FRERoYSEBKd5/fr1U79+/ZSdna2vv/5a48ePV1JSkqKjo12uV1ugUqVKjgBbsMxXx44dHdtjY2O1YsUKNWvWTNI/V3qrVKniuBJf3G9EYmJiXI5XqVJFNput2N4C8AxXbgELcRWepH9uISi4SpiQkCC73a7XX3+92GMVhMnTl4L6z3/+U2Tuma7IFXc1qU+fPtq6dauqVq3q8qrj+YaljRs36qeffnIamzVrloKCgpy+VV9YQECA2rVrp5SUFKea8/Ly9N577ykyMlINGjRwfC7JvauQnhy3NHXs2FGVK1fWpk2bXPa8TZs2Tr8WL6xdu3by8fEpsl7y119/fV6/Cj+Xq4233367vvnmG61Zs0YLFy7UwIEDZbfbiz1+bGysJkyYIEn68ccfz3r8+Ph4/f7775o1a5Zat27t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a3jjxo365ptvdPPNN3vUSwCslgBAUrVq1eTv769t27a5Nf/AgQOS5PLb7hEREUVC3Jm+FX/6toJfX48YMUIjRoxwuc/ptz0UlpSUpOXLl+vpp59W27ZtFRwcLJvNpl69eunEiRPF7ncmBw4cUMWKFVW9enWncZvNprCwMEc/ClStWrXIMXx8fM76/gWBeNu2bWdd+unQoUMyxhT7Z1BQt5Tf04ULFzr9R0RhZ+qnJ/bv3y9JioyM9Gi/gj/z/v37Fzvn4MGDCggIcLw+vccFv+Y/1z/j4lStWlXr168vMp6VlaWTJ08qJCTkjPvfcccd2r9/v5599lm9/vrrkqQrr7xSI0aM0IQJE1SzZk2X+7399tuSxC0JwDkg3AKQ3W7X1Vdfrc8++0y7d+8+azgpCBbp6elF5u7du1fVqlVzGvPkylfBvqNGjVJiYqLLfRo2bOhy/MiRI1q0aJFGjx6txx9/3DGenZ19Xmv0Vq1aVadOndL+/fudAq4xRhkZGWrbtu05H7uw7t27680339SCBQuc6nelSpUqqlChgtLT04ts27t3r6R/elmtWjU1b95czz33nMtjFYTh81XQm927d3u0X0Gd06ZNU/v27V3OKavH+zZr1kxz5sxRRkaG0323BffKNm3a9KzHGDlypIYNG6bff/9dQUFBql27tgYPHqyAgAC1bt26yPyTJ09q5syZat26tVq2bFlinwW4VHBbAgBJ+WHSGKO7775bJ0+eLLI9JydHCxculCTHLQbvvfee05x169Zp8+bNuvrqq8+5joYNG6p+/fr66aef1KZNG5c/QUFBLve12WwyxhT5As///d//KTc312nMkyt9BZ/n9M/70UcfKSsr67w+b2H9+vVTs2bNNH78+GK/qLR06VIdP35cAQEBateunVJSUpw+Q15ent577z1FRkaqQYMGkqQ+ffpow4YNqlu3rst+llS4bdCggerWrat33nmnyJfszqRjx46qXLmyNm3aVOyfube3t8f1uHO1/Gz69esnm82mGTNmOI1Pnz5dfn5+6tGjh9u1NG3aVLVr19bOnTv1wQcf6O6775afn1+RuZ988on++usv3XnnnedVO3Cp4sotAEn5vyp9/fXXNWTIELVu3Vr33XefmjRpopycHP34449688031bRpU/Xt21cNGzbUPffco2nTpqlChQrq2bOntm/frqefflpRUVFO31o/F//5z3/Us2dPde/eXYMGDVLNmjV18OBBbd68WT/88IPmzp3rcr/g4GB17txZL7zwgqpVq6bo6GitWrVKb7/9tipXruw0t+CK25tvvqmgoCD5+voqJibG5S0F3bp1U/fu3TVy5EhlZmaqY8eO+vnnnzV69Gi1atVKt95663l93gJ2u13z589XQkKCrrzySt13332Kj49XQECAduzYoXnz5mnhwoU6dOiQJGn8+PHq1q2b4uPjNWLECHl7e+u1117Thg0bNHv2bMdV8WeeeUapqanq0KGDHnroITVs2FB///23tm/frsWLF+uNN97w+FaC4rz66qvq27ev2rdvr+HDh6tWrVrauXOnli5dqvfff9/lPoGBgZo2bZoGDhyogwcPqn///qpRo4b279+vn376Sfv373f8St8TzZo108qVK7Vw4UKFh4crKCjIcdW/Xr16knTW+26bNGmiO++8U6NHj5bdblfbtm21bNkyvfnmm3r22Wedbkt45pln9Mwzz2j58uWKjY2VlL+awkcffaQ2bdrIx8dHP/30k55//nnVr19fY8eOdfmeb7/9tvz8/JSUlOTxZwYgVksA4Gz9+vVm4MCBplatWsbb29sEBASYVq1amX//+99m3759jnkF69w2aNDAeHl5mWrVqplbbrml2HVuT1ewWsILL7zgso6ffvrJ3HDDDaZGjRrGy8vLhIWFmS5dupg33njDMcfVt/V3795trr/+elOlShUTFBRkevToYTZs2GBq165d5JvzkydPNjExMcZut7u1zu3IkSNN7dq1jZeXlwkPDzf33Xdfsevcni42NtbtdVYPHz5sxo4day6//HITGBhovLy8TK1atcwtt9xivvrqK6e5BevcBgQEGD8/P9O+fXuzcOHCIsfcv3+/eeihh0xMTIzx8vIyISEhpnXr1ubJJ580x44dO2v9cnO1BGOMWbt2renZs6epVKmS8fHxMXXr1jXDhw93bC9undtVq1aZ3r17m5CQEOPl5WVq1qxpevfubebOneuYU7Bawv79+532dXXM9evXm44dOxp/f/8i69zWrl27yJ9xcU6ePGlGjx7t+DvRoEEDM3Xq1CLzCmor3I9ff/3VdO7c2YSEhBhvb29Tr14989RTTzn1vLCdO3eaChUqmNtuu82t2gAUZTPGmLIK1gAAAEBJ4p5bAAAAWAbhFgAAAJZBuAUAAIBlEG4BAABgGYRbAAAAWAbhFgAAAJZBuAUAAIBl8IQy5T+ucu/evQoKCirynHsAAACUPWOMjh49qoiICFWoUPz1WcKtpL179yoqKqqsywAAAMBZ7Nq164yPDCfcSgoKCpKU36zg4GC39snJydGyZcuUkJAgLy+v0izPEuiXZ+iXZ+iX5+iZZ+iXZ+iXZ+iXezIzMxUVFeXIbcUh3EqOWxGCg4M9Crf+/v4KDg7mRHQD/fIM/fIM/fIcPfMM/fIM/fIM/fLM2W4h5QtlAAAAsAzCLQAAACyDcAsAAADL4J5bNxljdOrUKeXm5krKvz+mYsWK+vvvvx1jKN7F3i8vLy/Z7fayLgMAAJwF4dYNJ0+eVHp6uo4fP+4YM8YoLCxMu3btYm1cN1zs/bLZbIqMjFRgYGBZlwIAAM6AcHsWeXl52rZtm+x2uyIiIuTt7S2bzaa8vDwdO3ZMgYGBZ1xIGPku5n4ZY7R//37t3r1b9evX5wouAADlGOH2LE6ePKm8vDxFRUXJ39/fMZ6Xl6eTJ0/K19f3ogtrZeFi71f16tW1fft25eTkEG4BACjHLr6UUUYuxkCGknMx3koBAMCliMQGAAAAyyDc4qKTnJysli1blnUZAACgHCLcWtSgQYNks9lks9nk5eWl0NBQdevWTe+8847y8vI8Otb06dNVuXLl0in0HIwYMULLly/3aJ/o6GhNnjy5dAoCAADlBuHWwnr06KH09HRt375dn332meLj4zV06FD16dNHp06dKuvyzllgYKCqVq1a1mUAAIByiHB7geTmSitXSrNn5//vhXiOgY+Pj8LCwlSzZk1dfvnleuKJJ/Txxx/rs88+0/Tp0x3zJk2apGbNmikgIEBRUVEaMmSIjh07JklauXKlbr/9dh05csRxJTg5OVmS9N5776lNmzYKCgpSWFiYkpKStG/fvjPWVKdOHY0dO1ZJSUkKDAxURESEpk2b5jRn586d6tevnwIDAxUcHKwbbrhBf/75p2P76bclDBo0SNdee61efPFFhYeHq2rVqrr//vuVk5MjSYqLi9OOHTs0fPhwx2eQpB07dqhv376qUqWKAgIC1KRJEy1evPhc2w0AAMoBwu0FkJIiRUdL8fFSUlL+/0ZH549faF26dFGLFi2UUujNK1SooKlTp2rDhg2aMWOGvvjiCz322GOSpA4dOmjy5MkKDg5Wenq60tPTNWLECEn5y6SNHTtWP/30kxYsWKBt27Zp0KBBZ63hhRdeUPPmzfXDDz9o1KhRGj58uFJTUyXlryl77bXX6uDBg1q1apVSU1O1detWDRgw4IzHXLFihbZu3aoVK1ZoxowZmj59uiPAp6SkKDIyUs8884zjM0jS/fffr+zsbH355Zf65ZdfNGHCBB7SAACAG8riop27WOe2lKWkSP37S8Y4j+/Zkz8+b56UmHhha2rUqJF+/vlnx+thw4Y5/jkmJkZjx47Vfffdp9dee03e3t6qVKmSbDabwsLCnI5zxx13OP65Tp06mjp1qq644grHwxqK07FjRz3++OOSpAYNGuirr77Syy+/rG7duunzzz/Xzz//rG3btikqKkqSNHPmTDVp0kTr1q1T27ZtXR6zSpUqeuWVV2S329WoUSP17t1by5cv1913362QkBDZ7XbHFeYCO3fu1PXXX69mzZo5PgMAADizlBRp6FBp9+5/xiIjpSlTLnymcYUrt6UoNzf/D//0YCv9MzZs2IX/rx1jjNO6rStWrFC3bt1Us2ZNBQUF6bbbbtOBAweUlZV1xuP8+OOP6tevn2rXrq2goCDFxcVJyg+NZ3LllVcWeb1582ZJ0ubNmxUVFeUItpLUuHFjVa5c2THHlSZNmjg9XCE8PPyst0g89NBDevbZZ9WxY0eNHj3aKfADAICiCi7aFQ620j8X7crit9KnI9yWotWri/7hF2aMtGtX/rwLafPmzYqJiZGUf99pr1691LRpU3300Uf6/vvv9eqrr0qS455VV7KyspSQkKDAwEC99957WrdunebPny8p/3YFTxWE7dODd4Hixgt4eXkVOd7ZVoW466679Mcff+jWW2/VL7/8ojZt2hS5/xcAAOQrrxftTke4LUX//9bOEptXEr744gv98ssvuv766yVJ3333nU6dOqWXXnpJ7du3V4MGDbR3716nfby9vZV72pn6v//9T3/99Zeef/55derUSY0aNTrrldICX3/9dZHXjRo1kpR/lXbnzp3atWuXY/umTZt05MgRXXbZZR5/3jN9BkmKiorSvffeq5SUFD3yyCN66623zvk9AACwsvJ60e50hNtSFB5esvM8lZ2drYyMDO3Zs0c//PCDxo0bp379+qlPnz667bbbJEl169bVqVOnNG3aNP3xxx+aOXOm3njj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XrLzAMItAAAoM+HhJTsPINwCAIAy06lT/qoINpvr7TabFBWVPw9wB+EWAACUGbs9f7kvqWjALXg9eTLr3cJ9hFsAAFCmEhOlefOkmjWdxyMj88dZ5xae4CEOAHCR4SlOsKLERKlfP85tnD/CLQBcRHiKE6zMbpfi4sq6ClzsuC0BAC4SPMUJAM6OcAsAFwGe4gQA7iHcAsBFgKc4AYB7CLcAcBHgKU4A4B7CLQBcBHiKEwC4h3ALABcBnuIEAO4h3ALARYCnOAGAewi3AHCR4ClOAHB2PMQBAC4iPMUJAM6McAsAFxme4gQAxeO2BAAAAFgG4RYAAACWQbgFAACAZRBuAQAAYBkef6EsOztb3377rbZv367jx4+revXqatWqlWJiYkqjPgAAAMBtbofbtLQ0TZs2TQsWLNDJkydVuXJl+fn56eDBg8rOzladOnV0zz336N5771VQUFBp1gwAAAC45NZtCf369VP//v1Vs2ZNLV26VEePHtWBAwe0e/duHT9+XL///rueeuopLV++XA0aNFBqampp1w0AAAAU4daV24SEBM2dO1fe3t4ut9epU0d16tTRwIEDtXHjRu3du7dEiwQAAADc4Va4vf/++90+YJMmTdSkSZNzLggAAAA4V6yWAAAAAMvweLWEKlWqyGazFRm32Wzy9fVVvXr1NGjQIN1+++0lUiAAAADgLo/D7b///W8999xz6tmzp6644goZY7Ru3TotWbJE999/v7Zt26b77rtPp06d0t13310aNQMAAAAueRxu16xZo2effVb33nuv0/h//vMfLVu2TB999JGaN2+uqVOnEm4BAABwQXl8z+3SpUvVtWvXIuNXX321li5dKknq1auX/vjjj/OvDgAAAPCAx+E2JCRECxcuLDK+cOFChYSESJKysrJ4kAMAAAAuOI9vS3j66ad13333acWKFbriiitks9n07bffavHixXrjjTckSampqYqNjS3xYgEAAIAz8Tjc3n333WrcuLFeeeUVpaSkyBijRo0aadWqVerQoYMk6ZFHHinxQgEAAICz8TjcSlLHjh3VsWPHIuMnTpyQn5/feRcFAAAAnAuP77kt7mllWVlZ6tmz53kXBAAAAJwrj8PtsmXL9NRTTzmNHTt2TD169FBubm6JFQYAAAB4yuPbEpYtW6arrrpKVatW1fDhw3X06FF1795dFStW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paTrAwAAANzmUbj9+++/lZaWphUrVmjlypVat26dYmJiFBsbq9dff12xsbGlVScAAABwVm6H29jYWK1bt05169ZV586d9eCDDyo2NlahoaGlWR8AAADgNrfDbVpamsLDwxUfH6+4uDh17txZ1apVK83aAAAAAI+4/RCHw4cP680335S/v78mTJigmjVrqlmzZnrggQc0b9487d+/vzTrBAAAAM7K7Su3AQEB6tGjh3r06CFJOnr0qNasWaMVK1Zo4sSJuvnmm1W/fn1t2LCh1IoFAAAAzsTjx+8WCAgIUEhIiEJCQlSlShVVrFhRmzdvLsnaAAAAAI+4feU2Ly9P3333nVauXKkVK1boq6++UlZWluOpZa+++qri4+NLs1YAAADgjNwOt5UrV1ZWVpbCw8MVFxenSZMmKT4+XnXr1i3N+gAAAAC3uR1uX3jhBcXHx6tBgwalWQ8AAABwztwOt4MHDy7NOgAAAIDzds5fKAMAAADKG8ItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyCLcAAACwDMItAAAALINwCwAAAMsg3AIAAMAyyn24jY6Ols1mK/Jz//33S5KMMUpOTlZERIT8/PwUFxenjRs3lnHVAAAAKAvlPtyuW7dO6enpjp/U1FRJ0r/+9S9J0sSJEzVp0iS98sorWrduncLCwtStWzcdPXq0LMsGAABAGSj34bZ69eoKCwtz/CxatEh169ZVbGysjDGaPHmynnzySSUmJqpp06aaMWOGjh8/rlmzZpV16QAAALjAyn24LezkyZN67733dMcdd8hms2nbtm3K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AKXsl19+Uffu3ZWYmKiff/5ZH3zwgdasWaMHHnjA5fy8vDxde+218vf31zfffKM333xTTz75pMu5Tz75pEaMGKH169erQYMGuummm3Tq1Cl16NBBkydPVnBwsNLT05Wenq4RI0a4PMaaNWvk7++vyy67zKmGnj17Ki0tTe+99542bdqk559/Xna73THn+PHjmjp1qubMmaMlS5Zo5cqVSkxM1OLFi7V48WLNnDlTb775pubNm+f0fldccYVWr17taRsBwC0Vy7oAALiYLVq0SIGBgU5jha9UStILL7ygpKQkDRs2TJJUv359TZ06VbGxsXr99dfl6+vrNH/ZsmXaunWrVq5cqbCwMEnSc889p27duhV5/xEjRqh3796SpDFjxqhJkybasmWLGjVqpEqVKslmszmOUZzt27crNDTU6ZaEzz//XN9++602b96sBg0aSJLq1KnjtF9OTo5ef/111a1bV5LUv39/zZw5U3/++acCAwPVuHFjxcfHa8WKFRowYIBjv5o1a2rnzp3Ky8sr9dsgAFx6CLcAcB7i4+P1+uuvO4198803uuWWWxyvv//+e23ZskXvv/++Y8wYo7y8PG3bts3piqkk/frrr4qKinIKpVdccYXL92/evLnjn8PDwyVJ+/btU6NGjdz+DCdOnCgSsNevX6/IyEhHsHXF39/fEWwlKTQ0VNHR0U5hPzQ0VPv27XPaz8/PT3l5ecrOzpafn5/bdQKAOwi3AHAeAgICVK9ePaex3bt3O73Oy8vT4MGD9dBDDxXZv1atWkXGjDGy2Wxuvb+Xl5fjnwv28XQlgmrVqunQoUNOY+6EzsLvXfD+rsZOr+fgwYPy9/cn2AIoFYRbAChll19+uTZu3FgkBBenUaNG2rlzp/7880+FhoZKyl8qzFPe3t5FbpFwpVWrVsrIyNChQ4dUpUoVSflXhHfv3q3ffvvtjFdvz8WGDRt0+eWXl+gxAaAANzsBQCkbOXKk1q5dq/vvv1/r16/X77//rk8++UQPPvigy/ndunVT3bp1NXDgQP3888/66quvHF8oc/eKrpS/AsOxY8e0fPly/fXXXzp+/LjLea1atVL16tX11VdfOcZiY2PVuXNnXX/99UpNTdW2bdv02WefacmSJR58ctdWr16thISE8z4OALhCuAWAUta8eXOtWrVKv//+uzp16qRWrVrp6aefdtwjezq73a4FCxbo2LFjatu2re666y499dRTklTk3tgz6dChg+69914NGDBA1atX18SJE4t9vzvuuMPpnmBJ+uijj9S2bVvddNNNaty4sR577DG3rgSfyZ49e5SWlqbbb7/9vI4DAMWxGWNMWRcBADizr776SldddZW2bNni9CWukvLnn3+qSZMm+v7771W7du0SP36BRx99VEeOHNGbb75Zau8B4NLGPbcAUA7Nnz9fgYGBql+/vrZs2aKhQ4eqY8eOpRJspfxVDd5++23t3LmzVMNtjRo1il1vFwBKAlduAaAc+u9//6uxY8dq165dqlatmrp27aqXXnpJVatWLevSAKBcI9wCAADAMvhCGQAAACyDcAsAAADLINwCAADAMgi3AAAAsAzCLQAAACyDcAsAAADLINwCAADAMgi3AAAAsAzCLQAAACzj/wFFDOzfBMr9YwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "# Data from the table\n", "heights = np.array([168, 161, 167, 179, 184, 166, 198, 187, 191, 179])\n", "weights = np.array([65.5, 58.3, 68.1, 85.7, 80.5, 63.4, 102.6, 91.4, 86.7, 78.9])\n", "\n", "# Calculate correlation coefficient\n", "correlation = np.corrcoef(heights, weights)[0, 1]\n", "\n", "# Create scatter plot\n", "plt.figure(figsize=(8, 6))\n", "plt.scatter(heights, weights, color='b', label='Data points')\n", "\n", "# Add labels and title\n", "plt.xlabel('Height (cm)')\n", "plt.ylabel('Weight (kg)')\n", "plt.title(f'Scatter plot of Height vs Weight\\nCorrelation Coefficient: {correlation:.2f}')\n", "\n", "# Display the plot\n", "plt.legend()\n", "plt.grid(True)\n", "plt.show()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Now lets make some plots" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# import the matplotlib.pyplot package \n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[161 166 167 168 179 179 184 187 191 198]\n" ] } ], "source": [ "print(x)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "image/png": "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2+ehdMXHyNmzZzVx4kQ9//zzIR//9NNPNXXqVN14442qra3Vu+++q6effloJCQmBex599FHt3LlTr732mg4ePKgzZ87onnvu0fnz5y/XMsIyFGuWpIceekherzdwvPTSS5dj+oPS35q/vQ6v16utW7fK5XIFfUU82vZ5IGuWomufV69ererqau3YsSPwe4xWrlypt956K3BPtO3zQNYsRc8+O46j+fPn69///rfeeustNTQ0aOzYsbrrrrt09uzZwH3RtM8DXbMUWfs8pJwIIsnZuXNn0LWFCxc6v/71r3sd89VXXzmxsbHOa6+9FrjW1tbmXHPNNU51dfVwTXXIDGbNjuM4M2bMcB555JHhm9gwCrXm75o3b55z5513Bs6jcZ+/67trdpzo2+e8vDznmWeeCbp26623Ok899ZTjONG5z/2t2XGia5+bm5sdSc77778fuHbu3DknNTXV+fOf/+w4TvTt80DW7DiRvc+X6op/ZaQvFy5cUFVVlX784x9r9uzZSktL009/+tOgl8eOHj2q7u5uFRYWBq5lZGRowoQJOnTokMGsL81A1nzRK6+8olGjRikvL08lJSU6ffr05Z/wMPjiiy9UVVWlJUuWBK5F2z5/V6g1XxRN+zx16lTt3r1bbW1tchxH+/bt08cff6zZs2dLis597m/NF0XLPvv9fkkKeiV3xIgRiouL08GDByVF3z4PZM0XRcs+hyuiY6Sjo0NnzpzR+vXrdffdd2vv3r365S9/qfvuu091dXWSpPb2dsXFxemHP/xh0Nj09PQef8AvEgxkzZJ0//336+9//7tqa2v19NNPy+Px6L777jOc+dD561//qqSkpKD1RNs+f1eoNUvRt8+bNm3STTfdpMzMTMXFxenuu+/Wiy++qKlTp0qKzn3ub81SdO3zjTfeqLFjx6q0tFRffvmlurq6tH79erW3t8vr9UqKvn0eyJql6NrncIX96+CvJBcuXJAkzZs3T6tXr5Yk3XLLLTp06JAqKio0Y8aMXsc6jiOXy3VZ5jmUBrrmhx56KDBmwoQJuuGGGzR58mS98847uvXWWy//xIfQ1q1bdf/99/f4jEwokbrP39XbmqNtnzdt2qQjR45o9+7dGjt2rPbv36+HH35Ybrdbd911V6/jInmfB7LmaNrn2NhYeTweLVmyRKmpqRoxYoTuuusuzZkzp9+xkbrPA11zNO1zuCL6lZFRo0YpJiZGN910U9D13NzcwDdLRo8era6uLn355ZdB93R0dCg9Pf2yzXWoDGTNodx6662KjY3t8entSHPgwAE1Nzdr6dKlQdejbZ+/rbc1hxLJ+/z1119r7dq12rhxo+bOnaubb75ZK1as0MKFC7VhwwZJ0bfPA1lzKJG8z5KUn5+vxsZGffXVV/J6vaqurtapU6eUnZ0tKfr2Wep/zaFE+j6HI6JjJC4uTrfddpuam5uDrn/88ceBP9yXn5+v2NhY1dTUBB73er16//33dfvtt1/W+Q6Fgaw5lA8++EDd3d1yu93DPcVhVVlZqfz8fE2cODHoerTt87f1tuZQInmfu7u71d3drWuuCf7X0ogRIwKvCEbbPg9kzaFE8j5/W0pKiq677jodO3ZM9fX1mjdvnqTo2+dv623NoUTLPg/EFf82zZkzZ/TJJ58Ezo8fP67GxkalpqZqzJgxevzxx7Vw4UJNnz5dd9xxh6qrq/X222+rtrZW0jcbv2TJEj322GMaOXKkUlNTVVJSop/85Cd9vuxr6VLX/Omnn+qVV15RUVGRRo0apQ8//FCPPfaYJk2apJ/97GdGq+pbf2uWJJ/PpzfeeEN/+tOfeoyPxn2W+l5zNO7zjBkz9PjjjysxMVFjx45VXV2dtm/fro0bN0qKzn3ub83RuM9vvPGGrrvuOo0ZM0bvvfeeHnnkEc2fPz/wgdVo3Of+1hyJ+zykLL/KMxD79u1zJPU4Fi9eHLinsrLSuf76652EhARn4sSJzq5du4J+xtdff+2sWLHCSU1NdRITE5177rnHaWlpucwrGbhLXXNLS4szffp0JzU11YmLi3N+9KMfOatWrXJOnTplsJqBGciaX3rpJScxMdH56quvQv6MaNznvtYcjfvs9XqdBx980MnIyHASEhKcnJwc509/+pNz4cKFwM+Itn3ub83RuM/PPfeck5mZ6cTGxjpjxoxxnnrqKcfv9wf9jGjb5/7WHIn7PJRcjuM4w5c6AAAAfYvoz4wAAIDIR4wAAABTxAgAADBFjAAAAFPECAAAMEWMAAAAU8QIAAAwRYwAAABTxAgAADBFjAAAAFPECAAAMEWMAAAAU/8PEBO8z5tksw0AAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Create a histogram\n", "plt.hist(x)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "image/png": "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foYNG6aOHTvWqXvkyJF2Z3rOjhcUFNjt36lTJ9166612Y3/84x9VW1urDz74oN5+33nnHQ0bNkyBgYGqrq62bSNHjpQkbdu2rd59gbaAS2BAGxUWFqbIyMg6497e3ioqKjrnvsnJyerYsaNWr16tjIwMubq6asiQIXr66acdHvPnysrKJDl++ikwMND2D/DZeX5+fnXmORqr75ipqamaMWOG4uPj9fjjj8vX11eurq6aO3euw8DQpUsXu9ceHh7nHP/xxx8d1vJL/fv3b9BN0FdffbWuuOIK7dmzR/fdd59deJGk9evX6/e//71+97vf6aGHHpK/v7/c3NyUnp6urKysZu/H0c/a399f0v+vkSPfffed3n77bbm7uzt8v7S0tN59gbaAAASYkJubm5KSkpSUlKTjx49r06ZNmjVrloYPH66ioiJddNFF9e7r4+MjSSouLlaPHj3s3vv2229tIeHsvO+++67OMUpKShyeBfr5GY2zVq9eraFDhyo9Pd1u/OTJk+du0knmzZunvXv3KiIiQo888ohGjx6tXr162d5fvXq1QkNDtXbtWrt+KyoqWqSe+n7+0v+vkSO+vr7q16+fnnzySYfvBwYGNk+BgJNwCQwwuc6dO+v222/X/fffr2PHjtm+2M/T01OSdObMGbv5119/vaSf/iH/uU8++UT79u3TDTfcIOmnMyGenp5au3at3byPPvqozmWac7FYLLZazvr000+Vm5vb4GO0lpycHKWkpGjOnDnKycmRt7e3JkyYoMrKStsci8UiDw+POjcqO3oKrDmcPHmyzo3ef//73+Xi4qIhQ4bUu9/o0aP12WefqXfv3oqMjKyzEYDQ1nEGCDChW265ReHh4YqMjFTXrl1VUFCgtLQ0hYSE6De/+Y0k2Z5aeu655zRp0iS5u7vr8ssv1+WXX64///nPev755+Xi4qKRI0fangILCgpSYmKipJ8u0SQlJSklJUWXXHKJxo4dq2+++UaPPfaYAgIC7O7TOZfRo0fr8ccf17x58xQTE6P9+/dr/vz5Cg0NbdXHsXfu3OnwixD79u0rLy8vFRcX684771RMTIzmzZsnFxcXrV27VkOGDNF//dd/KS0tzdbP+vXrlZCQoNtvv11FRUV6/PHHFRAQoC+//LLZ6/bx8dF9992nwsJCXXbZZcrOztayZct03333KTg4uN795s+f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LoEBAIC2rEnfA3TmzBn98MMPttcFBQVKS0vTxo0bm60wAACAltKkADRmzBitWrVKknT8+HENGjRIzz77rMaMGaP09PRmLRAAAKC5NSkA7dq1S9HR0ZKk119/Xf7+/iooKNCqVau0ePHiZi0QAACguTUpAP3www/q1KmTJGnjxo0aN26cXFxcdM0116igoKBZCwQAAGhuTQpAl156qd544w0VFRXp/fffV2xsrCTpyJEjfDkiAAC44DUpAD3yyCOaOXOmevbsqauvvlpRUVGSfjobNHDgwGYtEAAAoLk16Zugb7/9dl133XUqLi5W//79beM33HCDxo4d22zFAQAAtIQmBSBJ8vf3l7+/v93YoEGDfnVBAAAALa1JAej06dNasGCBNm/erCNHjqi2ttbu/a+//rpZigMAAGgJTQpAcXFx2rZtm+666y4FBATYfkUGAABAW9CkAPTf//3fevfdd3Xttdc2dz0AAAAtrklPgV1yySXq0qVLc9cCAADQKpoUgB5//HE98sgjdr8PDAAAoK1o0iWwZ599VgcOHJCfn5969uwpd3d3u/d37drVLMUBAAC0hCYFoNtuu62ZywAAAGg9TQpA8+bNa+46AAAAWk2T7gGSpOPHj2v58uVKTk7WsWPHJP106evw4cPNVhwAAEBLaNIZoE8//VQ33nijvL29dejQIU2dOlVdunTRhg0bVFBQoFWrVjV3nQAAAM2mSWeAkpKSNHnyZH355ZeyWq228ZEjR+qDDz5otuIAAABaQpMC0CeffKJ77723znj37t1VUlLyq4sCAABoSU0KQFarVeXl5XXG9+/fr65du/7qogAAAFpSkwLQmDFjNH/+fFVVVUmSLBaLCgsL9fDDD2v8+PHNWiAAAEBza1IAWrRokY4ePapu3brpzJkziomJ0aWXXqpOnTrpySefbO4aAQAAmlWTApCXl5c+/PBDrV+/XgsWLNADDzyg7Oxsbdu2TR07dmzUsZYuXarQ0FBZrVZFRERo+/bt55y/bds2RUREyGq1qlevXsrIyLB7f/369YqMjFTnzp3VsWNHDRgwQC+//HKjewQAAO1Xox+Dr62t1cqVK7V+/XodOnRIFotFoaGh8vf3l2EYslgsDT7W2rVrNX36dC1dulTXXnutXnzxRY0cOVL/+c9/FBwcXGf+wYMHNWrUKE2dOlWrV6/Wv/71LyUk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Sc8884zWrFmj9evXy2q11nvM5ORknThxwrYVFRU1pgUAANDGOO2LEH19feXq6lrnbM+RI0fqnOU5y9/f3+F8Nzc3+fj42I0vWrRITz31lDZt2qR+/fqdsxZPT892+5X4AACgLqedAfLw8FBERIRycnLsxnNycjR48GCH+0RFRdWZv3HjRkVGRsrd3d02tnDhQj3++ON67733FBkZ2fzFAwCANs2pl8CSkpK0fPlyZWVlad++fUpMTFRhYaHi4+Ml/XRpauLEibb58fHxKigoUFJSkvbt26esrCxlZmZq5syZtjnPPPOM5syZo6ysLPXs2VMlJSUqKSnRqVOnWr0/AABwYXLq7wKbMGGCysrKNH/+fBUXFys8PFzZ2dkKCQmRJBUXF9t9J1BoaKiys7OVmJioJUuWKDAwUIsXL9b48eNtc5YuXarKykrdfvvtdp81b948Pfroo63SFwAAuLA5/ZehJiQkKCEhweF7K1eurDMWExOjXbt21Xu8Q4cONVNlAACgvXL6U2AAAACtjQAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMhwAEAABMx+kBaOnSpQoNDZXValVERIS2b99+zvnbtm1TRESErFarevXqpYyMDLv3P//8c40fP149e/aUxWJRWlpaC1YPAADaIqcGoLVr12r69OmaPXu28vPzFR0drZEjR6qwsNDh/IMHD2rUqFGKjo5Wfn6+Zs2apWnTpmndunW2OT/88IN69eqlBQsWyN/fv7VaAQAAbYhTA1BqaqqmTJmiuLg4hYWFKS0tTUFBQUpPT3c4PyMjQ8HBwUpLS1NYWJji4uJ0zz33aNGiRbY5V111lRYuXKg77rhDnp6erdUKAABoQ5wWgCorK7Vz507FxsbajcfGxmrHjh0O98nNza0z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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Customize your histogram\n", "plt.hist(x, bins=8, edgecolor='black', color='red', alpha=0.7, density=True)\n", "plt.xlabel('x')\n", "plt.ylabel('Density')\n", "plt.title('Histogram Example')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAHFCAYAAAAaD0bAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA69klEQVR4nO3de1iUdf7/8ddwHDPBPHFQRLQtMNZDkIWJaBke1vLUrrsd1BJ3Ec2E7JeHzLQDpsZFpkIp6pqbubtqWfEt0dRspTYVzfqyVh7ADFIwRcs43r8/WufbxOABgWG8n4/rmutqPvO573m/+ai8uu977rEYhmEIAADARNycXQAAAEBDIwABAADTIQABAADTIQABAADTIQABAADTIQABAADTIQABAADTIQABAADTIQABAADTIQABLmblypWyWCzatWuXw9cHDx6sDh062I116NBBY8aMuaz32blzp55++mmdOnWqdoVeJZ5++mlZLJYaH0eOHHF2iXXCYrHo6aefdnYZQIPxcHYBAOrfhg0b5OPjc1nb7Ny5U7Nnz9aYMWPUvHnz+inMhbz33nvy9fWtNh4QEOCEagBcKQIQYALdu3d3dgmXrby8XBaLRR4ejeOfqYiICLVq1crZZQCoI5wCA0zg16fAqqqq9Oyzz+rGG29UkyZN1Lx5c3Xp0kUvvfSSpJ9P+zz++OOSpJCQENvpnm3bttm2nzdvnkJDQ+Xt7a02bdpo1KhR+uabb+ze1zAMPf/88woODpbValVkZKSysrLUp08f9enTxzZv27Ztslgseu211/TYY4+pbdu28vb21tdff60TJ04oISFBnTt31rXXXqs2bdrojjvu0I4dO+ze68iRI7JYLJo/f75eeOEFdejQQU2aNFGfPn305Zdfqry8XFOnTlVgYKB8fX01bNgwHT9+vM5+xnPnzpWbm5vefvttu/ExY8bommuu0f79+yVJP/30kx577DF169ZNvr6+atGihaKiovTWW29V26fFYtHEiRO1YsUK21pFRkbq448/lmEYmj9/vkJCQnTttdfqjjvu0Ndff223fZ8+fRQeHq4dO3botttuU5MmTdS2bVvNnDlTlZWVF+2psLBQf/nLX9SuXTt5eXkpJCREs2fPVkVFxRX8pIDGoXH8rxWAy1ZZWenwF5FhGBfddt68eXr66af15JNPqnfv3iovL9d//vMf2/U+cXFxOnnypF5++WWtX7/edpqnc+fOkqTx48fr1Vdf1cSJEzV48GAdOXJEM2fO1LZt27Rnzx7bkZIZM2YoOTlZf/7znzV8+HAdPXpUcXFxKi8v1w033FCtrmnTpikqKkrp6elyc3NTmzZtdOLECUnSrFmz5O/vr7Nnz2rDhg3q06ePtmzZYhekJGnx4sXq0qWLFi9erFOnTumxxx7T3XffrVtvvVWenp5avny58vLyNGXKFMXFxWnjxo21/nlbLBa5u7tLkp544gnt2LFDo0ePVk5OjoKDg7VixQr99a9/1bJly/Tb3/5WklRaWqqTJ09qypQpatu2rcrKyrR582YNHz5cK1as0KhRo+ze45133lFOTo7mzp0ri8WiJ554Qr/73e80evRoHTp0SIsWLdLp06eVlJSkESNGaO/evbJYLLbtCwsL9cc//lFTp07VnDlz9O677+rZZ5/V999/r0WLFtXYb2FhoXr06CE3Nzc99dRT6tSpk7Kzs/Xss8/qyJEjWrFixSX93IBGywDgUlasWGFIuuAjODjYbpvg4GBj9OjRtueDBw82unXrdsH3mT9/viHJOHz4sN14bm6uIclISEiwG//kk08MScb06dMNwzCMkydPGt7e3sbIkSPt5mVnZxuSjJiYGNvY1q1bDUlG7969L9p/RUWFUV5ebtx5553GsGHDbOOHDx82JBldu3Y1KisrbeOpqamGJOOee+6x28/kyZMNScbp06cv+H6zZs2q8efcqVMnu7lFRUVGu3btjB49ehh79uwxrrnmGuOBBx64pH7Gjh1rdO/e3e41SYa/v79x9uxZ29ibb75pSDK6detmVFVVVevzs88+s43FxMQYkoy33nrLbr/jxo0z3NzcjLy8PLv3mjVrlu35X/7yF+Paa6+1m2MYhrFgwQJDkvHFF19csC+gseMUGOCiVq1apU8//bTao1evXhfdtkePHtq3b58SEhL0/vvvq6Sk5JLfd+vWrZJU7VNlPXr0UFhYmLZs2SJJ+vjjj1VaWqo//OEPdvNuu+22ap9SO2/EiBEOx9PT03XzzTfLarXKw8NDnp6e2rJli3Jzc6vNHTRokNzc/u+ftrCwMEnS7373O7t558fz8/Nr6NTe5s2bq/2s33zzTbs5LVu21Nq1a7Vnzx717NlT7du3V3p6erV9/eMf/9Dtt9+ua6+91tZPRkaGw3769u2rpk2bVqt74MCBdkd6zo/n5eXZbd+sWTPdc889dmP33Xefqqqq9OGHH9bY7zvvvKO+ffsqMDBQFRUVtsfAgQMlSdu3b69xW8AVcAoMcFFhYWGKjIysNu7r66ujR49ecNtp06apadOmWr16tdLT0+Xu7q7evXvrhRdecLjPXyouLpbk+NNPgYGBtl/A5+f5+flVm+dorKZ9pqSk6LHHHlN8fLyeeeYZtWrVSu7u7po5c6bDwNCiRQu7515eXhcc/+mnnxzW8mtdu3a9pIugb731Vt10003at2+fxo8fbxdeJGn9+vX6wx/+oN///vd6/PHH5e/vLw8PD6WlpWn58uV13o+jn7W/v7+k/1sjR7777ju9/fbb8vT0dPh6UVFRjdsCroAABJiQh4eHkpKSlJSUpFOnTmnz5s2aPn26+vfvr6NHj+qaa66pcduWLVtKkgoKCtSuXTu717799ltbSDg/77vvvqu2j8LCQodHgX55ROO81atXq0+fPkpLS7MbP3PmzIWbdJJZs2Zp//79ioiI0FNPPaXBgwerY8eOttdXr16tkJAQrV271q7f0tLSeqmnpp+/9H9r5EirVq3UpUsXPffccw5fDwwMrJsCASfhFBhgcs2bN9e9996rCRMm6OTJk7Yb+3l7e0uSzp07Zzf/jjvukPTzL/Jf+vTTT5Wbm6s777xT0s9HQry9vbV27Vq7eR9//HG10zQXYrFYbLWc99lnnyk7O/uS99FQsrKylJycrCeffFJZWVny9fXVyJEjVVZWZptjsVjk5eVV7UJlR58CqwtnzpypdqH366+/Ljc3N/Xu3bvG7QYPHqzPP/9cnTp1UmRkZLUHAQiujiNAgAndfffdCg8PV2RkpFq3bq28vDylpqYqODhYv/nNbyTJ9qmll156SaNHj5anp6duvPFG3Xjjjfrzn/+sl19+WW5ubho4cKDtU2BBQUFKTEyU9PMpmqSkJCUnJ+u6667TsGHD9M0332j27NkKCAiwu07nQgYPHqxnnnlGs2bNUkxMjA4cOKA5c+YoJCSkQT+OvXv3boc3QuzcubN8fHxUUFCgBx54QDExMZo1a5bc3Ny0du1a9e7dW//v//0/paam2vpZv369EhISdO+99+ro0aN65plnFBAQoK+++qrO627ZsqXGjx+v/Px83XDDDcrMzNTSpUs1fvx4tW/fvsbt5syZo6ysLPXs2VOTJk3SjTfeqJ9++klHjhxRZmam0tPTqx0BBFwJAQgwob59+2rdunVatmyZSkpK5O/vr7vuukszZ860XfPRp08fTZs2TX/961+1dOlSVVVVaevWrbbTUZ06dVJGRoYWL14sX19fDRgwQMnJyXanVZ577jk1bdpU6enpWrFihUJDQ5WWlqYZM2Zc8t2lZ8yYoR9//FEZGRmaN2+eOnfurPT0dG3YsMF2X6KGMGDAAIfjWVlZ6tu3r/70pz/JYrHYjq5IP1/w/fzzz+vxxx9Xnz59NHToUD300EM6fvy40tPTtXz5cnXs2FFTp061hcO65u/vr8WLF2vKlCnav3+/WrRooenTp1/0vQICArRr1y4988wzmj9/vr755hs1a9ZMISEhGjBggK677ro6rxVoSBbDuISbhgBAHTl8+LBCQ0M1a9YsTZ8+3dnlXNX69OmjoqIiff75584uBWh0OAIEoN7s27dPa9asUc+ePeXj46MDBw5o3rx58vHx0dixY51dHgATIwABqDdNmzbVrl27lJGRoVOnTsnX11d9+vTRc889V+NH4QGgIXAKDAAAmA4fgwcAAKZDAAIAAKZDAAIAAKbDRdAOVFVV6dtvv1WzZs0c3pofAAA0PoZh6MyZMwoMDLzozVYJQA58++23CgoKcnYZAACgFo4ePXrRO5UTgBxo1qyZpJ9/gD4+Pk6uBgAAXIqSkhIFBQXZfo9fCAHIgfOnvXx8fAhAAAC4mEu5fIWLoAEAgOkQgAAAgOkQgAAAgOkQgAAAgOkQgAAAgOkQgAAAgOkQgAAAgOkQgAAAgOkQgAAAgOkQgAAAgOk4PQAtWbJEISEhslqtioiI0I4dOy44f/v27YqIiJDValXHjh2Vnp5ebc6pU6c0YcIEBQQEyGq1KiwsTJmZmfXVAgAAcDFODUBr167V5MmTNWPGDOXk5Cg6OloDBw5Ufn6+w/mHDx/WoEGDFB0drZycHE2fPl2TJk3SunXrbHPKysp011136ciRI/rnP/+pAwcOaOnSpWrbtm1DtQUAABo5i2EYhrPe/NZbb9XNN9+stLQ021hYWJiGDh2q5OTkavOfeOIJbdy4Ubm5ubax+Ph47du3T9nZ2ZKk9PR0zZ8/X//5z3/k6elZq7pKSkrk6+ur06dP82WoAAC4iMv5/e20I0BlZWXavXu3YmNj7cZjY2O1c+dOh9tkZ2dXm9+/f3/t2rVL5eXlkqSNGzcqKipKEyZMkJ+fn8LDw/X888+rsrKyfhoBAAAux8NZb1xUVKTKykr5+fnZjfv5+amwsNDhNoWFhQ7nV1RUqKioSAEBATp06JA++OAD3X///crMzNRXX32lCRMmqKKiQk899ZTD/ZaWlqq0tNT2vKSk5Aq7M7cTJ05c9T9DHx8ftW7d2tllAABqyWkB6DyLxWL33DCMamMXm//L8aqqKrVp00avvvqq3N3dFRERoW+//Vbz58+vMQAlJydr9uzZV9IG/uvEiRMaf999Ki0udnYp9cq7ZUulvf46IQgAXJTTAlCrVq3k7u5e7WjP8ePHqx3lOc/f39/hfA8PD7Vs2VKSFBAQIE9PT7m7u9vmhIWFqbCwUGVlZfLy8qq232nTpikpKcn2vKSkREFBQbXuzcxKSkpUWlysx7y9FdSkibPLqRdHz53Ti8XFKikpIQABgItyWgDy8vJSRESEsrKyNGzYMNt4VlaWhgwZ4nCbqKgovf3223ZjmzZtUmRkpO2C59tvv12vv/66qqqq5Ob28yVOX375pQICAhyGH0ny9vaWt7d3XbSF/wpq0kSdmjZ1dhn15xenTAEArsepH4NPSkrSsmXLtHz5cuXm5ioxMVH5+fmKj4+X9PORmVGjRtnmx8fHKy8vT0lJScrNzdXy5cuVkZGhKVOm2OaMHz9excXFevTRR/Xll1/q3Xff1fPPP68JEyY0eH8AAKBxcuo1QCNHjlRxcbHmzJmjgoIChYeHKzMzU8HBwZKkgoICu3sChYSEKDMzU4mJiVq8eLECAwO1cOFCjRgxwjYnKChImzZtUmJiorp06aK2bdvq0Ucf1RNPPNHg/QEAgMbJqfcBaqy4D1DtHTx4UJN//3ulNm9+1Z4CO/jDD5p86pRS//EPderUydnlAAD+yyXuAwQAAOAsBCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6BCAAAGA6Tg9AS5YsUUhIiKxWqyIiIrRjx44Lzt++fbsiIiJktVrVsWNHpaen272+cuVKWSyWao+ffvqpPtsAAAAuxKkBaO3atZo8ebJmzJihnJwcRUdHa+DAgcrPz3c4//Dhwxo0aJCio6OVk5Oj6dOna9KkSVq3bp3dPB8fHxUUFNg9rFZrQ7QEAABcgIcz3zwlJUVjx45VXFycJCk1NVXvv/++0tLSlJycXG1+enq62rdvr9TUVElSWFiYdu3apQULFmjEiBG2eRaLRf7+/g3SAwAAcD1OOwJUVlam3bt3KzY21m48NjZWO3fudLhNdnZ2tfn9+/fXrl27VF5ebhs7e/asgoOD1a5dOw0ePFg5OTkXrKW0tFQlJSV2DwAAcPVyWgAqKipSZWWl/Pz87Mb9/PxUWFjocJvCwkKH8ysqKlRUVCRJCg0N1cqVK7Vx40atWbNGVqtVt99+u7766qsaa0lOTpavr6/tERQUdIXdAQCAxszpF0FbLBa754ZhVBu72Pxfjt9222164IEH1LVrV0VHR+vvf/+7brjhBr388ss17nPatGk6ffq07XH06NHatgMAAFyA064BatWqldzd3asd7Tl+/Hi1ozzn+fv7O5zv4eGhli1bOtzGzc1Nt9xyywWPAHl7e8vb2/syOwAAAK7KaUeAvLy8FBERoaysLLvxrKws9ezZ0+E2UVFR1eZv2rRJkZGR8vT0dLiNYRjau3evAgIC6qZwAADg8px6CiwpKUnLli3T8uXLlZubq8TEROXn5ys+Pl7Sz6emRo0aZZsfHx+vvLw8JSUlKTc3V8uXL1dGRoamTJlimzN79my9//77OnTokPbu3auxY8dq7969tn0CAAA49WPwI0eOVHFxsebMmaOCggKFh4crMzNTwcHBkqSCggK7ewKFhIQoMzNTiYmJWrx4sQIDA7Vw4UK7j8CfOnVKf/7zn1VYWChfX191795dH374oXr06NHg/QEAgMbJYpy/ihg2JSUl8vX11enTp+Xj4+PsclzKwYMHNfn3v1dq8+bq1LSps8upFwd/+EGTT51S6j/+oU6dOjm7HADAf13O72+nfwoMAACgoRGAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6RCAAACA6Tg9AC1ZskQhISGyWq2KiIjQjh07Ljh/+/btioiIkNVqVceOHZWenl7j3DfeeEMWi0VDhw6t46oBAIArc2oAWrt2rSZPnqwZM2YoJydH0dHRGjhwoPLz8x3OP3z4sAYNGqTo6Gjl5ORo+vTpmjRpktatW1dtbl5enqZMmaLo6Oj6bgMAALgYpwaglJQUjR07VnFxcQoLC1NqaqqCgoKUlpbmcH56errat2+v1NRUhYWFKS4uTg8//LAWLFhgN6+yslL333+/Zs+erY4dOzZEKwAAwIV4OOuNy8rKtHv3bk2dOtVuPDY2Vjt37nS4TXZ2tmJjY+3G+vfvr4yMDJWXl8vT01OSNGfOHLVu3Vpjx4696Ck1SSotLVVpaanteUlJyeW2A1xVTpw4cVX/PfDx8VHr1q2dXQYAJ3JaACoqKlJlZaX8/Pzsxv38/FRYWOhwm8LCQofzKyoqVFRUpICAAP3rX/9SRkaG9u7de8m1JCcna/bs2ZfdA3A1OnHihMbfd59Ki4udXUq98W7ZUmmvv04IAkzMaQHoPIvFYvfcMIxqYxebf378zJkzeuCBB7R06VK1atXqkmuYNm2akpKSbM9LSkoUFBR0ydsDV5OSkhKVFhfrMW9vBTVp4uxy6tzRc+f0YnGxSkpKCECAiTktALVq1Uru7u7VjvYcP3682lGe8/z9/R3O9/DwUMuWLfXFF1/oyJEjuvvuu22vV1VVSZI8PDx04MABderUqdp+vb295e3tfaUtAVeVoCZN1KlpU2eXUT9+ccobgDk57SJoLy8vRUREKCsry248KytLPXv2dLhNVFRUtfmbNm1SZGSkPD09FRoaqv3792vv3r22xz333KO+fftq7969HNUBAACSnHwKLCkpSQ8++KAiIyMVFRWlV199Vfn5+YqPj5f086mpY8eOadWqVZKk+Ph4LVq0SElJSRo3bpyys7OVkZGhNWvWSJKsVqvCw8Pt3qN58+aSVG0cAACYl1MD0MiRI1VcXKw5c+aooKBA4eHhyszMVHBwsCSpoKDA7p5AISEhyszMVGJiohYvXqzAwEAtXLhQI0aMcFYLAADABTn9IuiEhAQlJCQ4fG3lypXVxmJiYrRnz55L3r+jfQAAAHNz+ldhAAAANDQCEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMJ1aBaDDhw/XdR0AAAANplYB6Prrr1ffvn21evVq/fTTT3VdEwAAQL2qVQDat2+funfvrscee0z+/v76y1/+on//+991XRsAAEC9qFUACg8PV0pKio4dO6YVK1aosLBQvXr10k033aSUlBSdOHGirusEAACoM1d0EbSHh4eGDRumv//973rhhRd08OBBTZkyRe3atdOoUaNUUFBQV3UCAADUmSsKQLt27VJCQoICAgKUkpKiKVOm6ODBg/rggw907NgxDRkypK7qBAAAqDMetdkoJSVFK1as0IEDBzRo0CCtWrVKgwYNkpvbz3kqJCREr7zyikJDQ+u0WAAAgLpQqwCUlpamhx9+WA899JD8/f0dzmnfvr0yMjKuqDgAAID6UKsAlJWVpfbt29uO+JxnGIaOHj2q9u3by8vLS6NHj66TIgEAAOpSra4B6tSpk4qKiqqNnzx5UiEhIVdcFAAAQH2qVQAyDMPh+NmzZ2W1Wq+oIAAAgPp2WafAkpKSJEkWi0VPPfWUrrnmGttrlZWV+uSTT9StW7c6LRAAAKCuXVYAysnJkfTzEaD9+/fLy8vL9pqXl5e6du2qKVOm1G2FAAAAdeyyAtDWrVslSQ899JBeeukl+fj41EtRAAAA9alWnwJbsWJFXdcBAADQYC45AA0fPlwrV66Uj4+Phg8ffsG569evv+LCAAAA6sslByBfX19ZLBbbfwMAALiqSw5AvzztxSkwAADgymp1H6Bz587pxx9/tD3Py8tTamqqNm3aVGeFAQAA1JdaBaAhQ4Zo1apVkqRTp06pR48eevHFFzVkyBClpaXVaYEAAAB1rVYBaM+ePYqOjpYk/fOf/5S/v7/y8vK0atUqLVy4sE4LBAAAqGu1CkA//vijmjVrJknatGmThg8fLjc3N912223Ky8ur0wIBAADqWq0C0PXXX68333xTR48e1fvvv6/Y2FhJ0vHjx7k5IgAAaPRqFYCeeuopTZkyRR06dNCtt96qqKgoST8fDerevXudFggAAFDXanUn6HvvvVe9evVSQUGBunbtahu/8847NWzYsDorDgAAoD7UKgBJkr+/v/z9/e3GevToccUFAQAA1LdaBaAffvhBc+fO1ZYtW3T8+HFVVVXZvX7o0KE6KQ4AAKA+1OoaoLi4OGVkZCg6OloTJ07Uo48+ave4HEuWLFFISIisVqsiIiK0Y8eOC87fvn27IiIiZLVa1bFjR6Wnp9u9vn79ekVGRqp58+Zq2rSpunXrptdee+2yewQAAFevWh0B+p//+R+9++67uv3226/ozdeuXavJkydryZIluv322/XKK69o4MCB+t///V+1b9++2vzDhw9r0KBBGjdunFavXq1//etfSkhIUOvWrTVixAhJUosWLTRjxgyFhobKy8tL77zzjh566CG1adNG/fv3v6J6AQDA1aFWR4Cuu+46tWjR4orfPCUlRWPHjlVcXJzCwsKUmpqqoKCgGu8mnZ6ervbt2ys1NVVhYWGKi4vTww8/rAULFtjm9OnTR8OGDVNYWJg6deqkRx99VF26dNFHH310xfUCAICrQ60C0DPPPKOnnnrK7vvALldZWZl2795tu4fQebGxsdq5c6fDbbKzs6vN79+/v3bt2qXy8vJq8w3D0JYtW3TgwAH17t271rUCAICrS61Ogb344os6ePCg/Pz81KFDB3l6etq9vmfPnovuo6ioSJWVlfLz87Mb9/PzU2FhocNtCgsLHc6vqKhQUVGRAgICJEmnT59W27ZtVVpaKnd3dy1ZskR33XVXjbWUlpaqtLTU9rykpOSi9QMAANdVqwA0dOjQOivAYrHYPTcMo9rYxeb/erxZs2bau3evzp49qy1btigpKUkdO3ZUnz59HO4zOTlZs2fPrmUHAADA1dQqAM2aNeuK37hVq1Zyd3ev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WqqSkhK7BwAAuHo5LQAVFRWpsrJSfn5+duN+fn4qLCx0uE1hYaHD+RUVFSoqKqp1LcnJyfL19bU9goKCar0vAADQ+Dn9ImiLxWL33DCMamMXm+9o/HJMmzZNp0+ftj2OHj1a630BAIDGz8NZb9yqVSu5u7tXO9pz/Pjxakd5zvP393c438PDQy1btqx1Ld7e3lwvBACAiTjtCJCXl5ciIiKUlZVlN56VlaWePXs63CYqKqra/E2bNikyMlKenp71VisAALi6OPUUWFJSkpYtW6bly5crNzdXiYmJys/PV3x8vKSfT02NGjXKNj8+Pl55eXlKSkpSbm6uli9froyMDE2ZMsU2p6ysTHv37tXevXtVVlamY8eOae/evfr6668bvD8AANA4Oe0UmCSNHDlSxcXFmjNnjgoKChQeHq7MzEwFBwdLkgoKCuzuCRQSEqLMzEwlJiZq8eLFCgwM1MKFCzVixAjbnG+//Vbdu3e3PV+wYIEWLFigmJgYbdu2rcF6AwAAjZdTA5AkJSQkKCEhweFrK1eurDYWExOjPXv21Li/Dh062C6MBgAAcMTpnwIDAABoaAQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOgQgAABgOk4PQEuWLFFISIisVqsiIiK0Y8eOC87fvn27IiIiZLVa1bFjR6Wnp1ebs27dOnXu3Fne3t7q3LmzNmzYUF/lAwAAF+TUALR27VpNnjxZM2bMUE5OjqKjozVw4EDl5+c7nH/48GENGjRI0dHRysnJ0fTp0zVp0iStW7fONic7O1sjR47Ugw8+qH379unBBx/UH/7wB33yyScN1RYAAGjknBqAUlJSNHbsWMXFxSksLEypqakKCgpSWlqaw/np6elq3769UlNTFRYWpri4OD388MNasGCBbU5qaqruuusuTZs2TaGhoZo2bZruvPNOpaamNlBXAACgsXNaACorK9Pu3bsVGxtrNx4bG6udO3c63CY7O7va/P79+2vXrl0qLy+/4Jya9gkAAMzHw1lvXFRUpMrKSvn5+dmN+/n5qbCw0OE2hYWFDudXVFSoqKhIAQEBNc6paZ+SVFpaqtLSUtvz06dPS5JKSkouq6dLcebMGZVXVuo/Z87oTEVFne/f2Q7+8IMqDUNf/vCDKj09nV1OvTh27px+LC3V//7v/+rMmTPOLqfOHT16VD+VlvJn1IVd7T3Sn+s7du6cyisrdebMmTr9XXt+X4ZhXHSu0wLQeRaLxe65YRjVxi42/9fjl7vP5ORkzZ49u9p4UFBQzYVfoffrbc+Nw7379zu7hHr3wT33OLuEerXZ2QXUMzP8Gb3ae6Q/1/d+9+71st8zZ87I19f3gnOcFoBatWold3f3akdmjh8/Xu0Iznn+/v4O53t4eKhly5YXnFPTPiVp2rRpSkpKsj2vqqrSyZMn1bJlywsGp9ooKSlRUFCQjh49Kh8fnzrdd2NwtfcnXf090p/ru9p7pD/XV189GoahM2fOKDAw8KJznRaAvLy8FBERoaysLA0bNsw2npWVpSFDhjjcJioqSm+//bbd2KZNmxQZGSnP/x4mjIqKUlZWlhITE+3m9OzZs8ZavL295e3tbTfWvHnzy23psvj4+Fy1f7Clq78/6ervkf5c39XeI/25vvro8WJHfs5z6imwpKQkPfjgg4qMjFRUVJReffVV5efnKz4+XtLPR2aOHTumVatWSZLi4+O1aNEiJSUlady4ccrOzlZGRobWrFlj2+ejjz6q3r1764UXXtCQIUP01ltvafPmzfroo4+c0iMAAGh8nBqARo4cqeLiYs2ZM0cFBQUKDw9XZmamgoODJUkFBQV29wQKCQlRZmamEhMTtXjxYgUGBmrhwoUaMWKEbU7Pnj31xhtv6Mknn9TMmTPVqVMnrV27VrfeemuD9wcAABonp18EnZCQoISEBIevrVy5stpYTEyM9uzZc8F93nvvvbr33nvrorw65+3trVmzZlU75Xa1uNr7k67+HunP9V3tPdKf62sMPVqMS/msGAAAwFXE6d8FBgAA0NAIQAAAwHQIQAAAwHQIQAAAwHQIQHXgww8/1N13363AwEBZLBa9+eab1ebk5ubqnnvuka+vr5o1a6bbbrvN7iP+paWleuSRR9SqVSs1bdpU99xzj7755psG7KJmddFfnz59ZLFY7B5//OMfG7CLC7tYj7+u/fxj/vz5tjmuvIaX0p+rr+HZs2c1ceJEtWvXTk2aNFFYWJjS0tLs5rjyGl5Kf415DS/W33fffacxY8YoMDBQ11xzjQYMGKCvvvrKbk5jXj+pbnpsrGuYnJysW265Rc2aNVObNm00dOhQHThwwG6OYRh6+umnFRgYqCZNmqhPnz764osv7OY05BoSgOrADz/8oK5du2rRokUOXz948KB69eql0NBQbdu2Tfv27dPMmTNltVptcyZPnqwNGzbojTfe0EcffaSzZ89q8ODBqqysbKg2alQX/UnSuHHjVFBQYHu88sorDVH+JblYj7+su6CgQMuXL5fFYrG7B5Urr+Gl9Ce59homJibqvffe0+rVq5Wbm6vExEQ98sgjeuutt2xzXHkNL6U/qfGu4YX6MwxDQ4cO1aFDh/TWW28pJydHwcHB6tevn3744QfbvMa8flLd9Cg1zjXcvn27JkyYoI8//lhZWVmqqKhQbGysXe3z5s1TSkqKFi1apE8//VT+/v6666677L5UukHX0ECdkmRs2LDBbmzkyJHGAw88UOM2p06dMjw9PY033njDNnbs2DHDzc3NeO+99+qr1FqpTX+GYRgxMTHGo48+Wn+F1SFHPf7akCFDjDvuuMP23NXX8Nd+3Z9huP4a3nTTTcacOXPsxm6++WbjySefNAzD9dfwYv0Zhuus4a/7O3DggCHJ+Pzzz21jFRUVRosWLYylS5cahuFa62cYtevRMFxnDY8fP25IMrZv324YhmFUVVUZ/v7+xty5c21zfvrpJ8PX19dIT083DKPh15AjQPWsqqpK7777rm644Qb1799fbdq00a233mp36HP37t0qLy9XbGysbSwwMFDh4eHauXOnE6q+dJfS33l/+9vf1KpVK910002aMmWKXep3Jd99953effddjR071jbmymv4a476O8+V17BXr17auHGjjh07JsMwtHXrVn355Zfq37+/JNdfw4v1d54rrmFpaakk2R1Vdnd3l5eXl+1rjlx9/S6lx/NcYQ1Pnz4tSWrRooUk6fDhwyosLLRbH29vb8XExNjWp6HXkABUz44fP66zZ89q7ty5GjBggDZt2qRhw4Zp+PDh2r59uySpsLBQXl5euu666+y29fPzq/bN9o3NpfQnSffff7/WrFmjbdu2aebMmVq3bp2GDx/uxMpr769//auaNWtmV78rr+GvOepPcv01XLhwoTp37qx27drJy8tLAwYM0JIlS9SrVy9Jrr+GF+tPct01DA0NVXBwsKZNm6bvv/9eZWVlmjt3rgoLC1VQUCDJ9dfvUnqUXGMNDcNQUlKSevXqpfDwcEmyrYGfn5/d3F+uT0OvodO/CuNqV1VVJUkaMmSI7Rvqu3Xrpp07dyo9PV0xMTE1bmsYhiwWS4PUWVuX2t+4ceNs24SHh+s3v/mNIiMjtWfPHt18880NX/gVWL58ue6///5q1zg54gpr+Gs19efqa7hw4UJ9/PHH2rhxo4KDg/Xhhx8qISFBAQEB6tevX43bucoaXkp/rrqGnp6eWrduncaOHasWLVrI3d1d/fr108CBAy+6raus36X26AprOHHiRH322WcOv4T812txKetTX2vIEaB61qpVK3l4eKhz585242FhYbZPSfn7+6usrEzff/+93Zzjx49XS8uNzaX058jNN98sT0/Pap9waOx27NihAwcOKC4uzm7cldfwl2rqzxFXWsNz585p+vTpSklJ0d13360uXbpo4sSJGjlypBYsWCDJtdfwUvpzxJXWMCIiQnv37tWpU6dUUFCg9957T8XFxQoJCZHk2ut33sV6dKSxreEjjzyijRs3auvWrWrXrp1t3N/fX5KqHcn55fo09BoSgOqZl5eXbrnllmofB/zyyy9t33ofEREhT09PZWVl2V4vKCjQ559/rp49ezZovZfrUvpz5IsvvlB5ebkCAgLqu8Q6lZGRoYiICHXt2tVu3JXX8Jdq6s8RV1rD8vJylZeXy83N/p88d3d321FMV17DS+nPEVdaw/N8fX3VunVrffXVV9q1a5eGDBkiybXX79dq6tGRxrKGhmFo4sSJWr9+vT744INqoS0kJET+/v5261NWVqbt27fb1qfB17DOL6s2oTNnzhg5OTlGTk6OIclISUkxcnJyjLy8PMMwDGP9+vWGp6en8eqrrxpfffWV8fLLLxvu7u7Gjh07bPuIj4832rVrZ2zevNnYs2ePcccddxhdu3Y1KioqnNWWzZX29/XXXxuzZ882Pv30U+Pw4cPGu+++a4SGhhrdu3dvFP0ZxsV7NAzDOH36tHHNNdcYaWlpDvfhymtoGBfu72pYw5iYGOOmm24ytm7dahw6dMhYsWKFYbVajSVLltj24cpreLH+GvsaXqy/v//978bWrVuNgwcPGm+++aYRHBxsDB8+3G4fjXn9DOPKe2zMazh+/HjD19fX2LZtm1FQUGB7/Pjjj7Y5c+fONXx9fY3169cb+/fvN/70pz8ZAQEBRklJiW1OQ64hAagObN261ZBU7TF69GjbnIyMDOP66683rFar0bVrV+PNN9+028e5c+eMiRMnGi1atDCaNGliDB482MjPz2/gThy70v7y8/ON3r17Gy1atDC8vLyMTp06GZMmTTKKi4ud0I1jl9LjK6+8YjRp0sQ4deqUw324+hpeqL+rYQ0LCgqMMWPGGIGBgYbVajVuvPFG48UXXzSqqqps+3DlNbxYf419DS/W30svvWS0a9fO8PT0NNq3b288+eSTRmlpqd0+GvP6GcaV99iY19BRX5KMFStW2OZUVVUZs2bNMvz9/Q1vb2+jd+/exv79++3205BraPlv4QAAAKbBNUAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAATOHEiRPy9/fX888/bxv75JNP5OXlpU2bNjmxMgDOwHeBATCNzMxMDR06VDt37lRoaKi6d++u3/3ud0pNTXV2aQAaGAEIgKlMmDBBmzdv1i233KJ9+/bp008/ldVqdXZZABoYAQiAqZw7d07h4eE6evSodu3apS5duji7JABOwDVAAEzl0KFD+vbbb1VVVaW8vDxnlwPASTgCBMA0ysrK1KNHD3Xr1k2hoaFKSUnR/v375efn5+zSADQwAhAA03j88cf1z3/+U/v27dO1116rvn37qlmzZnrnnXecXRqABsYpMACmsG3bNqWmpuq1116Tj4+P3Nzc9Nprr+mjjz5SWlqas8sD0MA4AgQAAEyHI0AAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0CEAAAMB0/j975IXr7UFZiQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# specifying bin-edges:\n", "plt.hist(x, bins=[160,165,170,175,180,185,190,195,200], edgecolor='black', color='red', alpha=0.7, density=True)\n", "plt.xlabel('x')\n", "plt.ylabel('Density')\n", "plt.title('Histogram Example')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Histograms are important - they show how the data is **distributed**
\n", "\n", "Next week we will talk more about theoretical distributions.
\n", "\n", "Histograms serve as *empirical distributions*
\n", "\n", "Based on the histogram above, how would you guess the height-distribution in the *population* looks like?
" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAksAAAHFCAYAAADi7703AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAABBXklEQVR4nO3de1iUdf7/8dcAAmZCngJJRLI8YmaQCoVaGUZZWlpUm4ddrTVqC8l+Gx7y0IEyY9FSSEPNLZU2tdqVTbFV00utRDRr/ZbrCbIhBFM0dUC4f3/4db7NznBzEB3A5+O67utqPvO+P4f5iL66Z+bGYhiGIQAAALjk4e4JAAAA1GeEJQAAABOEJQAAABOEJQAAABOEJQAAABOEJQAAABOEJQAAABOEJQAAABOEJQAAABOEJaARWrx4sSwWi7Zv3+7y+cGDB6tDhw4ObR06dNDo0aNrNM6WLVs0bdo0HTt2rHYTbSSmTZsmi8VS6XHw4EF3T7FOWCwWTZs2zd3TAC45L3dPAED9sGrVKvn5+dXonC1btmj69OkaPXq0rrrqqoszsQbks88+k7+/v1N727Zt3TAbAHWFsARAktSrVy93T6HGysrKZLFY5OVVP/4qCw8PV+vWrd09DQB1jLfhAEhyfhuuoqJCL7/8sjp37qymTZvqqquu0g033KDZs2dLOvfW0/PPPy9JCg0Ntb/ltGHDBvv5M2fOVJcuXeTj46Orr75aI0eO1I8//ugwrmEYevXVVxUSEiJfX19FREQoOztbAwYM0IABA+x1GzZskMVi0V//+lc999xzuuaaa+Tj46P//Oc/OnLkiOLj49WtWzddeeWVuvrqq3X77bdr06ZNDmMdPHhQFotFb7zxhl5//XV16NBBTZs21YABA/TDDz+orKxML7zwgoKCguTv76/7779fhYWFdfYav/baa/Lw8NDf//53h/bRo0friiuu0O7duyVJZ86c0XPPPacbb7xR/v7+atmypSIjI/XJJ5849WmxWPT0009r0aJF9r2KiIjQtm3bZBiG3njjDYWGhurKK6/U7bffrv/85z8O5w8YMEBhYWHatGmT+vbtq6ZNm+qaa67RlClTVF5eXuWaCgoK9Mc//lHt2rWTt7e3QkNDNX36dJ09e/YCXimgfqkf/zsG4KIoLy93+Y+WYRhVnjtz5kxNmzZNkydPVr9+/VRWVqb/+Z//sX8+aezYsTp69KjeeustrVy50v5WU7du3SRJTz75pObPn6+nn35agwcP1sGDBzVlyhRt2LBBO3bssF+BmTRpkpKTk/XEE0/ogQceUH5+vsaOHauysjJ16tTJaV5JSUmKjIxUenq6PDw8dPXVV+vIkSOSpKlTpyowMFAnT57UqlWrNGDAAH3++ecOoUuS5s6dqxtuuEFz587VsWPH9Nxzz+nee+9Vnz591KRJEy1cuFCHDh3ShAkTNHbsWH366ae1fr0tFos8PT0lSX/+85+1adMmjRo1Srm5uQoJCdGiRYv03nvv6d1331WPHj0kSTabTUePHtWECRN0zTXXqLS0VOvWrdMDDzygRYsWaeTIkQ5j/OMf/1Bubq5ee+01WSwW/fnPf9Y999yjUaNGaf/+/Xr77bd1/PhxJSYmatiwYdq5c6csFov9/IKCAj388MN64YUXNGPGDK1evVovv/yyfvnlF7399tuVrregoEC9e/eWh4eHXnzxRXXs2FFbt27Vyy+/rIMHD2rRokXVet2Aes8A0OgsWrTIkGR6hISEOJwTEhJijBo1yv548ODBxo033mg6zhtvvGFIMg4cOODQvmfPHkOSER8f79D+5ZdfGpKMiRMnGoZhGEePHjV8fHyMuLg4h7qtW7cakoz+/fvb29avX29IMvr161fl+s+ePWuUlZUZd9xxh3H//ffb2w8cOGBIMnr27GmUl5fb21NTUw1Jxn333efQT0JCgiHJOH78uOl4U6dOrfR17tixo0NtUVGR0a5dO6N3797Gjh07jCuuuMJ47LHHqrWeMWPGGL169XJ4TpIRGBhonDx50t728ccfG5KMG2+80aioqHBa5zfffGNv69+/vyHJ+OSTTxz6ffzxxw0PDw/j0KFDDmNNnTrV/viPf/yjceWVVzrUGIZhzJo1y5BkfPfdd6brAhoK3oYDGrElS5bo66+/djpuvfXWKs/t3bu3du3apfj4eK1Zs0YlJSXVHnf9+vWS5PTtut69e6tr1676/PPPJUnbtm2TzWbTQw895FDXt29fp2/rnTds2DCX7enp6brpppvk6+srLy8vNWnSRJ9//rn27NnjVHv33XfLw+P//vrr2rWrJOmee+5xqDvfnpeXV8lKHa1bt87ptf74448dalq1aqXMzEzt2LFDUVFRat++vdLT0536+tvf/qZbbrlFV155pX09GRkZLtdz2223qVmzZk7zjo2NdbiCdL790KFDDuc3b95c9913n0Pbo48+qoqKCn3xxReVrvcf//iHbrvtNgUFBens2bP2IzY2VpK0cePGSs8FGhLehgMasa5duyoiIsKp3d/fX/n5+abnJiUlqVmzZnr//feVnp4uT09P9evXT6+//rrLPn+ruLhYkutvgQUFBdn/sT5fFxAQ4FTnqq2yPlNSUvTcc89p3Lhxeumll9S6dWt5enpqypQpLsNFy5YtHR57e3ubtp85c8blXP5bz549q/UB7z59+qh79+7atWuXnnzySYegI0krV67UQw89pAcffFDPP/+8AgMD5eXlpbS0NC1cuLDO1+PqtQ4MDJT0f3vkys8//6y///3vatKkicvni4qKKj0XaEgISwBc8vLyUmJiohITE3Xs2DGtW7dOEydO1KBBg5Sfn68rrrii0nNbtWolSbJarWrXrp3Dcz/99JM9UJyv+/nnn536KCgocHl16bdXSs57//33NWDAAKWlpTm0nzhxwnyRbjJ16lTt3r1b4eHhevHFFzV48GBde+219ufff/99hYaGKjMz02G9Npvtosynstdf+r89cqV169a64YYb9Morr7h8PigoqG4mCLgZb8MBqNJVV12l4cOH66mnntLRo0ftN1n08fGRJJ0+fdqh/vbbb5d07h/93/r666+1Z88e3XHHHZLOXWHx8fFRZmamQ922bduc3ioyY7FY7HM575tvvtHWrVur3celkp2dreTkZE2ePFnZ2dny9/dXXFycSktL7TUWi0Xe3t5OH8J29W24unDixAmnD7EvXbpUHh4e6tevX6XnDR48WN9++606duyoiIgIp4OwhMaCK0sAXLr33nsVFhamiIgItWnTRocOHVJqaqpCQkJ0/fXXS5L921uzZ8/WqFGj1KRJE3Xu3FmdO3fWE088obfeekseHh6KjY21fxsuODhY48ePl3TubaLExEQlJyerRYsWuv/++/Xjjz9q+vTpatu2rcPniswMHjxYL730kqZOnar+/fvr+++/14wZMxQaGnpJv8Kek5Pj8qaU3bp1k5+fn6xWqx577DH1799fU6dOlYeHhzIzM9WvXz/9v//3/5Sammpfz8qVKxUfH6/hw4crPz9fL730ktq2bau9e/fW+bxbtWqlJ598Unl5eerUqZOysrK0YMECPfnkk2rf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7l3tcQEAAM5za1iSpPj4eMXHx7t8bvHixU5t/fv3144dOyrt7y9/+Yv+8pe/XNC4AAAA57n923AAAAD1GWEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADABGEJAADAhNvD0rx58xQaGipfX1+Fh4dr06ZNpvUbN25UeHi4fH19de211yo9Pd3h+QULFig6OlotWrRQixYtNHDgQH311VcONdOmTZPFYnE4AgMD63xtAACg4XNrWMrMzFRCQoImTZqk3NxcRUdHKzY2Vnl5eS7rDxw4oLvvvlvR0dHKzc3VxIkT9cwzz2jFihX2mg0bNuiRRx7R+vXrtXXrVrVv314xMTE6fPiwQ1/du3eX1Wq1H7t3776oawUAAA2TlzsHT0lJ0ZgxYzR27FhJUmpqqtasWaO0tDQlJyc71aenp6t9+/ZKTU2VJHXt2lXbt2/XrFmzNGzYMEnSBx984HDOggUL9NFHH+nzzz/XyJEj7e1eXl5cTQIAAFVy25Wl0tJS5eTkKCYmxqE9JiZGW7ZscXnO1q1bneoHDRqk7du3q6yszOU5p06dUllZmVq2bOnQvnfvXgUFBSk0NFQPP/yw9u/ffwGrAQAAjZXbwlJRUZHKy8sVEBDg0B4QEKCCggKX5xQUFLisP3v2rIqKilye88ILL+iaa67RwIED7W19+vTRkiVLtGbNGi1YsEAFBQWKiopScXFxpfO12WwqKSlxOAAAQOPn9g94WywWh8eGYTi1VVXvql2SZs6cqWXLlmnlypXy9fW1t8fGxmrYsGHq0aOHBg4cqNWrV0uS3nvvvUrHTU5Olr+/v/0IDg6uenEAAKDBc1tYat26tTw9PZ2uIhUWFjpdPTovMDDQZb2Xl5datWrl0D5r1iy9+uqrWrt2rW644QbTuTRr1kw9evTQ3r17K61JSkrS8ePH7Ud+fr5pnwAAoHFwW1jy9vZWeHi4srOzHdqzs7MVFRXl8pzIyEin+rVr1yoiIkJNmjSxt73xxht66aWX9NlnnykiIqLKudhsNu3Zs0dt27attMbHx0d+fn4OBwAAaPzc+jZcYmKi3n33XS1cuFB79uzR+PHjlZeXp3Hjxkk6dzXnt99gGzdunA4dOqTExETt2bNHCxcuVEZGhiZMmGCvmTlzpiZPnqyFCxeqQ4cOKigoUEFBgU6ePGmvmTBhgjZu3KgDBw7oyy+/1PDhw1VSUqJRo0ZdusUDAIAGwa23DoiLi1NxcbFmzJghq9WqsLAwZWVlKSQkRJJktVod7rkUGhqqrKwsjR8/XnPnzlVQUJDmzJljv22AdO4ml6WlpRo+fLjDWFOnTtW0adMkST/++KMeeeQRFRUVqU2bNurbt6+2bdtmHxcAAOA8t4YlSYqPj1d8fLzL5xYvXuzU1r9/f+3YsaPS/g4ePFjlmMuXL6/u9AAAwGXO7d+GAwAAqM8ISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACYISwAAACbcHpbmzZun0NBQ+fr6Kjw8XJs2bTKt37hxo8LDw+Xr66trr71W6enpTjUrVqxQt27d5OPjo27dumnVqlUXPC4AALg8uTUsZWZmKiEhQZMmTVJubq6io6MVGxurvLw8l/UHDhzQ3XffrejoaOXm5mrixIl65plntGLFCnvN1q1bFRcXpxEjRmjXrl0aMWKEHnroIX355Ze1HhcAAFy+3BqWUlJSNGbMGI0dO1Zdu3ZVamqqgoODlZaW5rI+PT1d7du3V2pqqrp27aqxY8fqD3/4g2bNmmWvSU1N1Z133qmkpCR16dJFSUlJuuOOO5SamlrrcQEAwOXLbWGptLRUOTk5iomJcWiPiYnRli1bXJ6zdetWp/pBgwZp+/btKisrM60532dtxgUAAJcvL3cNXFRUpPLycgUEBDi0BwQEqKCgwOU5BQUFLuvPnj2roqIitW3bttKa833WZlxJstlsstls9sfHjx+XJJWUlFSx0to5evSo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ocTERN16660KCwuTJPt+BAQEONT+dq/qaj/d+rvhcE5FRYUkaciQIRo/frwk6cYbb9SWLVuUnp6u/v37V3quYRiyWCyXZJ4XqrrrfPzxx+3nhIWF6frrr1dERIR27Nihm2666dJP/AItXLhQv/vd75w+l+VKQ9rP36psjY1hL+fMmaNt27bp008/VUhIiL744gvFx8erbdu2GjhwYKXnNbS9rM46G/p+NmnSRCtWrNCYMWPUsmVLeXp6auDAgYqNja3y3Ia0n9VdZ0Paz6efflrffPON05UxSU77Up29qul+cmWpHmjdurW8vLzUrVs3h/auXbvavyUWGBio0tJS/fLLLw41hYWFTqm6vqrOOl256aab1KRJE6dvcjQEmzZt0vfff6+xY8c6tDeG/TyvsjW60tD28vTp05o4caJSUlJ077336oYbbtDTTz+tuLg4zZo1S1Lj2MvqrNOVhrafkhQeHq6dO3fq2LFjslqt+uyzz1RcXKzQ0FBJjWM/parX6Up93c8//elP+vTTT7V+/Xq1a9fO3h4YGChJTleIfrtXdbWfhKV6wNvbWzfffLPTVyJ/+OEHhYSESDr3B79JkybKzs62P2+1WvXtt98qKirqks63tqqzTle+++47lZWVqW3bthd7inUuIyND4eHh6tmzp0N7Y9jP8ypboysNbS/LyspUVlYmDw/Hvyo9PT3tV0obw15WZ52uNLT9/C1/f3+1adNGe/fu1fbt2zVkyBBJjWM/f6uydbpS3/bTMAw9/fTTWrlypf71r385Bb3Q0FAFBgY67FVpaak2btxo36s6288L+mg6qu3EiRNGbm6ukZuba0gyUlJSjNzcXOPQoUOGYRjGypUrjSZNmhjz58839u7da7z11luGp6ensWnTJnsf48aNM9q1a2esW7fO2LFjh3H77bcbPXv2NM6ePeuuZTm50HX+5z//MaZPn258/fXXxoEDB4zVq1cbXbp0MXr16tWg1mkYhnH8+HHjiiuuMNLS0lz2Ud/380LX2Fj2sn///kb37t2N9evXG/v37zcWLVpk+Pr6GvPmzbP3Ud/30jAufJ2NZT8//PBDY/369ca+ffuMjz/+2AgJCTEeeOABhz4aw35Wtc6GsJ9PPvmk4e/vb2zYsMGwWq3249SpU/aa1157zfD39zdWrlxp7N6923jkkUeMtm3bGiUlJfaauthPwtIlsn79ekOS0zFq1Ch7TUZGhnHdddcZvr6+Rs+ePY2PP/7YoY/Tp08bTz/9tNGyZUujadOmxuDBg428vLxLvBJzF7rOvLw8o1+/fkbLli0Nb29vo2PHjsYzzzxjFBcXu2E1lavOOt955x2jadOmxrFjx1z2Ud/380LX2Fj20mq1GqNHjzaCgoIMX19fo3Pnzsabb75pVFRU2Puo73tpGBe+zsayn7NnzzbatWtnNGnSxGjfvr0xefJkw2azOfTRGPazqnU2hP10tT5JxqJFi+w1FRUVxtSpU43AwEDDx8fH6Nevn7F7926HfupiPy3/OyEAAAC4wGeWAAAATBCWAAAATBCWAAAATBCWAAAATBCWAAAATBCWAAAATBCWAAAATBCWAAAATBCWAAAATBCWAAAATBCWAEDSkSNHFBgYqFdffdXe9uWXX8rb21tr165148wAuBu/Gw4A/ldWVpaGDh2qLVu2qEuXLurVq5fuuecepaamuntqANyIsAQAv/HUU09p3bp1uvnmm7Vr1y59/fXX8vX1dfe0ALgRYQkAfuP06dMKCwtTfn6+tm/frhtuuMHdUwLgZnxmCQB+Y//+/frpp59UUVGhQ4cOuXs6AOoBriwBwP8qLS1V7969deONN6pLly5KSUnR7t27FRAQ4O6pAXAjwhIA/K/nn39eH330kXbt2qUrr7xSt912m5o3b65//OMf7p4aADfibTgAkLRhwwalpqbqr3/9q/z8/OTh4aG//vWv2rx5s9LS0tw9PQBuxJUlAAAAE1xZAgAAMEFYAgAAMEFYAgAAMEFYAgAAMEFYAgAAMEFYAgAAMEFYAgAAMEFYAgAAMEFYAgAAMEFYAgAAMEFYAgAAMEFYAgAAMPH/Ad8D4VRnmnbVAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# lets try with really small bins, such that the histogram diplays all the details in the data:\n", "plt.hist(x, bins=np.arange(160,200,1), edgecolor='black', color='red', alpha=0.7, density=True)\n", "plt.xlabel('x')\n", "plt.ylabel('Density')\n", "plt.title('Histogram Example')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Cumulative distribution\n", "\n", "The \"detailed\" histogram with small bins is maybe not the nicest way to display data.
\n", "\n", "But histograms are dependent on bin-choices, which is also (sometimes) not ideal..
\n", "\n", "An alternative is to do a cumulative kind of plot:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# plot the \"empirical cumulated density function\"\n", "plt.ecdf(x)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[161 166 167 168 179 179 184 187 191 198]\n" ] } ], "source": [ "# compare with values \n", "print(x)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In the cumulated distribution all detailed information is kept - but is is another way to visualise the distribution of data. " ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "image/png": "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9OnT9dBDD+mdd97R7NmzFRERobFjx0qSTp06pd69e+vgwYO6//771b17d50+fVqbNm1Senq6evXqpXXr1mnIkCGaMGGCJk6cKEklrtYkJCTogQce0I033qiEhARlZmZq/vz56tmzpz7//HO1atXK3Tc3N1cjR47UhAkTNH36dG3atEkPP/ywwsLCNG/evFKPGZWEASqJ5cuXG0lebwEBAR59JZng4GCTkZHhbsvLyzNt27Y1l19+ubtt/fr1RpJZv369u+22224zkkxSUlKRGm677TYTGRnpvr9p0yYjycyZM8fncRQUFJjc3FyzceNGI8ns3LnT/bOHHnrI+PJr17JlS9OyZUtz9uzZYvucW2tJ+5BkGjVqZE6fPu1ue/fdd40k06lTJ1NQUOBuf+aZZ4wk8+WXX7rbIiMjzW233VZkX3379jV9+/Z13z9w4ICRZJYvX15s3Xl5eSYnJ8e0atXKTJs2zd3++eefF7tt27ZtTefOnU1ubq5H+/Dhw03jxo1Nfn6+McaYuLi4Yl8XksyBAweKrSs/P99ERESYLl26eDwfBw8eNIGBgR7P9euvv24kmbffftvjMQrHkJiY6G6LjIw0LpfLHDp0yN129uxZU69ePXPnnXe626Kjo83o0aOLrc8Y73N7xRVXeMxBoe+//97UqFHDPP300x77rV+/vhk/fnyJ+ymse9iwYR5thb+j5z6P3n7P+vbtaySZbdu2efRt3769GTx4sPv+woULjSSTnJxcbC0///yzkWQeeuihIj87t6bjx4+b4OBgM3ToUI9+aWlpxul0mptuusndVvi34J///KdH36FDh5o2bdoUWw8qPw5LodJ55ZVX9Pnnn3vctm3bVqTfNddco/DwcPf9gIAAxcXFad++ffrxxx/Pu58xY8act8/7778vSbr77rtL7Ld//37ddNNNatSokQICAhQYGKi+fftKUpGl8PP57rvv9P3332vChAlyuVyl2rYk/fv3V61atdz327VrJ0mKjY31WKEpbD906FC57DcvL0+PPPKI2rdvr6CgINWsWVNBQUHau3evT8/Nvn379O233+rmm292P17hbejQoUpPT9eePXsk/b7CU9zr4nz27Nmjw4cP66abbvJ4PiIjI9WrVy+Pvv/5z390ySWXaMSIER71dOrUSY0aNSpyVU+nTp3UrFkz932Xy6XWrVt7PMfdunXT+++/r1mzZmnDhg06e/bseWsuSYsWLTR8+HAlJibKGCNJ+sc//qHMzEzdc889F/TYvmrUqJG6devm0dahQwePcb///vtq3bq1Bg4cWC773Lp1q86ePVvkMGrTpk01YMAAffTRRx7tDodDI0aMKLFGVD0clkKl065dO59OKG7UqFGxbZmZmSWeeBkSEqLQ0NDz7uPnn39WQECA130VOn36tPr06SOXy6VFixapdevWCgkJ0Q8//KDrrruu1G9ShedslPeJo/Xq1fO4HxQUVGL7b7/9Vi77jY+P1/PPP6/7779fffv2Vd26dVWjRg1NnDjRp+fmyJEjkqQZM2ZoxowZXvscO3ZM0u/zXtLroiSFh3+K2/6PhyGPHDmiEydOuJ+r4uopVL9+/SJ9nE6nx/ifffZZNWnSRKtWrdJjjz0ml8ulwYMHa/HixR6HUUpjypQpuuaaa5ScnKxBgwbp+eefV8+ePdWlS5cyPV5p+TLun3/+2SP4XajCefR2GC0iIkLJyckebSEhIUX+iXA6neX2+od/EG5QZWVkZBTb5u2P6h/5ei5Jw4YNlZ+fr4yMjGLPOfj44491+PBhbdiwwb1aI/1+kmRZFJ5LcL7VJ5fL5fWkx3PfWMtDSftq0KBBidu+9tprGjt2rB555JEi215yySXn3Xfh48+ePVvXXXed1z5t2rSR9Pu8l/S6KEnha8aX7Rs0aKD69etr3bp1Xh+rTp06593fuWrVqqUFCxZowYIFOnLkiHsVZ8SIEfr2229L/XiSNGDAAEVHR+u5555T7dq19cUXX+i1114r02NJcoeAc18LF/Kaa9iwoU8rrb4qnMf09PQiPzt8+PB5X6+wA4elUGV99NFH7v/qpd9PRF61apVatmxZbqsesbGxkqQlS5YU26cwKDmdTo/2ZcuWlWmfrVu3VsuWLZWUlFTiFRvNmzfX0aNHPZ6DnJwcffDBB2Xab0maN2+uL7/80qPtu+++cx8OKonD4Sjy3KxZs0Y//fSTR1thn3NXc9q0aaNWrVpp586diomJ8XorDBP9+/cv9nVxPm3atFHjxo31+uuvuw/jSL8fntuyZYtH3+HDhyszM1P5+fle6ykMW2UVHh6ucePG6cYbb9SePXt05syZYvueuxJyrsmTJ2vNmjWaPXu2wsPD9f/+3/8rc12FV+ed+1r445WDpRUbG6vvvvuuxBPvi3tteNOzZ08FBwcXCXE//vijPv74Y/eVkbAbKzeodL7++muvVy+1bNnS4wqJBg0aaMCAAXrwwQfdV0t9++23RS4HvxB9+vTRrbfeqkWLFunIkSMaPny4nE6nUlNTFRISonvvvVe9evVS3bp1NWnSJD300EMKDAzUypUrtXPnzjLv9/nnn9eIESPUo0cPTZs2Tc2aNVNaWpo++OADrVy5UpIUFxenefPm6S9/+Ytmzpyp3377Tc8++6zy8/PLa/hut956q2655RbdddddGjNmjA4dOqTHH3/cp88XGT58uFasWKG2bduqQ4cOSklJ0eLFi4sE0JYtWyo4OFgrV65Uu3btVLt2bUVERCgiIkLLli1TbGysBg8erHHjxumyyy7TL7/8ot27d+uLL77Qm2++KUmaO3euVq9erQEDBmjevHkKCQnR888/79Ml+TVq1NDDDz+siRMn6tprr9Udd9yhEydOaP78+UUOVf3lL3/RypUrNXToUE2ZMkXdunVTYGCgfvzxR61fv16jRo3StddeW4pnWOrevbuGDx+uDh06qG7dutq9e7deffVV9ezZUyEhIcVu96c//UlvvPGGVq1apRYtWsjlculPf/qT++e33HKLZs+erU2bNmnu3LnFHkrzxZVXXqk2bdpoxowZysvLU926dfXOO+/ok08+KfNjTp06VatWrdKoUaM0a9YsdevWTWfPntXGjRs1fPhw9e/fX3Xq1FFkZKTee+89XXPNNapXr54aNGjg9aMQLrnkEj344IN64IEHNHbsWN14443KzMzUggUL5HK59NBDD5W5VlQh/j6jGShU0tVSksyLL77o7ivJ3H333SYxMdG0bNnSBAYGmrZt25qVK1d6PGZxV0vVqlXLaw3erkDKz883Tz/9tImOjjZBQUEmLCzM9OzZ0/z73/9299myZYvp2bOnCQkJMQ0bNjQTJ040X3zxRZGrf3y9WsoYY7Zu3WpiY2NNWFiYcTqdpmXLlh5XFxljzNq1a02nTp1McHCwadGihXnuueeKvVrq7rvv9mgrvLJp8eLFHu2Fz9mbb77pbisoKDCPP/64adGihXG5XCYmJsZ8/PHHPl0tdfz4cTNhwgRz6aWXmpCQENO7d2+zefPmItsa8/tVSG3btjWBgYFFro7ZuXOnueGGG8yll15qAgMDTaNGjcyAAQPM0qVLPR7j008/NT169DBOp9M0atTIzJw507zwwgvnvVqq0EsvvWRatWplgoKCTOvWrU1SUpLX10Vubq554oknTMeOHY3L5TK1a9c2bdu2NXfeeafZu3evu5+3q46MKXql2axZs0xMTIypW7eucTqdpkWLFmbatGnm2LFj7j7e5vbgwYNm0KBBpk6dOkaS1yvoxo0bZ2rWrGl+/PHH847/fHV/9913ZtCgQSY0NNQ0bNjQ3HvvvWbNmjVer5a64oorimzv7bk8fvy4mTJlimnWrJkJDAw0l156qRk2bJj59ttv3X3++9//ms6dOxun02kkua/eK+4Krpdeesl06NDB/Ts7atQo88033xSpxdvfgtL8nqJychjzh/VXoIpwOBy6++679dxzz/m7FKBSy8nJUfPmzdW7d2+vH3oI2IjDUgBgoZ9//ll79uzR8uXLdeTIEc2aNcvfJQEVhnADABZas2aNxo8fr8aNGysxMbHCLv8GKgMOSwEAAKtwKTgAALAK4QYAAFiFcAMAAKxS7U4oLigo0OHDh1WnTh2fP4IfAAD4lzFGp06dUkREhGrUKHltptqFm8OHD6tp06b+LgMAAJTBDz/8cN6v2Kl24abwO2h++OEHn74VGgAA+F9WVpaaNm3q0xfTVrtwU3goKjQ0lHADAEAV48spJZxQDAAArEK4AQAAViHcAAAAqxBuAACAVQg3AADAKoQbAABgFcINAACwCuEGAABYhXADAACsQrgBAABWIdwAAACrEG4AAIBVCDcAAMAqhBsAAGAVwg0AALAK4QYAAFiFcAMAAKxCuAEAAFYh3AAAAKsQbgAAgFUINwAAwCqEGwAAYBXCDQAAsArhBgAAWMWv4WbTpk0aMWKEIiIi5HA49O677553m40bN6pr165yuVxq0aKFli5devELBQAAVYZfw82vv/6qjh076rnnnvOp/4EDBzR06FD16dNHqampeuCBBzR58mS9/fbbF7lSAABQVdT0585jY2MVGxvrc/+lS5eqWbNmeuaZZyRJ7dq10/bt2/XEE09ozJgxF6lKAADgC2OMzubmS5KCAwPkcDj8UkeVOudm69atGjRokEfb4MGDtX37duXm5nrdJjs7W1lZWR43AABQ/s7m5qv9vA/Uft4H7pDjD1Uq3GRkZCg8PNyjLTw8XHl5eTp27JjXbRISEhQWFua+NW3atCJKBQAAflKlwo2k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pgROp1MPPfSQnE6nv0upMIy5eqhuY65u45UYc3VRHcfsi2p3QjEAALAbKzcAAMAqhBsAAGAVwg0AALAK4QYAAFil2oWbTZs2acSIEYqIiJDD4dC7775bpM/u3bs1cuRIhYWFqU6dOurRo4fS0tLcP8/Ozta9996rBg0aqFatWho5cqR+/PHHChxF6ZTHmPv16yeHw+Fx+8tf/lKBoyid84353LEU3hYvXuzuY9s8+zJm2+b59OnTuueee9SkSRMFBwerXbt2WrJkiUcf2+bZlzHbNs9HjhzRuHHjFBERoZCQEA0ZMkR79+716GPbPPsy5qo2z+Wp2oWbX3/9VR07dtRzzz3n9efff/+9evfurbZt22rDhg3auXOnHnzwQblcLnefqVOn6p133tEbb7yhTz75RKdPn9bw4cOVn59fUcMolfIYsyTdcccdSk9Pd9+WLVtWEeWXyfnG/MdxpKenKykpSQ6HQ2PGjHH3sW2efRmzZNc8T5s2TevWrdNrr72m3bt3a9q0abr33nv13nvvufvYNs++jFmyZ56NMRo9erT279+v9957T6mpqYqMjNTAgQP166+/uvvZNM++jlmqWvNcrkw1Jsm88847Hm1xcXHmlltuKXabEydOmMDAQPPGG2+423766SdTo0YNs27duotVarkpy5iNMaZv375mypQpF6+wi8jbmM81atQoM2DAAPd9G+f5XOeO2Rj75vmKK64wCxcu9Gjr0qWLmTt3rjHGznk+35iNsWue9+zZYySZr7/+2t2Wl5dn6tWrZ1588UVjjH3z7MuYjana83yhqt3KTUkKCgq0Zs0atW7dWoMHD9all16q7t27eywHpqSkKDc3V4MGDXK3RUREKDo6Wlu2bPFD1RfGlzEXWrlypRo0aKArrrhCM2bMcH/DelV35MgRrVmzRhMmTHC32TbP5/I25kI2zXPv3r21evVq/fTTTzLGaP369fruu+80ePBgSXbO8/nGXMiWec7OzpYkj5XmgIAABQUF6ZNPPpFk3zz7MuZCtsxzaRFu/uDo0aM6ffq0Hn30UQ0ZMkQffvihrr32Wl133XXauHGjJCkjI0NBQUGqW7eux7bh4eHKyMjwR9kXxJcxS9LNN9+s119/XRs2bNCDDz6ot99+W9ddd50fKy8/f//731WnTh2P8dg2z+fyNmbJvnl+9tln1b59ezVp0kRBQUEaMmSIEhMT1bt3b0l2zvP5xizZNc9t27ZVZGSkZs+erePHjysnJ0ePPvqoMjIylJ6eLsm+efZlzJJd81xa1e5bwUtSUFAgSRo1apSmTZsmSerUqZO2bNmipUuXqm/fvsVua4yRw+GokDrLk69jvuOOO9zbREdHq1WrVoqJidEXX3yhLl26VHzh5SgpKUk333xzkXOMvKmq83yu4sZs2zw/++yz+uyzz7R69WpFRkZq06ZNuuuuu9S4cWMNHDiw2O2q8jz7Mmab5jkwMFBvv/22JkyYoHr16ikgIEADBw5UbGzsebetqvPs65htmufSYuXmDxo0aKCaNWuqffv2Hu3t2rVzXznUqFEj5eTk6Pjx4x59jh49qvDw8Aqrtbz4MmZvunTposDAwCJn51c1mzdv1p49ezRx4kSPdtvm+Y+KG7M3VXmez549qwceeEBPPfWURowYoQ4dOuiee+5RXFycnnjiCUn2zbMvY/amKs+zJHXt2lU7duzQiRMnlJ6ernXr1ikzM1NRUVGS7Jtn6fxj9qaqz3NpEG7+ICgoSFdeeaX27Nnj0f7dd98pMjJS0u8vqMDAQCUnJ7t/np6erq+//lq9evWq0HrLgy9j9uabb75Rbm6uGjdufLFLvKhefvllde3aVR07dvRot22e/6i4MXtTlec5NzdXubm5qlHD889cQECAe8XStnn2ZczeVOV5/qOwsDA1bNhQe/fu1fbt2zVq1ChJ9s3zHxU3Zm9smWdfVLvDUqdPn9a+ffvc9w8cOKAdO3aoXr16atasmWbOnKm4uDhdffXV6t+/v9atW6d///vf2rBhg6TfX0gTJkzQ9OnTVb9+fdWrV08zZszQn/70pxKXuf3pQsf8/fffa+XKlRo6dKgaNGigXbt2afr06ercubOuuuoqP42qZOcbsyRlZWXpzTff1JNPPllkexvnWSp5zDbOc9++fTVz5kwFBwcrMjJSGzdu1CuvvKKnnnpKkp3zfL4x2zjPb775pho2bKhmzZrpq6++0pQpUzR69Gj3CcQ2zvP5xlwV57lc+fNSLX9Yv369kVTkdtttt7n7vPzyy+byyy83LpfLdOzY0bz77rsej3H27Flzzz33mHr16png4GAzfPhwk5aWVsEj8d2FjjktLc1cffXVpl69eiYoKMi0bNnSTJ482WRmZvphNL7xZczLli0zwcHB5sSJE14fw8Z5LmnMNs5zenq6GTdunImIiDAul8u0adPGPPnkk6agoMD9GLbN8/nGbOM8//WvfzVNmjQxgYGBplmzZmbu3LkmOzvb4zFsm+fzjbkqznN5chhjzMWLTgAAABWLc24AAIBVCDcAAMAqhBsAAGAVwg0AALAK4QYAAFiFcAMAAKxCuAEAAFYh3AAAAKsQbgAAgFUINwAAwCqEGwBV3s8//6xGjRrpkUcecbdt27ZNQUFB+vDDD/1YGQB/4LulAFhh7dq1Gj16tLZs2aK2bduqc+fOGjZsmJ555hl/lwagghFuAFjj7rvv1n//+19deeWV2rlzpz7//HO5XC5/lwWgghFuAFjj7Nmzio6O1g8//KDt27erQ4cO/i4JgB9wzg0Aa+zfv1+HDx9WQUGBDh065O9yAPgJKzcArJCTk6Nu3bqpU6dOatu2rZ566il99dVXCg8P93dpACoY4QaAFWbOnKm33npLO3fuVO3atdW/f3/VqVNH//nPf/xdGoAKxmEpAFXehg0b9Mwzz+jVV19VaGioatSooVdffVWffPKJlixZ4u/yAFQwVm4AAIBVWLkBAABWIdwAAACrEG4AAIBVCDcAAMAqhBsAAGAVwg0AALAK4QYAAFiFcAMAAKxCuAEAAFYh3AAAAKsQbgAAgFUINwAAwCr/H4TTGyQiEmbsAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# lets increase the y-range slightly:\n", "plt.ecdf(x)\n", "plt.ylim(-0.1,1.1)\n", "plt.xlabel('x')\n", "plt.ylabel('ecdf(x)')\n", "plt.title('Epirical cumulated density function')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The y-range goes from 0 to 1 - or 0% to 100%
\n", "\n", "Every vertical line-segment is a datapoint
\n", "\n", "When the plot is \"steep\" there are many datapoints (corresponds to high values in the histogram).
\n", "\n", "The cumulated plot can be used to understand the \"averaged_inverted_cdf\" used for percentiles.
\n", "\n", "OBS: we will talk more about distributions - and cumulative distributions - over the next couple of weeks. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Other plots in Python" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAigAAAGdCAYAAAA44ojeAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAgTklEQVR4nO3dX0xU997v8c/InwF8cI7jqDhxwDaxhYqlgo2NmgqRqKOi1ibVHkzpjsWnaequAl7QHY9xJw3m6b9Yia3J1tIKWxpjRBt3mqopUmO9AIopigoWU62gF/WZYSgbiMy58HRO5hFsR8fOD3i/kpV2zfrDd/WGd9esYSx+v98vAAAAg4yJ9AAAAAD/E4ECAACMQ6AAAADjECgAAMA4BAoAADAOgQIAAIxDoAAAAOMQKAAAwDjRkR7gQQwMDOjGjRtKTEyUxWKJ9DgAAOAP8Pv96urqktPp1Jgx979HMiwD5caNG3K5XJEeAwAAPIBr165p6tSp991nWAZKYmKipLsXOG7cuAhPAwAA/giv1yuXyxX4PX4/wzJQfntbZ9y4cQQKAADDzB95PIOHZAEAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYZll8WCMA8v/76qy5evPjQ5+np6dHVq1c1bdo0xcfHh2EyKTU1VQkJCWE5F4A/B4ECICwuXryorKysSI8xqIaGBmVmZkZ6DAAhIFAAhEVqaqoaGhoe+jwtLS1at26dKisrlZaWFobJ7s4GYHghUACERUJCQljvUqSlpXHXAxjFeEgWAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGCfkQKmrq1NeXp6cTqcsFotqamqCtt+8eVOvvvqqnE6nEhIStGTJErW2tgbtk52dLYvFErSsXbv2oS4EAACMHCEHSnd3tzIyMlReXn7PNr/fr1WrVunHH3/UkSNH9P333yslJUW5ubnq7u4O2rewsFAdHR2BZc+ePQ9+FQAAYESJDvUAt9stt9s96LbW1ladPXtWzc3NmjFjhiRp9+7dmjRpkg4cOKDXXnstsG9CQoKSkpIecGwAADCShfUZlN7eXklSXFxc4LWoqCjFxsbq9OnTQftWVVXJ4XBoxowZKikpUVdX133P6/V6gxYAADByhTVQUlNTlZKSotLSUt2+fVt9fX3asWOHOjs71dHREdgvPz9fBw4cUG1trbZu3apDhw5p9erVQ563rKxMNpstsLhcrnCODQAADBPyWzz3ExMTo0OHDmn9+vWy2+2KiopSbm7uPW8JFRYWBv49PT1d06dP1+zZs9XY2KjMzMx7zltaWqqioqLAutfrJVIAABjBwhookpSVlaWmpiZ5PB719fVp4sSJmjNnjmbPnj3kMZmZmYqJiVFra+uggWK1WmW1WsM9KgAAMNQj+zsoNptNEydOVGtrq+rr67Vy5coh9z1//rz6+/s1ZcqURzUOAAAYRkK+g+Lz+dTW1hZYb29vV1NTk+x2u5KTk3Xw4EFNnDhRycnJ+uGHH/TWW29p1apVWrRokSTpypUrqqqq0tKlS+VwOHThwgUVFxdr1qxZmjdvXviuDAAADFshB0p9fb1ycnIC6789G1JQUKCKigp1dHSoqKhIN2/e1JQpU/TKK69o69atgf1jY2N18uRJ7dy5Uz6fTy6XS8uWLdO2bdsUFRUVhksCAADDncXv9/sjPUSovF6vbDabPB6Pxo0bF+lxAIRRY2OjsrKy1NDQMOgzaQCGr1B+f/NdPAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOAQKAAAwDoECAACMQ6AAAADjECgAAMA4BAoAADAOgQIAAIxDoAAAAOMQKAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOAQKAAAwDoECAACMQ6AAAADjECgAAMA4BAoAADAOgQIAAIxDoAAAAOMQKAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOAQKAAAwDoECAACMQ6AAAADjECgAAMA4BAoAADBOyIFSV1envLw8OZ1OWSwW1dTUBG2/efOmXn31VTmdTiUkJGjJkiVqbW0N2qe3t1cbN26Uw+HQ2LFjtWLFCl2/fv2hLgQAAIwcIQdKd3e3MjIyVF5efs82v9+vVatW6ccff9SRI0f0/fffKyUlRbm5ueru7g7st2nTJh0+fFjV1dU6ffq0fD6fli9frjt37jzc1QAAgBEhOtQD3G633G73oNtaW1t19uxZNTc3a8aMGZKk3bt3a9KkSTpw4IBee+01eTwe7d27V/v371dubq4kqbKyUi6XSydOnNDixYsf4nIAAMBIENZnUHp7eyVJcXFxgdeioqIUGxur06dPS5IaGhrU39+vRYsWBfZxOp1KT0/XmTNnhjyv1+sNWgAAwMgV1kBJTU1VSkqKSktLdfv2bfX19WnHjh3q7OxUR0eHJKmzs1OxsbEaP3580LGTJ09WZ2fnoOctKyuTzWYLLC6XK5xjAwAAw4Q1UGJiYnTo0CFdvnxZdrtdCQkJqq2tldvtVlRU1H2P9fv9slgsg24rLS2Vx+MJLNeuXQvn2AAAwDAhP4Pye7KystTU1CSPx6O+vj5NnDhRc+bM0ezZsyVJSUlJ6uvr0+3bt4Puoty6dUtz584d9JxWq1VWqzXcowIAAEM9sr+DYrPZNHHiRLW2tqq+vl4rV66UdDdgYmJidPz48cC+HR0dam5uHjJQAADA6BLyHRSfz6e2trbAent7u5qammS325WcnKyDBw9q4sSJSk5O1g8//KC33npLq1atCjwUa7PZtH79ehUXF2vChAmy2+0qKSnRzJkzA5/qAQAAo1vIgVJfX6+cnJzAelFRkSSpoKBAFRUV6ujoUFFRkW7evKkpU6bolVde0datW4PO8eGHHyo6OlovvfSSenp6tHDhQlVUVPzucyoAAGB0sPj9fn+khwiV1+uVzWaTx+PRuHHjIj0OgDBqbGxUVlaWGhoalJmZGelxAIRRKL+/+S4eAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYJzrSAwCIrNbWVnV1dUV6jICWlpagf5okMTFR06dPj/QYwKhAoACjWGtrq5544olIjzGodevWRXqEQV2+fJlIAf4EBAowiv1256SyslJpaWkRnuaunp4eXb16VdOmTVN8fHykxwloaWnRunXrjLrbBIxkBAoApaWlKTMzM9JjBMybNy/SIwCIMB6SBQAAxiFQAACAcQgUAABgHAIFAAAYJ+RAqaurU15enpxOpywWi2pqaoK2+3w+vfnmm5o6dari4+OVlpamjz/+OGif7OxsWSyWoGXt2rUPdSEAAGDkCPlTPN3d3crIyNBf/vIXvfjii/ds37x5s7755htVVlZq2rRp+vrrr/XGG2/I6XRq5cqVgf0KCwv197//PbBu0scJAQBAZIUcKG63W263e8jt3333nQoKCpSdnS1J2rBhg/bs2aP6+vqgQElISFBSUlLoEwMAgBEv7M+gzJ8/X0ePHtXPP/8sv9+vb775RpcvX9bixYuD9quqqpLD4dCMGTNUUlLCHz8CAAABYf9DbR999JEKCws1depURUdHa8yYMfrHP/6h+fPnB/bJz8/XY489pqSkJDU3N6u0tFTnzp3T8ePHBz1nb2+vent7A+terzfcYwMAAIM8kkA5e/asjh49qpSUFNXV1emNN97QlClTlJubK+nu8ye/SU9P1/Tp0zV79mw1NjYO+tcsy8rKtH379nCPCgAADBXWt3h6enr09ttv64MPPlBeXp6efvppvfnmm1qzZo3ee++9IY/LzMxUTEyMWltbB91eWloqj8cTWK5duxbOsQEAgGHCegelv79f/f39GjMmuHuioqI0MDAw5HHnz59Xf3+/pkyZMuh2q9Uqq9UazlEBAIDBQg4Un8+ntra2wHp7e7uamppkt9uVnJysBQsWaMuWLYqPj1dKSopOnTqlzz//XB988IEk6cqVK6qqqtLSpUvlcDh04cIFFRcXa9asWXxBGAAAkPQAgVJfX6+cnJzAelFRkSSpoKBAFRUVqq6uVmlpqfLz8/XLL78oJSVF77zzjl5//XVJUmxsrE6ePKmdO3fK5/PJ5XJp2bJl2rZtm6KiosJ0WQAAYDgLOVCys7Pl9/uH3J6UlKRPP/10yO0ul0unTp0K9ccCAIBRhO/iAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYJyQA6Wurk55eXlyOp2yWCyqqakJ2u7z+fTmm29q6tSpio+PV1pamj7++OOgfXp7e7Vx40Y5HA6NHTtWK1as0PXr1x/qQgAAwMgRcqB0d3crIyND5eXlg27fvHmzvvrqK1VWVqqlpUWbN2/Wxo0bdeTIkcA+mzZt0uHDh1VdXa3Tp0/L5/Np+fLlunPnzoNfCQAAGDGiQz3A7XbL7XYPuf27775TQUGBsrOzJUkbNmzQnj17VF9fr5UrV8rj8Wjv3r3av3+/cnNzJUmVlZVyuVw6ceKEFi9e/GBXAgAARoywP4Myf/58HT16VD///LP8fr+++eYbXb58ORAeDQ0N6u/v16JFiwLHOJ1Opaen68yZM4Oes7e3V16vN2gBAAAjV9gD5aOPPtJTTz2lqVOnKjY2VkuWLNHu3bs1f/58SVJnZ6diY2M1fvz4oOMmT56szs7OQc9ZVlYmm80WWFwuV7jHBgAABnkkgXL27FkdPXpUDQ0Nev/99/XGG2/oxIkT9z3O7/fLYrEMuq20tFQejyewXLt2LdxjAwAAg4T8DMr99PT06O2339bhw4e1bNkySdLTTz+tpqYmvffee8rNzVVSUpL6+vp0+/btoLsot27d0ty5cwc9r9VqldVqDeeoAADAYGG9g9Lf36/+/n6NGRN82qioKA0MDEiSsrKyFBMTo+PHjwe2d3R0qLm5echAAQAAo0vId1B8Pp/a2toC6+3t7WpqapLdbldycrIWLFigLVu2KD4+XikpKTp16pQ+//xzffDBB5Ikm82m9evXq7i4WBMmTJDdbldJSYlmzpwZ+FQPAAAY3UIOlPr6euXk5ATWi4qKJEkFBQWqqKhQdXW1SktLlZ+fr19++UUpKSl655139PrrrweO+fDDDxUdHa2XXnpJPT09WrhwoSoqKhQVFRWGSwIAAMNdyIGSnZ0tv98/5PakpCR9+umn9z1HXFycdu3apV27doX64wEAwCjAd/EAAADjhPVTPACGn6T/sCj+vy9LN/j/lfuJ/+/LSvqPwf8UAoDwI1CAUe4/s2KVVvefUl2kJzFbmu7+twLw5yBQgFFuT0Of1vyfCqWlpkZ6FKO1XLyoPe//b62I9CDAKEGgAKNcp8+vnv/1hOR8JtKjGK2nc0CdvqE/IAAgvHjTGQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYJ+RAqaurU15enpxOpywWi2pqaoK2WyyWQZd33303sE92dvY929euXfvQFwMAAEaGkAOlu7tbGRkZKi8vH3R7R0dH0LJv3z5ZLBa9+OKLQfsVFhYG7bdnz54HuwIAADDiRId6gNvtltvtHnJ7UlJS0PqRI0eUk5Ojxx9/POj1hISEe/YFAACQHvEzKDdv3tSxY8e0fv36e7ZVVVXJ4XBoxowZKikpUVdX15Dn6e3tldfrDVoAAMDIFfIdlFB89tlnSkxM1OrVq4Nez8/P12OPPaakpCQ1NzertLRU586d0/Hjxwc9T1lZmbZv3/4oRwUAAAZ5pIGyb98+5efnKy4uLuj1wsLCwL+np6dr+vTpmj17thobG5WZmXnPeUpLS1VUVBRY93q9crlcj25wAAAQUY8sUL799ltdunRJX3zxxe/um5mZqZiYGLW2tg4aKFarVVar9VGMCQAADPTInkHZu3evsrKylJGR8bv7nj9/Xv39/ZoyZcqjGgcAAAwjId9B8fl8amtrC6y3t7erqalJdrtdycnJku6+BXPw4EG9//779xx/5coVVVVVaenSpXI4HLpw4YKKi4s1a9YszZs37yEuBQAAjBQhB0p9fb1ycnIC6789G1JQUKCKigpJUnV1tfx+v15++eV7jo+NjdXJkye1c+dO+Xw+uVwuLVu2TNu2bVNUVNQDXgYAABhJQg6U7Oxs+f3+++6zYcMGbdiwYdBtLpdLp06dCvXHAgCAUYTv4gEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGCckAOlrq5OeXl5cjqdslgsqqmpCdpusVgGXd59993APr29vdq4caMcDofGjh2rFStW6Pr16w99MQAAYGQIOVC6u7uVkZGh8vLyQbd3dHQELfv27ZPFYtGLL74Y2GfTpk06fPiwqqurdfr0afl8Pi1fvlx37tx58CsBAAAjRnSoB7jdbrnd7iG3JyUlBa0fOXJEOTk5evzxxyVJHo9He/fu1f79+5WbmytJqqyslMvl0okTJ7R48eJQRwIAACPMI30G5ebNmzp27JjWr18feK2hoUH9/f1atGhR4DWn06n09HSdOXNm0PP09vbK6/UGLQAAYOR6pIHy2WefKTExUatXrw681tnZqdjYWI0fPz5o38mTJ6uzs3PQ85SVlclmswUWl8v1KMcGAAAR9kgDZd++fcrPz1dcXNzv7uv3+2WxWAbdVlpaKo/HE1iuXbsW7lEBAIBBQn4G5Y/69ttvdenSJX3xxRdBryclJamvr0+3b98Ouoty69YtzZ07d9BzWa1WWa3WRzUqAAAwzCO7g7J3715lZWUpIyMj6PWsrCzFxMTo+PHjgdc6OjrU3Nw8ZKAAAIDRJeQ7KD6fT21tbYH19vZ2NTU1yW63Kzk5WZLk9Xp18OBBvf/++/ccb7PZtH79ehUXF2vChAmy2+0qKSnRzJkzA5/qAQAAo1vIgVJfX6+cnJzAelFRkSSpoKBAFRUVkqTq6mr5/X69/PLLg57jww8/VHR0tF566SX19PRo4cKFqqioUFRU1ANcAgAAGGlCDpTs7Gz5/f777rNhwwZt2LBhyO1xcXHatWuXdu3aFeqPBwAAowDfxQMAAIxDoAAAAOMQKAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOAQKAAAwDoECAACMQ6AAAADjECgAAMA4BAoAADAOgQIAAIxDoAAAAOMQKAAAwDgECgAAMA6BAgAAjBMd6QEARM6vv/4qSWpsbIzwJP9fT0+Prl69qmnTpik+Pj7S4wS0tLREegRgVCFQgFHs4sWLkqTCwsIITzJ8JCYmRnoEYFQgUIBRbNWqVZKk1NRUJSQkRHaY/6elpUXr1q1TZWWl0tLSIj1OkMTERE2fPj3SYwCjAoECjGIOh0OvvfZapMcYVFpamjIzMyM9BoAI4SFZAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgnJADpa6uTnl5eXI6nbJYLKqpqblnn5aWFq1YsUI2m02JiYl67rnn9NNPPwW2Z2dny2KxBC1r1659qAsBAAAjR8iB0t3drYyMDJWXlw+6/cqVK5o/f75SU1NVW1urc+fOaevWrYqLiwvar7CwUB0dHYFlz549D3YFAABgxIkO9QC32y232z3k9r/97W9aunSp/uu//ivw2uOPP37PfgkJCUpKSgr1xwMAgFEgrM+gDAwM6NixY3riiSe0ePFiTZo0SXPmzBn0baCqqio5HA7NmDFDJSUl6urqGvK8vb298nq9QQsAABi5whoot27dks/n044dO7RkyRJ9/fXXeuGFF7R69WqdOnUqsF9+fr4OHDig2tpabd26VYcOHdLq1auHPG9ZWZlsNltgcblc4RwbAAAYJuS3eO5nYGBAkrRy5Upt3rxZkvTMM8/ozJkz+uSTT7RgwQJJd58/+U16erqmT5+u2bNnq7GxUZmZmfect7S0VEVFRYF1r9dLpAAAMIKF9Q6Kw+FQdHS0nnrqqaDX09LSgj7F8z9lZmYqJiZGra2tg263Wq0aN25c0AIAAEausAZKbGysnn32WV26dCno9cuXLyslJWXI486fP6/+/n5NmTIlnOMAAIBhKuS3eHw+n9ra2gLr7e3tampqkt1uV3JysrZs2aI1a9bo+eefV05Ojr766it9+eWXqq2tlXT3Y8hVVVVaunSpHA6HLly4oOLiYs2aNUvz5s0L24UBAIDhK+RAqa+vV05OTmD9t2dDCgoKVFFRoRdeeEGffPKJysrK9Ne//lVPPvmkDh06pPnz50u6e5fl5MmT2rlzp3w+n1wul5YtW6Zt27YpKioqTJcFAACGM4vf7/dHeohQeb1e2Ww2eTwenkcBRpjGxkZlZWWpoaFh0IfmAQxfofz+5rt4AACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGiY70AABGhl9//VUXL1586PO0tLQE/TMcUlNTlZCQELbzAXj0CBQAYXHx4kVlZWWF7Xzr1q0L27kaGhqUmZkZtvMBePQIFABhkZqaqoaGhoc+T09Pj65evapp06YpPj4+DJPdnQ3A8GLx+/3+SA8RKq/XK5vNJo/Ho3HjxkV6HAAA8AeE8vubh2QBAIBxCBQAAGCckAOlrq5OeXl5cjqdslgsqqmpuWeflpYWrVixQjabTYmJiXruuef0008/Bbb39vZq48aNcjgcGjt2rFasWKHr168/1IUAAICRI+RA6e7uVkZGhsrLywfdfuXKFc2fP1+pqamqra3VuXPntHXrVsXFxQX22bRpkw4fPqzq6mqdPn1aPp9Py5cv1507dx78SgAAwIjxUA/JWiwWHT58WKtWrQq8tnbtWsXExGj//v2DHuPxeDRx4kTt379fa9askSTduHFDLpdL//rXv7R48eLf/bk8JAsAwPATsYdkBwYGdOzYMT3xxBNavHixJk2apDlz5gS9DdTQ0KD+/n4tWrQo8JrT6VR6errOnDkTznEAAMAwFdZAuXXrlnw+n3bs2KElS5bo66+/1gsvvKDVq1fr1KlTkqTOzk7FxsZq/PjxQcdOnjxZnZ2dg563t7dXXq83aAEAACNXWP9Q28DAgCRp5cqV2rx5syTpmWee0ZkzZ/TJJ59owYIFQx7r9/tlsVgG3VZWVqbt27eHc1QAAGCwsN5BcTgcio6O1lNPPRX0elpaWuBTPElJSerr69Pt27eD9rl165YmT5486HlLS0vl8XgCy7Vr18I5NgAAMExYAyU2NlbPPvusLl26FPT65cuXlZKSIknKyspSTEyMjh8/Htje0dGh5uZmzZ07d9DzWq1WjRs3LmgBAAAjV8hv8fh8PrW1tQXW29vb1dTUJLvdruTkZG3ZskVr1qzR888/r5ycHH311Vf68ssvVVtbK0my2Wxav369iouLNWHCBNntdpWUlGjmzJnKzc0N24UBAIDhK+SPGdfW1ionJ+ee1wsKClRRUSFJ2rdvn8rKynT9+nU9+eST2r59u1auXBnY99///re2bNmif/7zn+rp6dHChQu1e/duuVyuPzQDHzMGAGD4CeX3N18WCAAA/hSh/P4O66d4/iy/NRUfNwYAYPj47ff2H7k3MiwDpaurS5L+8FtCAADAHF1dXbLZbPfdZ1i+xTMwMKAbN24oMTFxyL+dAmB48nq9crlcunbtGm/hAiOM3+9XV1eXnE6nxoy5/weJh2WgABi5eMYMgBTmv4MCAAAQDgQKAAAwDoECwChWq1Xbtm2T1WqN9CgAIohnUAAAgHG4gwIAAIxDoAAAAOMQKAAAwDgECgAAMA6BAsAIdXV1ysvLk9PplMViUU1NTaRHAhBBBAoAI3R3dysjI0Pl5eWRHgWAAYbllwUCGHncbrfcbnekxwBgCO6gAAAA4xAoAADAOAQKAAAwDoECAACMQ6AAAADj8CkeAEbw+Xxqa2sLrLe3t6upqUl2u13JyckRnAxAJPBtxgCMUFtbq5ycnHteLygoUEVFxZ8/EICIIlAAAIBxeAYFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgnP8LyL19qQRkc7MAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# make a boxplot\n", "plt.boxplot(x)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now the *values* are on the **y-axis**" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAigAAAGxCAYAAABIjE2TAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA1UUlEQVR4nO3de1xVdb7/8feWm2K6E0GRE5c0DdJEUccymyBNRUPNykydIE0r08pbE3XM7DJ2Ku1UjOV0NLyN9mhSs5wsb2iO2qRGk3cwHTVBmzIQRCFdvz/Wz01bAd26kS/4ej4e6wFrfb/ruz/L85jDu+/6rrUdlmVZAgAAMEitqi4AAADgbAQUAABgHAIKAAAwDgEFAAAYh4ACAACMQ0ABAADGIaAAAADjEFAAAIBxCCgAAMA4BBSgmklPT5fD4XDbQkJCFB8fr08//bRSP9vhcOj555/32lgjR470yliXU1RUlFJSUjw+7/jx43r++eeVkZHh9ZqAmsi3qgsAcHHef/99RUdHy7Is5ebmKi0tTUlJSVqyZImSkpIq5TM3bNiga665plLGrumOHz+uSZMmSZLi4+OrthigGiCgANVUq1at1L59e9d+jx491KBBA82fP7/SAspNN91UKeMCwNm4xQPUELVr15a/v7/8/Pzcjk+aNEkdO3ZUUFCQ6tevr7i4OM2YMUNnf0/oqlWrFB8fr4YNG6pOnTqKiIjQ3XffrePHj7v6lHWL54cfftDw4cMVHh4uf39/hYWF6Z577tHhw4cvqO7p06erRYsWCggI0A033KAFCxac02fr1q3q06ePGjRooNq1a6tNmzaaNWuWqz0rK0v169fXvffee841+fj4aMKECRXWkJKSoquuukrbtm1Tly5dVLduXYWEhGjkyJFu11+e/fv3a/DgwWrUqJECAgIUExOjKVOm6PTp05Kkffv2KSQkRJL9f48zt+Yu5lYRcKVgBgWopk6dOqVff/1VlmXp8OHDeu2111RYWKiBAwe69du3b58efvhhRURESJI2btyoUaNG6YcfftBzzz3n6tOrVy/deuutmjlzpq6++mr98MMPWrZsmYqLixUYGFhmDT/88IM6dOigkpISPfPMM2rdurV++uknff755zp69KgaN25c4TUsWbJEq1ev1gsvvKC6detq2rRpuv/+++Xr66t77rlHkrRr1y516tRJjRo1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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Adding some explanation:\n", "plt.boxplot(x)\n", "plt.text(1.1, np.percentile(x, [0]), 'Minimum', color='blue')\n", "plt.text(1.1, np.percentile(x, [25]), 'Q1', color='blue')\n", "plt.text(1.1, np.percentile(x, [50]), 'Median', color='blue')\n", "plt.text(1.1, np.percentile(x, [75]), 'Q3', color='blue')\n", "plt.text(1.1, np.percentile(x,[100]), 'Maximun', color='blue')\n", "plt.title(\"Basic box plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "see documentation for definition of box and whiskers: \n", "\n", "https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.boxplot.html#matplotlib.axes.Axes.boxplot\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "image/png": "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iAYGBgKuovT39ysnJ2fC48bFxSkuLi6UUwUAAAYL6RWU0dFRjY6O6pprAg8bFRWl8fFxSVJ2drZiYmLU3Nzs397X16fOzs6LBgoAALi6BH0FZXBwUKdOnfK/Pn36tDo6OuRwODRnzhzddttt2rRpk+Lj4zV37ly1tLToT3/6k1588UVJkt1uV1lZmaqqqpSSkiKHw6Hq6mplZWX5v9UD4MrJ+JZN8f97QurluY2XEv+/J5TxrYn/DA0g9IIOlCNHjig3N9f/euPGjZKkdevWqa6uTg0NDaqpqdG9996rzz77THPnztXTTz+tX/7yl/59Nm/erOjoaK1evVrDw8PKy8tTXV2doqKiQnBKAILxi+xYLTr4C+lguGditkX68t8KwJVhsyzLCvckguX1emW32+XxeJSUlBTu6QAR6+jRo/rxbd/X/t07tGjhwnBPx2hdx47p/9x+j95uOaIlS5aEezpARArm8zukN8kCiDzuQUvD375ect4U7qkYbdg9LvdgxP3/HBCx+KMzAAAwDoECAACMQ6AAAADjECgAAMA4BAoAADAOgQIAAIxDoAAAAOMQKAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOAQKAAAwDoECAACMQ6AAAADjECgAAMA4BAoAADAOgQIAAIxDoAAAAOMQKAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOAQKAAAwDoECAACMQ6AAAADjECgAAMA4BAoAADAOgQIAAIxDoAAAAOMQKAAAwDgECgAAME7QgXLw4EGtWrVKTqdTNptNu3btCthus9kmXJ5//nn/GJ/Pp4qKCqWmpiohIUElJSXq6emZ8skAAIDpIehAGRoa0uLFi7Vly5YJt/f19QUsr7zyimw2m+68807/mMrKSjU1NamhoUGtra0aHBxUcXGxxsbGJn8mAABg2ogOdoeioiIVFRVddHtGRkbA6927dys3N1ff+c53JEkej0fbtm1TfX298vPzJUnbt2+Xy+XSvn37VFhYGOyUAADANHNZ70H59NNP9fbbb6usrMy/rr29XaOjoyooKPCvczqdyszMVFtb2+WcDgAAiBBBX0EJxmuvvabExETdcccd/nVut1uxsbFKTk4OGJueni632z3hcXw+n3w+n/+11+u9PBMGAABGuKxXUF555RXde++9mjFjxteOtSxLNpttwm21tbWy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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Adding an outlier to the data:\n", "plt.boxplot(np.append(x, [235]))\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAqQAAAFfCAYAAACY+97uAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAlmklEQVR4nO3df0zc92H/8dfx+0fgxkEMPhn/qJwMOpgnMysVdVZbYThWMWFu5rSZVWdiy6QaOmLcrUzqt52mhShraqm2knaVa7exYqZ2YLtpZZXIDjYi3pZzUcqGf224xjYX9gN/zmByYPz+/pHlvt8r2OHgjvcdPB/SR9F9Pu/P+94fKXnldcfn7lzGGCMAAADAkiTbCwAAAMDSRiEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYlWJ7AXNx79493bx5Uzk5OXK5XLaXA2ARMsbo9u3b8nq9SkpanK/dyVIAsRRJjiZkIb1586aKi4ttLwPAEjA4OKgVK1bYXkZMkKUAFsJscjQhC2lOTo6kDy8wNzfX8moALEaBQEDFxcWhvFmMyFIAsRRJjiZkIf3oT0u5ubmEKICYWsx/yiZLASyE2eTo4rwxCgAAAAmDQgoAAACrKKQAAACwikIKAAAAqyikAAAAsIpCCgAAAKsS8mufgEhMTU3p7NmzGhoa0vLly/X4448rOTnZ9rIAAMD/4h1SLGrt7e1au3atNm/erGeffVabN2/W2rVr1d7ebntpAADgf1FIsWi1t7fr6aefVnl5ud555x3dvn1b77zzjsrLy/X0009TSgEAiBMuY4yxvYhIBQIBud1uOY7Dr4tgRlNTU1q7dq3Ky8t17NgxJSX9v9de9+7dU11dnfr6+nT58mX+fI8ZLYWcWQrXCMCeSDKGe0ixKJ09e1ZXr17V0aNHw8qoJCUlJamlpUWVlZU6e/asNm3aZGeRABAH7ty5owsXLnzsuPHxcV29elWrV69WZmbmrOYuKSlRVlbWfJeIJYBCikVpaGhIklRWVjbj8Y/2fzQOAJaqCxcuqKKiIiZz+3w+rV+/PiZzY3GhkGJRWr58uSSpr69Pn/rUp6Yd7+vrCxsHAEtVSUmJfD7fx47r7+/Xzp07deTIEZWWls56bmA2KKRYlB5//HGtXr1aL7744oz3kLa2tmrNmjV6/PHHLa4SAOzLysqK6F3M0tJS3vVE1PEpeyxKycnJeuWVV/Tmm2+qrq4u7FP2dXV1evPNN/XNb36TDzQBABAHeIcUi9b27dv14x//WM3NzaqsrAztX7NmjX784x9r+/btFlcHAAA+QiHForZ9+3Y99dRT/FITAABxjEKKRS85OZmvdgIAII5xDykAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAqogKaWtrqzZs2KCcnBwtW7ZMdXV1unjxYtiYb3zjGyopKVF2drby8vJUVVWlf/qnfwobEwwG1djYqIKCAmVnZ6u2tlbXr1+f/9UAQJwjRwFguogKaVdXl3bv3q1z586ps7NTd+/eVXV1tcbGxkJjHn30UR04cEC//OUv1d3drdWrV6u6ulr/+Z//GRrT1NSkjo4OtbW1qbu7W6Ojo6qpqdHU1FT0rgwA4hA5CgAzMPMwPDxsJJmurq77jnEcx0gyb731ljHGmFu3bpnU1FTT1tYWGnPjxg2TlJRkTp48Oavn/WhOx3Hms3wAuK+FyhlbOfr/z0uWYjZ8Pp+RZHw+n+2lIEFEkjHzuofUcRxJksfjmfH4xMSE/v7v/15ut1vr1q2TJPl8Pk1OTqq6ujo0zuv1qqysTD09PTPOEwwGFQgEwjYAWAwWKkclshRA/JpzITXGaM+ePdq4caPKysrCjr355pt66KGHlJGRoX379qmzs1MFBQWSJL/fr7S0NOXl5YWdU1hYKL/fP+Nztba2yu12h7bi4uK5LhsA4sZC5qhElgKIX3MupA0NDXrvvfd09OjRacc2b96s3t5e9fT06Mknn9SOHTs0PDz8wPmMMXK5XDMea2lpkeM4oW1wcHCuywaAuLGQOSqRpQDi15wKaWNjo06cOKHTp09rxYoV045nZ2dr7dq1+tSnPqWDBw8qJSVFBw8elCQVFRVpYmJCIyMjYecMDw+rsLBwxudLT09Xbm5u2AYAiWyhc1QiSwHEr4gKqTFGDQ0Nam9v16lTp7RmzZpZnxcMBiVJFRUVSk1NVWdnZ+j40NCQ+vr6VFlZGclyACDhkKMAMF1KJIN3796tN954Q8ePH1dOTk7oXiW3263MzEyNjY3pb//2b1VbW6vly5frv//7v/Xqq6/q+vXr+sM//MPQ2Pr6ejU3Nys/P18ej0d79+5VeXm5qqqqon+FABBHyFEAmC6iQvraa69JkjZt2hS2/9ChQ3ruueeUnJysCxcu6Ac/+IH+67/+S/n5+dqwYYPOnj2r3/qt3wqN37dvn1JSUrRjxw6Nj4/riSee0OHDh5WcnDz/KwKAOEaOAsB0LmOMsb2ISAUCAbndbjmOwz1QAGJiKeTMUrhGRM/58+dVUVEhn8+n9evX214OEkAkGcNv2QMAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAqogKaWtrqzZs2KCcnBwtW7ZMdXV1unjxYuj45OSk/vIv/1Ll5eXKzs6W1+vVF7/4Rd28eTNsnmAwqMbGRhUUFCg7O1u1tbW6fv16dK4IAOIYOQoA00VUSLu6urR7926dO3dOnZ2dunv3rqqrqzU2NiZJunPnjs6fP6+vfe1rOn/+vNrb23Xp0iXV1taGzdPU1KSOjg61tbWpu7tbo6Ojqqmp0dTUVPSuDADiEDkKADMw8zA8PGwkma6urvuO+ed//mcjyfzqV78yxhhz69Ytk5qaatra2kJjbty4YZKSkszJkydn9byO4xhJxnGc+SwfAO5roXLGVo4aQ5YiMj6fz0gyPp/P9lKQICLJmHndQ+o4jiTJ4/E8cIzL5dJv/MZvSJJ8Pp8mJydVXV0dGuP1elVWVqaenp4Z5wgGgwoEAmEbACwGC5WjElkKIH7NuZAaY7Rnzx5t3LhRZWVlM4754IMP9NWvflXPPvuscnNzJUl+v19paWnKy8sLG1tYWCi/3z/jPK2trXK73aGtuLh4rssGgLixkDkqkaUA4tecC2lDQ4Pee+89HT16dMbjk5OT+vznP6979+7p1Vdf/dj5jDFyuVwzHmtpaZHjOKFtcHBwrssGgLixkDkqkaUA4lfKXE5qbGzUiRMndObMGa1YsWLa8cnJSe3YsUMDAwM6depU6FW9JBUVFWliYkIjIyNhr+6Hh4dVWVk54/Olp6crPT19LksFgLi00DkqkaUA4ldE75AaY9TQ0KD29nadOnVKa9asmTbmoxC9fPmy3nrrLeXn54cdr6ioUGpqqjo7O0P7hoaG1NfX98AgBYDFgBwFgOkieod09+7deuONN3T8+HHl5OSE7lVyu93KzMzU3bt39fTTT+v8+fN68803NTU1FRrj8XiUlpYmt9ut+vp6NTc3Kz8/Xx6PR3v37lV5ebmqqqqif4UAEEfIUQCYQSQf35c043bo0CFjjDEDAwP3HXP69OnQPOPj46ahocF4PB6TmZlpampqzLVr12a9Dr6qBECsxSpn4iVHjSFLERm+9gmRiiRjXMYYsyDNN4oCgYDcbrccxwm7rwoAomUp5MxSuEZEz/nz51VRUSGfz6f169fbXg4SQCQZw2/ZAwAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMCqiAppa2urNmzYoJycHC1btkx1dXW6ePFi2Jj29nZt2bJFBQUFcrlc6u3tnTZPMBhUY2OjCgoKlJ2drdraWl2/fn1eFwIAiYAcBYDpIiqkXV1d2r17t86dO6fOzk7dvXtX1dXVGhsbC40ZGxvTpz/9ab300kv3naepqUkdHR1qa2tTd3e3RkdHVVNTo6mpqblfCQAkAHIUAGZg5mF4eNhIMl1dXdOODQwMGEnmF7/4Rdj+W7dumdTUVNPW1hbad+PGDZOUlGROnjw5q+d1HMdIMo7jzGf5AHBfC5UztnLUGLIUkfH5fEaS8fl8tpeCBBFJxszrHlLHcSRJHo9n1uf4fD5NTk6quro6tM/r9aqsrEw9PT0znhMMBhUIBMI2AFgMFipHJbIUQPyacyE1xmjPnj3auHGjysrKZn2e3+9XWlqa8vLywvYXFhbK7/fPeE5ra6vcbndoKy4unuuyASBuLGSOSmQpgPg150La0NCg9957T0ePHo3KQowxcrlcMx5raWmR4zihbXBwMCrPCQA2LWSOSmQpgPg1p0La2NioEydO6PTp01qxYkVE5xYVFWliYkIjIyNh+4eHh1VYWDjjOenp6crNzQ3bACCRLXSOSmQpgPgVUSE1xqihoUHt7e06deqU1qxZE/ETVlRUKDU1VZ2dnaF9Q0ND6uvrU2VlZcTzAUAiIUcBYLqUSAbv3r1bb7zxho4fP66cnJzQvUput1uZmZmSpP/5n//RtWvXdPPmTUkKfb9eUVGRioqK5Ha7VV9fr+bmZuXn58vj8Wjv3r0qLy9XVVVVNK8NAOIOOQoAM4jk4/uSZtwOHToUGnPo0KEZx3z9618PjRkfHzcNDQ3G4/GYzMxMU1NTY65duzbrdfBVJQBiLVY5Ey85agxZisjwtU+IVCQZ4zLGmAXqvlETCATkdrvlOA73QAGIiaWQM0vhGhE958+fV0VFhXw+n9avX297OUgAkWQMv2UPAAAAqyikAAAAsIpCCgAAAKsopAAAALCKQgoAAACrKKQAAACwikIKAAAAqyikAAAAsIpCCgAAAKsopAAAALCKQgoAAACrKKQAAACwikIKAAAAqyikAAAAsIpCCgAAAKsopAAAALCKQgoAAACrKKQAAACwikIKAAAAqyikAAAAsIpCCgAAAKsopAAAALCKQgoAAACrKKQAAACwikIKAAAAqyikAAAAsIpCCgAAAKsiKqStra3asGGDcnJytGzZMtXV1enixYthY4wx+sY3viGv16vMzExt2rRJ//qv/xo2JhgMqrGxUQUFBcrOzlZtba2uX78+/6sBgDhHjgLAdBEV0q6uLu3evVvnzp1TZ2en7t69q+rqao2NjYXGvPzyy/rWt76lAwcO6F/+5V9UVFSk3//939ft27dDY5qamtTR0aG2tjZ1d3drdHRUNTU1mpqait6VAUAcIkcBYAZmHoaHh40k09XVZYwx5t69e6aoqMi89NJLoTEffPCBcbvd5jvf+Y4xxphbt26Z1NRU09bWFhpz48YNk5SUZE6ePDmr53Ucx0gyjuPMZ/kAcF8LlTO2ctQYshSR8fl8RpLx+Xy2l4IEEUnGzOseUsdxJEkej0eSNDAwIL/fr+rq6tCY9PR0feYzn1FPT48kyefzaXJyMmyM1+tVWVlZaMyvCwaDCgQCYRsALAYLlaMSWQogfs25kBpjtGfPHm3cuFFlZWWSJL/fL0kqLCwMG1tYWBg65vf7lZaWpry8vPuO+XWtra1yu92hrbi4eK7LBoC4sZA5KpGlAOLXnAtpQ0OD3nvvPR09enTaMZfLFfbYGDNt36970JiWlhY5jhPaBgcH57psAIgbC5mjElkKIH7NqZA2NjbqxIkTOn36tFasWBHaX1RUJEnTXqEPDw+HXu0XFRVpYmJCIyMj9x3z69LT05Wbmxu2AUAiW+gclchSAPErokJqjFFDQ4Pa29t16tQprVmzJuz4mjVrVFRUpM7OztC+iYkJdXV1qbKyUpJUUVGh1NTUsDFDQ0Pq6+sLjQGAxYocBYDpUiIZvHv3br3xxhs6fvy4cnJyQq/g3W63MjMz5XK51NTUpBdffFGPPPKIHnnkEb344ovKysrSs88+GxpbX1+v5uZm5efny+PxaO/evSovL1dVVVX0rxAA4gg5CgDTRVRIX3vtNUnSpk2bwvYfOnRIzz33nCTpL/7iLzQ+Pq4vfelLGhkZ0WOPPaaf//znysnJCY3ft2+fUlJStGPHDo2Pj+uJJ57Q4cOHlZycPL+rAYA4R44CwHQuY4yxvYhIBQIBud1uOY7DPVBL3J07d3ThwoWPHTc+Pq6rV69q9erVyszMnNXcJSUlysrKmu8SkaCWQs4shWtE9Jw/f14VFRXy+Xxav3697eUgAUSSMRG9QwrEmwsXLqiioiImcxO6AAAsDAopElpJSYl8Pt/Hjuvv79fOnTt15MgRlZaWznpuAAAQexRSJLSsrKyI3sUsLS3lXU8AAOLMvH46FAAAAJgvCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyKuJCeOXNG27Ztk9frlcvl0rFjx8KOv//++3ruuefk9XqVlZWlJ598UpcvXw4bEwwG1djYqIKCAmVnZ6u2tlbXr1+f14UAQKIgRwEgXMSFdGxsTOvWrdOBAwemHTPGqK6uTv/xH/+h48eP6xe/+IVWrVqlqqoqjY2NhcY1NTWpo6NDbW1t6u7u1ujoqGpqajQ1NTW/qwGABECOAsCvMfMgyXR0dIQeX7x40UgyfX19oX137941Ho/HfO973zPGGHPr1i2Tmppq2traQmNu3LhhkpKSzMmTJ2f1vI7jGEnGcZz5LB9LiM/nM5KMz+ezvRQkiIXKGVs5agxZisiQo4hUJBkT1XtIg8GgJCkjIyO0Lzk5WWlpaeru7pYk+Xw+TU5Oqrq6OjTG6/WqrKxMPT099503EAiEbQCwGMUqRz+amywFEI+iWkhLSkq0atUqtbS0aGRkRBMTE3rppZfk9/s1NDQkSfL7/UpLS1NeXl7YuYWFhfL7/TPO29raKrfbHdqKi4ujuWwAiBuxylGJLAUQv6JaSFNTU/WP//iPunTpkjwej7KysvT2229r69atSk5OfuC5xhi5XK4Zj7W0tMhxnNA2ODgYzWUDQNyIVY5KZCmA+JUS7QkrKirU29srx3E0MTGhhx9+WI899ph+93d/V5JUVFSkiYkJjYyMhL26Hx4eVmVl5YxzpqenKz09PdpLRRy7fPmybt++HbX5+vv7w/4ZLTk5OXrkkUeiOicQixyVyNKlJlFyVCJLEYNC+hG32y3pw/8g3n33Xf3N3/yNpA+DNjU1VZ2dndqxY4ckaWhoSH19fXr55ZdjtRwkkMuXL+vRRx+Nydw7d+6M+pyXLl0iSBET5CjmKtFyVCJLl7qIC+no6KiuXLkSejwwMKDe3l55PB6tXLlSP/rRj/Twww9r5cqV+uUvf6k///M/V11dXejme7fbrfr6ejU3Nys/P18ej0d79+5VeXm5qqqqondlSFgfvaI/cuSISktLozLn+Pi4rl69qtWrVyszMzMqc/b392vnzp1RfQcCSwM5ilhLlByVyFJ8KOJC+u6772rz5s2hx3v27JEk7dq1S4cPH9bQ0JD27Nmj999/X8uXL9cXv/hFfe1rXwubY9++fUpJSdGOHTs0Pj6uJ554QocPH/7Y+6OwtJSWlmr9+vVRm+/Tn/501OYC5oMcxUIhR5EoIi6kmzZtkjHmvse//OUv68tf/vID58jIyND+/fu1f//+SJ8eABIeOQoA4fgtewAAAFhFIQUAAIBVFFIAAABYRSEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYRSEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYRSEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYRSEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYFXEhPXPmjLZt2yav1yuXy6Vjx46FHR8dHVVDQ4NWrFihzMxMlZaW6rXXXgsbEwwG1djYqIKCAmVnZ6u2tlbXr1+f14UAQKIgRwEgXMSFdGxsTOvWrdOBAwdmPP7CCy/o5MmTOnLkiPr7+/XCCy+osbFRx48fD41pampSR0eH2tra1N3drdHRUdXU1GhqamruVwIACYIcBYBwKZGesHXrVm3duvW+x9955x3t2rVLmzZtkiQ9//zz+u53v6t3331XTz31lBzH0cGDB/X666+rqqpKknTkyBEVFxfrrbfe0pYtW6bNGQwGFQwGQ48DgUCkywaAuGEjRyWyFED8ivo9pBs3btSJEyd048YNGWN0+vRpXbp0KRSQPp9Pk5OTqq6uDp3j9XpVVlamnp6eGedsbW2V2+0ObcXFxdFeNgDEjVjkqESWAohfUS+k3/72t/XJT35SK1asUFpamp588km9+uqr2rhxoyTJ7/crLS1NeXl5YecVFhbK7/fPOGdLS4scxwltg4OD0V42AMSNWOSoRJYCiF8R/8n+43z729/WuXPndOLECa1atUpnzpzRl770JS1fvjz0p6WZGGPkcrlmPJaenq709PRoLxUA4lIsclQiSwHEr6gW0vHxcf3VX/2VOjo69NnPflaS9Nu//dvq7e3VN7/5TVVVVamoqEgTExMaGRkJe3U/PDysysrKaC4HCazoIZcyb12SbsbvN5Nl3rqkoofu/z9/YC7IUURLIuSoRJbiQ1EtpJOTk5qcnFRSUvi//MnJybp3754kqaKiQqmpqers7NSOHTskSUNDQ+rr69PLL78czeUggf1ZRZpKz/yZdMb2Su6vVB+uE4gmchTRkgg5KpGl+FDEhXR0dFRXrlwJPR4YGFBvb688Ho9Wrlypz3zmM/rKV76izMxMrVq1Sl1dXfrhD3+ob33rW5Ikt9ut+vp6NTc3Kz8/Xx6PR3v37lV5efkD/xSFpeW7vgk9838Oq7SkxPZS7qv/wgV995VnVWt7IUg45CgWQiLkqESW4n+ZCJ0+fdpImrbt2rXLGGPM0NCQee6554zX6zUZGRnmN3/zN80rr7xi7t27F5pjfHzcNDQ0GI/HYzIzM01NTY25du3arNfgOI6RZBzHiXT5SAA+n89IMj6fz/ZSHihR1om5iWXOxEOOGkOWLmaJlE+JtFZEJpKMifgd0k2bNskYc9/jRUVFOnTo0APnyMjI0P79+7V///5Inx4AEh45CgDh4vtOZwAAACx6FFIAAABYRSEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYRSEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYRSEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYRSEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYFXEhPXPmjLZt2yav1yuXy6Vjx46FHXe5XDNuf/d3fxcaEwwG1djYqIKCAmVnZ6u2tlbXr1+f98UAQCIgRwEgXMSFdGxsTOvWrdOBAwdmPD40NBS2ff/735fL5dLnPve50JimpiZ1dHSora1N3d3dGh0dVU1NjaampuZ+JQCQIMhRAAiXEukJW7du1datW+97vKioKOzx8ePHtXnzZn3iE5+QJDmOo4MHD+r1119XVVWVJOnIkSMqLi7WW2+9pS1btkS6JABIKOQoAISL6T2k77//vn7605+qvr4+tM/n82lyclLV1dWhfV6vV2VlZerp6ZlxnmAwqEAgELYBwFIQrRyVyFIA8SumhfQHP/iBcnJytH379tA+v9+vtLQ05eXlhY0tLCyU3++fcZ7W1la53e7QVlxcHMtlA0DciFaOSmQpgPgV00L6/e9/X3/0R3+kjIyMjx1rjJHL5ZrxWEtLixzHCW2Dg4PRXioAxKVo5ahElgKIXxHfQzpbZ8+e1cWLF/UP//APYfuLioo0MTGhkZGRsFf3w8PDqqysnHGu9PR0paenx2qpABCXopmjElkKIH7F7B3SgwcPqqKiQuvWrQvbX1FRodTUVHV2dob2DQ0Nqa+v74FBCgBLDTkKYKmI+B3S0dFRXblyJfR4YGBAvb298ng8WrlypSQpEAjoRz/6kV555ZVp57vdbtXX16u5uVn5+fnyeDzau3evysvLQ58WBYDFjBwFgHARF9J3331XmzdvDj3es2ePJGnXrl06fPiwJKmtrU3GGH3hC1+YcY59+/YpJSVFO3bs0Pj4uJ544gkdPnxYycnJc7gEAEgs5CgAhIu4kG7atEnGmAeOef755/X888/f93hGRob279+v/fv3R/r0AJDwyFEACMdv2QMAAMAqCikAAACsitnXPgFzdefOHUnS+fPnozbn+Pi4rl69qtWrVyszMzMqc/b390dlHgCItkTJUYksxYcopIg7Fy5ckCT96Z/+qeWVzE5OTo7tJQBAmETLUYksXeoopIg7dXV1kqSSkhJlZWVFZc7+/n7t3LlTR44cUWlpaVTmlD4M0EceeSRq8wFANCRSjkpkKSikiEMFBQX6kz/5k5jMXVpaqvXr18dkbgCIF+QoEg0fagIAAIBVFFIAAABYRSEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYRSEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYRSEFAACAVRRSAAAAWEUhBQAAgFUUUgAAAFhFIQUAAIBVFFIAAABYlWJ7AcB83LlzRxcuXPjYcf39/WH/nI2SkhJlZWXNeW0AkAjIUcQFE6Guri5TU1Njli9fbiSZjo6OaWP+7d/+zWzbts3k5uaahx56yDz22GPmV7/6Vej4Bx98YBoaGkx+fr7Jysoy27ZtM4ODg7Neg+M4RpJxHCfS5WOR8fl8RlJMNp/PZ/vyYFEscyYectQYshQfIkcRK5FkTMTvkI6NjWndunX64z/+Y33uc5+bdvzf//3ftXHjRtXX1+uv//qv5Xa71d/fr4yMjNCYpqYm/eQnP1FbW5vy8/PV3Nysmpoa+Xw+JScnR7okLGElJSXy+XwfO258fFxXr17V6tWrlZmZOeu5gVggRxFPyFHEA5cxxsz5ZJdLHR0dqqurC+37/Oc/r9TUVL3++usznuM4jh5++GG9/vrreuaZZyRJN2/eVHFxsX72s59py5YtH/u8gUBAbrdbjuMoNzd3rssHgPtaqJyxlaMSWQogtiLJmKh+qOnevXv66U9/qkcffVRbtmzRsmXL9Nhjj+nYsWOhMT6fT5OTk6qurg7t83q9KisrU09Pz4zzBoNBBQKBsA0AFqNY5ahElgKIX1EtpMPDwxodHdVLL72kJ598Uj//+c/1B3/wB9q+fbu6urokSX6/X2lpacrLyws7t7CwUH6/f8Z5W1tb5Xa7Q1txcXE0lw0AcSNWOSqRpQDiV9TfIZWkp556Si+88IJ+53d+R1/96ldVU1Oj73znOw881xgjl8s147GWlhY5jhPaBgcHo7lsAIgbscpRiSwFEL+iWkgLCgqUkpKiT37yk2H7S0tLde3aNUlSUVGRJiYmNDIyEjZmeHhYhYWFM86bnp6u3NzcsA0AFqNY5ahElgKIX1EtpGlpadqwYYMuXrwYtv/SpUtatWqVJKmiokKpqanq7OwMHR8aGlJfX58qKyujuRwASDjkKIClKOKvfRodHdWVK1dCjwcGBtTb2yuPx6OVK1fqK1/5ip555hn93u/9njZv3qyTJ0/qJz/5id5++21JktvtVn19vZqbm5Wfny+Px6O9e/eqvLxcVVVVUbswAIhX5CgA/JpIv+T09OnTM3757a5du0JjDh48aNauXWsyMjLMunXrzLFjx8LmGB8fNw0NDcbj8ZjMzExTU1Njrl27Nus18GXOAGItljkTDzlqDFkKILYiyZh5fQ+pLXx3HoBYWwo5sxSuEYA91r6HFAAAAIgUhRQAAABWRfyhpnjw0V0G/MoIgFj5KF8S8K6mWSNLAcRSJDmakIX09u3bksSvjACIudu3b8vtdtteRkyQpQAWwmxyNCE/1HTv3j3dvHlTOTk5D/xVEuAjgUBAxcXFGhwc5MMbmBVjjG7fvi2v16ukpMV5dxNZikiQo4hUJDmakIUUiBSfJgaA+SFHEUuL82U/AAAAEgaFFAAAAFZRSLEkpKen6+tf/7rS09NtLwUAEhI5iljiHlIAAABYxTukAAAAsIpCCgAAAKsopAAAALCKQgoAAACrKKQAAACwikKKRe3MmTPatm2bvF6vXC6Xjh07ZntJAJBwyFLEGoUUi9rY2JjWrVunAwcO2F4KACQsshSxlmJ7AUAsbd26VVu3brW9DABIaGQpYo13SAEAAGAVhRQAAABWUUgBAABgFYUUAAAAVlFIAQAAYBWfsseiNjo6qitXroQeDwwMqLe3Vx6PRytXrrS4MgBIHGQpYs1ljDG2FwHEyttvv63NmzdP279r1y4dPnx44RcEAAmILEWsUUgBAABgFfeQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAKgopAAAArKKQAgAAwCoKKQAAAKyikAIAAMAqCikAAACsopACAADAqv8LKDJpVkTLHl8AAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(8,4))\n", "ax1.boxplot(np.append(x, [235]))\n", "ax2.boxplot(np.append(x, [235]), whis=(0,100))\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Working with data - dataframes" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "# import the Pandas library\n", "import pandas as pd " ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
malesfemales
0152159.0
1171166.0
2173168.0
3173168.0
4178171.0
5179171.0
6180172.0
7180172.0
8182173.0
9182174.0
10182175.0
11185175.0
12185175.0
13185175.0
14185175.0
15185177.0
16186178.0
17187NaN
18190NaN
19190NaN
20192NaN
21192NaN
22197NaN
\n", "
" ], "text/plain": [ " males females\n", "0 152 159.0\n", "1 171 166.0\n", "2 173 168.0\n", "3 173 168.0\n", "4 178 171.0\n", "5 179 171.0\n", "6 180 172.0\n", "7 180 172.0\n", "8 182 173.0\n", "9 182 174.0\n", "10 182 175.0\n", "11 185 175.0\n", "12 185 175.0\n", "13 185 175.0\n", "14 185 175.0\n", "15 185 177.0\n", "16 186 178.0\n", "17 187 NaN\n", "18 190 NaN\n", "19 190 NaN\n", "20 192 NaN\n", "21 192 NaN\n", "22 197 NaN" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Make a DataFrame:\n", "data = pd.DataFrame({\n", " 'males': [152, 171, 173, 173, 178, 179, 180, 180, 182, 182, 182, 185, \n", " 185 ,185, 185, 185 ,186 ,187 ,190 ,190, 192, 192, 197], \n", " 'females':[159, 166, 168 ,168 ,171 ,171 ,172, 172, 173, 174 ,175 ,175,\n", " 175, 175, 175, 177, 178, np.nan,np.nan,np.nan,np.nan,np.nan,np.nan]\n", "})\n", "data" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n" ] } ], "source": [ "print(type(data))" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAigAAAGdCAYAAAA44ojeAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAnkElEQVR4nO3dfVRU94H/8c/AjAgoyIMPUBEx7gkmUKxkN8ZokKoQDCg1xvxsNqut3WyTlq6K2S12zdbdbdxaH5LGE5umtia6W5JYJV2NVuyBKEGSQEOPNGojxagNhCQ1THjoMMD9/ZFldllReZjJfIX36xyPzr13vn5vrhfeuXOZsVmWZQkAAMAgAf6eAAAAwP9FoAAAAOMQKAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOAQKAAAwjt3fExiIrq4uvffeexo9erRsNpu/pwMAAPrAsix98sknio2NVUDAta+R3JCB8t577ykuLs7f0wAAAANw8eJFTZw48Zrb3JCBMnr0aEmf7mBYWJifZwNfc7vdOnr0qDIyMuRwOPw9HQBexPk9vDidTsXFxXm+j1/LDRko3S/rhIWFESjDgNvtVkhIiMLCwvgCBgwxnN/DU19uz+AmWQAAYBwCBQAAGIdAAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHFuyA8LxNDR2tqqM2fOXHOb5jaXyk/VKiK6UqOCg647ZmJiokJCQrw1RQCAHxAo8KszZ84oNTW1T9tu7uOYVVVVmjFjxsAnBQDwOwIFfpWYmKiqqqprbnO2/mOtfemUtt2XrJtjxvRpTADAjY1AgV+FhIRc92pHwLsfKehEm6YlpWh6fNRnNDMAgD9xkywAADAOgQIAAIxDoAAAAOMQKAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOAQKAAAwDoECAACMQ6AAAADjECgAAMA4BAoAADAOgQIAAIxDoAAAAOMQKAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOAQKAAAwDoECAACMQ6AAAADjECgAAMA4BAoAADAOgQIAAIxDoAAAAOMQKAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOAQKAAAwDoECAACMQ6AAAADjECgAAMA4BAoAADAOgQIAAIxDoAAAAOMQKAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOAQKAAAwDoECAACM0+9AOX78uHJychQbGyubzaaioqIe699//32tXLlSsbGxCgkJ0d1336133nmnxzYul0t5eXmKjo5WaGioFi1apEuXLg1qRwAAwNDR70BpaWlRSkqKduzYccU6y7KUm5urP/zhD3r55Zf11ltvKT4+XvPnz1dLS4tnu9WrV+vAgQMqLCxUWVmZmpublZ2drc7OzsHtDQAAGBLs/X1CVlaWsrKyel33zjvvqKKiQjU1Nbr11lslSU8//bTGjRunn//85/ra176mpqYm7dq1S3v27NH8+fMlSXv37lVcXJyOHTumzMzMQewOAAAYCvodKNficrkkSSNHjvQsCwwM1IgRI1RWVqavfe1rqqqqktvtVkZGhmeb2NhYJSUlqby8vNdAcblcnrElyel0SpLcbrfcbrc3dwEG6ujo8PzO8QaGlu5zmnN7eOjPcfZqoCQmJio+Pl4FBQV65plnFBoaqm3btqmhoUH19fWSpIaGBo0YMUIRERE9njt+/Hg1NDT0Ou6mTZu0cePGK5YfPXpUISEh3twFGOhisyTZVVFRoT/W+Hs2AHyhuLjY31PAZ6C1tbXP23o1UBwOh37xi19o1apVioyMVGBgoObPn3/Vl4T+N8uyZLPZel1XUFCgtWvXeh47nU7FxcUpIyNDYWFhXps/zPTbC3+STlVq5syZSpkU6e/pAPAit9ut4uJiLViwQA6Hw9/TgY91vwLSF14NFElKTU1VdXW1mpqa1N7errFjx+r222/XbbfdJkmaMGGC2tvbdfny5R5XURobGzVr1qxexwwKClJQUNAVyx0OB/+ghwG73e75neMNDE18PR8e+nOMffY+KOHh4Ro7dqzeeecdVVZWavHixZI+DRiHw9Hjcl59fb1qamquGigAAGB46fcVlObmZp07d87zuK6uTtXV1YqMjNSkSZP00ksvaezYsZo0aZJOnTqlv//7v1dubq7nptjw8HCtWrVK+fn5ioqKUmRkpNatW6fk5GTPT/UAAIDhrd+BUllZqfT0dM/j7ntDVqxYod27d6u+vl5r167V+++/r5iYGP3N3/yNNmzY0GOM7du3y263a9myZWpra9O8efO0e/duBQYGDnJ3AADAUGCzLMvy9yT6y+l0Kjw8XE1NTdwkOwxUv/uRcndW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4/NA+eijj3Tx4kXFxMRIklJTU+VwOFRcXKxly5ZJkurr61VTU6PNmzf3aczY2FhdvHhRo0ePvupVFwwdTqdTcXFxunjxosLCwvw9HQBexPk9vFiWpU8++USxsbHX3bbfgdLc3Kxz5855HtfV1am6ulqRkZGKjIzUd7/7Xd17772KiYnR+fPntX79ekVHR+tLX/qSJCk8PFyrVq1Sfn6+oqKiFBkZqXXr1ik5OdnzUz3XExAQoIkTJ/Z36rjBhYWF8QUMGKI4v4eP61056dbvQKmsrFR6errncfe9IStWrNDOnTt16tQpPf/88/r4448VExOj9PR0vfDCCz3uFdm+fbvsdruWLVumtrY2zZs3T7t37+aTagEAgCTJZvXlThXAj5xOp8LDw9XU1MT/YQFDDOc3robP4oHxgoKC9M///M89bpQGMDRwfuNquIICAACMwxUUAABgHAIFAAAYh0ABAADGIVBwQ1m5cqVyc3P9PQ1gWLAsSw899JAiIyNls9lUXV3tl3mcP3/er38//MPn7yQLALgxHTlyRLt371ZpaammTJmi6Ohof08JwwiBAgDoVW1trWJiYq76OWmAL/ESD3xm7ty5ysvL0+rVqxUREaHx48frxz/+sVpaWvSVr3xFo0eP1k033aTDhw9Lkjo7O7Vq1SolJCQoODhYN998s5588slr/h2WZWnz5s2aMmWKgoODlZKSon379nnWX758WQ888IDGjh2r4OBg/cVf/IV+9rOf+XS/gaFg5cqVysvL04ULF2Sz2TR58uTrnm+lpaWy2Wz61a9+pS984QsKDg7WF7/4RTU2Nurw4cOaNm2awsLCtHz5crW2tnqed+TIEc2ePVtjxoxRVFSUsrOzVVtbe835vf3221q4cKFGjRql8ePH68EHH9SHH37oWb9v3z4lJycrODhYUVFRmj9/vlpaWrz/Hwo+Q6DAp5577jlFR0frjTfeUF5enh5++GHdd999mjVrln7zm98oMzNTDz74oFpbW9XV1aWJEyfqxRdf1Ntvv63HHntM69ev14svvnjV8f/pn/5JP/vZz7Rz50797ne/05o1a/TXf/3XevXVVyVJGzZs0Ntvv63Dhw/r9OnT2rlzJ5epgT548skn9S//8i+aOHGi6uvr9eabb173fOv23e9+Vzt27FB5ebkuXryoZcuW6YknntB//ud/6tChQyouLtZTTz3l2b6lpUVr167Vm2++qV//+tcKCAjQl770JXV1dfU6t/r6eqWlpWn69OmqrKzUkSNH9P777/f4ANrly5frq1/9qk6fPq3S0lItWbJEvO3XDcYCfCQtLc2aPXu253FHR4cVGhpqPfjgg55l9fX1liTr5MmTvY7xyCOPWPfee6/n8YoVK6zFixdblmVZzc3N1siRI63y8vIez1m1apW1fPlyy7IsKycnx/rKV77irV0ChpXt27db8fHxlmX17XwrKSmxJFnHjh3zrN+0aZMlyaqtrfUs+7u/+zsrMzPzqn9vY2OjJck6deqUZVmWVVdXZ0my3nrrLcuyLGvDhg1WRkZGj+dcvHjRkmSdPXvWqqqqsiRZ58+fH/C+w/+4BwU+9fnPf97z58DAQEVFRSk5OdmzbPz48ZKkxsZGSdKPfvQj/eQnP9G7776rtrY2tbe3a/r06b2O/fbbb+vPf/6zFixY0GN5e3u7vvCFL0iSHn74Yd177736zW9+o4yMDOXm5vJ6OjAAfTnfuv3v8378+PEKCQnRlClTeix74403PI9ra2u1YcMGVVRU6MMPP/RcOblw4YKSkpKumEtVVZVKSko0atSoK9bV1tYqIyND8+bNU3JysjIzM5WRkaGlS5cqIiJiYDsPvyBQ4FMOh6PHY5vN1mOZzWaTJHV1denFF1/UmjVrtHXrVt1xxx0aPXq0fvCDH+j111/vdezuL2KHDh3S5z73uR7ruj/XIysrS++++64OHTqkY8eOad68efrGN76hLVu2eG0fgeGgL+dbt/97jvf2deB/v3yTk5OjuLg4Pfvss4qNjVVXV5eSkpLU3t5+1bnk5OTo+9///hXrYmJiFBgYqOLiYpWXl+vo0aN66qmn9J3vfEevv/66EhIS+rfj8BsCBcY4ceKEZs2apUceecSz7Fo3yt1yyy0KCgrShQsXlJaWdtXtxo4dq5UrV2rlypWaM2eOHn30UQIF6Ke+nm/99dFHH+n06dN65plnNGfOHElSWVnZNZ8zY8YM/eIXv9DkyZNlt/f+bcxms+nOO+/UnXfeqccee0zx8fE6cOCA1q5d67W5w7cIFBhj6tSpev755/WrX/1KCQkJ2rNnj958882r/h/P6NGjtW7dOq1Zs0ZdXV2aPXu2nE6nysvLNWrUKK1YsUKPPfaYUlNTdeutt8rlcungwYOaNm3aZ7xnwI2vL+fbQERERCgqKko//vGPFRMTowsXLujb3/72NZ/zjW98Q88++6yWL1+uRx99VNHR0Tp37pwKCwv17LPPqrKyUr/+9a+VkZGhcePG6fXXX9cHH3zAuX+DIVBgjK9//euqrq7W/fffL5vNpuXLl+uRRx7x/Bhyb/71X/9V48aN06ZNm/SHP/xBY8aM0YwZM7R+/XpJ0ogRI1RQUKDz588rODhYc+bMUWFh4We1S8CQcr3zbSACAgJUWFiob33rW0pKStLNN9+sH/7wh5o7d+5VnxMbG6vXXntN//iP/6jMzEy5XC7Fx8fr7rvvVkBAgMLCwnT8+HE98cQTcjqdio+P19atW5WVlTXgeeKzZ7Msfu4KAACYhfdBAQAAxiFQAACAcQgUAABgHAIFAAAYh0ABAADGIVAAAIBxCBQAAGAcAgUAABiHQAEAAMYhUAAAgHEIFAAAYBwCBQAAGOf/A+XxQP+P58rDAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# The DataFrame has a direct method for making a boxplot:\n", "data.boxplot()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Reading data from an external file\n", "\n", "It is very important to learn how to read data from other files. In practice one will never type all the data into Python by hand!" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "csv_data= pd.read_csv(\"studentheights.csv\", sep=';')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n" ] } ], "source": [ "print(type(csv_data))" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
HeightGender
0152male
1171male
2173male
3173male
4178male
\n", "
" ], "text/plain": [ " Height Gender\n", "0 152 male\n", "1 171 male\n", "2 173 male\n", "3 173 male\n", "4 178 male" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "csv_data.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice that this DataFrame is differently structured compared to the one from above (which had columns: \"males\" and \"females\").\n", "\n", "If we wnt to do a boxplot by gender, we need to include the \"by=..\" argument:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 56, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjgAAAHNCAYAAAATwgHBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA/HElEQVR4nO3de1yUZf7/8fcAw1FFARVIRNQUDdTULbMMzCOGZmb2tWx1sywrzUMnK7fcrdw8ta2uZWqRWtpJTU1NLI8JpWxuWmlplpogZSpxCAe4fn+0zK8JVJBB4Ob1fDzmofd1X/d1f+57nJm392HGZowxAgAAsBCPqi4AAADA3Qg4AADAcgg4AADAcgg4AADAcgg4AADAcgg4AADAcgg4AADAcgg4AADAcgg4AADAcgg4qHWSkpJks9lcHg0bNlR8fLzWrFlT1eU5NWvWTCNGjCj3crm5uXrqqae0efNmt9dkVfHx8YqPjz9vP5vNpvvvv7/yC5J0/PhxPfbYY+rQoYPq1asnb29vNWnSRIMGDdKqVatUWFh4Uer4oxEjRqhZs2ZVsm6gPLyqugCgqrz66quKjo6WMUYZGRmaM2eO+vfvr1WrVql///5VXd4Fy83N1ZQpUySpTB/aqH5SU1M1YMAAGWM0evRodenSRXXq1NHhw4e1evVqDRo0SPPmzdPIkSOrulSg2iLgoNaKiYlR586dndN9+/ZVgwYNtHTp0hodcC623Nxc+fv7V3UZlnHq1CkNHDhQderU0ccff6ywsDCX+cOGDdPnn3+uEydOVFGF7pWXlyc/P7+qLgMWxCkq4H98fX3l7e0tu93u0v7zzz/r3nvv1SWXXCJvb281b95cjz/+uPLz8yVJv/76qy6//HK1bNlSp0+fdi6XkZGh0NBQxcfHO08njBgxQnXq1NEXX3yhHj16KCAgQA0bNtT999+v3Nzc89Z4+PBhDRs2TI0aNZKPj4/atGmjmTNnqqioSJL03XffqWHDhpKkKVOmOE/Bne9U1xdffKHevXvL399fDRs21H333af3339fNpvN5VRXfHy8YmJitHXrVnXt2lX+/v664447ylSbJG3evLnEmMV122w2JSUlOdvKs6+MMZo7d646dOggPz8/NWjQQIMHD9a3335bot+0adMUGRkpX19fdezYUevWrTvvfv+jefPmqVWrVvLx8VHbtm21bNkyl23x8vLS1KlTSyy3detW2Ww2vf3222cde/78+Tp+/LimTZtWItwUa9eunbp37+7SlpGRobvvvltNmjSRt7e3oqKiNGXKFBUUFLjUZrPZNGPGDM2aNUtRUVGqU6eOrrrqKqWmppZYT1JSklq3bu18PhctWlRqPWfOnNHTTz+t6Oho+fj4qGHDhvrLX/6iH3/80aVfs2bNlJiYqOXLl+vyyy+Xr6+v82gj4HYGqGVeffVVI8mkpqYah8Nhzpw5Y44cOWLGjh1rPDw8zPr165198/LyTLt27UxAQICZMWOG2bBhg5k8ebLx8vIy/fr1c/b7+uuvTd26dc2gQYOMMcYUFhaa6667zjRq1MgcO3bM2W/48OHG29vbNG3a1DzzzDNmw4YN5qmnnjJeXl4mMTHRpc7IyEgzfPhw53RmZqa55JJLTMOGDc1LL71k1q9fb+6//34jyYwePdoYY8yvv/5q1q9fbySZkSNHmpSUFJOSkmIOHDhw1v1x7NgxExwcbJo2bWqSkpLM2rVrze23326aNWtmJJlNmzY5+8bFxZmgoCATERFhZs+ebTZt2mS2bNlSptqMMWbTpk0lxjTGmEOHDhlJ5tVXX72gfXXXXXcZu91uJk6caNavX2/eeOMNEx0dbRo3bmwyMjKc/Z588knnvlm3bp15+eWXzSWXXGJCQ0NNXFzcWfdRMUkmIiLCtG3b1ixdutSsWrXK9O3b10gyb7/9trPfjTfeaJo2bWoKCgpclr/55ptNeHi4cTgcZ11Hr169jKenp8nJyTlvPcXS09NNRESEiYyMNPPmzTMbN240f//7342Pj48ZMWKEs1/xfm7WrJnp27evWblypVm5cqWJjY01DRo0MKdOnXL2LX6d3HDDDWb16tVmyZIlpmXLls71FCssLDR9+/Y1AQEBZsqUKSY5OdksWLDAXHLJJaZt27YmNzfX2TcyMtKEhYWZ5s2bm1deecVs2rTJfPrpp2XeTqA8CDiodYrfuP/48PHxMXPnznXp+9JLLxlJ5q233nJpf+6554wks2HDBmfbm2++aSSZf/7zn+avf/2r8fDwcJlvzG8f2pLMCy+84NL+zDPPGElm+/btzrY/BpxHH33USDKffPKJy7KjR482NpvN7N+/3xhjzI8//mgkmSeffLJM++Ohhx4yNpvNfPHFFy7tffr0KTXgSDIffvihS9+y1lbegFOWfZWSkmIkmZkzZ7r0O3LkiPHz8zMPP/ywMcaYkydPGl9fX3PjjTe69Pv444+NpDIHHD8/P5fQVFBQYKKjo03Lli2dbcXbuWLFCmfbDz/8YLy8vMyUKVPOuY7o6GgTGhpaor2wsNA4HA7no7Cw0Dnv7rvvNnXq1DHff/+9yzIzZswwkpzPbfF+jo2NdQlfn376qZFkli5d6lxXeHi46dixoykqKnL2++6774zdbncJOEuXLjWSzLvvvuuy7p07dxpJLq+pyMhI4+np6fz3AFQmTlGh1lq0aJF27typnTt3at26dRo+fLjuu+8+zZkzx9nno48+UkBAgAYPHuyybPEpnw8//NDZNmTIEI0ePVoPPfSQnn76aT322GPq1atXqeu+7bbbXKZvvfVWSdKmTZvOWu9HH32ktm3b6oorrihRizFGH3300fk3uhRbtmxRTEyM2rZt69I+dOjQUvs3aNBA11133UWpTTr/vlqzZo1sNpuGDRumgoIC5yM0NFTt27d3ng5LSUnRr7/+WmK8rl27KjIyssz19OjRQ40bN3ZOe3p66pZbbtGBAwd09OhRSb+dymvfvr3+/e9/O/u99NJLstlsGjVqVNk3/ncmTJggu93ufAwYMMA5b82aNerevbvCw8Nd9kFCQoKk357j37v++uvl6enpnG7Xrp0k6fvvv5ck7d+/X8eOHdOtt94qm83m7BcZGamuXbu6jLVmzRrVr19f/fv3d1l3hw4dFBoaWuJ0ZLt27dSqVasL2gdAeRBwUGu1adNGnTt3VufOndW3b1/NmzdPvXv31sMPP6xTp05Jkk6cOKHQ0FCXN3lJatSokby8vEpc6HnHHXfI4XDIy8tLY8eOLXW9Xl5eCg4OdmkLDQ11ru9sTpw4Ueo1GeHh4edd9lxOnDjh8oFdrLQ2SaXWUFm1lWVfHT9+XMYYNW7c2CUA2O12paam6qeffnLpX7x8aWOWxbmW//12jh07Vh9++KH2798vh8Oh+fPna/DgweddV9OmTfXjjz+WuM5o4sSJzkD+x319/PhxrV69usT2X3bZZZLk3AfF/rhPfXx8JP12we/vt6Ms++r48eM6deqU8/q13z8yMjJKrPts1xUB7sZdVMDvtGvXTh988IG+/vprXXHFFQoODtYnn3wiY4xLyMnMzFRBQYFCQkKcbTk5Obr99tvVqlUrHT9+XHfeeafee++9EusoKCjQiRMnXD5kMjIyJJX84Pm94OBgpaenl2g/duyYJLnUUh7BwcE6fvx4ifbimv7oj2GvPLX5+vpKkvMC7WJ//BAsVpZ9FRISIpvNpm3btjk/qH+vuK24f2nblZGRUebvdjnb8r9fh/TbkaZHHnlE//73v9WlSxdlZGTovvvuO+/4vXr10oYNG7R27VqXI4cRERGKiIiQJHl7e7ssExISonbt2umZZ54pdczioFlW59tXf1x3cHCw1q9fX+pYdevWdZku7d8PUBk4ggP8zu7duyXJeSdSjx49lJ2drZUrV7r0K76bpEePHs62e+65R4cPH9by5cu1cOFCrVq1Ss8//3yp63n99dddpt944w1J5/7emh49eujLL7/Uf/7znxK12Gw25101f/zf+PnExcVp7969+vLLL13af39n0PmUtbbiEPH555+79Fu1atVZxz7fvkpMTJQxRj/88IPziNzvH7GxsZKkLl26yNfXt8R4O3bscJ6aKYsPP/zQJRAWFhbqzTffVIsWLdSkSRNnu6+vr0aNGqXXXntNs2bNUocOHXT11Vefd/w777xTjRs31sMPP1xqaCxNYmKi9u7dqxYtWpS6D8obcFq3bq2wsDAtXbpUxhhn+/fff68dO3aUWPeJEydUWFhY6rpbt25drnUDblOVFwABVaH4IuNXX33VeZfRmjVrzB133GEkuVyEWnwXVd26dc2sWbNMcnKyefLJJ43dbne5i2r+/PklLpK9//77jd1ud7nw9lx3BiUkJLjUeba7qEJDQ83LL79sPvjgAzN27Fhjs9nMvffeW2LZ1q1bmw8++MDs3LnTHDp06Kz744cffnC5i2rdunXm9ttvN5GRkUaS2bJli7NvXFycueyyy0qMUZ7aevbsaRo0aGDmz59vNmzYYB555BFz6aWXlusuqj/uq1GjRhl/f3/z0EMPmdWrV5uPPvrIvP7662b06NEuF7k+8cQTzruo1q9fb+bPn++2u6iWLVtWov/Ro0eNl5eXkWQWLFhw3vGLpaSkmJCQENOwYUPz17/+1axdu9Zs3brVrFixwowfP974+PiYoUOHOvsfO3bMREZGmujoaDN37lzz4Ycfmvfff9/8+9//Ntdff705cuSIMeb/X2Q8ffr0Urft9xemL1iwwHkX1Zo1a856F1VBQYFJSEgwQUFBZsqUKWbdunVm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dOmi9k2DqrocABeRw+FQcnKyevXqxV1UtVDxGZyyqNSA88orr+i2226Tr6/vefsaY2Sz2Uqd5+PjIx+fkt93YLfb+QdeC3l5eTn/5PkHaife/2un8jznlXab+LZt27R//37deeedLu2hoaE6c+aMTp486dKemZmpxo0bV1Y5AACgFqm0gLNw4UJ16tRJ7du3d2nv1KmT7Ha7y/nT9PR07d27V127dq2scgAAQC1S7lNU2dnZOnDggHP60KFD2r17t4KCgtS06W/fVJuVlaW3335bM2fOLLF8YGCgRo4cqYkTJyo4OFhBQUF68MEHFRsb67yrCgAAoCLKHXB27dql7t27O6eLL/4dPny4kpKSJEnLli2TMUZDhw4tdYznn39eXl5eGjJkiPLy8tSjRw8lJSXJ07Niv1EEAAAgXUDAiY+PlzHmnH1GjRqlUaNGnXW+r6+vZs+erdmzZ5d39QAAAOfFb1EBAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADLIeAAAADL8arqAoDfy83N1b59+87ZZ3/6KeVnHNBXe/1UdKL+eceMjo6Wv7+/myoEANQEBBxUK/v27VOnTp3K1PfW18o2Zlpamjp27FiBqgAANQ0BB9VKdHS00tLSztknOy9f729K0fXdr1IdP58yjQkAqF0IOKhW/P39z3u0xeFw6ORPmbrqis6y2+0XqTIAQE3CRcYAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByCDgAAMByyh1wtm7dqv79+ys8PFw2m00rV64s0eerr77SgAEDFBgYqLp166pLly46fPiwc35+fr7GjBmjkJAQBQQEaMCA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dOhQ6tjlea+BdRFwcNEUh473339fl1xyicu8P/6ujN1ud/7dZrO5TBe3/f70U//+/RUREaH58+crPDxcRUVFiomJ0ZkzZ85aS//+/fXcc8+VmBcWFla+DQNQbqW9pv/4upd+e62+9dZbGj9+vGbOnKmrrrpKdevW1fTp0/XJJ5+UOnZ53mtgXQQcXDRt27aVj4+PDh8+rLi4OLeNe+LECX311VeaN2+eunXrJknavn37OZfp2LGj3n33XTVr1kxeXrwMgOps27Zt6tq1q+69915n27luIqis9xrULLyz46KpW7euHnzwQY0fP15FRUW65pprlJWVpR07dqhOnToaPnz4BY3boEEDBQcH6+WXX1ZYWJgOHz6sRx999JzL3HfffZo/f76GDh2qhx56SCEhITpw4ICWLVum+fPny9PT84JqAeB+LVu21KJFi/TBBx8oKipKixcv1s6dOxUVFVVq/8p6r0HNQsDBRfX3v/9djRo10tSpU/Xtt9+qfv366tixox577LELHtPDw0PLli3T2LFjFRMTo9atW+tf//qX4uPjz7pMeHi4Pv74Yz3yyCPq06eP8vPzFRkZqb59+8rDg5sLgerknnvu0e7du3XLLbfIZrNp6NChuvfee523kZemMt5rULPYjDGmqosAAABwJ/6rCgAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAAwAALIeAA6BC4uPjZbPZZLPZtHv37qouR5K0efNm2Ww2nTp1qsJjFW9b/fr1KzwWgIuHgAOgwu666y6lp6crJibG2fbuu+/quuuuU4MGDeTv76/WrVvrjjvu0GeffVaFlZZfenq6/vnPf1Z1GQDKiYADoML8/f0VGhrq/GX2Rx55RLfccos6dOigVatW6YsvvtDLL7+sFi1a1JjfAjpz5owkKTQ0VIGBgVVcDYDyIuAAcKvU1FRNmzZNs2bN0qxZs9StWzdFRUUpLi5Ojz/+uNauXevSf/Xq1erUqZN8fX3VvHlzTZkyRQUFBc75NptNCxYs0I033ih/f39deumlWrVqlcsYa9euVatWreTn56fu3bvru+++K1HXjh07dO2118rPz08REREaO3ascnJynPObNWump59+WiNGjFBgYKDuuusu9+4YABcVAQeAWy1dulR16tTRvffeW+p8m83m/PsHH3ygYcOGaezYsfryyy81b948JSUl6ZlnnnFZZsqUKRoyZIg+//xz9evXT7fddpt+/vlnSdKRI0c0aNAg9evXT7t379add96pRx991GX5PXv2qE+fPho0aJA+//xzvfnmm9q+fbvuv/9+l37Tp09XTEyM0tLSNHnyZHfsDgBVxQBABcTFxZkHHnjAOd23b1/Trl07lz4zZ840AQEBzsepU6eMMcZ069bNPPvssy59Fy9ebMLCwpzTkswTTzzhnM7OzjY2m82sW7fOGGPMpEmTTJs2bUxRUZGzzyOPPGIkmZMnTxpjjLn99tvNqFGjXNazbds24+HhYfLy8owxxkRGRpqBAweWuo2vvvqqCQwMLMPeAFBdeFV1wAJgPb8/SiNJd9xxhwYMGKBPPvlEw4YNkzFGkpSWlqadO3e6HLEpLCzUr7/+qtzcXPn7+0uS2rVr55wfEBCgunXrKjMzU5L01VdfqUuXLi7rvOqqq1zWn5aWpgMHDuj11193thljVFRUpEOHDqlNmzaSpM6dO7tj8wFUAwQcAG516aWXavv27XI4HLLb7ZKk+vXrq379+jp69KhL36KiIk2ZMkWDBg0qMY6vr6/z78XjFLPZbCoqKpIkZ1g6l6KiIt19990aO3ZsiXlNmzZ1/j0gIOC8YwGoGQg4ANxq6NChmj17tubOnasHHnjgnH07duyo/fv3q2XLlhe8vrZt22rlypUubampqSXW88UXX1RoPQBqFgIOALe66qqrNHHiRE2cOFHff/+9Bg0apIiICKWnp2vhwoWy2Wzy8Pjt/oa//vWvSkxMVEREhG6++WZ5eHjo888/1549e/T000+XaX333HOPZs6cqQkTJujuu+9WWlqakpKSXPo88sgj6tKli+677z7dddddCggI0FdffaXk5GTNnj3b3bsAQDXAXVQA3G7GjBl644039NlnnykxMVGXXnqpbr75ZhUVFSklJUX16tWTJPXp00dr1qxRcnKy/vSnP6lLly6aNWuWIiMjy7yupk2b6t1339Xq1avVvn17vfTSS3r22Wdd+rRr105btmzRN998o27duunyyy/X5MmTFRYW5tbtBlB92ExZTmADwFnEx8erQ4cOlv6236SkJI0bN84tP/0A4OIg4ACokPj4eO3YsUPe3t5KSUlRbGxsVZfkVnXq1FFBQYF8fX0JOEANQsABUCE//PCD8vLyJP12usjb27uKK3KvAwcOSJI8PT0VFRVVxdUAKCsCDgAAsBwuMgYAAJZDwAEAAJZDwAEAAJZDwAEAAJZDwAEAAJZDwAEAAJZDwAEAAJZDwAEAAJbz/wCMwBVDbnxUMQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "csv_data.boxplot(by='Gender')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Pie Chart\n", "\n", "For the CSV file data on students' Gender, make a pie chart." ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfEAAAH2CAYAAABgN7XFAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAABN1klEQVR4nO3deXwU5f0H8M/svZv7viEJhHDfKoeKoEKhUG9qPSqt/NSCtKVoVWoreJSCd60Vra3XT6qIx69yCAqIB4goAnKJhBuSQO5ks/c8vz8wWxZybbKb2dn5vF+vvCC7szPfnT0+eWae5xlJCCFAREREqqNTugAiIiLqGIY4ERGRSjHEiYiIVIohTkREpFIMcSIiIpViiBMREakUQ5yIiEilGOJEREQqxRAnIiJSKYZ4iOzYsQO33norevToAavVCqvViqKiItx+++346quvFKsrPz8f06ZN67JtSZIESZKg0+mQkJCAPn364Oc//znWrFnT7GMkScK8efOC2s7KlSuDfkxz23r55ZchSVJIX58TJ05g3rx52LZt2zn3zZs3D5IkhWxbwQjH+2Dz5s246qqr0K1bN5jNZmRkZGDkyJGYM2dOwHJ///vf8fLLL4d0200uueQSXHLJJWFZd5ONGzdi3rx5qKmpadfyTa9z04/NZkNubi4mTJiAZ555BvX19V1WS7h19LNIocMQD4Hnn38ew4YNw+bNm/Gb3/wGy5cvx4oVK/Db3/4Wu3btwnnnnYeSkhKly+wSo0ePxqZNm7Bx40a8/fbbuPPOO3Hw4EFMmDAB1157LTweT8DymzZtwvTp04PaxsqVKzF//vyga+vItoJ14sQJzJ8/v9kQnz59OjZt2hTW7bfk3XffxR//+MeQrW/FihUYNWoU6urqsGjRIqxZswZPP/00Ro8ejTfffDNg2XCGeFfYuHEj5s+fH3RwfvDBB9i0aRM++OADPPbYY+jWrRt+//vfo1+/fti+fXuX1hIuHf0sUugYlC5A7T7//HPMmDEDP/7xj7Fs2TKYTCb/fePGjcPMmTPx1ltvwWq1KlhlaPh8Pni9XpjN5haXSUxMxIgRI/y/X3bZZZg5cybmzZuH+fPn4/7778fChQv995+5bDgIIeB0OmG1WsO+rbbk5uYiNzdXkW0PGTIkpOtbtGgRCgoKsHr1ahgM//0auf7667Fo0aKQbkuthg0bhtTUVP/v119/Pe68806MGTMGP/nJT7Bv375WP0tE7SKoUyZNmiSMRqM4ceJEUI/bsmWLmDJlikhKShJms1kMHjxYvPnmmwHLvPTSSwKAWLdunbjjjjtESkqKSE5OFldddZU4fvx4wLJut1vcfffdIiMjQ1itVjF69GixefNm0b17d3HLLbcELFtaWipuu+02kZOTI4xGo8jPzxfz5s0THo/Hv8zBgwcFALFw4ULx0EMPifz8fKHX68WqVatafE7du3cXP/7xj1u8v1+/fsJmswmHw+G/DYB44IEH/L/b7XYxZ84ckZ+fL8xms0hKShLDhg0TS5YsEUIIccsttwgA5/wcPHjQv76ZM2eK5557TvTu3VsYjUbx3HPPNbutpv27Zs0aMW3aNJGUlCRsNpuYPHmyKCkpOee5nb0fhRBizJgxYsyYMUIIIdavX99sbU3bfOCBB8TZHzmfzycWLlwoiouLhclkEmlpaeLmm28WR48ePWc7/fr1E19++aW48MILhdVqFQUFBWLBggXC5/O1uM9bqr+p1iVLloi5c+eKrKwsERcXJy699FKxd+/eNtfXr18/ccEFF7Rru2fvj+7duwsh/rv/m167s2tbv369/zZZlsXChQtFt27dhNlsFkOGDBErV64M2P9Namtr/e8ho9EosrOzxW9+8xvR0NAQsFzTe+XVV18VvXv3FlarVQwcOFC8//77/mWaXrOzf86s7WxNjzl16lSz9y9atEgAEK+88or/tjVr1oif/OQnIicnR5jNZtGjRw9x2223BayjrVreeOMNcfnll4vMzExhsVhE7969xT333HPO8y4pKRE//elPRVZWljCZTCI9PV2MGzdOfPPNNwHLvfHGG2LEiBHCZrOJmJgYMX78eLF161b//W19FqlrMMQ7wev1CqvVKkaOHBnU49atWydMJpO46KKLxJtvvik++OADMW3aNAFAvPTSS/7lmr7kCgsLxaxZs8Tq1avFiy++KJKSksTYsWMD1nnLLbcISZLE3XffLdasWSOeeOIJkZOTI+Lj4wO+vEtLS0VeXp7o3r27eP7558VHH30kHnroIWE2m8W0adP8yzWFeE5Ojhg7dqxYtmyZWLNmTasf0LZC/N577xUAxKeffuq/7exgvf3224XNZhNPPPGEWL9+vVi+fLn4y1/+Ip555hkhhBD79+8X1157rQAgNm3a5P9xOp3+9eXk5IiBAweKJUuWiHXr1omdO3c2u62m/ZuXlyd++ctfilWrVokXXnhBpKeni7y8PFFdXR3w3NoK8draWv8677//fn9tTYHcXIjfdtttAoC48847xQcffCAWL14s0tLSRF5eXsAX+JgxY0RKSoooKioSixcvFh9++KGYMWPGOWHQkpZCPD8/X9x4441ixYoV4t///rfo1q2bKCoqEl6vt9X1TZ8+XQAQs2bNEl988YVwu93NLrd161ZRWFgohgwZ4t8fTUEQTIg37btbb73V/zrl5OSIzMzMgBC32+1i8ODBIjU1VTzxxBPio48+Ek8//bRISEgQ48aNE7Is+5dtev7nn3++WLp0qVi5cqW45JJLhMFg8P8Rd/ToUTFr1iwBQLzzzjv+51BbW9vivmkrxPfu3et/Lk2ee+45sWDBAvGf//xHbNiwQbzyyiti0KBBori42L9v26rloYceEk8++aRYsWKF+Pjjj8XixYtFQUHBOd8VxcXFomfPnuK1114TGzZsEG+//baYM2dOwP5+5JFHhCRJ4pe//KVYvny5eOedd8TIkSNFTEyM2LVrlxCi7c8idQ2GeCeUlZUJAOL6668/5z6v1ys8Ho//58wvj969e4shQ4YEtHyFEGLy5MkiKyvL37Jq+pKbMWNGwHJNf8mXlpYKIYTYs2ePACBmz54dsNzrr78uAAR8ed9+++0iNjZWHD58OGDZxx57TADwf0CbQrxHjx4tfkGfra0Qf+655wSAgCMOZwdr//79xZVXXtnqdmbOnHlOGJ65voSEBFFVVdXsfc2F+FVXXRWw3Oeffy4AiIcffjjgubUV4kKcPsJy9h9jTc4O8abX7ezXd/PmzQKAmDt3bsB2AIjNmzcHLNu3b18xYcKEc7Z1tpZCfNKkSQHLLV261P+l3JqKigpx4YUX+ltfRqNRjBo1SixYsEDU19cHLNuvX79zWstCtD/Eq6urhcViafF1OnPdCxYsEDqdTmzZsiVg2WXLlgkAYuXKlf7bAIiMjAxRV1fnv62srEzodDqxYMEC/22PPvpoUC3MtkLc4XAIAGLixInN3i/LsvB4POLw4cMCgPi///u/oGtpWseGDRsEALF9+3YhxOnXDYB46qmnWnzskSNHhMFgELNmzQq4vb6+XmRmZoqpU6f6b2vts0hdgx3bwmTYsGEwGo3+n8cffxwAsH//fuzduxc33ngjAMDr9fp/Jk2ahNLSUnz33XcB6/rJT34S8PvAgQMBAIcPHwYArF+/HgD862wyderUgPOVALB8+XKMHTsW2dnZAdueOHEiAGDDhg3nbNtoNHZ4P5xJtOPS9eeffz5WrVqFe++9Fx9//DEcDkfQ2xk3bhySkpLavfzZ+23UqFHo3r27f7+GS9P6z+41fv7556NPnz5Yu3ZtwO2ZmZk4//zzA24bOHCg/33QEW29t1qSkpKCTz/9FFu2bMFf/vIXXHHFFdi3bx/uu+8+DBgwABUVFR2u6WybNm2C0+ls8XU60/Lly9G/f38MHjw44P09YcIESJKEjz/+OGD5sWPHIi4uzv97RkYG0tPTO7VP29Lc5+DkyZO44447kJeXB4PBAKPR6H9ue/bsadd6Dxw4gBtuuAGZmZnQ6/UwGo0YM2ZMwDqSk5PRo0cPPProo3jiiSfwzTffQJblgPWsXr0aXq8XP//5zwP2ocViwZgxY87Zh6QsdmzrhNTUVFit1mY/8EuWLEFjYyNKS0sDvijLy8sBAHfddRfuuuuuZtd79hdgSkpKwO9NnWGaAq6yshLA6S/5MxkMhnMeW15ejvfff7/FYD5721lZWc0u1xFN+yk7O7vFZf76178iNzcXb775JhYuXAiLxYIJEybg0UcfRVFRUbu2E2zNZ++3ptua9mu4NK2/uXqzs7PPeV+d/VoCp98LHflDp6V1nv3easvw4cMxfPhwAIDH48E999yDJ598EosWLQpZB7eW3t/N3VZeXo79+/e3+/0djn3alrM/B7IsY/z48Thx4gT++Mc/YsCAAYiJiYEsyxgxYkS7amloaMBFF10Ei8WChx9+GL169YLNZsPRo0dx9dVX+9chSRLWrl2LBx98EIsWLcKcOXOQnJyMG2+8EY888gji4uL831HnnXdes9vS6dj2iyQM8U7Q6/UYN24c1qxZg9LS0oAv4759+wIADh06FPCYpt6q9913H66++upm11tcXBxUHU1fRGVlZcjJyfHf7vV6zwmi1NRUDBw4EI888kiz6zo7YEM1rlkIgffffx8xMTH+L/3mxMTEYP78+Zg/fz7Ky8v9rfIpU6Zg79697dpWsDWXlZU1e1vPnj39v1ssFrhcrnOWq6ioCOiBHIym1620tPScXusnTpzo8HqVYjQa8cADD+DJJ5/Ezp0721zeYrEAwDn7taWgbel1ys/P9//e9If1v/71r2a3GQn79D//+Q8A+Me379y5E9u3b8fLL7+MW265xb/c/v37273OdevW4cSJE/j444/9rW8AzQ5F6969O/75z38CAPbt24elS5di3rx5cLvdWLx4sX8fLVu27JwjHRR5GOKddN9992HVqlW44447sGzZsjYPPRcXF6OoqAjbt2/Hn//855DU0PRl8Prrr2PYsGH+25cuXQqv1xuw7OTJk7Fy5Ur06NEjqEPOnTV//nzs3r0bc+fO9X95tyUjIwPTpk3D9u3b8dRTT6GxsRE2my2gtRiKoXuvv/46rrnmGv/vGzduxOHDhwPGlOfn52PHjh0Bj9u3bx++++67gGAIpiU7btw4AMD//u//BrR6tmzZgj179uAPf/hDx55QFzj7j9YmTYdtz/xjsKWWbVP47tixI+AP16aQazJixAhYLJYWX6czQ3zy5Mn485//jJSUFBQUFHTouZ0t2KMTrWn63Ofn52Pq1KkA/vtH59nDzZ5//vl21xLMOs7Uq1cv3H///Xj77bexdetWAMCECRNgMBhQUlISsL+bE+rPIgWPId5Jo0ePxrPPPotZs2Zh6NChuO2229CvXz/odDqUlpbi7bffBgDEx8f7H/P8889j4sSJmDBhAqZNm4acnBxUVVVhz5492Lp1K956662gaujTpw9uuukmPPXUUzAajbjsssuwc+dOPPbYYwHbBYAHH3wQH374IUaNGoVf//rXKC4uhtPpxKFDh7By5UosXry4U2OZa2pq8MUXXwAA7HY7vvvuO7zxxhv49NNPMXXq1DYnhrjgggswefJkDBw4EElJSdizZw9ee+01jBw5EjabDQAwYMAAAMDChQsxceJE6PV6DBw4MGCMfjC++uorTJ8+Hddddx2OHj2KP/zhD8jJycGMGTP8y9x888246aabMGPGDFxzzTU4fPgwFi1ahLS0tIB1Nc3Y9/rrr6NPnz6IjY1FdnZ2s6cQiouLcdttt+GZZ56BTqfDxIkTcejQIfzxj39EXl4eZs+e3aHn0xUmTJiA3NxcTJkyBb1794Ysy9i2bRsef/xxxMbG4je/+Y1/2QEDBuCNN97Am2++icLCQlgsFgwYMADnnXceiouLcdddd8Hr9SIpKQnvvvsuPvvss4BtJSUl4a677sLDDz8c8DrNmzfvnMPpv/3tb/H2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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# import pandas as pd\n", "# Reload the CSV with the correct delimiter\n", "data = pd.read_csv(\"studentheights.csv\", delimiter=';')\n", "\n", "# Count the occurrences of each gender\n", "gender_counts = data['Gender'].value_counts()\n", "\n", "# Plot a pie chart of gender distribution\n", "# import matplotlib.pyplot as plt\n", "\n", "plt.figure(figsize=(6, 6))\n", "plt.pie(gender_counts, labels=gender_counts.index, autopct='%1.1f%%', startangle=90, colors=['lightblue', 'lightgreen'])\n", "plt.title('Gender Distribution in Student Dataset')\n", "plt.show()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "See the book for more plots (scatterplots, pie charts etc.)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "pernille", "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.11.9" } }, "nbformat": 4, "nbformat_minor": 2 }