You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Data-Science-For-Beginners/3-Data-Visualization/10-visualization-distributions/solution/notebook.ipynb

558 lines
163 KiB

{
"metadata": {
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.0"
},
"orig_nbformat": 4,
"kernelspec": {
"name": "python3",
"display_name": "Python 3.7.0 64-bit"
},
"interpreter": {
"hash": "70b38d7a306a849643e446cd70466270a13445e5987dfa1344ef2b127438fa4d"
}
},
"nbformat": 4,
"nbformat_minor": 2,
"cells": [
{
"cell_type": "markdown",
"source": [
"# Bird distributions"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"Visualize the dataset"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 3,
"source": [
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"birds = pd.read_csv('../../../data/birds.csv')\n",
"birds.head()"
],
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" Name ScientificName \\\n",
"0 Black-bellied whistling-duck Dendrocygna autumnalis \n",
"1 Fulvous whistling-duck Dendrocygna bicolor \n",
"2 Snow goose Anser caerulescens \n",
"3 Ross's goose Anser rossii \n",
"4 Greater white-fronted goose Anser albifrons \n",
"\n",
" Category Order Family Genus \\\n",
"0 Ducks/Geese/Waterfowl Anseriformes Anatidae Dendrocygna \n",
"1 Ducks/Geese/Waterfowl Anseriformes Anatidae Dendrocygna \n",
"2 Ducks/Geese/Waterfowl Anseriformes Anatidae Anser \n",
"3 Ducks/Geese/Waterfowl Anseriformes Anatidae Anser \n",
"4 Ducks/Geese/Waterfowl Anseriformes Anatidae Anser \n",
"\n",
" ConservationStatus MinLength MaxLength MinBodyMass MaxBodyMass \\\n",
"0 LC 47.0 56.0 652.0 1020.0 \n",
"1 LC 45.0 53.0 712.0 1050.0 \n",
"2 LC 64.0 79.0 2050.0 4050.0 \n",
"3 LC 57.3 64.0 1066.0 1567.0 \n",
"4 LC 64.0 81.0 1930.0 3310.0 \n",
"\n",
" MinWingspan MaxWingspan \n",
"0 76.0 94.0 \n",
"1 85.0 93.0 \n",
"2 135.0 165.0 \n",
"3 113.0 116.0 \n",
"4 130.0 165.0 "
],
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Name</th>\n",
" <th>ScientificName</th>\n",
" <th>Category</th>\n",
" <th>Order</th>\n",
" <th>Family</th>\n",
" <th>Genus</th>\n",
" <th>ConservationStatus</th>\n",
" <th>MinLength</th>\n",
" <th>MaxLength</th>\n",
" <th>MinBodyMass</th>\n",
" <th>MaxBodyMass</th>\n",
" <th>MinWingspan</th>\n",
" <th>MaxWingspan</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Black-bellied whistling-duck</td>\n",
" <td>Dendrocygna autumnalis</td>\n",
" <td>Ducks/Geese/Waterfowl</td>\n",
" <td>Anseriformes</td>\n",
" <td>Anatidae</td>\n",
" <td>Dendrocygna</td>\n",
" <td>LC</td>\n",
" <td>47.0</td>\n",
" <td>56.0</td>\n",
" <td>652.0</td>\n",
" <td>1020.0</td>\n",
" <td>76.0</td>\n",
" <td>94.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Fulvous whistling-duck</td>\n",
" <td>Dendrocygna bicolor</td>\n",
" <td>Ducks/Geese/Waterfowl</td>\n",
" <td>Anseriformes</td>\n",
" <td>Anatidae</td>\n",
" <td>Dendrocygna</td>\n",
" <td>LC</td>\n",
" <td>45.0</td>\n",
" <td>53.0</td>\n",
" <td>712.0</td>\n",
" <td>1050.0</td>\n",
" <td>85.0</td>\n",
" <td>93.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Snow goose</td>\n",
" <td>Anser caerulescens</td>\n",
" <td>Ducks/Geese/Waterfowl</td>\n",
" <td>Anseriformes</td>\n",
" <td>Anatidae</td>\n",
" <td>Anser</td>\n",
" <td>LC</td>\n",
" <td>64.0</td>\n",
" <td>79.0</td>\n",
" <td>2050.0</td>\n",
" <td>4050.0</td>\n",
" <td>135.0</td>\n",
" <td>165.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Ross's goose</td>\n",
" <td>Anser rossii</td>\n",
" <td>Ducks/Geese/Waterfowl</td>\n",
" <td>Anseriformes</td>\n",
" <td>Anatidae</td>\n",
" <td>Anser</td>\n",
" <td>LC</td>\n",
" <td>57.3</td>\n",
" <td>64.0</td>\n",
" <td>1066.0</td>\n",
" <td>1567.0</td>\n",
" <td>113.0</td>\n",
" <td>116.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Greater white-fronted goose</td>\n",
" <td>Anser albifrons</td>\n",
" <td>Ducks/Geese/Waterfowl</td>\n",
" <td>Anseriformes</td>\n",
" <td>Anatidae</td>\n",
" <td>Anser</td>\n",
" <td>LC</td>\n",
" <td>64.0</td>\n",
" <td>81.0</td>\n",
" <td>1930.0</td>\n",
" <td>3310.0</td>\n",
" <td>130.0</td>\n",
" <td>165.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
]
},
"metadata": {},
"execution_count": 3
}
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"Show a histogram of the MaxBodyMass data"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 4,
"source": [
"birds['MaxBodyMass'].plot(kind = 'hist',bins = 10,figsize = (12,12))\n",
"plt.show()"
],
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 864x864 with 1 Axes>"
],
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"Experiment with bins "
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 5,
"source": [
"birds['MaxBodyMass'].plot(kind = 'hist',bins = 30,figsize = (12,12))\n",
"plt.show()"
],
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 864x864 with 1 Axes>"
],
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAtMAAAKrCAYAAAAzhQGdAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3df7Bnd13f8dfbLL+lJJg1xiR1A02xcVpDXGkctFUoPwQl2EEax0pENE6FqVRnakBHcabMYKugtIoGoQaKQOSHpILVgIyOf0DYIISQgFkhSGIgK7+CYsGEd/+4Z+E27iZ333u/e+/dfTxmvnPP+Zxzv/nck5PdZ8493++3ujsAAMCR+4qtngAAAOxUYhoAAIbENAAADIlpAAAYEtMAADC0a6sncDROPfXU3rNnz1ZPAwCA49w111zz1929+67jOzqm9+zZk3379m31NAAAOM5V1UcONe42DwAAGBLTAAAwJKYBAGBITAMAwJCYBgCAITENAABDYhoAAIbENAAADIlpAAAYEtMAADAkpgEAYEhMAwDAkJgGAIAhMQ0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMCSmAQBgSEwDAMCQmAYAgCExDQAAQ2IaAACGxDQAAAyJaQAAGBLTAAAwJKYBAGBITAMAwJCYBgCAITENAABDu7Z6AjvVnkvfvKnPd9MLnripzwcAwOq5Mg0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMCSmAQBgSEwDAMCQmAYAgCExDQAAQ2IaAACGxDQAAAyJaQAAGBLTAAAwJKYBAGBITAMAwJCYBgCAITENAABDYhoAAIbENAAADIlpAAAYEtMAADAkpgEAYEhMAwDAkJgGAIAhMQ0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMCSmAQBgaGUxXVX3raqrq+q9VfX+qvr5ZfzsqnpnVe2vqtdW1b2X8fss6/uX7XtWNTcAANgMq7wy/fkkj+rub0xyXpLHV9UFSX4hyYu6+58k+VSSZyz7PyPJp5bxFy37AQDAtrWymO41f7Os3mt5dJJHJXndMn55kicvyxcu61m2P7qqalXzAwCAo7XSe6ar6qSqek+S25JcleQvkny6u+9Ydrk5yRnL8hlJPpoky/bPJPmqVc4PAACOxkpjurvv7O7zkpyZ5BFJvv5on7OqLqmqfVW178CBA0c9RwAAmDom7+bR3Z9O8vYk35Lk5KratWw6M8kty/ItSc5KkmX7g5J84hDPdVl37+3uvbt371753AEA4HBW+W4eu6vq5GX5fkkek+SGrEX1U5bdLk7ypmX5ymU9y/Y/6u5e1fwAAOBo7brnXcZOT3J5VZ2UtWi/ort/r6quT/KaqvovSf4sycuW/V+W5JVVtT/JJ5NctMK5AQDAUVtZTHf3tUkefojxD2Xt/um7jv/fJN+7qvkAAMBm8wmIAAAwJKYBAGBITAMAwJCYBgCAITENAABDYhoAAIbENAAADIlpAAAYEtMAADAkpgEAYEhMAwDAkJgGAIAhMQ0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMCSmAQBgSEwDAMCQmAYAgCExDQAAQ2IaAACGxDQAAAyJaQAAGBLTAAAwJKYBAGBITAMAwJCYBgCAITENAABDYhoAAIbENAAADIlpAAAYEtMAADAkpgEAYEhMAwDAkJgGAIAhMQ0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMCSmAQBgSEwDAMCQmAYAgCExDQAAQ2IaAACGxDQAAAyJaQAAGBLTAAAwJKYBAGBITAMAwJCYBgCAITENAABDYhoAAIbENAAADIlpAAAYEtMAADAkpgEAYEhMAwDAkJgGAIAhMQ0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMCSmAQBgSEwDAMCQmAYAgCExDQAAQ2IaAACGxDQAAAyJaQAAGBLTAAAwJKYBAGBITAMAwJCYBgCAITENAABDYhoAAIbENAAADIlpAAAYEtMAADAkpgEAYEhMAwDAkJgGAIAhMQ0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMLSymK6qs6rq7VV1fVW9v6p+fBl/XlXdUlXvWR5PWPc9z6mq/VX1wap63KrmBgAAm2HXCp/7jiQ/2d3vrqoHJrmmqq5atr2ou39x/c5VdW6Si5J8Q5KvTfLWqvqn3X3nCucIAABjK7sy3d23dve7l+XPJrkhyRl38y0XJnlNd3++uz+cZH+SR6xqfgAAcLSOyT3TVbUnycOTvHMZelZVXVtVL6+qU5axM5J8dN233ZxDxHdVXVJV+6pq34EDB1Y4awAAuHsrj+mq+sokr0/y7O6+PclLkjw0yXlJbk3yS0fyfN19WXfv7e69u3fv3vT5AgDARq00pqvqXlkL6Vd19xuSpLs/3t13dvcXk7w0X76V45YkZ6379jOXMQAA2JZW+W4eleRlSW7o7heuGz993W7fk+S6ZfnKJBdV1X2q6uwk5yS5elXzAwCAo7XKd/N4ZJIfSPK+qnrPMvbcJN9XVecl6SQ3JfnRJOnu91fVFUmuz9o7gTzTO3kAALCdrSymu/tPk9QhNr3lbr7n+Umev6o5AQDAZvIJiAAAMCSmAQBgSEwDAMCQmAYAgCExDQAAQ2IaAACGxDQAAAyJaQAAGBLTAAAwJKYBAGBITAMAwJCYBgCAITENAABDYhoAAIbENAAADIlpAAAYEtMAADAkpgEAYEhMAwDAkJgGAIAhMQ0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMCSmAQBgSEwDAMCQmAYAgCExDQAAQ2IaAACGxDQAAAyJaQAAGBLTAAAwJKYBAGBITAMAwJCYBgCAITENAABDYhoAAIbENAAADIlpAAAYEtMAADAkpgEAYEhMAwDAkJgGAIAhMQ0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMCSmAQBgSEwDAMCQmAYAgCExDQAAQ2IaAACGxDQAAAyJaQAAGBLTAAAwJKYBAGBITAMAwJCYBgCAITENAABDYhoAAIbENAAADIlpAAAYEtMAADAkpgEAYEhMAwDAkJgGAIAhMQ0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMCSmAQBgSEwDAMCQmAYAgCExDQAAQ2IaAACGxDQAAAyJaQAAGBLTAAAwJKYBAGBITAMAwJCYBgCAITENAABDYhoAAIbENAAADIlpAAAYEtMAADC0spiuqrOq6u1VdX1Vvb+qfnwZf3BVXVVVNy5fT1nGq6peXFX7q+raqjp/VXMDAIDNsMor03ck+cnuPjfJBUmeWVXnJrk0ydu6+5wkb1vWk+Q7k5yzPC5J8pIVzg0AAI7aymK6u2/t7ncvy59NckOSM5JcmOTyZbfLkzx5Wb4wySt6zTuSnFxVp69qfgAAcLSOyT3TVbUnycOTvDPJad1967LpY0lOW5bPSPLRdd928zJ21+e6pKr2VdW+AwcOrGzOAABwT1Ye01X1lUlen+TZ3X37+m3d3Un6SJ6vuy/r7r3dvXf37t2bOFMAADgyK43pqrpX1kL6Vd39hmX44wdv31i+3raM35LkrHXffuYyBgAA29Iq382jkrwsyQ3d/cJ1m65McvGyfHGSN60bf9ryrh4XJPnMuttBAABg29m1wud+ZJIfSPK+qnrPMvbcJC9IckVVPSPJR5I8ddn2liRPSLI/yeeSPH2FcwMAgKO2spju7j9NUofZ/OhD7N9Jnrmq+QAAwGbzCYgAADAkpgEAYEhMAwDAkJgGAIAhMQ0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMCSmAQBgSEwDAMCQmAYAgCExDQAAQ2IaAACGxDQAAAyJaQAAGBLTAAAwJKYBAGBITAMAwJCYBgCAITENAABDYhoAAIbENAAADIlpAAAYEtMAADAkpgEAYEhMAwDAkJgGAIAhMQ0AAENiGgAAhsQ0AAAMiWkAABgS0wAAMCSmAQBgSEwDAMDQhmK6qv75qicCAAA7zUavTP9aVV1dVT9WVQ9a6YwAAGCH2FBMd/e3Jfn+JGcluaaqfruqHrPSmQEAwDa34Xumu/vGJD+T5KeS/OskL66
},
"metadata": {
"needs_background": "light"
}
}
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"Filter the data and create a new histogram"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 6,
"source": [
"filteredBirds = birds[(birds['MaxBodyMass'] > 1) & (birds['MaxBodyMass'] < 60)] \n",
"filteredBirds['MaxBodyMass'].plot(kind = 'hist',bins = 40,figsize = (12,12))\n",
"plt.show() \n"
],
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 864x864 with 1 Axes>"
],
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"Create a 2D histgram showing the relationship between MaxBodyMass and MaxLength"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 7,
"source": [
"from matplotlib import colors\n",
"from matplotlib.ticker import PercentFormatter\n",
"\n",
"x = filteredBirds['MaxBodyMass']\n",
"y = filteredBirds['MaxLength']\n",
"\n",
"fig, ax = plt.subplots(tight_layout=True)\n",
"hist = ax.hist2d(x, y)"
],
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
],
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"Working with the filtered dataset, create a labelled and stacked histogram superimposing ConservationStatus with MaxBodyMass"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 8,
"source": [
"x1 = filteredBirds.loc[filteredBirds.ConservationStatus=='EX', 'MinWingspan']\n",
"x2 = filteredBirds.loc[filteredBirds.ConservationStatus=='CR', 'MinWingspan']\n",
"x3 = filteredBirds.loc[filteredBirds.ConservationStatus=='EN', 'MinWingspan']\n",
"x4 = filteredBirds.loc[filteredBirds.ConservationStatus=='NT', 'MinWingspan']\n",
"x5 = filteredBirds.loc[filteredBirds.ConservationStatus=='VU', 'MinWingspan']\n",
"x6 = filteredBirds.loc[filteredBirds.ConservationStatus=='LC', 'MinWingspan']\n",
"\n",
"kwargs = dict(alpha=0.5, bins=20)\n",
"\n",
"plt.hist(x1, **kwargs, color='red', label='Extinct')\n",
"plt.hist(x2, **kwargs, color='orange', label='Critically Endangered')\n",
"plt.hist(x3, **kwargs, color='yellow', label='Endangered')\n",
"plt.hist(x4, **kwargs, color='green', label='Near Threatened')\n",
"plt.hist(x5, **kwargs, color='blue', label='Vulnerable')\n",
"plt.hist(x6, **kwargs, color='gray', label='Least Concern')\n",
"\n",
"plt.gca().set(title='Conservation Status', ylabel='Max Body Mass')\n",
"plt.legend();"
],
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
],
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAAEICAYAAABYoZ8gAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3deXhV9bX/8fcSwowgg4giBm8RZAwQUuYGLEPFqwUtXhBFrVKrKKiVH6IVtFix0oJTVahc6gBERayt2gtYU3EkAQIyqBGNCjKJMikgw/r9sXdOQyDhJOQkIefzep7zZM977cNhnX2++7vXNndHRETix0llHYCIiJQuJX4RkTijxC8iEmeU+EVE4owSv4hInFHiFxGJM0r8IsfJzMab2V/KOg6RaCnxS4kzs2Fmlmlmu81so5m9ZmY9yjqukmBmqWa2Pu80d/+9u18Tg31VMbM/mtn68L3MMbNpeebnmNlPi7C9WWY2qaTjlBOPEr+UKDO7BZgG/B5oBDQF/gxcVJZx5TKzymUdQxHcDiQDKUBtIBVYVpYBSQXh7nrpVSIvoA6wG/hFIctUJfhi+Cp8TQOqhvNSgfXArcAWYCNwVZ51zwfWALuADcBv8sy7AMgCtgPvAO3yzMsB/h+wEtgXDr+QL64HgYfC4auAteF+PgV+FU6vCewBDoXHuRs4HZgIPJNnWxcCq8NY0oFz88XymzCWHUAaUK2A9+ofwJgC5j0dxrEnjGNsOP15YFO47TeB1uH0kcB+4Idw+b+H0x34UZ7tzgImhcMNwhi2A98Ai4GTyvpzptfxv8o8AL0qzgsYABwAKheyzD3Ae8CpQMMwSf8unJcarn8PkBAm+u+BU8L5G4Ge4fApQMdwuEP4RfFjoBIwIkywuV8oOeGXwplAdeCscLu1w/mVwm13CccHAv8FGPCTcNmOeWJcn++YIokfOAf4DugbHsNY4BOgSp5YlhB8YdQj+IK5roD36k7gC+B6oC1g+ebnAD/NN+1qgl8HuV+wWXnmRZJ6nmmFJf77gMfD40gAeuaPQa8T86WmHilJ9YGv3f1AIctcBtzj7lvcfStwN3B5nvn7w/n73f1VgrPTFnnmtTKzk939W3fPbfYYCTzh7u+7+0F3/yvBmX2XPNt9yN2/dPc97v45QZPJoHBeH+B7d38PwN1fcfd1Hvg3sIAg6UXjUuAVd1/o7vuBKQRfNt3yxfKVu38D/B1IKmBb9wH3h+9ZJrDBzEYUtnN3n+nuu9x9H8EXUnszqxNl7PntBxoDZ4X/HovdXcW9KgAlfilJ24AGx2hHPx34PM/45+G0yDbyfXF8D9QKhy8m+BXwuZn928y6htPPAm41s+25L4Kz+7zb/TJfHLOBoeHwsHAcADP7mZm9Z2bfhNs6n6DZIxqHHZ+7Hwr3fUaeZTYVcHyHCb/EHnX37kBd4F5gppmde7TlzaySmU02s3VmtpPgFwFFiD2/Bwh+rSwws0/NbFwxtyPljBK/lKR3Cc60f17IMl8RJOpcTcNpx+TuGe5+EUEz0UvAc+GsL4F73b1unlcNd5+Td/V8m3seSDWzJgRn/rMBzKwqMI/gTL2Ru9cFXiVo9jnadgo9PjMzgi+hDdEcY0HCXyqPAt8CrQqIZRjBRfSfElxvScwNo4DlIfjiqZFn/LQ8+9zl7re6+9kE1y1uMbPzjuc4pHxQ4pcS4+47gLuAR83s52ZWw8wSwjPoP4SLzQHuNLOGZtYgXP6ZY2077Np4mZnVCZtQdhJc3ASYAVxnZj+2QE0zG2hmtQuJdSvBhdf/BT5z97XhrCoE7eNbgQNm9jOgX55VNwP1C2k+eQ4YaGbnmVkCwYXqfQTXMorEzMaE3Uerm1nlsJmnNrA8Tyxn51mldrivbQTJ/Pf5Npl/eQiufQwLfy0MILimkbv/C8zsR+GX1w7gIP95z+UEpsQvJcrd/wjcQnBhcivB2fgogjN0gEkE7dUrgQ8I2tqj7Vt+OZATNmNcR9D2jbtnAtcCjxCcEX8CXBnF9mYTnB1HmnncfRdwE0EC/5bgLPrlPPM/JPjy+jRsVsrbnIS7fwQMBx4Gvgb+G/hvd/8hymPM63vgjwRNQ18DNwAXu/un4fz7CL5Et5vZb4CnCJqZNhD0fnov3/aeJLhGst3Mcv89Rocxbid4P1/Ks3xzYBHBdZZ3gT+7+xvFOA4pZ0zXakRE4ovO+EVE4owSv4hInFHiFxGJM0r8IiJxJmYFq8ysGkGtkKrhfl5w9wlm1gyYS3CX51Lg8mP1eGjQoIEnJibGKlQRkQpp6dKlX7t7w/zTY1mpcB/Qx913h/2Z3zKz1wi6+k1197lm9jjwS+CxwjaUmJhIZmZmDEMVEal4zOzzo02PWVNPWOdkdziaW+TJCeqivBBO/yuF3+UpIiIlLKZt/OHdgFkElRMXAuuA7Xlqsazn8BomIiISYzFN/GGRqSSgCcHDJFpGu66ZjQyf4pS5devWmMUoIhJvSuVpRO6+3czeALoCdc2scnjW34QCile5+3RgOkBycrJuL5YKb//+/axfv569e/eWdShygqlWrRpNmjQhISEhquVj2aunIbA/TPrVCR5McT/wBnAJQc+eEcDfYhWDyIlk/fr11K5dm8TERIK6aCLH5u5s27aN9evX06xZs6jWiWVTT2PgDTNbCWQAC939HwSPvbvFzD4h6NL5ZAxjEDlh7N27l/r16yvpS5GYGfXr1y/SL8WYnfG7+0qCR+Lln/4pQXu/iOSjpC/FUdTPje7cFRGJM6VycVdEimHixFLfXqVKlWjbtm1k/H/+538YN67gJy7+/ve/Z/z48ZHxbt268c47RX7mDFlZWXz11Vecf/75RV5Xik6JX8q99PT0Iq+Tmppa4nHEg+rVq5OVlRX18vkTf3GSPgSJPzMzU4m/lKipR0QKtWPHDlq0aMFHH30EwNChQ5kxYwbjxo1jz549JCUlcdlllwFQq1bw3Pj09HRSU1O55JJLaNmyJZdddhm5D33KyMigW7dutG/fnpSUFHbs2MFdd91FWloaSUlJpKWllc2BxhGd8YtIRG4iz3X77bdz6aWX8sgjj3DllVcyevRovv32W6699loAHnnkkQJ/ISxfvpzVq1dz+umn0717d95++21SUlK49NJLSUtLo3PnzuzcuZMaNWpwzz33kJmZySOPPFIqxxnvlPhFJKKgpp6+ffvy/PPPc8MNN7BixYqotpWSkkKTJk0ASEpKIicnhzp16tC4cWM6d+4MwMknn1xywUvU1NQjIsd06NAh1q5dS40aNfj222+jWqdq1aqR4UqVKnHgwIFClpbSpMQvIsc0depUzj33XGbPns1VV13F/v37AUhISIgMR6NFixZs3LiRjIwMAHbt2sWBAweoXbs2u3btiknsciQ19YiUVyXdnTMK+dv4BwwYwFVXXcVf/vIXlixZQu3atenVqxeTJk3i7rvvZuTIkbRr146OHTvy7LPPHnP7VapUIS0tjRtvvJE9e/ZQvXp1Fi1aRO/evZk8eTJJSUmR6woSO5Z7pb08S05Odj2IJX7FS3fOtWvXcu6555Z1GHKCOtrnx8yWunty/mXV1CMiEmeU+EVE4owSv4hInFHiFxGJM0r8IiJxRolfRCTOqB+/SHm1cmLJbq/dsbe3adMmxowZQ0ZGBnXr1qVRo0ZMmzaNc84554hlc0sw5+Tk8M477zBs2DAAMjMzeeqpp3jooYeKHGJqaipTpkwhOTmZxMREMjMzadCgQVTrFrWkdH5F3V9ZSE9PZ8qUKfzjH/84ru0o8YsIEDy7ddCgQYwYMYK5c+cCsGLFCjZv3nxY4j9w4ACVK1eOlGDOyclh9uzZkcSfnJxMcvIRXcdjrqglpcsLd8fdOemk0muAUVOPiADwxhtvkJCQwHXXXReZ1r59e3r27El6ejo9e/bkwgsvpFWrVsB/SjCPGzeOxYsXk5SUxNSpU0lPT+eCCy4AYPfu3Vx11VW0bduWdu3aMW/ePAB+/etfk5ycTOvWrZkwYUKhcd11111MmzYtMn7HHXfw4IMPRn1ciYmJTJgwgY4dO9K2bVs
},
"metadata": {
"needs_background": "light"
}
}
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"Working with Seaborn, create a smooth plot about MinWingspan"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 9,
"source": [
"import seaborn as sns\n",
"import matplotlib.pyplot as plt\n",
"sns.kdeplot(filteredBirds['MinWingspan'])\n",
"plt.show()"
],
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/cbook/__init__.py:1402: FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated and will be removed in a future version. Convert to a numpy array before indexing instead.\n",
" x[:, None]\n",
"/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/axes/_base.py:276: FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated and will be removed in a future version. Convert to a numpy array before indexing instead.\n",
" x = x[:, np.newaxis]\n",
"/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/axes/_base.py:278: FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated and will be removed in a future version. Convert to a numpy array before indexing instead.\n",
" y = y[:, np.newaxis]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
],
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"Try a kdeplot about MaxBodyMass"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 11,
"source": [
"sns.kdeplot(filteredBirds['MaxBodyMass'])\n",
"plt.show()"
],
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/cbook/__init__.py:1402: FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated and will be removed in a future version. Convert to a numpy array before indexing instead.\n",
" x[:, None]\n",
"/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/axes/_base.py:276: FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated and will be removed in a future version. Convert to a numpy array before indexing instead.\n",
" x = x[:, np.newaxis]\n",
"/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/axes/_base.py:278: FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated and will be removed in a future version. Convert to a numpy array before indexing instead.\n",
" y = y[:, np.newaxis]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
],
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"Experiment with the plot smoothing parameter"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 12,
"source": [
"sns.kdeplot(filteredBirds['MaxBodyMass'], bw_adjust=.2)\n",
"plt.show()"
],
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/cbook/__init__.py:1402: FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated and will be removed in a future version. Convert to a numpy array before indexing instead.\n",
" x[:, None]\n",
"/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/axes/_base.py:276: FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated and will be removed in a future version. Convert to a numpy array before indexing instead.\n",
" x = x[:, np.newaxis]\n",
"/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/axes/_base.py:278: FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated and will be removed in a future version. Convert to a numpy array before indexing instead.\n",
" y = y[:, np.newaxis]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
],
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"Create a 2D kdeplot comparing MinLength and MaxLength with hue showing ConservationStatus"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 13,
"source": [
"sns.kdeplot(data=filteredBirds, x=\"MinLength\", y=\"MaxLength\", hue=\"ConservationStatus\")\n"
],
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/seaborn/distributions.py:1078: UserWarning: Dataset has 0 variance; skipping density estimate.\n",
" warnings.warn(msg, UserWarning)\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x7fe4e053cf98>"
]
},
"metadata": {},
"execution_count": 13
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
],
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"metadata": {}
}
]
}