Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save dmalc/163a408c56163032c81b870e6760fc23 to your computer and use it in GitHub Desktop.
Save dmalc/163a408c56163032c81b870e6760fc23 to your computer and use it in GitHub Desktop.
Created on Skills Network Labs
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<a href=\"https://cognitiveclass.ai\"><img src = \"https://ibm.box.com/shared/static/9gegpsmnsoo25ikkbl4qzlvlyjbgxs5x.png\" width = 400> </a>\n",
"\n",
"<h1 align=center><font size = 5>Introduction to Matplotlib and Line Plots</font></h1>"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"## Introduction\n",
"\n",
"The aim of these labs is to introduce you to data visualization with Python as concrete and as consistent as possible. \n",
"Speaking of consistency, because there is no *best* data visualization library avaiblable for Python - up to creating these labs - we have to introduce different libraries and show their benefits when we are discussing new visualization concepts. Doing so, we hope to make students well-rounded with visualization libraries and concepts so that they are able to judge and decide on the best visualitzation technique and tool for a given problem _and_ audience.\n",
"\n",
"Please make sure that you have completed the prerequisites for this course, namely <a href='http://cocl.us/PY0101EN_DV0101EN_LAB1_Coursera'>**Python for Data Science**</a> and <a href='http://cocl.us/DA0101EN_DV0101EN_LAB1_Coursera'>**Data Analysis with Python**</a>, which are part of this specialization. \n",
"\n",
"**Note**: The majority of the plots and visualizations will be generated using data stored in *pandas* dataframes. Therefore, in this lab, we provide a brief crash course on *pandas*. However, if you are interested in learning more about the *pandas* library, detailed description and explanation of how to use it and how to clean, munge, and process data stored in a *pandas* dataframe are provided in our course <a href='http://cocl.us/DA0101EN_DV0101EN_LAB1_Coursera'>**Data Analysis with Python**</a>, which is also part of this specialization. \n",
"\n",
"------------"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"## Table of Contents\n",
"\n",
"<div class=\"alert alert-block alert-info\" style=\"margin-top: 20px\">\n",
"\n",
"1. [Exploring Datasets with *pandas*](#0)<br>\n",
"1.1 [The Dataset: Immigration to Canada from 1980 to 2013](#2)<br>\n",
"1.2 [*pandas* Basics](#4) <br>\n",
"1.3 [*pandas* Intermediate: Indexing and Selection](#6) <br>\n",
"2. [Visualizing Data using Matplotlib](#8) <br>\n",
"2.1 [Matplotlib: Standard Python Visualization Library](#10) <br>\n",
"3. [Line Plots](#12)\n",
"</div>\n",
"<hr>"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"# Exploring Datasets with *pandas* <a id=\"0\"></a>\n",
"\n",
"*pandas* is an essential data analysis toolkit for Python. From their [website](http://pandas.pydata.org/):\n",
">*pandas* is a Python package providing fast, flexible, and expressive data structures designed to make working with “relational” or “labeled” data both easy and intuitive. It aims to be the fundamental high-level building block for doing practical, **real world** data analysis in Python.\n",
"\n",
"The course heavily relies on *pandas* for data wrangling, analysis, and visualization. We encourage you to spend some time and familizare yourself with the *pandas* API Reference: http://pandas.pydata.org/pandas-docs/stable/api.html."
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"## The Dataset: Immigration to Canada from 1980 to 2013 <a id=\"2\"></a>"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Dataset Source: [International migration flows to and from selected countries - The 2015 revision](http://www.un.org/en/development/desa/population/migration/data/empirical2/migrationflows.shtml).\n",
"\n",
"The dataset contains annual data on the flows of international immigrants as recorded by the countries of destination. The data presents both inflows and outflows according to the place of birth, citizenship or place of previous / next residence both for foreigners and nationals. The current version presents data pertaining to 45 countries.\n",
"\n",
"In this lab, we will focus on the Canadian immigration data.\n",
"\n",
"<img src = \"https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DV0101EN/labs/Images/Mod1Fig1-Dataset.png\" align=\"center\" width=900>\n",
"\n",
"For sake of simplicity, Canada's immigration data has been extracted and uploaded to one of IBM servers. You can fetch the data from [here](https://ibm.box.com/shared/static/lw190pt9zpy5bd1ptyg2aw15awomz9pu.xlsx).\n",
"\n",
"---"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"## *pandas* Basics<a id=\"4\"></a>"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"The first thing we'll do is import two key data analysis modules: *pandas* and **Numpy**."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"import numpy as np # useful for many scientific computing in Python\n",
"import pandas as pd # primary data structure library"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Let's download and import our primary Canadian Immigration dataset using *pandas* `read_excel()` method. Normally, before we can do that, we would need to download a module which *pandas* requires to read in excel files. This module is **xlrd**. For your convenience, we have pre-installed this module, so you would not have to worry about that. Otherwise, you would need to run the following line of code to install the **xlrd** module:\n",
"```\n",
"!conda install -c anaconda xlrd --yes\n",
"```"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Now we are ready to read in our data."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Data read into a pandas dataframe!\n"
]
}
],
"source": [
"df_can = pd.read_excel('https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DV0101EN/labs/Data_Files/Canada.xlsx',\n",
" sheet_name='Canada by Citizenship',\n",
" skiprows=range(20),\n",
" skipfooter=2)\n",
"\n",
"print ('Data read into a pandas dataframe!')"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Let's view the top 5 rows of the dataset using the `head()` function."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"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>Type</th>\n",
" <th>Coverage</th>\n",
" <th>OdName</th>\n",
" <th>AREA</th>\n",
" <th>AreaName</th>\n",
" <th>REG</th>\n",
" <th>RegName</th>\n",
" <th>DEV</th>\n",
" <th>DevName</th>\n",
" <th>1980</th>\n",
" <th>...</th>\n",
" <th>2004</th>\n",
" <th>2005</th>\n",
" <th>2006</th>\n",
" <th>2007</th>\n",
" <th>2008</th>\n",
" <th>2009</th>\n",
" <th>2010</th>\n",
" <th>2011</th>\n",
" <th>2012</th>\n",
" <th>2013</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Immigrants</td>\n",
" <td>Foreigners</td>\n",
" <td>Afghanistan</td>\n",
" <td>935</td>\n",
" <td>Asia</td>\n",
" <td>5501</td>\n",
" <td>Southern Asia</td>\n",
" <td>902</td>\n",
" <td>Developing regions</td>\n",
" <td>16</td>\n",
" <td>...</td>\n",
" <td>2978</td>\n",
" <td>3436</td>\n",
" <td>3009</td>\n",
" <td>2652</td>\n",
" <td>2111</td>\n",
" <td>1746</td>\n",
" <td>1758</td>\n",
" <td>2203</td>\n",
" <td>2635</td>\n",
" <td>2004</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Immigrants</td>\n",
" <td>Foreigners</td>\n",
" <td>Albania</td>\n",
" <td>908</td>\n",
" <td>Europe</td>\n",
" <td>925</td>\n",
" <td>Southern Europe</td>\n",
" <td>901</td>\n",
" <td>Developed regions</td>\n",
" <td>1</td>\n",
" <td>...</td>\n",
" <td>1450</td>\n",
" <td>1223</td>\n",
" <td>856</td>\n",
" <td>702</td>\n",
" <td>560</td>\n",
" <td>716</td>\n",
" <td>561</td>\n",
" <td>539</td>\n",
" <td>620</td>\n",
" <td>603</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Immigrants</td>\n",
" <td>Foreigners</td>\n",
" <td>Algeria</td>\n",
" <td>903</td>\n",
" <td>Africa</td>\n",
" <td>912</td>\n",
" <td>Northern Africa</td>\n",
" <td>902</td>\n",
" <td>Developing regions</td>\n",
" <td>80</td>\n",
" <td>...</td>\n",
" <td>3616</td>\n",
" <td>3626</td>\n",
" <td>4807</td>\n",
" <td>3623</td>\n",
" <td>4005</td>\n",
" <td>5393</td>\n",
" <td>4752</td>\n",
" <td>4325</td>\n",
" <td>3774</td>\n",
" <td>4331</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Immigrants</td>\n",
" <td>Foreigners</td>\n",
" <td>American Samoa</td>\n",
" <td>909</td>\n",
" <td>Oceania</td>\n",
" <td>957</td>\n",
" <td>Polynesia</td>\n",
" <td>902</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Immigrants</td>\n",
" <td>Foreigners</td>\n",
" <td>Andorra</td>\n",
" <td>908</td>\n",
" <td>Europe</td>\n",
" <td>925</td>\n",
" <td>Southern Europe</td>\n",
" <td>901</td>\n",
" <td>Developed regions</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows × 43 columns</p>\n",
"</div>"
],
"text/plain": [
" Type Coverage OdName AREA AreaName REG \\\n",
"0 Immigrants Foreigners Afghanistan 935 Asia 5501 \n",
"1 Immigrants Foreigners Albania 908 Europe 925 \n",
"2 Immigrants Foreigners Algeria 903 Africa 912 \n",
"3 Immigrants Foreigners American Samoa 909 Oceania 957 \n",
"4 Immigrants Foreigners Andorra 908 Europe 925 \n",
"\n",
" RegName DEV DevName 1980 ... 2004 2005 2006 \\\n",
"0 Southern Asia 902 Developing regions 16 ... 2978 3436 3009 \n",
"1 Southern Europe 901 Developed regions 1 ... 1450 1223 856 \n",
"2 Northern Africa 902 Developing regions 80 ... 3616 3626 4807 \n",
"3 Polynesia 902 Developing regions 0 ... 0 0 1 \n",
"4 Southern Europe 901 Developed regions 0 ... 0 0 1 \n",
"\n",
" 2007 2008 2009 2010 2011 2012 2013 \n",
"0 2652 2111 1746 1758 2203 2635 2004 \n",
"1 702 560 716 561 539 620 603 \n",
"2 3623 4005 5393 4752 4325 3774 4331 \n",
"3 0 0 0 0 0 0 0 \n",
"4 1 0 0 0 0 1 1 \n",
"\n",
"[5 rows x 43 columns]"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can.head()\n",
"# tip: You can specify the number of rows you'd like to see as follows: df_can.head(10) "
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"We can also veiw the bottom 5 rows of the dataset using the `tail()` function."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"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>Type</th>\n",
" <th>Coverage</th>\n",
" <th>OdName</th>\n",
" <th>AREA</th>\n",
" <th>AreaName</th>\n",
" <th>REG</th>\n",
" <th>RegName</th>\n",
" <th>DEV</th>\n",
" <th>DevName</th>\n",
" <th>1980</th>\n",
" <th>...</th>\n",
" <th>2004</th>\n",
" <th>2005</th>\n",
" <th>2006</th>\n",
" <th>2007</th>\n",
" <th>2008</th>\n",
" <th>2009</th>\n",
" <th>2010</th>\n",
" <th>2011</th>\n",
" <th>2012</th>\n",
" <th>2013</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>190</th>\n",
" <td>Immigrants</td>\n",
" <td>Foreigners</td>\n",
" <td>Viet Nam</td>\n",
" <td>935</td>\n",
" <td>Asia</td>\n",
" <td>920</td>\n",
" <td>South-Eastern Asia</td>\n",
" <td>902</td>\n",
" <td>Developing regions</td>\n",
" <td>1191</td>\n",
" <td>...</td>\n",
" <td>1816</td>\n",
" <td>1852</td>\n",
" <td>3153</td>\n",
" <td>2574</td>\n",
" <td>1784</td>\n",
" <td>2171</td>\n",
" <td>1942</td>\n",
" <td>1723</td>\n",
" <td>1731</td>\n",
" <td>2112</td>\n",
" </tr>\n",
" <tr>\n",
" <th>191</th>\n",
" <td>Immigrants</td>\n",
" <td>Foreigners</td>\n",
" <td>Western Sahara</td>\n",
" <td>903</td>\n",
" <td>Africa</td>\n",
" <td>912</td>\n",
" <td>Northern Africa</td>\n",
" <td>902</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>192</th>\n",
" <td>Immigrants</td>\n",
" <td>Foreigners</td>\n",
" <td>Yemen</td>\n",
" <td>935</td>\n",
" <td>Asia</td>\n",
" <td>922</td>\n",
" <td>Western Asia</td>\n",
" <td>902</td>\n",
" <td>Developing regions</td>\n",
" <td>1</td>\n",
" <td>...</td>\n",
" <td>124</td>\n",
" <td>161</td>\n",
" <td>140</td>\n",
" <td>122</td>\n",
" <td>133</td>\n",
" <td>128</td>\n",
" <td>211</td>\n",
" <td>160</td>\n",
" <td>174</td>\n",
" <td>217</td>\n",
" </tr>\n",
" <tr>\n",
" <th>193</th>\n",
" <td>Immigrants</td>\n",
" <td>Foreigners</td>\n",
" <td>Zambia</td>\n",
" <td>903</td>\n",
" <td>Africa</td>\n",
" <td>910</td>\n",
" <td>Eastern Africa</td>\n",
" <td>902</td>\n",
" <td>Developing regions</td>\n",
" <td>11</td>\n",
" <td>...</td>\n",
" <td>56</td>\n",
" <td>91</td>\n",
" <td>77</td>\n",
" <td>71</td>\n",
" <td>64</td>\n",
" <td>60</td>\n",
" <td>102</td>\n",
" <td>69</td>\n",
" <td>46</td>\n",
" <td>59</td>\n",
" </tr>\n",
" <tr>\n",
" <th>194</th>\n",
" <td>Immigrants</td>\n",
" <td>Foreigners</td>\n",
" <td>Zimbabwe</td>\n",
" <td>903</td>\n",
" <td>Africa</td>\n",
" <td>910</td>\n",
" <td>Eastern Africa</td>\n",
" <td>902</td>\n",
" <td>Developing regions</td>\n",
" <td>72</td>\n",
" <td>...</td>\n",
" <td>1450</td>\n",
" <td>615</td>\n",
" <td>454</td>\n",
" <td>663</td>\n",
" <td>611</td>\n",
" <td>508</td>\n",
" <td>494</td>\n",
" <td>434</td>\n",
" <td>437</td>\n",
" <td>407</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows × 43 columns</p>\n",
"</div>"
],
"text/plain": [
" Type Coverage OdName AREA AreaName REG \\\n",
"190 Immigrants Foreigners Viet Nam 935 Asia 920 \n",
"191 Immigrants Foreigners Western Sahara 903 Africa 912 \n",
"192 Immigrants Foreigners Yemen 935 Asia 922 \n",
"193 Immigrants Foreigners Zambia 903 Africa 910 \n",
"194 Immigrants Foreigners Zimbabwe 903 Africa 910 \n",
"\n",
" RegName DEV DevName 1980 ... 2004 2005 2006 \\\n",
"190 South-Eastern Asia 902 Developing regions 1191 ... 1816 1852 3153 \n",
"191 Northern Africa 902 Developing regions 0 ... 0 0 1 \n",
"192 Western Asia 902 Developing regions 1 ... 124 161 140 \n",
"193 Eastern Africa 902 Developing regions 11 ... 56 91 77 \n",
"194 Eastern Africa 902 Developing regions 72 ... 1450 615 454 \n",
"\n",
" 2007 2008 2009 2010 2011 2012 2013 \n",
"190 2574 1784 2171 1942 1723 1731 2112 \n",
"191 0 0 0 0 0 0 0 \n",
"192 122 133 128 211 160 174 217 \n",
"193 71 64 60 102 69 46 59 \n",
"194 663 611 508 494 434 437 407 \n",
"\n",
"[5 rows x 43 columns]"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can.tail()"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"When analyzing a dataset, it's always a good idea to start by getting basic information about your dataframe. We can do this by using the `info()` method."
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"<bound method DataFrame.info of Type Coverage OdName AREA AreaName REG \\\n",
"0 Immigrants Foreigners Afghanistan 935 Asia 5501 \n",
"1 Immigrants Foreigners Albania 908 Europe 925 \n",
"2 Immigrants Foreigners Algeria 903 Africa 912 \n",
"3 Immigrants Foreigners American Samoa 909 Oceania 957 \n",
"4 Immigrants Foreigners Andorra 908 Europe 925 \n",
".. ... ... ... ... ... ... \n",
"190 Immigrants Foreigners Viet Nam 935 Asia 920 \n",
"191 Immigrants Foreigners Western Sahara 903 Africa 912 \n",
"192 Immigrants Foreigners Yemen 935 Asia 922 \n",
"193 Immigrants Foreigners Zambia 903 Africa 910 \n",
"194 Immigrants Foreigners Zimbabwe 903 Africa 910 \n",
"\n",
" RegName DEV DevName 1980 ... 2004 2005 2006 \\\n",
"0 Southern Asia 902 Developing regions 16 ... 2978 3436 3009 \n",
"1 Southern Europe 901 Developed regions 1 ... 1450 1223 856 \n",
"2 Northern Africa 902 Developing regions 80 ... 3616 3626 4807 \n",
"3 Polynesia 902 Developing regions 0 ... 0 0 1 \n",
"4 Southern Europe 901 Developed regions 0 ... 0 0 1 \n",
".. ... ... ... ... ... ... ... ... \n",
"190 South-Eastern Asia 902 Developing regions 1191 ... 1816 1852 3153 \n",
"191 Northern Africa 902 Developing regions 0 ... 0 0 1 \n",
"192 Western Asia 902 Developing regions 1 ... 124 161 140 \n",
"193 Eastern Africa 902 Developing regions 11 ... 56 91 77 \n",
"194 Eastern Africa 902 Developing regions 72 ... 1450 615 454 \n",
"\n",
" 2007 2008 2009 2010 2011 2012 2013 \n",
"0 2652 2111 1746 1758 2203 2635 2004 \n",
"1 702 560 716 561 539 620 603 \n",
"2 3623 4005 5393 4752 4325 3774 4331 \n",
"3 0 0 0 0 0 0 0 \n",
"4 1 0 0 0 0 1 1 \n",
".. ... ... ... ... ... ... ... \n",
"190 2574 1784 2171 1942 1723 1731 2112 \n",
"191 0 0 0 0 0 0 0 \n",
"192 122 133 128 211 160 174 217 \n",
"193 71 64 60 102 69 46 59 \n",
"194 663 611 508 494 434 437 407 \n",
"\n",
"[195 rows x 43 columns]>"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can.info"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"To get the list of column headers we can call upon the dataframe's `.columns` parameter."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"array(['Type', 'Coverage', 'OdName', 'AREA', 'AreaName', 'REG', 'RegName',\n",
" 'DEV', 'DevName', 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987,\n",
" 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,\n",
" 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,\n",
" 2010, 2011, 2012, 2013], dtype=object)"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can.columns.values "
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Similarly, to get the list of indicies we use the `.index` parameter."
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,\n",
" 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,\n",
" 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,\n",
" 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,\n",
" 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,\n",
" 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,\n",
" 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,\n",
" 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,\n",
" 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,\n",
" 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129,\n",
" 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,\n",
" 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,\n",
" 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,\n",
" 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,\n",
" 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194])"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can.index.values"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Note: The default type of index and columns is NOT list."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'pandas.core.indexes.base.Index'>\n",
"<class 'pandas.core.indexes.range.RangeIndex'>\n"
]
}
],
"source": [
"print(type(df_can.columns))\n",
"print(type(df_can.index))"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"To get the index and columns as lists, we can use the `tolist()` method."
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'list'>\n",
"<class 'list'>\n"
]
}
],
"source": [
"df_can.columns.tolist()\n",
"df_can.index.tolist()\n",
"\n",
"print (type(df_can.columns.tolist()))\n",
"print (type(df_can.index.tolist()))"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"To view the dimensions of the dataframe, we use the `.shape` parameter."
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"(195, 43)"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# size of dataframe (rows, columns)\n",
"df_can.shape "
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Note: The main types stored in *pandas* objects are *float*, *int*, *bool*, *datetime64[ns]* and *datetime64[ns, tz] (in >= 0.17.0)*, *timedelta[ns]*, *category (in >= 0.15.0)*, and *object* (string). In addition these dtypes have item sizes, e.g. int64 and int32. "
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Let's clean the data set to remove a few unnecessary columns. We can use *pandas* `drop()` method as follows:"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"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>OdName</th>\n",
" <th>AreaName</th>\n",
" <th>RegName</th>\n",
" <th>DevName</th>\n",
" <th>1980</th>\n",
" <th>1981</th>\n",
" <th>1982</th>\n",
" <th>1983</th>\n",
" <th>1984</th>\n",
" <th>1985</th>\n",
" <th>...</th>\n",
" <th>2004</th>\n",
" <th>2005</th>\n",
" <th>2006</th>\n",
" <th>2007</th>\n",
" <th>2008</th>\n",
" <th>2009</th>\n",
" <th>2010</th>\n",
" <th>2011</th>\n",
" <th>2012</th>\n",
" <th>2013</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Afghanistan</td>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>16</td>\n",
" <td>39</td>\n",
" <td>39</td>\n",
" <td>47</td>\n",
" <td>71</td>\n",
" <td>340</td>\n",
" <td>...</td>\n",
" <td>2978</td>\n",
" <td>3436</td>\n",
" <td>3009</td>\n",
" <td>2652</td>\n",
" <td>2111</td>\n",
" <td>1746</td>\n",
" <td>1758</td>\n",
" <td>2203</td>\n",
" <td>2635</td>\n",
" <td>2004</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Albania</td>\n",
" <td>Europe</td>\n",
" <td>Southern Europe</td>\n",
" <td>Developed regions</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>1450</td>\n",
" <td>1223</td>\n",
" <td>856</td>\n",
" <td>702</td>\n",
" <td>560</td>\n",
" <td>716</td>\n",
" <td>561</td>\n",
" <td>539</td>\n",
" <td>620</td>\n",
" <td>603</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>2 rows × 38 columns</p>\n",
"</div>"
],
"text/plain": [
" OdName AreaName RegName DevName 1980 1981 \\\n",
"0 Afghanistan Asia Southern Asia Developing regions 16 39 \n",
"1 Albania Europe Southern Europe Developed regions 1 0 \n",
"\n",
" 1982 1983 1984 1985 ... 2004 2005 2006 2007 2008 2009 2010 \\\n",
"0 39 47 71 340 ... 2978 3436 3009 2652 2111 1746 1758 \n",
"1 0 0 0 0 ... 1450 1223 856 702 560 716 561 \n",
"\n",
" 2011 2012 2013 \n",
"0 2203 2635 2004 \n",
"1 539 620 603 \n",
"\n",
"[2 rows x 38 columns]"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# in pandas axis=0 represents rows (default) and axis=1 represents columns.\n",
"df_can.drop(['AREA','REG','DEV','Type','Coverage'], axis=1, inplace=True)\n",
"df_can.head(2)"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Let's rename the columns so that they make sense. We can use `rename()` method by passing in a dictionary of old and new names as follows:"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"Index([ 'Country', 'Continent', 'Region', 'DevName', 1980,\n",
" 1981, 1982, 1983, 1984, 1985,\n",
" 1986, 1987, 1988, 1989, 1990,\n",
" 1991, 1992, 1993, 1994, 1995,\n",
" 1996, 1997, 1998, 1999, 2000,\n",
" 2001, 2002, 2003, 2004, 2005,\n",
" 2006, 2007, 2008, 2009, 2010,\n",
" 2011, 2012, 2013],\n",
" dtype='object')"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can.rename(columns={'OdName':'Country', 'AreaName':'Continent', 'RegName':'Region'}, inplace=True)\n",
"df_can.columns"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"We will also add a 'Total' column that sums up the total immigrants by country over the entire period 1980 - 2013, as follows:"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"df_can['Total'] = df_can.sum(axis=1)"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"We can check to see how many null objects we have in the dataset as follows:"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"Country 0\n",
"Continent 0\n",
"Region 0\n",
"DevName 0\n",
"1980 0\n",
"1981 0\n",
"1982 0\n",
"1983 0\n",
"1984 0\n",
"1985 0\n",
"1986 0\n",
"1987 0\n",
"1988 0\n",
"1989 0\n",
"1990 0\n",
"1991 0\n",
"1992 0\n",
"1993 0\n",
"1994 0\n",
"1995 0\n",
"1996 0\n",
"1997 0\n",
"1998 0\n",
"1999 0\n",
"2000 0\n",
"2001 0\n",
"2002 0\n",
"2003 0\n",
"2004 0\n",
"2005 0\n",
"2006 0\n",
"2007 0\n",
"2008 0\n",
"2009 0\n",
"2010 0\n",
"2011 0\n",
"2012 0\n",
"2013 0\n",
"Total 0\n",
"dtype: int64"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can.isnull().sum()"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Finally, let's view a quick summary of each column in our dataframe using the `describe()` method."
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"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>1980</th>\n",
" <th>1981</th>\n",
" <th>1982</th>\n",
" <th>1983</th>\n",
" <th>1984</th>\n",
" <th>1985</th>\n",
" <th>1986</th>\n",
" <th>1987</th>\n",
" <th>1988</th>\n",
" <th>1989</th>\n",
" <th>...</th>\n",
" <th>2005</th>\n",
" <th>2006</th>\n",
" <th>2007</th>\n",
" <th>2008</th>\n",
" <th>2009</th>\n",
" <th>2010</th>\n",
" <th>2011</th>\n",
" <th>2012</th>\n",
" <th>2013</th>\n",
" <th>Total</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>...</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" <td>195.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>508.394872</td>\n",
" <td>566.989744</td>\n",
" <td>534.723077</td>\n",
" <td>387.435897</td>\n",
" <td>376.497436</td>\n",
" <td>358.861538</td>\n",
" <td>441.271795</td>\n",
" <td>691.133333</td>\n",
" <td>714.389744</td>\n",
" <td>843.241026</td>\n",
" <td>...</td>\n",
" <td>1320.292308</td>\n",
" <td>1266.958974</td>\n",
" <td>1191.820513</td>\n",
" <td>1246.394872</td>\n",
" <td>1275.733333</td>\n",
" <td>1420.287179</td>\n",
" <td>1262.533333</td>\n",
" <td>1313.958974</td>\n",
" <td>1320.702564</td>\n",
" <td>32867.451282</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>1949.588546</td>\n",
" <td>2152.643752</td>\n",
" <td>1866.997511</td>\n",
" <td>1204.333597</td>\n",
" <td>1198.246371</td>\n",
" <td>1079.309600</td>\n",
" <td>1225.576630</td>\n",
" <td>2109.205607</td>\n",
" <td>2443.606788</td>\n",
" <td>2555.048874</td>\n",
" <td>...</td>\n",
" <td>4425.957828</td>\n",
" <td>3926.717747</td>\n",
" <td>3443.542409</td>\n",
" <td>3694.573544</td>\n",
" <td>3829.630424</td>\n",
" <td>4462.946328</td>\n",
" <td>4030.084313</td>\n",
" <td>4247.555161</td>\n",
" <td>4237.951988</td>\n",
" <td>91785.498686</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>...</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>1.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.500000</td>\n",
" <td>0.500000</td>\n",
" <td>1.000000</td>\n",
" <td>1.000000</td>\n",
" <td>...</td>\n",
" <td>28.500000</td>\n",
" <td>25.000000</td>\n",
" <td>31.000000</td>\n",
" <td>31.000000</td>\n",
" <td>36.000000</td>\n",
" <td>40.500000</td>\n",
" <td>37.500000</td>\n",
" <td>42.500000</td>\n",
" <td>45.000000</td>\n",
" <td>952.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>13.000000</td>\n",
" <td>10.000000</td>\n",
" <td>11.000000</td>\n",
" <td>12.000000</td>\n",
" <td>13.000000</td>\n",
" <td>17.000000</td>\n",
" <td>18.000000</td>\n",
" <td>26.000000</td>\n",
" <td>34.000000</td>\n",
" <td>44.000000</td>\n",
" <td>...</td>\n",
" <td>210.000000</td>\n",
" <td>218.000000</td>\n",
" <td>198.000000</td>\n",
" <td>205.000000</td>\n",
" <td>214.000000</td>\n",
" <td>211.000000</td>\n",
" <td>179.000000</td>\n",
" <td>233.000000</td>\n",
" <td>213.000000</td>\n",
" <td>5018.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>251.500000</td>\n",
" <td>295.500000</td>\n",
" <td>275.000000</td>\n",
" <td>173.000000</td>\n",
" <td>181.000000</td>\n",
" <td>197.000000</td>\n",
" <td>254.000000</td>\n",
" <td>434.000000</td>\n",
" <td>409.000000</td>\n",
" <td>508.500000</td>\n",
" <td>...</td>\n",
" <td>832.000000</td>\n",
" <td>842.000000</td>\n",
" <td>899.000000</td>\n",
" <td>934.500000</td>\n",
" <td>888.000000</td>\n",
" <td>932.000000</td>\n",
" <td>772.000000</td>\n",
" <td>783.000000</td>\n",
" <td>796.000000</td>\n",
" <td>22239.500000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>22045.000000</td>\n",
" <td>24796.000000</td>\n",
" <td>20620.000000</td>\n",
" <td>10015.000000</td>\n",
" <td>10170.000000</td>\n",
" <td>9564.000000</td>\n",
" <td>9470.000000</td>\n",
" <td>21337.000000</td>\n",
" <td>27359.000000</td>\n",
" <td>23795.000000</td>\n",
" <td>...</td>\n",
" <td>42584.000000</td>\n",
" <td>33848.000000</td>\n",
" <td>28742.000000</td>\n",
" <td>30037.000000</td>\n",
" <td>29622.000000</td>\n",
" <td>38617.000000</td>\n",
" <td>36765.000000</td>\n",
" <td>34315.000000</td>\n",
" <td>34129.000000</td>\n",
" <td>691904.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>8 rows × 35 columns</p>\n",
"</div>"
],
"text/plain": [
" 1980 1981 1982 1983 1984 \\\n",
"count 195.000000 195.000000 195.000000 195.000000 195.000000 \n",
"mean 508.394872 566.989744 534.723077 387.435897 376.497436 \n",
"std 1949.588546 2152.643752 1866.997511 1204.333597 1198.246371 \n",
"min 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"25% 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"50% 13.000000 10.000000 11.000000 12.000000 13.000000 \n",
"75% 251.500000 295.500000 275.000000 173.000000 181.000000 \n",
"max 22045.000000 24796.000000 20620.000000 10015.000000 10170.000000 \n",
"\n",
" 1985 1986 1987 1988 1989 \\\n",
"count 195.000000 195.000000 195.000000 195.000000 195.000000 \n",
"mean 358.861538 441.271795 691.133333 714.389744 843.241026 \n",
"std 1079.309600 1225.576630 2109.205607 2443.606788 2555.048874 \n",
"min 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"25% 0.000000 0.500000 0.500000 1.000000 1.000000 \n",
"50% 17.000000 18.000000 26.000000 34.000000 44.000000 \n",
"75% 197.000000 254.000000 434.000000 409.000000 508.500000 \n",
"max 9564.000000 9470.000000 21337.000000 27359.000000 23795.000000 \n",
"\n",
" ... 2005 2006 2007 2008 \\\n",
"count ... 195.000000 195.000000 195.000000 195.000000 \n",
"mean ... 1320.292308 1266.958974 1191.820513 1246.394872 \n",
"std ... 4425.957828 3926.717747 3443.542409 3694.573544 \n",
"min ... 0.000000 0.000000 0.000000 0.000000 \n",
"25% ... 28.500000 25.000000 31.000000 31.000000 \n",
"50% ... 210.000000 218.000000 198.000000 205.000000 \n",
"75% ... 832.000000 842.000000 899.000000 934.500000 \n",
"max ... 42584.000000 33848.000000 28742.000000 30037.000000 \n",
"\n",
" 2009 2010 2011 2012 2013 \\\n",
"count 195.000000 195.000000 195.000000 195.000000 195.000000 \n",
"mean 1275.733333 1420.287179 1262.533333 1313.958974 1320.702564 \n",
"std 3829.630424 4462.946328 4030.084313 4247.555161 4237.951988 \n",
"min 0.000000 0.000000 0.000000 0.000000 0.000000 \n",
"25% 36.000000 40.500000 37.500000 42.500000 45.000000 \n",
"50% 214.000000 211.000000 179.000000 233.000000 213.000000 \n",
"75% 888.000000 932.000000 772.000000 783.000000 796.000000 \n",
"max 29622.000000 38617.000000 36765.000000 34315.000000 34129.000000 \n",
"\n",
" Total \n",
"count 195.000000 \n",
"mean 32867.451282 \n",
"std 91785.498686 \n",
"min 1.000000 \n",
"25% 952.000000 \n",
"50% 5018.000000 \n",
"75% 22239.500000 \n",
"max 691904.000000 \n",
"\n",
"[8 rows x 35 columns]"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can.describe()"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"---\n",
"## *pandas* Intermediate: Indexing and Selection (slicing)<a id=\"6\"></a>\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Select Column\n",
"**There are two ways to filter on a column name:**\n",
"\n",
"Method 1: Quick and easy, but only works if the column name does NOT have spaces or special characters.\n",
"```python\n",
" df.column_name \n",
" (returns series)\n",
"```\n",
"\n",
"Method 2: More robust, and can filter on multiple columns.\n",
"\n",
"```python\n",
" df['column'] \n",
" (returns series)\n",
"```\n",
"\n",
"```python \n",
" df[['column 1', 'column 2']] \n",
" (returns dataframe)\n",
"```\n",
"---"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Example: Let's try filtering on the list of countries ('Country')."
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"0 Afghanistan\n",
"1 Albania\n",
"2 Algeria\n",
"3 American Samoa\n",
"4 Andorra\n",
" ... \n",
"190 Viet Nam\n",
"191 Western Sahara\n",
"192 Yemen\n",
"193 Zambia\n",
"194 Zimbabwe\n",
"Name: Country, Length: 195, dtype: object"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can.Country # returns a series"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Let's try filtering on the list of countries ('OdName') and the data for years: 1980 - 1985."
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"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>Country</th>\n",
" <th>1980</th>\n",
" <th>1981</th>\n",
" <th>1982</th>\n",
" <th>1983</th>\n",
" <th>1984</th>\n",
" <th>1985</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Afghanistan</td>\n",
" <td>16</td>\n",
" <td>39</td>\n",
" <td>39</td>\n",
" <td>47</td>\n",
" <td>71</td>\n",
" <td>340</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Albania</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Algeria</td>\n",
" <td>80</td>\n",
" <td>67</td>\n",
" <td>71</td>\n",
" <td>69</td>\n",
" <td>63</td>\n",
" <td>44</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>American Samoa</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Andorra</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>190</th>\n",
" <td>Viet Nam</td>\n",
" <td>1191</td>\n",
" <td>1829</td>\n",
" <td>2162</td>\n",
" <td>3404</td>\n",
" <td>7583</td>\n",
" <td>5907</td>\n",
" </tr>\n",
" <tr>\n",
" <th>191</th>\n",
" <td>Western Sahara</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>192</th>\n",
" <td>Yemen</td>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>6</td>\n",
" <td>0</td>\n",
" <td>18</td>\n",
" </tr>\n",
" <tr>\n",
" <th>193</th>\n",
" <td>Zambia</td>\n",
" <td>11</td>\n",
" <td>17</td>\n",
" <td>11</td>\n",
" <td>7</td>\n",
" <td>16</td>\n",
" <td>9</td>\n",
" </tr>\n",
" <tr>\n",
" <th>194</th>\n",
" <td>Zimbabwe</td>\n",
" <td>72</td>\n",
" <td>114</td>\n",
" <td>102</td>\n",
" <td>44</td>\n",
" <td>32</td>\n",
" <td>29</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>195 rows × 7 columns</p>\n",
"</div>"
],
"text/plain": [
" Country 1980 1981 1982 1983 1984 1985\n",
"0 Afghanistan 16 39 39 47 71 340\n",
"1 Albania 1 0 0 0 0 0\n",
"2 Algeria 80 67 71 69 63 44\n",
"3 American Samoa 0 1 0 0 0 0\n",
"4 Andorra 0 0 0 0 0 0\n",
".. ... ... ... ... ... ... ...\n",
"190 Viet Nam 1191 1829 2162 3404 7583 5907\n",
"191 Western Sahara 0 0 0 0 0 0\n",
"192 Yemen 1 2 1 6 0 18\n",
"193 Zambia 11 17 11 7 16 9\n",
"194 Zimbabwe 72 114 102 44 32 29\n",
"\n",
"[195 rows x 7 columns]"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can[['Country', 1980, 1981, 1982, 1983, 1984, 1985]] # returns a dataframe\n",
"# notice that 'Country' is string, and the years are integers. \n",
"# for the sake of consistency, we will convert all column names to string later on."
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Select Row\n",
"\n",
"There are main 3 ways to select rows:\n",
"\n",
"```python\n",
" df.loc[label] \n",
" #filters by the labels of the index/column\n",
" df.iloc[index] \n",
" #filters by the positions of the index/column\n",
"```"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Before we proceed, notice that the defaul index of the dataset is a numeric range from 0 to 194. This makes it very difficult to do a query by a specific country. For example to search for data on Japan, we need to know the corressponding index value.\n",
"\n",
"This can be fixed very easily by setting the 'Country' column as the index using `set_index()` method."
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [],
"source": [
"df_can.set_index('Country', inplace=True)\n",
"# tip: The opposite of set is reset. So to reset the index, we can use df_can.reset_index()"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"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>Continent</th>\n",
" <th>Region</th>\n",
" <th>DevName</th>\n",
" <th>1980</th>\n",
" <th>1981</th>\n",
" <th>1982</th>\n",
" <th>1983</th>\n",
" <th>1984</th>\n",
" <th>1985</th>\n",
" <th>1986</th>\n",
" <th>...</th>\n",
" <th>2005</th>\n",
" <th>2006</th>\n",
" <th>2007</th>\n",
" <th>2008</th>\n",
" <th>2009</th>\n",
" <th>2010</th>\n",
" <th>2011</th>\n",
" <th>2012</th>\n",
" <th>2013</th>\n",
" <th>Total</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Country</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Afghanistan</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>16</td>\n",
" <td>39</td>\n",
" <td>39</td>\n",
" <td>47</td>\n",
" <td>71</td>\n",
" <td>340</td>\n",
" <td>496</td>\n",
" <td>...</td>\n",
" <td>3436</td>\n",
" <td>3009</td>\n",
" <td>2652</td>\n",
" <td>2111</td>\n",
" <td>1746</td>\n",
" <td>1758</td>\n",
" <td>2203</td>\n",
" <td>2635</td>\n",
" <td>2004</td>\n",
" <td>58639</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Albania</th>\n",
" <td>Europe</td>\n",
" <td>Southern Europe</td>\n",
" <td>Developed regions</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>...</td>\n",
" <td>1223</td>\n",
" <td>856</td>\n",
" <td>702</td>\n",
" <td>560</td>\n",
" <td>716</td>\n",
" <td>561</td>\n",
" <td>539</td>\n",
" <td>620</td>\n",
" <td>603</td>\n",
" <td>15699</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Algeria</th>\n",
" <td>Africa</td>\n",
" <td>Northern Africa</td>\n",
" <td>Developing regions</td>\n",
" <td>80</td>\n",
" <td>67</td>\n",
" <td>71</td>\n",
" <td>69</td>\n",
" <td>63</td>\n",
" <td>44</td>\n",
" <td>69</td>\n",
" <td>...</td>\n",
" <td>3626</td>\n",
" <td>4807</td>\n",
" <td>3623</td>\n",
" <td>4005</td>\n",
" <td>5393</td>\n",
" <td>4752</td>\n",
" <td>4325</td>\n",
" <td>3774</td>\n",
" <td>4331</td>\n",
" <td>69439</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>3 rows × 38 columns</p>\n",
"</div>"
],
"text/plain": [
" Continent Region DevName 1980 1981 1982 \\\n",
"Country \n",
"Afghanistan Asia Southern Asia Developing regions 16 39 39 \n",
"Albania Europe Southern Europe Developed regions 1 0 0 \n",
"Algeria Africa Northern Africa Developing regions 80 67 71 \n",
"\n",
" 1983 1984 1985 1986 ... 2005 2006 2007 2008 2009 2010 \\\n",
"Country ... \n",
"Afghanistan 47 71 340 496 ... 3436 3009 2652 2111 1746 1758 \n",
"Albania 0 0 0 1 ... 1223 856 702 560 716 561 \n",
"Algeria 69 63 44 69 ... 3626 4807 3623 4005 5393 4752 \n",
"\n",
" 2011 2012 2013 Total \n",
"Country \n",
"Afghanistan 2203 2635 2004 58639 \n",
"Albania 539 620 603 15699 \n",
"Algeria 4325 3774 4331 69439 \n",
"\n",
"[3 rows x 38 columns]"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can.head(3)"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"# optional: to remove the name of the index\n",
"df_can.index.name = None"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Example: Let's view the number of immigrants from Japan (row 87) for the following scenarios:\n",
" 1. The full row data (all columns)\n",
" 2. For year 2013\n",
" 3. For years 1980 to 1985"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Continent Asia\n",
"Region Eastern Asia\n",
"DevName Developed regions\n",
"1980 701\n",
"1981 756\n",
"1982 598\n",
"1983 309\n",
"1984 246\n",
"1985 198\n",
"1986 248\n",
"1987 422\n",
"1988 324\n",
"1989 494\n",
"1990 379\n",
"1991 506\n",
"1992 605\n",
"1993 907\n",
"1994 956\n",
"1995 826\n",
"1996 994\n",
"1997 924\n",
"1998 897\n",
"1999 1083\n",
"2000 1010\n",
"2001 1092\n",
"2002 806\n",
"2003 817\n",
"2004 973\n",
"2005 1067\n",
"2006 1212\n",
"2007 1250\n",
"2008 1284\n",
"2009 1194\n",
"2010 1168\n",
"2011 1265\n",
"2012 1214\n",
"2013 982\n",
"Total 27707\n",
"Name: Japan, dtype: object\n",
"Continent Asia\n",
"Region Eastern Asia\n",
"DevName Developed regions\n",
"1980 701\n",
"1981 756\n",
"1982 598\n",
"1983 309\n",
"1984 246\n",
"1985 198\n",
"1986 248\n",
"1987 422\n",
"1988 324\n",
"1989 494\n",
"1990 379\n",
"1991 506\n",
"1992 605\n",
"1993 907\n",
"1994 956\n",
"1995 826\n",
"1996 994\n",
"1997 924\n",
"1998 897\n",
"1999 1083\n",
"2000 1010\n",
"2001 1092\n",
"2002 806\n",
"2003 817\n",
"2004 973\n",
"2005 1067\n",
"2006 1212\n",
"2007 1250\n",
"2008 1284\n",
"2009 1194\n",
"2010 1168\n",
"2011 1265\n",
"2012 1214\n",
"2013 982\n",
"Total 27707\n",
"Name: Japan, dtype: object\n",
"Continent Asia\n",
"Region Eastern Asia\n",
"DevName Developed regions\n",
"1980 701\n",
"1981 756\n",
"1982 598\n",
"1983 309\n",
"1984 246\n",
"1985 198\n",
"1986 248\n",
"1987 422\n",
"1988 324\n",
"1989 494\n",
"1990 379\n",
"1991 506\n",
"1992 605\n",
"1993 907\n",
"1994 956\n",
"1995 826\n",
"1996 994\n",
"1997 924\n",
"1998 897\n",
"1999 1083\n",
"2000 1010\n",
"2001 1092\n",
"2002 806\n",
"2003 817\n",
"2004 973\n",
"2005 1067\n",
"2006 1212\n",
"2007 1250\n",
"2008 1284\n",
"2009 1194\n",
"2010 1168\n",
"2011 1265\n",
"2012 1214\n",
"2013 982\n",
"Total 27707\n",
"Name: Japan, dtype: object\n"
]
}
],
"source": [
"# 1. the full row data (all columns)\n",
"print(df_can.loc['Japan'])\n",
"\n",
"# alternate methods\n",
"print(df_can.iloc[87])\n",
"print(df_can[df_can.index == 'Japan'].T.squeeze())"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"982\n",
"982\n"
]
}
],
"source": [
"# 2. for year 2013\n",
"print(df_can.loc['Japan', 2013])\n",
"\n",
"# alternate method\n",
"print(df_can.iloc[87, 36]) # year 2013 is the last column, with a positional index of 36"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1980 701\n",
"1981 756\n",
"1982 598\n",
"1983 309\n",
"1984 246\n",
"1984 246\n",
"Name: Japan, dtype: object\n",
"1980 701\n",
"1981 756\n",
"1982 598\n",
"1983 309\n",
"1984 246\n",
"1985 198\n",
"Name: Japan, dtype: object\n"
]
}
],
"source": [
"# 3. for years 1980 to 1985\n",
"print(df_can.loc['Japan', [1980, 1981, 1982, 1983, 1984, 1984]])\n",
"print(df_can.iloc[87, [3, 4, 5, 6, 7, 8]])"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Column names that are integers (such as the years) might introduce some confusion. For example, when we are referencing the year 2013, one might confuse that when the 2013th positional index. \n",
"\n",
"To avoid this ambuigity, let's convert the column names into strings: '1980' to '2013'."
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"df_can.columns = list(map(str, df_can.columns))\n",
"# [print (type(x)) for x in df_can.columns.values] #<-- uncomment to check type of column headers"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Since we converted the years to string, let's declare a variable that will allow us to easily call upon the full range of years:"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"['1980',\n",
" '1981',\n",
" '1982',\n",
" '1983',\n",
" '1984',\n",
" '1985',\n",
" '1986',\n",
" '1987',\n",
" '1988',\n",
" '1989',\n",
" '1990',\n",
" '1991',\n",
" '1992',\n",
" '1993',\n",
" '1994',\n",
" '1995',\n",
" '1996',\n",
" '1997',\n",
" '1998',\n",
" '1999',\n",
" '2000',\n",
" '2001',\n",
" '2002',\n",
" '2003',\n",
" '2004',\n",
" '2005',\n",
" '2006',\n",
" '2007',\n",
" '2008',\n",
" '2009',\n",
" '2010',\n",
" '2011',\n",
" '2012',\n",
" '2013']"
]
},
"execution_count": 32,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# useful for plotting later on\n",
"years = list(map(str, range(1980, 2014)))\n",
"years"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Filtering based on a criteria\n",
"To filter the dataframe based on a condition, we simply pass the condition as a boolean vector. \n",
"\n",
"For example, Let's filter the dataframe to show the data on Asian countries (AreaName = Asia)."
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Afghanistan True\n",
"Albania False\n",
"Algeria False\n",
"American Samoa False\n",
"Andorra False\n",
" ... \n",
"Viet Nam True\n",
"Western Sahara False\n",
"Yemen True\n",
"Zambia False\n",
"Zimbabwe False\n",
"Name: Continent, Length: 195, dtype: bool\n"
]
}
],
"source": [
"# 1. create the condition boolean series\n",
"condition = df_can['Continent'] == 'Asia'\n",
"print(condition)"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"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>Continent</th>\n",
" <th>Region</th>\n",
" <th>DevName</th>\n",
" <th>1980</th>\n",
" <th>1981</th>\n",
" <th>1982</th>\n",
" <th>1983</th>\n",
" <th>1984</th>\n",
" <th>1985</th>\n",
" <th>1986</th>\n",
" <th>...</th>\n",
" <th>2005</th>\n",
" <th>2006</th>\n",
" <th>2007</th>\n",
" <th>2008</th>\n",
" <th>2009</th>\n",
" <th>2010</th>\n",
" <th>2011</th>\n",
" <th>2012</th>\n",
" <th>2013</th>\n",
" <th>Total</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Afghanistan</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>16</td>\n",
" <td>39</td>\n",
" <td>39</td>\n",
" <td>47</td>\n",
" <td>71</td>\n",
" <td>340</td>\n",
" <td>496</td>\n",
" <td>...</td>\n",
" <td>3436</td>\n",
" <td>3009</td>\n",
" <td>2652</td>\n",
" <td>2111</td>\n",
" <td>1746</td>\n",
" <td>1758</td>\n",
" <td>2203</td>\n",
" <td>2635</td>\n",
" <td>2004</td>\n",
" <td>58639</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Armenia</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>224</td>\n",
" <td>218</td>\n",
" <td>198</td>\n",
" <td>205</td>\n",
" <td>267</td>\n",
" <td>252</td>\n",
" <td>236</td>\n",
" <td>258</td>\n",
" <td>207</td>\n",
" <td>3310</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Azerbaijan</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>359</td>\n",
" <td>236</td>\n",
" <td>203</td>\n",
" <td>125</td>\n",
" <td>165</td>\n",
" <td>209</td>\n",
" <td>138</td>\n",
" <td>161</td>\n",
" <td>57</td>\n",
" <td>2649</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Bahrain</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>3</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>12</td>\n",
" <td>12</td>\n",
" <td>22</td>\n",
" <td>9</td>\n",
" <td>35</td>\n",
" <td>28</td>\n",
" <td>21</td>\n",
" <td>39</td>\n",
" <td>32</td>\n",
" <td>475</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Bangladesh</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>83</td>\n",
" <td>84</td>\n",
" <td>86</td>\n",
" <td>81</td>\n",
" <td>98</td>\n",
" <td>92</td>\n",
" <td>486</td>\n",
" <td>...</td>\n",
" <td>4171</td>\n",
" <td>4014</td>\n",
" <td>2897</td>\n",
" <td>2939</td>\n",
" <td>2104</td>\n",
" <td>4721</td>\n",
" <td>2694</td>\n",
" <td>2640</td>\n",
" <td>3789</td>\n",
" <td>65568</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Bhutan</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>5</td>\n",
" <td>10</td>\n",
" <td>7</td>\n",
" <td>36</td>\n",
" <td>865</td>\n",
" <td>1464</td>\n",
" <td>1879</td>\n",
" <td>1075</td>\n",
" <td>487</td>\n",
" <td>5876</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Brunei Darussalam</th>\n",
" <td>Asia</td>\n",
" <td>South-Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>79</td>\n",
" <td>6</td>\n",
" <td>8</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>4</td>\n",
" <td>12</td>\n",
" <td>...</td>\n",
" <td>4</td>\n",
" <td>5</td>\n",
" <td>11</td>\n",
" <td>10</td>\n",
" <td>5</td>\n",
" <td>12</td>\n",
" <td>6</td>\n",
" <td>3</td>\n",
" <td>6</td>\n",
" <td>600</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Cambodia</th>\n",
" <td>Asia</td>\n",
" <td>South-Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>12</td>\n",
" <td>19</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>10</td>\n",
" <td>7</td>\n",
" <td>8</td>\n",
" <td>...</td>\n",
" <td>370</td>\n",
" <td>529</td>\n",
" <td>460</td>\n",
" <td>354</td>\n",
" <td>203</td>\n",
" <td>200</td>\n",
" <td>196</td>\n",
" <td>233</td>\n",
" <td>288</td>\n",
" <td>6538</td>\n",
" </tr>\n",
" <tr>\n",
" <th>China</th>\n",
" <td>Asia</td>\n",
" <td>Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>5123</td>\n",
" <td>6682</td>\n",
" <td>3308</td>\n",
" <td>1863</td>\n",
" <td>1527</td>\n",
" <td>1816</td>\n",
" <td>1960</td>\n",
" <td>...</td>\n",
" <td>42584</td>\n",
" <td>33518</td>\n",
" <td>27642</td>\n",
" <td>30037</td>\n",
" <td>29622</td>\n",
" <td>30391</td>\n",
" <td>28502</td>\n",
" <td>33024</td>\n",
" <td>34129</td>\n",
" <td>659962</td>\n",
" </tr>\n",
" <tr>\n",
" <th>China, Hong Kong Special Administrative Region</th>\n",
" <td>Asia</td>\n",
" <td>Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>729</td>\n",
" <td>712</td>\n",
" <td>674</td>\n",
" <td>897</td>\n",
" <td>657</td>\n",
" <td>623</td>\n",
" <td>591</td>\n",
" <td>728</td>\n",
" <td>774</td>\n",
" <td>9327</td>\n",
" </tr>\n",
" <tr>\n",
" <th>China, Macao Special Administrative Region</th>\n",
" <td>Asia</td>\n",
" <td>Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>21</td>\n",
" <td>32</td>\n",
" <td>16</td>\n",
" <td>12</td>\n",
" <td>21</td>\n",
" <td>21</td>\n",
" <td>13</td>\n",
" <td>33</td>\n",
" <td>29</td>\n",
" <td>284</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Cyprus</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>132</td>\n",
" <td>128</td>\n",
" <td>84</td>\n",
" <td>46</td>\n",
" <td>46</td>\n",
" <td>43</td>\n",
" <td>48</td>\n",
" <td>...</td>\n",
" <td>7</td>\n",
" <td>9</td>\n",
" <td>4</td>\n",
" <td>7</td>\n",
" <td>6</td>\n",
" <td>18</td>\n",
" <td>6</td>\n",
" <td>12</td>\n",
" <td>16</td>\n",
" <td>1126</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Democratic People's Republic of Korea</th>\n",
" <td>Asia</td>\n",
" <td>Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>3</td>\n",
" <td>1</td>\n",
" <td>4</td>\n",
" <td>3</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>14</td>\n",
" <td>10</td>\n",
" <td>7</td>\n",
" <td>19</td>\n",
" <td>11</td>\n",
" <td>45</td>\n",
" <td>97</td>\n",
" <td>66</td>\n",
" <td>17</td>\n",
" <td>388</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Georgia</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>114</td>\n",
" <td>125</td>\n",
" <td>132</td>\n",
" <td>112</td>\n",
" <td>128</td>\n",
" <td>126</td>\n",
" <td>139</td>\n",
" <td>147</td>\n",
" <td>125</td>\n",
" <td>2068</td>\n",
" </tr>\n",
" <tr>\n",
" <th>India</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>8880</td>\n",
" <td>8670</td>\n",
" <td>8147</td>\n",
" <td>7338</td>\n",
" <td>5704</td>\n",
" <td>4211</td>\n",
" <td>7150</td>\n",
" <td>...</td>\n",
" <td>36210</td>\n",
" <td>33848</td>\n",
" <td>28742</td>\n",
" <td>28261</td>\n",
" <td>29456</td>\n",
" <td>34235</td>\n",
" <td>27509</td>\n",
" <td>30933</td>\n",
" <td>33087</td>\n",
" <td>691904</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Indonesia</th>\n",
" <td>Asia</td>\n",
" <td>South-Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>186</td>\n",
" <td>178</td>\n",
" <td>252</td>\n",
" <td>115</td>\n",
" <td>123</td>\n",
" <td>100</td>\n",
" <td>127</td>\n",
" <td>...</td>\n",
" <td>632</td>\n",
" <td>613</td>\n",
" <td>657</td>\n",
" <td>661</td>\n",
" <td>504</td>\n",
" <td>712</td>\n",
" <td>390</td>\n",
" <td>395</td>\n",
" <td>387</td>\n",
" <td>13150</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Iran (Islamic Republic of)</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>1172</td>\n",
" <td>1429</td>\n",
" <td>1822</td>\n",
" <td>1592</td>\n",
" <td>1977</td>\n",
" <td>1648</td>\n",
" <td>1794</td>\n",
" <td>...</td>\n",
" <td>5837</td>\n",
" <td>7480</td>\n",
" <td>6974</td>\n",
" <td>6475</td>\n",
" <td>6580</td>\n",
" <td>7477</td>\n",
" <td>7479</td>\n",
" <td>7534</td>\n",
" <td>11291</td>\n",
" <td>175923</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Iraq</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>262</td>\n",
" <td>245</td>\n",
" <td>260</td>\n",
" <td>380</td>\n",
" <td>428</td>\n",
" <td>231</td>\n",
" <td>265</td>\n",
" <td>...</td>\n",
" <td>2226</td>\n",
" <td>1788</td>\n",
" <td>2406</td>\n",
" <td>3543</td>\n",
" <td>5450</td>\n",
" <td>5941</td>\n",
" <td>6196</td>\n",
" <td>4041</td>\n",
" <td>4918</td>\n",
" <td>69789</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Israel</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>1403</td>\n",
" <td>1711</td>\n",
" <td>1334</td>\n",
" <td>541</td>\n",
" <td>446</td>\n",
" <td>680</td>\n",
" <td>1212</td>\n",
" <td>...</td>\n",
" <td>2446</td>\n",
" <td>2625</td>\n",
" <td>2401</td>\n",
" <td>2562</td>\n",
" <td>2316</td>\n",
" <td>2755</td>\n",
" <td>1970</td>\n",
" <td>2134</td>\n",
" <td>1945</td>\n",
" <td>66508</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Japan</th>\n",
" <td>Asia</td>\n",
" <td>Eastern Asia</td>\n",
" <td>Developed regions</td>\n",
" <td>701</td>\n",
" <td>756</td>\n",
" <td>598</td>\n",
" <td>309</td>\n",
" <td>246</td>\n",
" <td>198</td>\n",
" <td>248</td>\n",
" <td>...</td>\n",
" <td>1067</td>\n",
" <td>1212</td>\n",
" <td>1250</td>\n",
" <td>1284</td>\n",
" <td>1194</td>\n",
" <td>1168</td>\n",
" <td>1265</td>\n",
" <td>1214</td>\n",
" <td>982</td>\n",
" <td>27707</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Jordan</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>177</td>\n",
" <td>160</td>\n",
" <td>155</td>\n",
" <td>113</td>\n",
" <td>102</td>\n",
" <td>179</td>\n",
" <td>181</td>\n",
" <td>...</td>\n",
" <td>1940</td>\n",
" <td>1827</td>\n",
" <td>1421</td>\n",
" <td>1581</td>\n",
" <td>1235</td>\n",
" <td>1831</td>\n",
" <td>1635</td>\n",
" <td>1206</td>\n",
" <td>1255</td>\n",
" <td>35406</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kazakhstan</th>\n",
" <td>Asia</td>\n",
" <td>Central Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>506</td>\n",
" <td>408</td>\n",
" <td>436</td>\n",
" <td>394</td>\n",
" <td>431</td>\n",
" <td>377</td>\n",
" <td>381</td>\n",
" <td>462</td>\n",
" <td>348</td>\n",
" <td>8490</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kuwait</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>8</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>...</td>\n",
" <td>66</td>\n",
" <td>35</td>\n",
" <td>62</td>\n",
" <td>53</td>\n",
" <td>68</td>\n",
" <td>67</td>\n",
" <td>58</td>\n",
" <td>73</td>\n",
" <td>48</td>\n",
" <td>2025</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Kyrgyzstan</th>\n",
" <td>Asia</td>\n",
" <td>Central Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>173</td>\n",
" <td>161</td>\n",
" <td>135</td>\n",
" <td>168</td>\n",
" <td>173</td>\n",
" <td>157</td>\n",
" <td>159</td>\n",
" <td>278</td>\n",
" <td>123</td>\n",
" <td>2353</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Lao People's Democratic Republic</th>\n",
" <td>Asia</td>\n",
" <td>South-Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>11</td>\n",
" <td>6</td>\n",
" <td>16</td>\n",
" <td>16</td>\n",
" <td>7</td>\n",
" <td>17</td>\n",
" <td>21</td>\n",
" <td>...</td>\n",
" <td>42</td>\n",
" <td>74</td>\n",
" <td>53</td>\n",
" <td>32</td>\n",
" <td>39</td>\n",
" <td>54</td>\n",
" <td>22</td>\n",
" <td>25</td>\n",
" <td>15</td>\n",
" <td>1089</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Lebanon</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>1409</td>\n",
" <td>1119</td>\n",
" <td>1159</td>\n",
" <td>789</td>\n",
" <td>1253</td>\n",
" <td>1683</td>\n",
" <td>2576</td>\n",
" <td>...</td>\n",
" <td>3709</td>\n",
" <td>3802</td>\n",
" <td>3467</td>\n",
" <td>3566</td>\n",
" <td>3077</td>\n",
" <td>3432</td>\n",
" <td>3072</td>\n",
" <td>1614</td>\n",
" <td>2172</td>\n",
" <td>115359</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Malaysia</th>\n",
" <td>Asia</td>\n",
" <td>South-Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>786</td>\n",
" <td>816</td>\n",
" <td>813</td>\n",
" <td>448</td>\n",
" <td>384</td>\n",
" <td>374</td>\n",
" <td>425</td>\n",
" <td>...</td>\n",
" <td>593</td>\n",
" <td>580</td>\n",
" <td>600</td>\n",
" <td>658</td>\n",
" <td>640</td>\n",
" <td>802</td>\n",
" <td>409</td>\n",
" <td>358</td>\n",
" <td>204</td>\n",
" <td>24417</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Maldives</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>7</td>\n",
" <td>4</td>\n",
" <td>3</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>30</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Mongolia</th>\n",
" <td>Asia</td>\n",
" <td>Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>59</td>\n",
" <td>64</td>\n",
" <td>82</td>\n",
" <td>59</td>\n",
" <td>118</td>\n",
" <td>169</td>\n",
" <td>103</td>\n",
" <td>68</td>\n",
" <td>99</td>\n",
" <td>952</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Myanmar</th>\n",
" <td>Asia</td>\n",
" <td>South-Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>80</td>\n",
" <td>62</td>\n",
" <td>46</td>\n",
" <td>31</td>\n",
" <td>41</td>\n",
" <td>23</td>\n",
" <td>18</td>\n",
" <td>...</td>\n",
" <td>210</td>\n",
" <td>953</td>\n",
" <td>1887</td>\n",
" <td>975</td>\n",
" <td>1153</td>\n",
" <td>556</td>\n",
" <td>368</td>\n",
" <td>193</td>\n",
" <td>262</td>\n",
" <td>9245</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Nepal</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>6</td>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>4</td>\n",
" <td>13</td>\n",
" <td>...</td>\n",
" <td>607</td>\n",
" <td>540</td>\n",
" <td>511</td>\n",
" <td>581</td>\n",
" <td>561</td>\n",
" <td>1392</td>\n",
" <td>1129</td>\n",
" <td>1185</td>\n",
" <td>1308</td>\n",
" <td>10222</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Oman</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>8</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>14</td>\n",
" <td>18</td>\n",
" <td>16</td>\n",
" <td>10</td>\n",
" <td>7</td>\n",
" <td>14</td>\n",
" <td>10</td>\n",
" <td>13</td>\n",
" <td>11</td>\n",
" <td>224</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Pakistan</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>978</td>\n",
" <td>972</td>\n",
" <td>1201</td>\n",
" <td>900</td>\n",
" <td>668</td>\n",
" <td>514</td>\n",
" <td>691</td>\n",
" <td>...</td>\n",
" <td>14314</td>\n",
" <td>13127</td>\n",
" <td>10124</td>\n",
" <td>8994</td>\n",
" <td>7217</td>\n",
" <td>6811</td>\n",
" <td>7468</td>\n",
" <td>11227</td>\n",
" <td>12603</td>\n",
" <td>241600</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Philippines</th>\n",
" <td>Asia</td>\n",
" <td>South-Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>6051</td>\n",
" <td>5921</td>\n",
" <td>5249</td>\n",
" <td>4562</td>\n",
" <td>3801</td>\n",
" <td>3150</td>\n",
" <td>4166</td>\n",
" <td>...</td>\n",
" <td>18139</td>\n",
" <td>18400</td>\n",
" <td>19837</td>\n",
" <td>24887</td>\n",
" <td>28573</td>\n",
" <td>38617</td>\n",
" <td>36765</td>\n",
" <td>34315</td>\n",
" <td>29544</td>\n",
" <td>511391</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Qatar</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>...</td>\n",
" <td>11</td>\n",
" <td>2</td>\n",
" <td>5</td>\n",
" <td>9</td>\n",
" <td>6</td>\n",
" <td>18</td>\n",
" <td>3</td>\n",
" <td>14</td>\n",
" <td>6</td>\n",
" <td>157</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Republic of Korea</th>\n",
" <td>Asia</td>\n",
" <td>Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>1011</td>\n",
" <td>1456</td>\n",
" <td>1572</td>\n",
" <td>1081</td>\n",
" <td>847</td>\n",
" <td>962</td>\n",
" <td>1208</td>\n",
" <td>...</td>\n",
" <td>5832</td>\n",
" <td>6215</td>\n",
" <td>5920</td>\n",
" <td>7294</td>\n",
" <td>5874</td>\n",
" <td>5537</td>\n",
" <td>4588</td>\n",
" <td>5316</td>\n",
" <td>4509</td>\n",
" <td>142581</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Saudi Arabia</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>4</td>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>5</td>\n",
" <td>...</td>\n",
" <td>198</td>\n",
" <td>252</td>\n",
" <td>188</td>\n",
" <td>249</td>\n",
" <td>246</td>\n",
" <td>330</td>\n",
" <td>278</td>\n",
" <td>286</td>\n",
" <td>267</td>\n",
" <td>3425</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Singapore</th>\n",
" <td>Asia</td>\n",
" <td>South-Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>241</td>\n",
" <td>301</td>\n",
" <td>337</td>\n",
" <td>169</td>\n",
" <td>128</td>\n",
" <td>139</td>\n",
" <td>205</td>\n",
" <td>...</td>\n",
" <td>392</td>\n",
" <td>298</td>\n",
" <td>690</td>\n",
" <td>734</td>\n",
" <td>366</td>\n",
" <td>805</td>\n",
" <td>219</td>\n",
" <td>146</td>\n",
" <td>141</td>\n",
" <td>14579</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Sri Lanka</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>185</td>\n",
" <td>371</td>\n",
" <td>290</td>\n",
" <td>197</td>\n",
" <td>1086</td>\n",
" <td>845</td>\n",
" <td>1838</td>\n",
" <td>...</td>\n",
" <td>4930</td>\n",
" <td>4714</td>\n",
" <td>4123</td>\n",
" <td>4756</td>\n",
" <td>4547</td>\n",
" <td>4422</td>\n",
" <td>3309</td>\n",
" <td>3338</td>\n",
" <td>2394</td>\n",
" <td>148358</td>\n",
" </tr>\n",
" <tr>\n",
" <th>State of Palestine</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>453</td>\n",
" <td>627</td>\n",
" <td>441</td>\n",
" <td>481</td>\n",
" <td>400</td>\n",
" <td>654</td>\n",
" <td>555</td>\n",
" <td>533</td>\n",
" <td>462</td>\n",
" <td>6512</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Syrian Arab Republic</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>315</td>\n",
" <td>419</td>\n",
" <td>409</td>\n",
" <td>269</td>\n",
" <td>264</td>\n",
" <td>385</td>\n",
" <td>493</td>\n",
" <td>...</td>\n",
" <td>1458</td>\n",
" <td>1145</td>\n",
" <td>1056</td>\n",
" <td>919</td>\n",
" <td>917</td>\n",
" <td>1039</td>\n",
" <td>1005</td>\n",
" <td>650</td>\n",
" <td>1009</td>\n",
" <td>31485</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Tajikistan</th>\n",
" <td>Asia</td>\n",
" <td>Central Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>85</td>\n",
" <td>46</td>\n",
" <td>44</td>\n",
" <td>15</td>\n",
" <td>50</td>\n",
" <td>52</td>\n",
" <td>47</td>\n",
" <td>34</td>\n",
" <td>39</td>\n",
" <td>503</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Thailand</th>\n",
" <td>Asia</td>\n",
" <td>South-Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>56</td>\n",
" <td>53</td>\n",
" <td>113</td>\n",
" <td>65</td>\n",
" <td>82</td>\n",
" <td>66</td>\n",
" <td>78</td>\n",
" <td>...</td>\n",
" <td>575</td>\n",
" <td>500</td>\n",
" <td>487</td>\n",
" <td>519</td>\n",
" <td>512</td>\n",
" <td>499</td>\n",
" <td>396</td>\n",
" <td>296</td>\n",
" <td>400</td>\n",
" <td>9174</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Turkey</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>481</td>\n",
" <td>874</td>\n",
" <td>706</td>\n",
" <td>280</td>\n",
" <td>338</td>\n",
" <td>202</td>\n",
" <td>257</td>\n",
" <td>...</td>\n",
" <td>2065</td>\n",
" <td>1638</td>\n",
" <td>1463</td>\n",
" <td>1122</td>\n",
" <td>1238</td>\n",
" <td>1492</td>\n",
" <td>1257</td>\n",
" <td>1068</td>\n",
" <td>729</td>\n",
" <td>31781</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Turkmenistan</th>\n",
" <td>Asia</td>\n",
" <td>Central Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>40</td>\n",
" <td>26</td>\n",
" <td>37</td>\n",
" <td>13</td>\n",
" <td>20</td>\n",
" <td>30</td>\n",
" <td>20</td>\n",
" <td>20</td>\n",
" <td>14</td>\n",
" <td>310</td>\n",
" </tr>\n",
" <tr>\n",
" <th>United Arab Emirates</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>5</td>\n",
" <td>...</td>\n",
" <td>31</td>\n",
" <td>42</td>\n",
" <td>37</td>\n",
" <td>33</td>\n",
" <td>37</td>\n",
" <td>86</td>\n",
" <td>60</td>\n",
" <td>54</td>\n",
" <td>46</td>\n",
" <td>836</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Uzbekistan</th>\n",
" <td>Asia</td>\n",
" <td>Central Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>330</td>\n",
" <td>262</td>\n",
" <td>284</td>\n",
" <td>215</td>\n",
" <td>288</td>\n",
" <td>289</td>\n",
" <td>162</td>\n",
" <td>235</td>\n",
" <td>167</td>\n",
" <td>3368</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Viet Nam</th>\n",
" <td>Asia</td>\n",
" <td>South-Eastern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>1191</td>\n",
" <td>1829</td>\n",
" <td>2162</td>\n",
" <td>3404</td>\n",
" <td>7583</td>\n",
" <td>5907</td>\n",
" <td>2741</td>\n",
" <td>...</td>\n",
" <td>1852</td>\n",
" <td>3153</td>\n",
" <td>2574</td>\n",
" <td>1784</td>\n",
" <td>2171</td>\n",
" <td>1942</td>\n",
" <td>1723</td>\n",
" <td>1731</td>\n",
" <td>2112</td>\n",
" <td>97146</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Yemen</th>\n",
" <td>Asia</td>\n",
" <td>Western Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>6</td>\n",
" <td>0</td>\n",
" <td>18</td>\n",
" <td>7</td>\n",
" <td>...</td>\n",
" <td>161</td>\n",
" <td>140</td>\n",
" <td>122</td>\n",
" <td>133</td>\n",
" <td>128</td>\n",
" <td>211</td>\n",
" <td>160</td>\n",
" <td>174</td>\n",
" <td>217</td>\n",
" <td>2985</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>49 rows × 38 columns</p>\n",
"</div>"
],
"text/plain": [
" Continent Region \\\n",
"Afghanistan Asia Southern Asia \n",
"Armenia Asia Western Asia \n",
"Azerbaijan Asia Western Asia \n",
"Bahrain Asia Western Asia \n",
"Bangladesh Asia Southern Asia \n",
"Bhutan Asia Southern Asia \n",
"Brunei Darussalam Asia South-Eastern Asia \n",
"Cambodia Asia South-Eastern Asia \n",
"China Asia Eastern Asia \n",
"China, Hong Kong Special Administrative Region Asia Eastern Asia \n",
"China, Macao Special Administrative Region Asia Eastern Asia \n",
"Cyprus Asia Western Asia \n",
"Democratic People's Republic of Korea Asia Eastern Asia \n",
"Georgia Asia Western Asia \n",
"India Asia Southern Asia \n",
"Indonesia Asia South-Eastern Asia \n",
"Iran (Islamic Republic of) Asia Southern Asia \n",
"Iraq Asia Western Asia \n",
"Israel Asia Western Asia \n",
"Japan Asia Eastern Asia \n",
"Jordan Asia Western Asia \n",
"Kazakhstan Asia Central Asia \n",
"Kuwait Asia Western Asia \n",
"Kyrgyzstan Asia Central Asia \n",
"Lao People's Democratic Republic Asia South-Eastern Asia \n",
"Lebanon Asia Western Asia \n",
"Malaysia Asia South-Eastern Asia \n",
"Maldives Asia Southern Asia \n",
"Mongolia Asia Eastern Asia \n",
"Myanmar Asia South-Eastern Asia \n",
"Nepal Asia Southern Asia \n",
"Oman Asia Western Asia \n",
"Pakistan Asia Southern Asia \n",
"Philippines Asia South-Eastern Asia \n",
"Qatar Asia Western Asia \n",
"Republic of Korea Asia Eastern Asia \n",
"Saudi Arabia Asia Western Asia \n",
"Singapore Asia South-Eastern Asia \n",
"Sri Lanka Asia Southern Asia \n",
"State of Palestine Asia Western Asia \n",
"Syrian Arab Republic Asia Western Asia \n",
"Tajikistan Asia Central Asia \n",
"Thailand Asia South-Eastern Asia \n",
"Turkey Asia Western Asia \n",
"Turkmenistan Asia Central Asia \n",
"United Arab Emirates Asia Western Asia \n",
"Uzbekistan Asia Central Asia \n",
"Viet Nam Asia South-Eastern Asia \n",
"Yemen Asia Western Asia \n",
"\n",
" DevName 1980 \\\n",
"Afghanistan Developing regions 16 \n",
"Armenia Developing regions 0 \n",
"Azerbaijan Developing regions 0 \n",
"Bahrain Developing regions 0 \n",
"Bangladesh Developing regions 83 \n",
"Bhutan Developing regions 0 \n",
"Brunei Darussalam Developing regions 79 \n",
"Cambodia Developing regions 12 \n",
"China Developing regions 5123 \n",
"China, Hong Kong Special Administrative Region Developing regions 0 \n",
"China, Macao Special Administrative Region Developing regions 0 \n",
"Cyprus Developing regions 132 \n",
"Democratic People's Republic of Korea Developing regions 1 \n",
"Georgia Developing regions 0 \n",
"India Developing regions 8880 \n",
"Indonesia Developing regions 186 \n",
"Iran (Islamic Republic of) Developing regions 1172 \n",
"Iraq Developing regions 262 \n",
"Israel Developing regions 1403 \n",
"Japan Developed regions 701 \n",
"Jordan Developing regions 177 \n",
"Kazakhstan Developing regions 0 \n",
"Kuwait Developing regions 1 \n",
"Kyrgyzstan Developing regions 0 \n",
"Lao People's Democratic Republic Developing regions 11 \n",
"Lebanon Developing regions 1409 \n",
"Malaysia Developing regions 786 \n",
"Maldives Developing regions 0 \n",
"Mongolia Developing regions 0 \n",
"Myanmar Developing regions 80 \n",
"Nepal Developing regions 1 \n",
"Oman Developing regions 0 \n",
"Pakistan Developing regions 978 \n",
"Philippines Developing regions 6051 \n",
"Qatar Developing regions 0 \n",
"Republic of Korea Developing regions 1011 \n",
"Saudi Arabia Developing regions 0 \n",
"Singapore Developing regions 241 \n",
"Sri Lanka Developing regions 185 \n",
"State of Palestine Developing regions 0 \n",
"Syrian Arab Republic Developing regions 315 \n",
"Tajikistan Developing regions 0 \n",
"Thailand Developing regions 56 \n",
"Turkey Developing regions 481 \n",
"Turkmenistan Developing regions 0 \n",
"United Arab Emirates Developing regions 0 \n",
"Uzbekistan Developing regions 0 \n",
"Viet Nam Developing regions 1191 \n",
"Yemen Developing regions 1 \n",
"\n",
" 1981 1982 1983 1984 1985 \\\n",
"Afghanistan 39 39 47 71 340 \n",
"Armenia 0 0 0 0 0 \n",
"Azerbaijan 0 0 0 0 0 \n",
"Bahrain 2 1 1 1 3 \n",
"Bangladesh 84 86 81 98 92 \n",
"Bhutan 0 0 0 1 0 \n",
"Brunei Darussalam 6 8 2 2 4 \n",
"Cambodia 19 26 33 10 7 \n",
"China 6682 3308 1863 1527 1816 \n",
"China, Hong Kong Special Administrative Region 0 0 0 0 0 \n",
"China, Macao Special Administrative Region 0 0 0 0 0 \n",
"Cyprus 128 84 46 46 43 \n",
"Democratic People's Republic of Korea 1 3 1 4 3 \n",
"Georgia 0 0 0 0 0 \n",
"India 8670 8147 7338 5704 4211 \n",
"Indonesia 178 252 115 123 100 \n",
"Iran (Islamic Republic of) 1429 1822 1592 1977 1648 \n",
"Iraq 245 260 380 428 231 \n",
"Israel 1711 1334 541 446 680 \n",
"Japan 756 598 309 246 198 \n",
"Jordan 160 155 113 102 179 \n",
"Kazakhstan 0 0 0 0 0 \n",
"Kuwait 0 8 2 1 4 \n",
"Kyrgyzstan 0 0 0 0 0 \n",
"Lao People's Democratic Republic 6 16 16 7 17 \n",
"Lebanon 1119 1159 789 1253 1683 \n",
"Malaysia 816 813 448 384 374 \n",
"Maldives 0 0 1 0 0 \n",
"Mongolia 0 0 0 0 0 \n",
"Myanmar 62 46 31 41 23 \n",
"Nepal 1 6 1 2 4 \n",
"Oman 0 0 8 0 0 \n",
"Pakistan 972 1201 900 668 514 \n",
"Philippines 5921 5249 4562 3801 3150 \n",
"Qatar 0 0 0 0 0 \n",
"Republic of Korea 1456 1572 1081 847 962 \n",
"Saudi Arabia 0 1 4 1 2 \n",
"Singapore 301 337 169 128 139 \n",
"Sri Lanka 371 290 197 1086 845 \n",
"State of Palestine 0 0 0 0 0 \n",
"Syrian Arab Republic 419 409 269 264 385 \n",
"Tajikistan 0 0 0 0 0 \n",
"Thailand 53 113 65 82 66 \n",
"Turkey 874 706 280 338 202 \n",
"Turkmenistan 0 0 0 0 0 \n",
"United Arab Emirates 2 2 1 2 0 \n",
"Uzbekistan 0 0 0 0 0 \n",
"Viet Nam 1829 2162 3404 7583 5907 \n",
"Yemen 2 1 6 0 18 \n",
"\n",
" 1986 ... 2005 2006 \\\n",
"Afghanistan 496 ... 3436 3009 \n",
"Armenia 0 ... 224 218 \n",
"Azerbaijan 0 ... 359 236 \n",
"Bahrain 0 ... 12 12 \n",
"Bangladesh 486 ... 4171 4014 \n",
"Bhutan 0 ... 5 10 \n",
"Brunei Darussalam 12 ... 4 5 \n",
"Cambodia 8 ... 370 529 \n",
"China 1960 ... 42584 33518 \n",
"China, Hong Kong Special Administrative Region 0 ... 729 712 \n",
"China, Macao Special Administrative Region 0 ... 21 32 \n",
"Cyprus 48 ... 7 9 \n",
"Democratic People's Republic of Korea 0 ... 14 10 \n",
"Georgia 0 ... 114 125 \n",
"India 7150 ... 36210 33848 \n",
"Indonesia 127 ... 632 613 \n",
"Iran (Islamic Republic of) 1794 ... 5837 7480 \n",
"Iraq 265 ... 2226 1788 \n",
"Israel 1212 ... 2446 2625 \n",
"Japan 248 ... 1067 1212 \n",
"Jordan 181 ... 1940 1827 \n",
"Kazakhstan 0 ... 506 408 \n",
"Kuwait 4 ... 66 35 \n",
"Kyrgyzstan 0 ... 173 161 \n",
"Lao People's Democratic Republic 21 ... 42 74 \n",
"Lebanon 2576 ... 3709 3802 \n",
"Malaysia 425 ... 593 580 \n",
"Maldives 0 ... 0 0 \n",
"Mongolia 0 ... 59 64 \n",
"Myanmar 18 ... 210 953 \n",
"Nepal 13 ... 607 540 \n",
"Oman 0 ... 14 18 \n",
"Pakistan 691 ... 14314 13127 \n",
"Philippines 4166 ... 18139 18400 \n",
"Qatar 1 ... 11 2 \n",
"Republic of Korea 1208 ... 5832 6215 \n",
"Saudi Arabia 5 ... 198 252 \n",
"Singapore 205 ... 392 298 \n",
"Sri Lanka 1838 ... 4930 4714 \n",
"State of Palestine 0 ... 453 627 \n",
"Syrian Arab Republic 493 ... 1458 1145 \n",
"Tajikistan 0 ... 85 46 \n",
"Thailand 78 ... 575 500 \n",
"Turkey 257 ... 2065 1638 \n",
"Turkmenistan 0 ... 40 26 \n",
"United Arab Emirates 5 ... 31 42 \n",
"Uzbekistan 0 ... 330 262 \n",
"Viet Nam 2741 ... 1852 3153 \n",
"Yemen 7 ... 161 140 \n",
"\n",
" 2007 2008 2009 2010 \\\n",
"Afghanistan 2652 2111 1746 1758 \n",
"Armenia 198 205 267 252 \n",
"Azerbaijan 203 125 165 209 \n",
"Bahrain 22 9 35 28 \n",
"Bangladesh 2897 2939 2104 4721 \n",
"Bhutan 7 36 865 1464 \n",
"Brunei Darussalam 11 10 5 12 \n",
"Cambodia 460 354 203 200 \n",
"China 27642 30037 29622 30391 \n",
"China, Hong Kong Special Administrative Region 674 897 657 623 \n",
"China, Macao Special Administrative Region 16 12 21 21 \n",
"Cyprus 4 7 6 18 \n",
"Democratic People's Republic of Korea 7 19 11 45 \n",
"Georgia 132 112 128 126 \n",
"India 28742 28261 29456 34235 \n",
"Indonesia 657 661 504 712 \n",
"Iran (Islamic Republic of) 6974 6475 6580 7477 \n",
"Iraq 2406 3543 5450 5941 \n",
"Israel 2401 2562 2316 2755 \n",
"Japan 1250 1284 1194 1168 \n",
"Jordan 1421 1581 1235 1831 \n",
"Kazakhstan 436 394 431 377 \n",
"Kuwait 62 53 68 67 \n",
"Kyrgyzstan 135 168 173 157 \n",
"Lao People's Democratic Republic 53 32 39 54 \n",
"Lebanon 3467 3566 3077 3432 \n",
"Malaysia 600 658 640 802 \n",
"Maldives 2 1 7 4 \n",
"Mongolia 82 59 118 169 \n",
"Myanmar 1887 975 1153 556 \n",
"Nepal 511 581 561 1392 \n",
"Oman 16 10 7 14 \n",
"Pakistan 10124 8994 7217 6811 \n",
"Philippines 19837 24887 28573 38617 \n",
"Qatar 5 9 6 18 \n",
"Republic of Korea 5920 7294 5874 5537 \n",
"Saudi Arabia 188 249 246 330 \n",
"Singapore 690 734 366 805 \n",
"Sri Lanka 4123 4756 4547 4422 \n",
"State of Palestine 441 481 400 654 \n",
"Syrian Arab Republic 1056 919 917 1039 \n",
"Tajikistan 44 15 50 52 \n",
"Thailand 487 519 512 499 \n",
"Turkey 1463 1122 1238 1492 \n",
"Turkmenistan 37 13 20 30 \n",
"United Arab Emirates 37 33 37 86 \n",
"Uzbekistan 284 215 288 289 \n",
"Viet Nam 2574 1784 2171 1942 \n",
"Yemen 122 133 128 211 \n",
"\n",
" 2011 2012 2013 Total \n",
"Afghanistan 2203 2635 2004 58639 \n",
"Armenia 236 258 207 3310 \n",
"Azerbaijan 138 161 57 2649 \n",
"Bahrain 21 39 32 475 \n",
"Bangladesh 2694 2640 3789 65568 \n",
"Bhutan 1879 1075 487 5876 \n",
"Brunei Darussalam 6 3 6 600 \n",
"Cambodia 196 233 288 6538 \n",
"China 28502 33024 34129 659962 \n",
"China, Hong Kong Special Administrative Region 591 728 774 9327 \n",
"China, Macao Special Administrative Region 13 33 29 284 \n",
"Cyprus 6 12 16 1126 \n",
"Democratic People's Republic of Korea 97 66 17 388 \n",
"Georgia 139 147 125 2068 \n",
"India 27509 30933 33087 691904 \n",
"Indonesia 390 395 387 13150 \n",
"Iran (Islamic Republic of) 7479 7534 11291 175923 \n",
"Iraq 6196 4041 4918 69789 \n",
"Israel 1970 2134 1945 66508 \n",
"Japan 1265 1214 982 27707 \n",
"Jordan 1635 1206 1255 35406 \n",
"Kazakhstan 381 462 348 8490 \n",
"Kuwait 58 73 48 2025 \n",
"Kyrgyzstan 159 278 123 2353 \n",
"Lao People's Democratic Republic 22 25 15 1089 \n",
"Lebanon 3072 1614 2172 115359 \n",
"Malaysia 409 358 204 24417 \n",
"Maldives 3 1 1 30 \n",
"Mongolia 103 68 99 952 \n",
"Myanmar 368 193 262 9245 \n",
"Nepal 1129 1185 1308 10222 \n",
"Oman 10 13 11 224 \n",
"Pakistan 7468 11227 12603 241600 \n",
"Philippines 36765 34315 29544 511391 \n",
"Qatar 3 14 6 157 \n",
"Republic of Korea 4588 5316 4509 142581 \n",
"Saudi Arabia 278 286 267 3425 \n",
"Singapore 219 146 141 14579 \n",
"Sri Lanka 3309 3338 2394 148358 \n",
"State of Palestine 555 533 462 6512 \n",
"Syrian Arab Republic 1005 650 1009 31485 \n",
"Tajikistan 47 34 39 503 \n",
"Thailand 396 296 400 9174 \n",
"Turkey 1257 1068 729 31781 \n",
"Turkmenistan 20 20 14 310 \n",
"United Arab Emirates 60 54 46 836 \n",
"Uzbekistan 162 235 167 3368 \n",
"Viet Nam 1723 1731 2112 97146 \n",
"Yemen 160 174 217 2985 \n",
"\n",
"[49 rows x 38 columns]"
]
},
"execution_count": 34,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# 2. pass this condition into the dataFrame\n",
"df_can[condition]"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"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>Continent</th>\n",
" <th>Region</th>\n",
" <th>DevName</th>\n",
" <th>1980</th>\n",
" <th>1981</th>\n",
" <th>1982</th>\n",
" <th>1983</th>\n",
" <th>1984</th>\n",
" <th>1985</th>\n",
" <th>1986</th>\n",
" <th>...</th>\n",
" <th>2005</th>\n",
" <th>2006</th>\n",
" <th>2007</th>\n",
" <th>2008</th>\n",
" <th>2009</th>\n",
" <th>2010</th>\n",
" <th>2011</th>\n",
" <th>2012</th>\n",
" <th>2013</th>\n",
" <th>Total</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Afghanistan</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>16</td>\n",
" <td>39</td>\n",
" <td>39</td>\n",
" <td>47</td>\n",
" <td>71</td>\n",
" <td>340</td>\n",
" <td>496</td>\n",
" <td>...</td>\n",
" <td>3436</td>\n",
" <td>3009</td>\n",
" <td>2652</td>\n",
" <td>2111</td>\n",
" <td>1746</td>\n",
" <td>1758</td>\n",
" <td>2203</td>\n",
" <td>2635</td>\n",
" <td>2004</td>\n",
" <td>58639</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Bangladesh</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>83</td>\n",
" <td>84</td>\n",
" <td>86</td>\n",
" <td>81</td>\n",
" <td>98</td>\n",
" <td>92</td>\n",
" <td>486</td>\n",
" <td>...</td>\n",
" <td>4171</td>\n",
" <td>4014</td>\n",
" <td>2897</td>\n",
" <td>2939</td>\n",
" <td>2104</td>\n",
" <td>4721</td>\n",
" <td>2694</td>\n",
" <td>2640</td>\n",
" <td>3789</td>\n",
" <td>65568</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Bhutan</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>5</td>\n",
" <td>10</td>\n",
" <td>7</td>\n",
" <td>36</td>\n",
" <td>865</td>\n",
" <td>1464</td>\n",
" <td>1879</td>\n",
" <td>1075</td>\n",
" <td>487</td>\n",
" <td>5876</td>\n",
" </tr>\n",
" <tr>\n",
" <th>India</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>8880</td>\n",
" <td>8670</td>\n",
" <td>8147</td>\n",
" <td>7338</td>\n",
" <td>5704</td>\n",
" <td>4211</td>\n",
" <td>7150</td>\n",
" <td>...</td>\n",
" <td>36210</td>\n",
" <td>33848</td>\n",
" <td>28742</td>\n",
" <td>28261</td>\n",
" <td>29456</td>\n",
" <td>34235</td>\n",
" <td>27509</td>\n",
" <td>30933</td>\n",
" <td>33087</td>\n",
" <td>691904</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Iran (Islamic Republic of)</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>1172</td>\n",
" <td>1429</td>\n",
" <td>1822</td>\n",
" <td>1592</td>\n",
" <td>1977</td>\n",
" <td>1648</td>\n",
" <td>1794</td>\n",
" <td>...</td>\n",
" <td>5837</td>\n",
" <td>7480</td>\n",
" <td>6974</td>\n",
" <td>6475</td>\n",
" <td>6580</td>\n",
" <td>7477</td>\n",
" <td>7479</td>\n",
" <td>7534</td>\n",
" <td>11291</td>\n",
" <td>175923</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Maldives</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>...</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>7</td>\n",
" <td>4</td>\n",
" <td>3</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>30</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Nepal</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>6</td>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>4</td>\n",
" <td>13</td>\n",
" <td>...</td>\n",
" <td>607</td>\n",
" <td>540</td>\n",
" <td>511</td>\n",
" <td>581</td>\n",
" <td>561</td>\n",
" <td>1392</td>\n",
" <td>1129</td>\n",
" <td>1185</td>\n",
" <td>1308</td>\n",
" <td>10222</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Pakistan</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>978</td>\n",
" <td>972</td>\n",
" <td>1201</td>\n",
" <td>900</td>\n",
" <td>668</td>\n",
" <td>514</td>\n",
" <td>691</td>\n",
" <td>...</td>\n",
" <td>14314</td>\n",
" <td>13127</td>\n",
" <td>10124</td>\n",
" <td>8994</td>\n",
" <td>7217</td>\n",
" <td>6811</td>\n",
" <td>7468</td>\n",
" <td>11227</td>\n",
" <td>12603</td>\n",
" <td>241600</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Sri Lanka</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>185</td>\n",
" <td>371</td>\n",
" <td>290</td>\n",
" <td>197</td>\n",
" <td>1086</td>\n",
" <td>845</td>\n",
" <td>1838</td>\n",
" <td>...</td>\n",
" <td>4930</td>\n",
" <td>4714</td>\n",
" <td>4123</td>\n",
" <td>4756</td>\n",
" <td>4547</td>\n",
" <td>4422</td>\n",
" <td>3309</td>\n",
" <td>3338</td>\n",
" <td>2394</td>\n",
" <td>148358</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>9 rows × 38 columns</p>\n",
"</div>"
],
"text/plain": [
" Continent Region DevName 1980 \\\n",
"Afghanistan Asia Southern Asia Developing regions 16 \n",
"Bangladesh Asia Southern Asia Developing regions 83 \n",
"Bhutan Asia Southern Asia Developing regions 0 \n",
"India Asia Southern Asia Developing regions 8880 \n",
"Iran (Islamic Republic of) Asia Southern Asia Developing regions 1172 \n",
"Maldives Asia Southern Asia Developing regions 0 \n",
"Nepal Asia Southern Asia Developing regions 1 \n",
"Pakistan Asia Southern Asia Developing regions 978 \n",
"Sri Lanka Asia Southern Asia Developing regions 185 \n",
"\n",
" 1981 1982 1983 1984 1985 1986 ... 2005 \\\n",
"Afghanistan 39 39 47 71 340 496 ... 3436 \n",
"Bangladesh 84 86 81 98 92 486 ... 4171 \n",
"Bhutan 0 0 0 1 0 0 ... 5 \n",
"India 8670 8147 7338 5704 4211 7150 ... 36210 \n",
"Iran (Islamic Republic of) 1429 1822 1592 1977 1648 1794 ... 5837 \n",
"Maldives 0 0 1 0 0 0 ... 0 \n",
"Nepal 1 6 1 2 4 13 ... 607 \n",
"Pakistan 972 1201 900 668 514 691 ... 14314 \n",
"Sri Lanka 371 290 197 1086 845 1838 ... 4930 \n",
"\n",
" 2006 2007 2008 2009 2010 2011 2012 \\\n",
"Afghanistan 3009 2652 2111 1746 1758 2203 2635 \n",
"Bangladesh 4014 2897 2939 2104 4721 2694 2640 \n",
"Bhutan 10 7 36 865 1464 1879 1075 \n",
"India 33848 28742 28261 29456 34235 27509 30933 \n",
"Iran (Islamic Republic of) 7480 6974 6475 6580 7477 7479 7534 \n",
"Maldives 0 2 1 7 4 3 1 \n",
"Nepal 540 511 581 561 1392 1129 1185 \n",
"Pakistan 13127 10124 8994 7217 6811 7468 11227 \n",
"Sri Lanka 4714 4123 4756 4547 4422 3309 3338 \n",
"\n",
" 2013 Total \n",
"Afghanistan 2004 58639 \n",
"Bangladesh 3789 65568 \n",
"Bhutan 487 5876 \n",
"India 33087 691904 \n",
"Iran (Islamic Republic of) 11291 175923 \n",
"Maldives 1 30 \n",
"Nepal 1308 10222 \n",
"Pakistan 12603 241600 \n",
"Sri Lanka 2394 148358 \n",
"\n",
"[9 rows x 38 columns]"
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# we can pass mutliple criteria in the same line. \n",
"# let's filter for AreaNAme = Asia and RegName = Southern Asia\n",
"\n",
"df_can[(df_can['Continent']=='Asia') & (df_can['Region']=='Southern Asia')]\n",
"\n",
"# note: When using 'and' and 'or' operators, pandas requires we use '&' and '|' instead of 'and' and 'or'\n",
"# don't forget to enclose the two conditions in parentheses"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Before we proceed: let's review the changes we have made to our dataframe."
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"data dimensions: (195, 38)\n",
"Index(['Continent', 'Region', 'DevName', '1980', '1981', '1982', '1983',\n",
" '1984', '1985', '1986', '1987', '1988', '1989', '1990', '1991', '1992',\n",
" '1993', '1994', '1995', '1996', '1997', '1998', '1999', '2000', '2001',\n",
" '2002', '2003', '2004', '2005', '2006', '2007', '2008', '2009', '2010',\n",
" '2011', '2012', '2013', 'Total'],\n",
" dtype='object')\n"
]
},
{
"data": {
"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>Continent</th>\n",
" <th>Region</th>\n",
" <th>DevName</th>\n",
" <th>1980</th>\n",
" <th>1981</th>\n",
" <th>1982</th>\n",
" <th>1983</th>\n",
" <th>1984</th>\n",
" <th>1985</th>\n",
" <th>1986</th>\n",
" <th>...</th>\n",
" <th>2005</th>\n",
" <th>2006</th>\n",
" <th>2007</th>\n",
" <th>2008</th>\n",
" <th>2009</th>\n",
" <th>2010</th>\n",
" <th>2011</th>\n",
" <th>2012</th>\n",
" <th>2013</th>\n",
" <th>Total</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Afghanistan</th>\n",
" <td>Asia</td>\n",
" <td>Southern Asia</td>\n",
" <td>Developing regions</td>\n",
" <td>16</td>\n",
" <td>39</td>\n",
" <td>39</td>\n",
" <td>47</td>\n",
" <td>71</td>\n",
" <td>340</td>\n",
" <td>496</td>\n",
" <td>...</td>\n",
" <td>3436</td>\n",
" <td>3009</td>\n",
" <td>2652</td>\n",
" <td>2111</td>\n",
" <td>1746</td>\n",
" <td>1758</td>\n",
" <td>2203</td>\n",
" <td>2635</td>\n",
" <td>2004</td>\n",
" <td>58639</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Albania</th>\n",
" <td>Europe</td>\n",
" <td>Southern Europe</td>\n",
" <td>Developed regions</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>...</td>\n",
" <td>1223</td>\n",
" <td>856</td>\n",
" <td>702</td>\n",
" <td>560</td>\n",
" <td>716</td>\n",
" <td>561</td>\n",
" <td>539</td>\n",
" <td>620</td>\n",
" <td>603</td>\n",
" <td>15699</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>2 rows × 38 columns</p>\n",
"</div>"
],
"text/plain": [
" Continent Region DevName 1980 1981 1982 \\\n",
"Afghanistan Asia Southern Asia Developing regions 16 39 39 \n",
"Albania Europe Southern Europe Developed regions 1 0 0 \n",
"\n",
" 1983 1984 1985 1986 ... 2005 2006 2007 2008 2009 2010 \\\n",
"Afghanistan 47 71 340 496 ... 3436 3009 2652 2111 1746 1758 \n",
"Albania 0 0 0 1 ... 1223 856 702 560 716 561 \n",
"\n",
" 2011 2012 2013 Total \n",
"Afghanistan 2203 2635 2004 58639 \n",
"Albania 539 620 603 15699 \n",
"\n",
"[2 rows x 38 columns]"
]
},
"execution_count": 36,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"print('data dimensions:', df_can.shape)\n",
"print(df_can.columns)\n",
"df_can.head(2)"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"---\n",
"# Visualizing Data using Matplotlib<a id=\"8\"></a>"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"## Matplotlib: Standard Python Visualization Library<a id=\"10\"></a>\n",
"\n",
"The primary plotting library we will explore in the course is [Matplotlib](http://matplotlib.org/). As mentioned on their website: \n",
">Matplotlib is a Python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms. Matplotlib can be used in Python scripts, the Python and IPython shell, the jupyter notebook, web application servers, and four graphical user interface toolkits.\n",
"\n",
"If you are aspiring to create impactful visualization with python, Matplotlib is an essential tool to have at your disposal."
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Matplotlib.Pyplot\n",
"\n",
"One of the core aspects of Matplotlib is `matplotlib.pyplot`. It is Matplotlib's scripting layer which we studied in details in the videos about Matplotlib. Recall that it is a collection of command style functions that make Matplotlib work like MATLAB. Each `pyplot` function makes some change to a figure: e.g., creates a figure, creates a plotting area in a figure, plots some lines in a plotting area, decorates the plot with labels, etc. In this lab, we will work with the scripting layer to learn how to generate line plots. In future labs, we will get to work with the Artist layer as well to experiment first hand how it differs from the scripting layer. \n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Let's start by importing `Matplotlib` and `Matplotlib.pyplot` as follows:"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"# we are using the inline backend\n",
"%matplotlib inline \n",
"\n",
"import matplotlib as mpl\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"*optional: check if Matplotlib is loaded."
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Matplotlib version: 3.3.2\n"
]
}
],
"source": [
"print ('Matplotlib version: ', mpl.__version__) # >= 2.0.0"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"*optional: apply a style to Matplotlib."
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['Solarize_Light2', '_classic_test_patch', 'bmh', 'classic', 'dark_background', 'fast', 'fivethirtyeight', 'ggplot', 'grayscale', 'seaborn', 'seaborn-bright', 'seaborn-colorblind', 'seaborn-dark', 'seaborn-dark-palette', 'seaborn-darkgrid', 'seaborn-deep', 'seaborn-muted', 'seaborn-notebook', 'seaborn-paper', 'seaborn-pastel', 'seaborn-poster', 'seaborn-talk', 'seaborn-ticks', 'seaborn-white', 'seaborn-whitegrid', 'tableau-colorblind10']\n"
]
}
],
"source": [
"print(plt.style.available)\n",
"mpl.style.use(['ggplot']) # optional: for ggplot-like style"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Plotting in *pandas*\n",
"\n",
"Fortunately, pandas has a built-in implementation of Matplotlib that we can use. Plotting in *pandas* is as simple as appending a `.plot()` method to a series or dataframe.\n",
"\n",
"Documentation:\n",
"- [Plotting with Series](http://pandas.pydata.org/pandas-docs/stable/api.html#plotting)<br>\n",
"- [Plotting with Dataframes](http://pandas.pydata.org/pandas-docs/stable/api.html#api-dataframe-plotting)"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"# Line Pots (Series/Dataframe) <a id=\"12\"></a>"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"**What is a line plot and why use it?**\n",
"\n",
"A line chart or line plot is a type of plot which displays information as a series of data points called 'markers' connected by straight line segments. It is a basic type of chart common in many fields.\n",
"Use line plot when you have a continuous data set. These are best suited for trend-based visualizations of data over a period of time."
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"**Let's start with a case study:**\n",
"\n",
"In 2010, Haiti suffered a catastrophic magnitude 7.0 earthquake. The quake caused widespread devastation and loss of life and aout three million people were affected by this natural disaster. As part of Canada's humanitarian effort, the Government of Canada stepped up its effort in accepting refugees from Haiti. We can quickly visualize this effort using a `Line` plot:\n",
"\n",
"**Question:** Plot a line graph of immigration from Haiti using `df.plot()`.\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"First, we will extract the data series for Haiti."
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"1980 1666\n",
"1981 3692\n",
"1982 3498\n",
"1983 2860\n",
"1984 1418\n",
"Name: Haiti, dtype: object"
]
},
"execution_count": 40,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"haiti = df_can.loc['Haiti', years] # passing in years 1980 - 2013 to exclude the 'total' column\n",
"haiti.head()"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Next, we will plot a line plot by appending `.plot()` to the `haiti` dataframe."
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"<AxesSubplot:>"
]
},
"execution_count": 41,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"haiti.plot()"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"*pandas* automatically populated the x-axis with the index values (years), and the y-axis with the column values (population). However, notice how the years were not displayed because they are of type *string*. Therefore, let's change the type of the index values to *integer* for plotting.\n",
"\n",
"Also, let's label the x and y axis using `plt.title()`, `plt.ylabel()`, and `plt.xlabel()` as follows:"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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3buXEydO1FqPw5nEYbPZeOihhwgPD+ehhx6itLSUuXPnkpeXR1RUFA888IB9nsjKlStZs2YNhmEwefJkkpOTAcjMzGThwoVYrVYGDx7M5MmT610PXQghvM5LicOdHEocH330kUvW4/joo4+Ij4+nrKwMgFWrVjFgwACuvvpqVq1axapVq7j55pvJyspi48aNzJkzh4KCAh5//HHmz5+PYRi8+uqrTJ06lR49evD000+zY8cOBg8e3KS4hBDCbYoKoF2gy/sZvMmhkiMdO3Zscvn0/Px8tm3bxgUXXGDflpGRYb9jSU1NJSMjw7595MiR+Pn5ER0dTWxsLAcOHKCgoICysjJ69uyJUooxY8bY9xFCiGapuBBCWtdoVIfuOC6//HIWLFjA1VdfXauPIyYmxqETvf7669x88832uw2AoqIiwsLMDqOwsDCKi4sBsFgs9OjRw/688PBwLBYLPj4+RERE2LdHRERgsVjqPN/q1atZvXo1AM8880yjE5+vr2+LXHNE4vYsiduzWlLclrITEBFN+Ol4W1Ls9XEocSxZsgSArVu31nrMkfU4tm7dSmhoKN26dWP37t1nfX59xRSdKbKYlpZGWlqa/ffjx487vO+ZIiMjG72vN0ncniVxe1ZLirsqPw86JdjjbUmxx8XF1bndocTR1MWa9u3bx9dff8327duxWq2UlZWxYMECQkNDKSgoICwsjIKCAkJCQgDzTiI/P9++v8ViITw8vNb2/Px8wsPDmxSbEEK4VXEhqld/b0fhUh5ZYOOmm27ipZdeYuHChfz+97+nf//+TJs2jZSUFNatWwfAunXrGDJkCAApKSls3LiRiooKcnNzyc7OJikpibCwMAIDA9m/fz9aa9avX09KSoonXoIQQjhNV1bACS+UG3Gzeu84nnzySWbMmAHArFmz6h3y+thjjzX65FdffTVz585lzZo1REZGMn36dAASExMZMWIE06dPxzAMpkyZYl9E6o477mDRokVYrVaSk5NlRJUQovkq9k65EXerN3GcOT9j/PjxLjthv3796NfPrBLZoUMHZs2aVefzJk6cyMSJE2tt7969O+np6S6LRwgh3KakEPBCuRE3qzdxjBo1yv7z2LFjPRGLEEK0Lq1w8h94qI9DCCHaIl10uk6VJA4hhBAOsd9xtK7OcUkcQgjhLsWFEBCIatfO25G4VL2Jo3pE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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"haiti.index = haiti.index.map(int) # let's change the index values of Haiti to type integer for plotting\n",
"haiti.plot(kind='line')\n",
"\n",
"plt.title('Immigration from Haiti')\n",
"plt.ylabel('Number of immigrants')\n",
"plt.xlabel('Years')\n",
"\n",
"plt.show() # need this line to show the updates made to the figure"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"We can clearly notice how number of immigrants from Haiti spiked up from 2010 as Canada stepped up its efforts to accept refugees from Haiti. Let's annotate this spike in the plot by using the `plt.text()` method."
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAY4AAAEaCAYAAAAG87ApAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAABVKklEQVR4nO3deVxVdfrA8c/3ACKiIHBZBU3FfcPCfUGTspq2cZz2RbKy1ZnsV9lo2p7V4DZhTWk21UxTOmrLVKajuZvkVi7lWoqCIJddkOV+f39cuYECXuAuLM/79fIlnHvPOc89Xu9zz3d5vkprrRFCCCHsZLg7ACGEEI2LJA4hhBC1IolDCCFErUjiEEIIUSuSOIQQQtSKJA4hhBC1IolDNFqjRo3i3nvvdWsM3377LUopUlJSXHK+v/zlL4SGhqKU4r333nPJOV3J3uv57LPPEh0d7aKoxPmUzOMQdTVhwgRSUlJYvXq1W85vNpvx9PTEz8/PJefz9PRk4cKFTJgwwbatuLgYs9lMSEgIhuHc72HfffcdgwcPZsWKFQwaNAh/f398fHycek57jBo1iujoaBYuXFhp+y+//ELHjh3ZsGEDw4cPt+tY51/PjRs3MmLECI4ePcoll1xie15+fj5FRUWYTCZHvhRhJ093ByBEXQUGBtb7GCUlJXh6eqKUqtP+LVq0ICwsrN5x2OPgwYMYhsENN9xQ7XPq+3rczd7r2bp1a1q3bu2CiERVpKlKOMyECROIj4/nb3/7G5GRkbRu3Zp7772XkpIS3nrrLTp06EBAQAD3338/xcXFtv1GjRrFxIkTmT59OiEhIbRt25Zp06ZhsVh4/vnnCQ0NJTg4mGnTplU63/lNVYWFhdx///34+/sTEBDAQw89xNNPP12pSaNijJdccgne3t4UFBSwatUqRo0aRWBgIP7+/sTFxbFt2zbbfpdccgllZWUkJCSglLJ9MFfVtLJ161ZGjhyJj48PAQEB3HbbbaSnp9seL29m+fTTT+nevTu+vr6MHj2aw4cP13ht77zzTiwWS6XzV/d6fv75Z373u9/ZPmCvu+46Dh06ZDvee++9h6enJ2vXrqVPnz74+PgQFxfHyZMnWb9+Pf3798fX15f4+HhOnDhh93vgYqZNm0aPHj1o1aoVUVFRPPDAA+Tk5Nger3g9f/nlF0aMGAFAx44dUUoxatSoStdQuIckDuFQycnJfP/996xatYp//etffPjhh9xwww1s3ryZr776ig8++IAPPviARYsWVdpv6dKllJSUsHHjRmbPns3LL7/MtddeS35+Phs2bOCvf/0rL7/8Ml999VW1537qqaf49NNP+eCDD9i6dSv+/v4sWLDggudt27aNNWvWsGLFCnbv3k3Lli3Jz8/n4YcfZuvWrWzevJkuXbpw1VVXkZmZaXtdHh4ezJ07l9TUVFJTU6uMIS0tjSuvvJLIyEi2bdvG559/zp49e/jDH/5Q6Xmpqam8+eab/POf/2Tz5s1kZ2dzzz33VPva5s2bx9y5c/Hw8Ljg/Oe/Hq01V155JUVFRaxbt45169aRn5/PVVddVSlhWywWnnvuORYuXMimTZs4efIkN998MzNmzODNN99k48aNpKSkMGXKlGrjqi0fHx/efvtt9u3bx3vvvce3337L5MmTq3xuVFQUn376qe01pqamsmzZMofFIupBC1FHd999tx4zZkyl34ODg/XZs2dt26655hodFBSki4qKbNuuv/56/Yc//MH2e1xcnO7Xr1+lY/fs2VP37t270ra+ffvqxx9/vNJ+EydO1FprnZ+fr1u0aKEXLlxYaZ9Bgwbpzp07V4rR399f5+Xl1fjaysrKdNu2bfWHH35o2+bh4aEXL15c6Xlr167VgD5+/LjWWuvp06frdu3aVboGu3bt0oBet26d1lrrmTNnag8PD52enm57zkcffaSVUrqwsLDamBYvXqw9PDwqbavq9SxcuFD7+PjojIwM27a0tDTdsmVL/Y9//MN2LEDv3LnT9pzXXntNA/r777+3bZs9e7YOCgqqNiatrf8Onp6e2tfXt9KfVq1aaUBv2LCh2n2XLVumW7RoocvKyrTWF17PDRs2aEAfPXq00n4zZ86s9O8qXEvuOIRD9ejRgxYtWth+DwsLo1u3bnh7e1faVrHpBqBfv36Vfg8LC6Nv374XbDt/v3KHDh2iuLiYwYMHV9o+ZMiQKmM8v3386NGj3HnnnURHR+Pn54efnx85OTn8+uuvNbzaC+3du5fBgwdXugb9+vXD39+fvXv32rZFREQQHBxs+71du3Zorat9fTU5//Xs3buXnj17Vuo4Dg0NpVu3bpViUErRp08f2+/lfQsVr3tYWBiZmZmUlZXVGMPvf/97du3aVenPl19+ecHzli1bxsiRI4mI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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"haiti.plot(kind='line')\n",
"\n",
"plt.title('Immigration from Haiti')\n",
"plt.ylabel('Number of Immigrants')\n",
"plt.xlabel('Years')\n",
"\n",
"# annotate the 2010 Earthquake. \n",
"# syntax: plt.text(x, y, label)\n",
"plt.text(2000, 6000, '2010 Earthquake') # see note below\n",
"\n",
"plt.show() "
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"With just a few lines of code, you were able to quickly identify and visualize the spike in immigration!\n",
"\n",
"Quick note on x and y values in `plt.text(x, y, label)`:\n",
" \n",
" Since the x-axis (years) is type 'integer', we specified x as a year. The y axis (number of immigrants) is type 'integer', so we can just specify the value y = 6000.\n",
" \n",
"```python\n",
" plt.text(2000, 6000, '2010 Earthquake') # years stored as type int\n",
"```\n",
" If the years were stored as type 'string', we would need to specify x as the index position of the year. Eg 20th index is year 2000 since it is the 20th year with a base year of 1980.\n",
"```python\n",
" plt.text(20, 6000, '2010 Earthquake') # years stored as type int\n",
"```\n",
" We will cover advanced annotation methods in later modules."
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"We can easily add more countries to line plot to make meaningful comparisons immigration from different countries. \n",
"\n",
"**Question:** Let's compare the number of immigrants from India and China from 1980 to 2013.\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Step 1: Get the data set for China and India, and display dataframe."
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"data": {
"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>1980</th>\n",
" <th>1981</th>\n",
" <th>1982</th>\n",
" <th>1983</th>\n",
" <th>1984</th>\n",
" <th>1985</th>\n",
" <th>1986</th>\n",
" <th>1987</th>\n",
" <th>1988</th>\n",
" <th>1989</th>\n",
" <th>...</th>\n",
" <th>2004</th>\n",
" <th>2005</th>\n",
" <th>2006</th>\n",
" <th>2007</th>\n",
" <th>2008</th>\n",
" <th>2009</th>\n",
" <th>2010</th>\n",
" <th>2011</th>\n",
" <th>2012</th>\n",
" <th>2013</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>China</th>\n",
" <td>5123</td>\n",
" <td>6682</td>\n",
" <td>3308</td>\n",
" <td>1863</td>\n",
" <td>1527</td>\n",
" <td>1816</td>\n",
" <td>1960</td>\n",
" <td>2643</td>\n",
" <td>2758</td>\n",
" <td>4323</td>\n",
" <td>...</td>\n",
" <td>36619</td>\n",
" <td>42584</td>\n",
" <td>33518</td>\n",
" <td>27642</td>\n",
" <td>30037</td>\n",
" <td>29622</td>\n",
" <td>30391</td>\n",
" <td>28502</td>\n",
" <td>33024</td>\n",
" <td>34129</td>\n",
" </tr>\n",
" <tr>\n",
" <th>India</th>\n",
" <td>8880</td>\n",
" <td>8670</td>\n",
" <td>8147</td>\n",
" <td>7338</td>\n",
" <td>5704</td>\n",
" <td>4211</td>\n",
" <td>7150</td>\n",
" <td>10189</td>\n",
" <td>11522</td>\n",
" <td>10343</td>\n",
" <td>...</td>\n",
" <td>28235</td>\n",
" <td>36210</td>\n",
" <td>33848</td>\n",
" <td>28742</td>\n",
" <td>28261</td>\n",
" <td>29456</td>\n",
" <td>34235</td>\n",
" <td>27509</td>\n",
" <td>30933</td>\n",
" <td>33087</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>2 rows × 34 columns</p>\n",
"</div>"
],
"text/plain": [
" 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 ... \\\n",
"China 5123 6682 3308 1863 1527 1816 1960 2643 2758 4323 ... \n",
"India 8880 8670 8147 7338 5704 4211 7150 10189 11522 10343 ... \n",
"\n",
" 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 \n",
"China 36619 42584 33518 27642 30037 29622 30391 28502 33024 34129 \n",
"India 28235 36210 33848 28742 28261 29456 34235 27509 30933 33087 \n",
"\n",
"[2 rows x 34 columns]"
]
},
"execution_count": 48,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"### type your answer here\n",
"df_CI=df_can.loc[['China','India'], years]\n",
"df_CI.head()\n",
"\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Double-click __here__ for the solution.\n",
"<!-- The correct answer is:\n",
"df_CI = df_can.loc[['India', 'China'], years]\n",
"df_CI.head()\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Step 2: Plot graph. We will explicitly specify line plot by passing in `kind` parameter to `plot()`."
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
},
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"<AxesSubplot:>"
]
},
"execution_count": 49,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYQAAAIlCAYAAADVFY8FAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAC7+UlEQVR4nOy9eZwcdZ3///zU0cd0T8+dOxgCQRERAgERSEIEQRAEXJTTn6KGQ1i5XL6soMKioq67LAouPtZ11V1XF5TDE3a5AoIHuIjg7ooQJCHHJJO5unv6qOPz+6Oqa7rnzEx6ZsLM+4llVX3qU9X16fR8Xp/z9VFaa40gCIIw5zFm+gUEQRCEvQMRBEEQBAEQQRAEQRBCRBAEQRAEQARBEARBCBFBEARBEACwZvoFBGGq0Fqzc+dOHMeZ6VeZFmzbpqOjA6XUTL+K8DpFyTwEYbayY8cOXNfFtu2ZfpVpwXEcLMti3rx5M/0qwusUaTISZi2O48wZMYCghjBXakPC1CCCIAiCIAAiCIIwpVxxxRW8+c1vZs2aNVHYCy+8wMknn8zatWu54IILyGazQFCjufzyy1m7di3HHHMMt912W3TPc889x9q1aznyyCP55Cc/ibT0ClOBCIIgTCHnnHMO3//+92vCrr76aj71qU+xYcMGTjnlFO644w4AfvSjH1Eul9mwYQP/9V//xXe+8x02bdoEwLXXXsuXv/xlfv3rX7Nx40YeeeSRaU+LMPsRQRCEKeTtb387zc3NNWEvvfQSb3/72wFYu3YtP/nJTwBQSjEwMIDruhSLRWzbprGxkc7OTrLZLEcccQRKKd7//vfzs5/9bLqTIswBZNipMCdwvnsn/qaNdX2msc9y7PMvmfB9b3rTm3jggQc4+eST+dGPfsSWLVsAOO2003jggQc4+OCDKRQK/M3f/A0tLS387ne/Y+HChdH9ixYtYvv27XVLhyBUkBqCIEwzt912G9/85jc54YQTyOVyxGIxAP77v/8bwzD4/e9/z9NPP80//uM/8uc//3nE/gKZayBMBVJDEOYEkynJTxUrVqzg7rvvBuDll1/moYceAuCee+7hHe94RzTB7Mgjj+S5557jqKOOYtu2bdH9W7duZf78+TPy7sLsRmoIgjDN7Ny5EwDf9/n7v/97PvjBDwKwePFifvGLX6C1Jp/P89vf/pb999+f+fPnk06neeaZZ9Bac9ddd3HyySfPZBKEWYrUEARhCrn44ot58skn6e7u5pBDDuHaa68ln8/zzW9+E4B3v/vdnHvuuQB8+MMf5oorrmDNmjVorTnnnHM46KCDAPjSl77Exz/+cQqFAscffzzHH3/8jKVJmL2IdYUwa9myZUvUPj9XKJfLLF68eKZfQ3idIk1GgiAIAiCCIAiCIISIIAiCIAiACIIgCIIQIoIgCIIgACIIgiAIQogIgiBMIfWyv/785z/PoYceyrJly6Y7CcIcQgRBEKaQetlfn3jiiTz44IPT/v7C3EIEQRCmkHrYXwOsWrVK/IuEKUesK4Q5wdd/vZWN3cW6PnN5a4KL37ZowvdN1P5aEKYLqSEIwjQzUftrQZgupIYgzAkmU5KfKiZqfy0dycJ0ITUEQZhmJmp/LQjThQiCIEwhF198MaeccgovvfQShxxyCN/97ne59957Oeqoozj66KNZsGBBjf11Pp9nzZo1nHTSSTX21zfddBOHHHIIhUKBQw45hC996UszmSxhliL218KsReyvBWFiSA1BEARBAEQQBEEQhBARBEEQBAEQQRAEQRBCRBAEQRAEQARBEARBCBFBEIQppB721wMDA5x33nkcffTRrF69mptvvnlG0iLMfkQQBGEKqZf99cc+9jGeeuopHn74YX7zm9/w8MMPT3tahNmPCIIgTCH1sL9uaGjg2GOPBSAWi/HWt76VrVu3Tms6hLmBmNsJc4LnnsnR1+3W9ZlNrRaHrEpP+L49sb/u6+vjwQcfZP369XVJgyBUIzUEQZhmJmt/7bouF198MevXrxcHVGFKkBqCMCeYTEl+qpis/fU111zD8uXLufjii2fq1YVZjtQQBGGamYz99S233EJ/fz+f/exnZ+y9hdmPuJ0Ks5a9we304osv5sknn6S7u5uOjg6uvfZa8vk83/zmNwF497vfzQ033IBSilwuxxVXXMGLL76I1ppzzjmHyy+/nK1bt3LooYeyYsWKKD0f+chHuOCCC4Z9nridCnuCCIIwa9kbBGG6EUEQ9gRpMhIEQRAAEQRBEAQhRARBEARBAEQQBEEQhBARBEEQBAEQQRAEQRBCRBAEYQqph/01wNlnn81xxx3H6tWr+cQnPoHnedOeFmH2I4IgCFNIveyvv/GNb/DYY4/x+OOPs2vXLn70ox9Ne1qE2Y8IgiBMIfWwvwaiveu6OI6DUmr6EiHMGcTcTpgTPProo+zYsaOuz5w3bx7r1q2b8H2Ttb9+//vfz7PPPsvxxx/PaaedVrd0CEIFqSEIwjQzWfvru+66i+eff55SqcQTTzwxQ28vzGakhiDMCSZTkp8qJmt/DZBIJDjppJN44IEHOO6442bg7YXZjNQQBGGamaj9dS6Xo7OzEwj6EB5++GFWrFgxY+8vzF6khiAIU0i1/fUhhxwyov31ueeeC8CHP/xhrrjiCtasWRPZXx900EHs2LGDD3zgA5RKJXzf59hjj41ERBDqidhfC7MWsb8WhIkhTUaCIAgCIIIgCIIghIggCIIgCIAIgiAIghAigiAIgiAAIgiCIAhCiAiCIEwh9bK/rvCBD3yg5lmCUE9EEARhCqmX/TXAT37yE1Kp1LS+vzC3EEEQhCmkXvbXuVyOO++8k6uuumpa31+YW4h1hTAnSG6/H7O0pa7P9OKLKSw4fcL3Tcb++otf/CKXXnopyWSyrmkQhGqkhiAI08xE7a+ff/55XnnlFd797nfP8JsLsx2pIQhzgsmU5KeKidpfd3d389xzz3H44Yfjui5dXV2cccYZ3HfffTOYCmE2IjUEQZhmJmp/feGFF/L888/z29/+lh//+Mfst99+IgbClCA1BEGYQuphfy0I04XYXwuzFrG/FoSJIU1GgiAIAiCCIAiCIISIIAiCIAiACIIgCIIQIoIgCIIgACIIgiAIQogIgiBMIfWyvz7jjDN4+9vfzrp161i3bl00uU0Q6okIgiBMIfW0v/7Hf/xHHn30UR599FE6OjqmNR3C3EAEQRCmkHrZXwvCdCDWFcKc4JnXvk134c91fWZrchmrlnxwwvdNxv4aguYnwzA49dRTufrqq1FK1S0tggBSQxCEaWei9tcQNBdt2LCBH//4x/zqV7/irrvumsEUCLMVqSEIc4LJlOSnionaXy9btoyFCxcCkE6n+Yu/+AueffZZzj777BlLgzA7kRqCIEwzE7W/dl2XXbt2AcFIpP/8z//kTW9604y9vzB7kRqCIEwh9bC/zufznH322TiOg+/7rFmzhg984AMzmSxhliL218KsReyvBWFiSJORIAiCAIggCIIgCCEiCIIgCAIggiAIgiCEiCAIgiAIgAiCIAiCECKCIAhTSL3sr8vlMtdccw1HHXUURx99ND/+8Y+nPS3C7EcEQRCmkHrZX9966620t7fzq1/9il/84hccffTR054WYfYjgiAIU0i97K+/973v8fGPfxwAwzBoa2ubvkQIcwaxrhDmBKlNm7EGCnV9ptuQJL/P0gnfN1H7676+PgC+8IUv8NRTT7Fs2TJuueUW5s2bV9f0CILUEARhmpmo/bXrumzdupUjjzyShx9+mFWrVnHjjTfObCKEWYnUEIQ5wWRK8lPFRO2v3/Oe99DQ0MC73/1uAN7znvfw7//+7zP2/sLsRWoIgjDNTNT+WinFiSeeyJNPPgnAE088wQEHHDBj7y/MXsTtVJi17A1up9X21x0dHSPaX99www0opcjlclxxxRW8+OKLkf315ZdfDsDmzZu57LLL6Ovro729ndtuu40lS5YM+zxxOxX2BBEEYdayNwjCdCOCIOwJ0mQkCIIgACIIgiAIQogIgiAIggCIIAiCIAghIgiCIAgCIIIgCIIghIggCMIUUg/761wux7p166LtTW96EzfccMOMpEeY3YggCMIUUg/763Q6zaOPPhptS5YsiWwsBKGeiCAIwhRSL/vrChs3bqSrq4ujjjpqWt5fmFuIuZ0wJ3C+eyf+po11faaxz3Ls8y+Z8H0Ttb+u5p577uH0009HKVWXNAhCNVJDEIRpZqL219Xcd999vPe9752BtxbmAlJDEOYEkynJTxUTtb9etmwZEHRGu67LIYccMlOvLsxypIYgCNPMRO2vK9x7772ceeaZM/LOwtxAagiCMIVU218fcsghI9pfn3vuuQB8+MMf5oorrmDNmjWR/fVBBx0UPev+++/ne9/73oykQ5gbiP21MGsR+2tBmBjSZCQIgiAAIgiCIAhCiAiCIAiCAIggCIIgCCEiCIIgCAIggiAIgiCEiCAIwhRSD/trCGYxr127lrVr13L22Weza9euaU+LMPsRQRCEKaQe9teu63LDDTdwzz33sGHDBt785jfzz//8zzORHGGWI4IgCFNIPeyvtdZorRkYGEBrTTabZcGCBdOdFGEOINYVwpzg67/eysbuYl2fubw1wcVvWzTh+yZjf/2lL32JtWvX0tDQwPLly/niF79Y17QIAkgNQRCmnYnaXzuOw7e+9S0efvhhnn/+ed785jfX9C8IQr2QGoIwJ5hMSX6qmKj9dU9PDwD77rsvAKeffjpf+cpXZublhVmN1BAEYZqZqP31woUL+eMf/0hX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R8eI9tc33HADSik2bdpUY3/9D//wDyxduhSAzZs3c9lll9HX10d7ezu33XYbS5YsGfZ54nYq7AkiCMKsZW8QhOlGBEHYE6TJSBAEQQBEEARBEIQQEQRBEAQBEEEQBEEQQkQQBEEQBEAEQRAEQQgRQRCEKaQe9te5XI5169ZF25ve9CZuuOGGGUmPMLsRQRCEKaQe9tfpdJpHH3002pYsWRLZWAhCPRFBEIQppF721xU2btxIV1cXRx111JS/uzD3EHM7YU7w6KOPsmPHjro+c968eaxbt27C903U/vqwww6L7r3nnns4/fTTUUrVLR2CUEFqCIIwzUzU/rqa++67j/e+970z8drCHEBqCMKcYDIl+aliovbXFV544QVc1+WQQw6Z3hcW5gxSQxCEaWai9tcV7r33Xs4888zpf2FhziA1BEGYQqrtrw855JAR7a/PPfdcALq6umrsryujjyrcf//9fO9735v2NAhzB7G/FmYtYn8tCBNDmowEQRAEQARBEARBCBFBEARBEAARBEEQBCFEBEEQBEEARBAEQRCEEBEEQZhC6mF/DYGH0dq1a1m7di1nn302u3btmva0CLMfEQRBmELqYX/tui433HAD99xzDxs2bODNb34z//zP/zztaRFmPyIIgjCF1MP+WmuN1pqBgQG01mSzWRYsWDCt6RDmBmJdIcwJktvvxyxtqeszvfhiCgtOn/B9k7G//tKXvsTatWtpaGhg+fLlfPGLX6xrWgQBpIYgCNPORO2vHcfhW9/6Fg8//DDPP/88b37zm7nttttmOBXCbERqCMKcYDIl+aliovbXL7zwAgD77rsvAKeffjpf+cpXpvmthbmA1BAEYZqZqP31woUL+eMf/0hXVxcQdDqvWLFiZl5emNVIDUEQppB62F8vWLCAT3ziE5x++ulYlsXSpUulhiBMCWJ/LcxaxP5aECaGNBkJgiAIgAiCIAiCECKCIAiCIAAiCIIgCEKICIIgCIIAiCAIgiAIISIIgjCF1Mv++r777mPt2rWsXr2am266adrTIcwNRBAEYQqph/11d3c3N910Ez/84Q954okn2LlzJ48//vi0p0WY/YggCMIUUg/761dffZXly5fT3t4OwJo1a6J7BKGeiHWFMCd45rVv0134c12f2ZpcxqolH5zwfRO1v169ejUvvfQSmzZtYtGiRfz85z/HcZy6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x+OT/NZnGKUAC21aQGLa5xNVxKKtfSH0ZOv+EeMKgm3bfOYznyGRSOC6Lp/+9Kc59NBD+c1vfsPBBx/MGWecwX333cd9993HBRdcwGuvvcZTTz3F3//939PT08PNN9/MbbfdhmEY/NM//RMXX3wxK1as4JZbbuF3v/sdK1eu5JFHHiGVSvHVr36VJ598ku9+97tcddVVdU8swOZXyvzioU0UC86YKxJVY5q1mXUsrmhIGyO2l1sjdJKapmTIc5l8Ps/69eu56aabooVuRmKk7jylFC+88AJ//vOfuemmm9i8efOwOIYRdEpjKVrb4nTMM6PnlcuBOOSzfuANlfXJ5zx27XCpXlzPMCGVDoUiXRGNGOnGBLGmQbGIAfOAeVVWImbZQZVK5Pr76evtoy/bT18uR08+T08uz4tdXQwMqQYnbZvmhirBaApqGI1trTQ0NWGOs173nCR0WYU4mHHClUTqyrjfulKKRCIBEE3bV0rx9NNPc+ONNwKwdu1abrzxRi644AKefvppjj76aGzbZt68eSxYsICXXnqJjo4OCoUCBxxwAABr1qzh6aefZuXKlTzzzDO8733vA+Coo47im9/8JlrrKclEPWcXtmWQbLGIx2NYCXMEE67a43pN8xdmjt0tydcbx3FYv349Z555JqeccgoQDGro7Oxk/vz5dHZ20tYWrPi2cOHCmoES27ZtY/78+fz2t7/l+eef521vexuu67Jr1y7OOuusqNlpNJRSxOOKeNygtb32mtaaYkGTz3rkssHyqfmsR67Po3OrUzME2LIhlTbD5iej6tjEbrBxGoJ45vx5tAKtgx8SioaLm8/T39NDf18fff399GWz9OZz7OjexYtbt+BViaGBoimRoCXVEAhGY4amTCasYbRgp9LomD32TDhhUuyWDPu+z//7f/+P7du3c9JJJ7FixQr6+voih8aWlhb6+4Olrrq7u1mxYkV0b2trK93d3ZimGf3wAdra2uju7o7uqVwzTZOGhgay2SyZTKY+qawi/sI/s+rnv6kJ04ZCWxbKslF2PPgLsGNg2WjbxrOsyhAbsGOBh4pdGxYcWwS2j9VhNqoStyqM6mfUhFtSm5glaK255ppr2H///bn44ouj8BNPPJG7776byy+/nLvvvpuTTjopCr/sssu46KKL6Ozs5JVXXmHlypWsWrWKD37wg0DQ9PTBD35w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ibvuuguAn/70pzz11FMrnnPHHXecpLvLlClTpp2lHd0gPPvss5imyVvf+tbmtrPOOotKpcK///u/85nPfIYDBw6wd+9e7rzzToQQ3Hvvvdxyyy2cffbZ3HLLLbztbW/j+9//PrZt8+EPf5jBwUGeeuopvva1rxGGIX19fdx5550MDg6eugfNlClTppOgHd2H8PLLL/PqV7+6576XXnqJW2+9lfvvv59jx47x/PPPdx3jeR779u3j05/+NOeffz7f/OY3ATjvvPO47777+MM//EOuvvpqvvGNb2zpc2TKlCnTdtCOfkNYTeecc04zg+pZZ53F1NQU5513Xtsxpmly2WWXAbB3715+8IMfAHH21c997nPMz88ThiFjY2Mn9+YzZcqU6RRoRzcIZ5xxBv/yL//Sc59lWc1lKSVKqa5jDMNoZlWVUhJFEQBf/OIXufHGG7n88st59tln+eu//ustuPtMmTJl2l7a0S6jCy+8kCAImjUSIC6289xzz53QdavVKsPDwwA8/vjjJ3StTJkyZdop2tFvCEIIPvShD/HlL3+Zr3/961iWxejoKFdcccUJXfftb387999/P8PDw+zbt4+pqalNuuNMmTJl2r7KRipnypQpUyZgh7uMMmXKlCnT5ilrEDJlypQpE5A1CJkyZcqUKVHWIGTKlClTJiBrEDJlypQpU6KsQciUKVOmTEDWIGTKlClTpkRZg5ApU6ZMmQD4/wEMdB1DJTJDmQAAAABJRU5ErkJggg==\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"### type your answer here\n",
"df_CI.plot(kind='line')\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Double-click __here__ for the solution.\n",
"<!-- The correct answer is:\n",
"df_CI.plot(kind='line')\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"That doesn't look right...\n",
"\n",
"Recall that *pandas* plots the indices on the x-axis and the columns as individual lines on the y-axis. Since `df_CI` is a dataframe with the `country` as the index and `years` as the columns, we must first transpose the dataframe using `transpose()` method to swap the row and columns."
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"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>China</th>\n",
" <th>India</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1980</th>\n",
" <td>5123</td>\n",
" <td>8880</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1981</th>\n",
" <td>6682</td>\n",
" <td>8670</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1982</th>\n",
" <td>3308</td>\n",
" <td>8147</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1983</th>\n",
" <td>1863</td>\n",
" <td>7338</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1984</th>\n",
" <td>1527</td>\n",
" <td>5704</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" China India\n",
"1980 5123 8880\n",
"1981 6682 8670\n",
"1982 3308 8147\n",
"1983 1863 7338\n",
"1984 1527 5704"
]
},
"execution_count": 50,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_CI = df_CI.transpose()\n",
"df_CI.head()"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"*pandas* will auomatically graph the two countries on the same graph. Go ahead and plot the new transposed dataframe. Make sure to add a title to the plot and label the axes."
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"Text(0, 0.5, '# of Migrants')"
]
},
"execution_count": 52,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAZUAAAEaCAYAAADZvco2AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAABihElEQVR4nO3deVzUdf7A8dd3ZrjvGwURFDRFFPE2Fa+1Misruy/NtttSu9y1ra1f11YeedVWdllbbW3araUo5n0gKnggAioCcso1wMB8P78/JidJjgFmBtDP8/HYx8p3vsd7vkzz5vs53h9FCCGQJEmSJCvQtHcAkiRJ0sVDJhVJkiTJamRSkSRJkqxGJhVJkiTJamRSkSRJkqxGJhVJkiTJamRSkVpl7Nix3Hfffe0aw6ZNm1AUhezsbLtc7+9//ztBQUEoisJHH31kl2taS3h4OC+99FKT+0yfPp2JEyfaKSLbURSFTz/9tF2uZc9rd1QyqXRS7f0F8M0337Bw4UK7XU+n013wRT5y5Ehyc3Pp2rWrza+/c+dOXn31Vd59911yc3O55ZZbbH5NS508eZKHHnqIiIgInJycCAkJ4YorrmDNmjW0ZBraW2+9xVdffWXDSDuGjz76CJ1OZ5Nz5+bmMm3aNJucu7OwzZ2VLnq+vr5tPkdtbS06nQ5FUVp1vKOjI8HBwW2OwxLHjh1Do9Fw3XXXNbpPW99PayQnJzN+/HjCw8NZuHAh0dHRGI1GEhISmDNnDmPHjsXb29uic3l5edk22EuAvT6PHZl8UrlInHtyWbp0KaGhobi7u3PfffdRW1vLO++8Q/fu3fHx8eH+++/HYDCYjxs7diwzZ87k2WefJTAwEG9vb+bPn4+qqrz44osEBQUREBDA/Pnz613vz81fVVVV3H///Xh5eeHj48PDDz/M3/72NyIjIxuMMTw8HCcnJyorK/n1118ZO3Ysvr6+eHl5ER8fz65du8zHhYeHYzQamTFjBoqimL+0G2r+2rFjB2PGjMHFxQUfHx9uv/128vPzza//85//JDIykm+//ZbLLrsMNzc3xo0bx/Hjx5u8t3fddReqqta7fmPv5+jRo1x99dW4u7vj7u7ONddcQ3p6uvl85/5S3rhxIzExMbi4uBAfH09OTg6bN29m4MCBuLm5MXHiRE6fPt1oXEII7rnnHkJCQti1axfXX389vXr1ok+fPjzyyCMcPHgQd3d38/4Gg4HHH38cX19fgoKCePLJJzEajRf8fv7887vvvkv37t3x9PTkuuuuo6CgwLxPZmYmN9xwA127dsXV1ZWYmBhWrVrVaMznzJ8/nz59+uDq6kq3bt148MEHKS0tveAebd26lbi4OFxdXRkyZAh79+6td56NGzfSv39/nJ2d6d+/Pxs3bmz22n9mzWv9ufnrrbfeIjY2Fnd3d4KDg7n11lvJzc1tcYydiUwqF5Hdu3ezZ88efv31V/7zn//w6aefct1117Ft2zZ+/vlnVq1axapVq1i5cmW9477++mtqa2vZsmULCxcu5JVXXmHKlClUVFTw22+/8eabb/LKK6/w888/N3rtZ555hm+//ZZVq1axY8cOvLy8WLFixQX77dq1i4SEBNasWcP+/ftxdnamoqKCRx55hB07drBt2zaioqK48sorKSoqMr8vrVbL4sWLyc3NbfQ/yry8PCZNmkRoaCi7du3i+++/JyUlhRtvvLHefrm5ubz99tt89tlnbNu2jbNnz3Lvvfc2+t7eeustFi9ejFarveD6f34/QggmTZpEdXU1iYmJJCYmUlFRwZVXXlkvmauqygsvvMD777/P1q1bycnJ4ZZbbuG5557j7bffZsuWLWRnZzN37txG49q/fz8HDhzgmWeeabA5x93dvd72pUuX0qVLF3bu3MmSJUtYvHgxn3zySaPnB9O937hxIz/++CNr164lOTmZJ5980vx6RUUFEyZMYO3atRw8eJD777+fGTNmNPvl7uLiwrvvvsuhQ4f46KOP2LRpE4899li9fVRV5W9/+xtvvfUWSUlJ+Pj4cPPNN1NXVwdATk4OU6ZMYdCgQSQlJbFgwQIef/zxJq/bGFte68033+TgwYOsXr2akydPcuutt7Yqxk5DSJ3SPffcIyZMmFDv54CAAFFTU2PeNnnyZOHn5yeqq6vN26699lpx4403mn+Oj48XAwYMqHfuvn37in79+tXb1r9/f/HEE0/UO27mzJlCCCEqKiqEo6OjeP/99+sdM2zYMNGzZ896MXp5eYny8vIm35vRaBTe3t7i008/NW/TarXiww8/rLffxo0bBSBOnTolhBDi2WefFSEhIfXuQXJysgBEYmKiEEKI559/Xmi1WpGfn2/e5/PPPxeKooiqqqpGY/rwww+FVqutt62h9/P+++8LFxcX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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"### type your answer here\n",
"df_CI.plot(kind='line')\n",
"\n",
"plt.title(\"Immigration from China and India\")\n",
"plt.xlabel(\"Year\")\n",
"plt.ylabel(\"# of Migrants\")\n",
"\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Double-click __here__ for the solution.\n",
"<!-- The correct answer is:\n",
"df_CI.index = df_CI.index.map(int) # let's change the index values of df_CI to type integer for plotting\n",
"df_CI.plot(kind='line')\n",
"-->\n",
"\n",
"<!--\n",
"plt.title('Immigrants from China and India')\n",
"plt.ylabel('Number of Immigrants')\n",
"plt.xlabel('Years')\n",
"-->\n",
"\n",
"<!--\n",
"plt.show()\n",
"--> "
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"From the above plot, we can observe that the China and India have very similar immigration trends through the years. "
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"*Note*: How come we didn't need to transpose Haiti's dataframe before plotting (like we did for df_CI)?\n",
"\n",
"That's because `haiti` is a series as opposed to a dataframe, and has the years as its indices as shown below. \n",
"```python\n",
"print(type(haiti))\n",
"print(haiti.head(5))\n",
"```\n",
">class 'pandas.core.series.Series' <br>\n",
">1980 1666 <br>\n",
">1981 3692 <br>\n",
">1982 3498 <br>\n",
">1983 2860 <br>\n",
">1984 1418 <br>\n",
">Name: Haiti, dtype: int64 <br>"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Line plot is a handy tool to display several dependent variables against one independent variable. However, it is recommended that no more than 5-10 lines on a single graph; any more than that and it becomes difficult to interpret."
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"**Question:** Compare the trend of top 5 countries that contributed the most to immigration to Canada."
]
},
{
"cell_type": "code",
"execution_count": 67,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"Text(0, 0.5, '# of Immigrants')"
]
},
"execution_count": 67,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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gc1m45FHHil1f7dt28aQIUNKnXvo0KGlPmuaxgsvvEDv3r1JSkrCZrPxzjvv1Ph7qi+iSqUJUNFLPJKXe3VISEigS5culUZRde7cmczMTHw+X5XHq0puWZbL/IDLcwzLsoyiKGX21zStShmsVmul60PHeO2119iwYUP4b+PGjezevTusBN577z3Wrl3LmDFjWLJkCd27d+fdd9+t8vyRXIdery+z7OT7cvL60DblLavqfkTyvCiKUsax/uCDD/LJJ5/w5JNPsmjRIjZs2MAFF1wQ0TNQHicPNEJynSp7XT7bpx4rdG8rOkfnzp1xOBxVhur++uuvXHnllQwfPpyvv/6adevW8c477wCUujdVPb+zZs3i7rvv5qqrrmLOnDmsX7+eJ598ssxvoap7Mm3aNP7+979zzz33MG/ePDZs2MAtt9xS4++pvogqlUamW7duLFmypNSyJUuWIEkSXbt2DS/bvn07Docj/HnFihVAcKQeKS6Xi927d9O6desKt7nuuusoKSnh5ZdfLnd9QUFBWO6VK1eWeqA3btxIUVER3bp1AyAlJYXs7OxSo/KahGuGXlInHydSWrRoQevWrdm5cycZGRll/k5+wXbv3p3777+fH3/8kZtvvpl//etf1T5fY9G1a1dWrlxZalmkIcdLly7l2muv5aqrrqJXr1506NChTOi4wWCo0f0vT06glKyBQIC1a9dWul9Fz0B5v5+lS5diNpvp0KFDuce68sorMRqNPPfcc+WuDz3jy5cvJykpieeee46BAwfSqVOnGuWMLF26lD59+nD//ffTt29fOnbsWGZg17VrV3755ZdSy079vHTpUsaPH8/NN99Mnz59yMjIYPfu3dWWp76JKpVG5sEHH2TdunXcf//97Nixg7lz53LPPfdw7bXX0qZNm/B2kiRxww03sGXLFpYuXcrdd9/NhRdeSMeOHcs97p49e3jqqaf47bffOHDgAEuXLuXiiy9GCMGUKVMqlKdfv348+eSTPProo9x9990sXbqUAwcOsHLlSu677z5uv/12AP70pz/hcDi48cYb2bJlC8uXL+f6669n6NChDBs2DIDzzjuPkpISnnjiCfbs2cOsWbN48803q32P2rZtiyzLzJkzh+zsbIqKiqq1/9/+9jemT5/Oc889x5YtW9i5cyezZ88OX0tmZiYPPfQQy5cvD1/rsmXLSin1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igRyOBykpKQgyzJffvlltZStN6DhDWjYDUpYgSQkJFBcXFxhjx+dLCFJ4PSqDBgwMOw837FjB9u3by93n4AWNCvajQp//vOfeeutt8LrBg78/Rh79uzhyJEjnHXWWZVft8cd/Fc5ZZwcG885fXqzevVqsvbvAaDAWcyePXsiuyHVpKLf2sk4HI5wG+9vvvmmymMOGjSIuXPn4na7cblcZUynZrMZs9lMXl4emZmZtbuAOiA6U2mCvPbaazz66KM888wzANx///1lIpQqY8yYMdx+++389NNPPPfcczz77LM8+uijjB49GlVVGTBgAP/4xz+47777uPvuuxk3bhyDBg0iPT290uMajUZmzJjB5ZdfTnJycqWjsRAXXnghy5cv5/zzz6dDhw706dOHmJiYsAP+hhtuICEhgQEDBrBjx47w9d5///2MHj0ak8nEq6++GvG1n8qrr74adtS3adMmosZk//znP3n22WcZPXYYcXHxWCymMuGgIa655hoOHToUDI9VNeLjE/nPf2Zw2WWXMXnyZCZMmED37t3Dzt6EhAT69+/P+eefz3nnnVfGUR/yqUBwxP7qq69WWaH27LPPRlEURo8ezR/+8AcmT57Mbbfdxvfff8+5555brcq1Ll9QAdmMCiZDLNdccw2jR4+mVatW9OrVq8L95BM+xkuuupZnHn2Q0aNH07VrV3r37l1m24AmguXr9QqKLDFq1CgSExPD6ydPnszDDz/MqFGjUBSFV155pdQIvtzrnjCeWJsF6ZSEQEmSSezclVeeeJR77roTlyqQgMceebhcRVVbTv6tBQIBBg4cyD/+8Y9S2zzwwAPcddddJCUlMXDgwDKV0k+lR48eXHTRRYwdO5ZWrVoxcODAUuslScJut2M2m5k3bx7x8fGl7mdDEy19Hy19X+8UFxdjtVrJz89n4sSJzJ49m5SUlGofpyFl93o03CUathgFnS4yE6HHreFxa8TEKaXCj5vLsyKE4EChF4MikxZjqLbcRxxe/KqgbZyxUhNYXomfAneANnFGDErtjSVCCDi0Fyx2pKSUcuUWHjccP0K2JYlixUT7+MplrG8cDgder5ekpKRg0I8aQKfoqI0Bt6ioiFmzZqHX67n66qtLmTdPpbZJoNHS91EalcmTJzNmzBguu+wy7r333hoplLrC69Eodql43Bp+v4bQyh9T+X0C+ZSKxFUR2ra51gHzBDQCmsBurNlrIc6kI6AJXL6Kc0E0ISjyqFgNSp0oFCDsT8FU8cxZMpkhMQWTz40mBP4KvveGIpRJH44iPX4U9fiRWh1Tr9czbtw4ioqKwrP+8thyvIQH5u5n07H6SZ6Mmr+i1Dsn54E0Nl6PhqaBn99fKrIioVOCFYcVRTrhRxGYzHK1RnOhisVqAJpIIE61cHqDvd9rWsvLog+WWSn0BCqs0eXyqmhCEGuqXb2wUnhP5MKYTJVuJtliMPkCIMDjKsYQW30/XV0ghEBV1d9Nel43+LwIJFBVpOqMZE6hVatWJCcns3nzZnr06FHq+c1y+vhwfTarDrlItOjw19PgJ6pUopwxaJo4MaCVMRgl1IBAVYPFIP2BYNHIk6moLEtFyLKErEjNsrikdqIBls1Q8zpekiQRa9KRW+zH7dcwn1KiXghBoUfFoMiYdXVoJPG4QadH0lWtyQ3x8Uj5brxuL8JuLeODaQgCgQBCiN8TFp2OYF9qIcBdDLaYyg9QCZIk0aNHDxYuXEhWVhZpaWm4vCozt+QyZ1cBOlni2l5JXNIlIdxqua6JKpUoZwwhs5SiO6EADBInv4Y0VRBQBWog+BsvryJxVegU8AdEkytcWBUlfg1NVL8B1qnEGBTySwIUeQKY9aVt+u6Ahk/VSLHq6+zeCCGCSsUSWSitJEmYFAmPaoASV61e4DXl5PIsIhAIymGPhWIXuEtqLVPnzp1Zvnw5GzdtYq3DxMzNubh8GqPPiuWaXskkmOv3tR9VKlHOGLQTXtCKlIWsSBgUCWrRylzRSfh8wRlRLawYDY7Tq6LI1W+AdSqyLBFjVCj0BPCrGvqT/CaFnuA5bDUoX18hfl/wi63En3IqZoOOfBUCrkL0jaBU/H4/kiQFo/qKCoIzFHssshBoxa5aD0h0Oh3xrc9i164dLMtpydlp8dx0Tgrt4383DwqvF6mciLq6IOqoj3LGoKrB3Ij6LE//u1+l+ZjAVE1Q7NOwGZQ6mUGE/CVFnt9jmXyqRolPJcao1KpMfhlC+SnGyJVKSKm5NAnhb/hOiqV60rscYLIg6Q1IVltQQXprXiTS4Qnw5IJDzM6NR0JwXbqLZ85vXVqh5BxDe/JOtF+XVHKkmhNVKk2QUPnz888/n9tuuw23211uSfwQL730EkuXLgVKlxq//vrry2TnR8pHH33ErFmzanYBTRQ18PtLv774PQKsXk9TpwRzU0SNGmCVh16RsRkUHF4V7USUVVDBBH0udUrIn1Kd8vGKjEGRKNaZweWsW3mqQAhBIBAI+lPcxRDwB01fgGS2Bu2u7ppHZX29PZ8t2SVcN+gs0tLTKTy4u1TirnAUor36NHg8SK3b1/ZyyiWqVJogofpPCxcuxGAwVFoqHeDBBx9k+PDhZZZ//PHH4Sq31eWGG27gyiuvrNG+TZFgxI2okZ+kOkiShKKTmlXPeqdPRa/IGOvw3sSadGhC4PCp4Z4pdqOMrg5niUKIYORUNUxfIWxGBY9iIFBSXKPCsDUl5KTX6/VBB72iC/uDJEUJzrjcJTU6tqpp/JxZyKDWdi7sHE+vnj1xOBwcOHAAAOEpQZv+DBTmIv/5SaS0quvI1YSoUmniDBgwIFzKRFVVHnzwQc477zyuvvpq3O7g1H/q1Kl8//33ZfYNNdc6dOgQw4cP595772XkyJHceuut4X0HDhzI3/72Ny688EIuvPBC9u3bB5RuDHbFFVeEtxk6dGi47Imqqjz77LNccMEFjB49mo8//hgIViu+7LLLwrOt0PaNye/+lPo/l04XjABrDnnFflXD49ewG6sXPl0VJp2EUSdT5AmEOy7G1fUsxe8LTgmrYfoKEQpIcEkG8NTsJV4Twk56CCoPe0zp+262BMOLA/5qH/uYy4/Lp3FR52BZnw4dOmCxWNi8eTPC70d76+9waC/yHQ8jndWlDq6mfKKO+kpYunRphZVla1r6Pjk5udxZRXkEAgEWLVrEyJEjAdi3bx9vvvkmL730Erfffjtz5szh8ssvj+hYe/bsYdq0aQwePJg///nP/Oc//wmXfbfZbPzwww/MmjWLp556qtyZUXnl9j/77DPsdjtz5szB6/UyadIkRowYwZw5cxgxYgT33nsvqqqGFVhjEo78queZCpzUtEuFJtTmolycJxIV7bWM+joVSZKIM+k47vKR7w5g1st1H8IaYX5KeQRNYDLFegtxTgeYG6YQYyAQCM5mS1wgAbZTLAlmCxRwQuFEbmUQQnDE4eOsBCNnJweVrKIodOvWjdWrV1P071ewb9+IdNN9SD361d0FlUN0ptIECdV/mjBhAunp6Vx99dVA0NfSvXt3IFiW+9RS75WRlpYWbhZ02WWX8dtvv4XXTZo0KfxvRR0jyyu3v2TJEv73v/8xZswYJk6cSEFBAfv27aN379588cUXTJs2je3bt2Oz2ap3A+qBkI9DboCZSkhxNXVnvTjRCjjYG77uXwU2Q9DcJYSoe18KBP0piq5MP/pIsRllPLKegMdTqktkfRLuSV8cVGTSqaMOvSF4PdX0q7j9GsU+jYmdE0rNfLp164YEbDmShXTlFOTB59XBVVROEx9HNS6VzSjqs57TyT01TubUstjVaSV6qmnj5M8V/f9kKiq3/9xzz4VnUifz5ZdfsmDBAu69917uuOOOWvtnNFXU6mkN+VMaIndElgln5ddP0Gbd4FMFflUjzlq36f9CVaGkGEqcxAckivUWrEot4rTLO0coP8VkrvF3ajuRU+PSmYkrdkJMXJ3KeCohJ71ZpwRHOeXMRCRJQpgt4HIiNC3i5MxgUqnEsLalqwTYlsyhXVE221M7MOj8ixpkFhGdqZwhHDlyhDVr1gDBctsntzgN9Tr/9ttv6XtS86KqCJV99/uD9t89e4Jl3w8fPkxSUhLXXnstf/zjH9m8eXOtZA8EBI4iFV8lNaWqQlNFg+WNSJKETpEi6lnfmDi9wYis2iY8QlCRCJcDcfwoHN4HecfB7yfGpKNlSQ4U13GUVcAfDOergZM+hEGRMehkXHoruBz17gNT1aBvSefzBmckFclutoLQgkEIEeBTNUr8KmkxhlIzTm3xj4hv/0v31GTcmqi3cv+nEtHYb/ny5bRr145WrVpx9OhR3n33XWRZ5pZbbqmyXHqUpkHHjh2ZNWsWDz/8MO3bt2fy5MnhdT6fL9xP/s0334z4mKGy7+PHj0cIQUJCAjNmzAi3edXpdFitVl577bVayR7wB3/sfp+Gsfrm83B5FrkB/CkhFJ2E36+FQ2qbGkIInD4Vq0FGqWFElgi2ugxmhLuLg0l8Oj3Y48BqA0OwErDwecFZhLDH1t1MMZSfUgulAidmKwEdgYAafNnX5AGLkLCT3ueB2PiK74XJHJzqlpRE5OsJhWun2U9qkrf2F8R/34Ge/Wk75W5iP/2UzZs307lz54oPVEdEVPr+nnvu4dlnnyUuLo4XXniBtLQ0TCYT27dvD/dWbq6cCaXvDx06xOTJk1m4cGEZuQcOHMiPP/7YpHpcn4rLoRIICPR6Gau9+pNrv1+j2Klhtcvoa5kxXu1z2mTMFkOTe1ZKfCpHnT5SbYYKM9wre8aFpsGxw8EKwYouqEQsNjCayrwshcsBucehRTqSOfLeLpUhco4FFUurdmXOV53fpk/VOFjoJdFbRJxRRkqsvwraTqcTd0kJSR4XUqt2ZQpHniy3OH40GN2W3rZSRaxqgv2FXmwGGbscwGKxILZvRJv+V2jXEXnqM0hGI+vWrWP58uVcc801JCUl1fpaal363uFwEBcXh8/nY+fOnVx99dVcccUV4VDXKFHqi6AdOjjuCfi1Gpko1CrKs9QHupCzvokmQTp9KrIkYTHUUMnm5wYVSnJq8MWekIxUkX/DYgtGSDhrloh7KsH8FE+t/CkhDEowKs1ltEFx0I9RXwT8fnRCQ7Laqq5EbLEGTXz+ykOLnSfCtUOBECLrENpbz0NKGvKfngiXYgk1NKutKToSInqiYmJiOHbsGBs2bOCss85Cr9eH7ehRmj6tW7dm4cKF5a779ddfm/QsJeSXMBglxEmfq4MWEEhy/ZZnORVJDpbRb4pJkMGKxFqNKxILlxNcRUETjtVe5YtdkuVgkUR3cbCAYm0JBIIv3Brkp5SH1aDgRSGAHDTl1QPhTPoKHPRlCM3oKokCE0JQ6A1g0smYdDJCCLTP/gWygnzv08GyL6HDmc107NiRHTt24PPVb2maiHwql19+OQ899BCyLHPfffcBsHnzZtq2bRvRSXw+H0899RSBQABVVRk0aBB/+MMfcLlcvPLKK+Tk5JCcnMx9990XDj/9+uuvWbhwIbIsM2XKlHBb0r179/Lmm2/i8/no06cPU6ZMQZIk/H4/b7zxBnv37sVutzN16tRGbQYVpW4IvZSNJhmfN2gG0+mr9yJU1YadpYRQdMFmX00tCbLYF5zx1aQsi/D7ID87+EKPq0bLWnssOAqDyqg6+5VHyIFdg/yU8rAZZPJLwGWwEudy1kvlYlUN9pHRyRIYysYEBjSBdJL/TdLpEXpjMF8lNr7cYxb7NQKqIMl2InqvIBe2b0T6461ICWVNXD169GDHjh3s3LmTHj161M2FlUNEM5WRI0fyr3/9i3feeYeePXsCQcfv1KlTIzqJXq/nqaee4qWXXuLFF19kw4YN7Nq1i9mzZ9OjRw+mT59Ojx49mD17NgCHDx9mxYoVvPzyyzz22GO8//77aCempe+99x63334706dPD8+eABYuXIjVauX111/nwgsv5NNPP63enYjSJAn4g6HAob/qjvwbqjxLeSg6CSFOhEM3IZxeFZ0sYapmMqLQNMg5DkiQ3KJapidJrw+Ovp11EGXlcQdLI+jrJkw5bAIzWMFTUi9FJgMnSq/oLNbwfRNCUOxTyXL62F/gYV9+CT71JPOb2QJeN0Ir34Za5AmgkyWsBhkhNMSBPZDaCmnEhHK3T01NJSkpKZhhX48DnYieqv/7v//DaDSWypOIjY3lhRdeiOgkkiRhOjGqUFUVVVWRJInVq1czYsQIIBieunr1agBWr17NkCFD0Ov1pKSkkJqaSmZmJgUFBbjdbjp16oQkSQwfPjy8z5o1a8L5EoMGDWLLli1NboQYpXqE/Cmh/DC9Xq52+ZOGLM9yKiG/itMRwOetmT+orgloghK/it1Yg4rEhXng80BSSkQNscpgjw3aL2trYvK4wVh7f8rJWA0KXiHjl3URF5nUNEF+iR+HN4AvUPn3G3C7kQCdzY5f1cgr8bO/0EuW04cnoBFr0oWz4r2BE4rFYj3RuKtsaLE3oOH2B/eTJAkcReBxI//h5rIJlSeQJImePXuSm5vLsWPHIrrGmhCR+as8AYQQHD9+POITaZrGQw89xLFjxxg3bhwdO3akqKiI+Pjg1C4+Ph6HwwFAfn4+HTt2DO+bkJBAfn4+iqKQmPj71DkxMZH8/PzwPqF1iqJgsVhwOp3ExJSeys6fP5/58+cD8MILL5SJhDh+/PjvHdmqINLtmhrNRW6/TwNUDCYdOp2C3qDi8ahIkoIuwlF2IKAGj2HURbxPXaHTgRAy7pIAJcUC2S1hNCmYzEqjzJwASjxBX2iM2YBOV7WmDT0rmsuJ6ihEjktAqWGSoLDHECjIRXI50VVg0qnyGH4/gYAfJS4BuZLnuLrPeJxZJr/ET4k5lthiB0pSSqVKSwjBMZcHl/d3H5EsSZj0Mia9glmnYNbL6BQZoQbwqyqSouNYiUqJLzjSsRp1xJn02E4oeJ+qcTDfzVGnj9ZxZoxWGwFZQfa6UWLjSp0/p8SDJEkkWI3ImkqgqAA5IZnk88ZVep1Dhgzhl19+qVcTWKV3/o033gCC8dWh/4fIycmhdevWEZ9IlmVeeukliouL+ec//8nBgwcr3LYijV/ZSKC8deU9FKNHj2b06NHhz7m5uaXWe73eYPOcKqjPkOLWrVvTpUsXVFUlIyOD1157DbO5fKfktGnTsFqt4TpeIV566SUGDhxYpipASO65c+fSoUMHOnXqVC/XUBd4vcERmyRpJ3wpwe/F6wmAKTIF4T+RMCmESiBQf5E9FaHTQ1yCAY/bj9crcJcEcJcE0BskDEYZna7iKgb1QbE3WHtKh1alKTH0rIiAH7KzwGBCi4mvnbPdFoMoyMVfUoxUjm+hKsSJJErVYESrQI6a/DZlwKiTcWomYovzCLgcwVL0FZBX4sflDZBo0WPRy3gDGh5V4A1o5Bf/bj7TyRIGoSLLOgKSjkBAI8Gsw25UwomK6okQQYNOR1qMnqMOHwcL3KTZDRjNFrRiF9qJxl4QnG063AHsRgWhqQTyskFoiNbty7zPyqNz585s2bKFAQMGRJQ+UR41Dilu0aIFLVq0KPX/Fi1akJqaytChQ/m///u/agtjtVrp2rUrGzZsIDY2loKCAgAKCgrCs4rExETy8vLC++Tn55OQkFBmeV5eXjhy6eR1qqpSUlLSJGpO1YTqlr4vj4rK4YeYO3cuu3btqo2Y9U4gEPSFhKK2ZDn4Vx2/SkOWZ6kISZLQG2RsdgV7rILRJBPwC4qdKi6HhtfTcKYxb0DDWI37IYQ44UcRQT9KbXu62+zBniFOR83297iD4cl15E85GZtBwatJ+HWGSuVzeVUKTrzU40wKRp1MjElHilVP61gjHRJMpMcYSbLoMckQUFUkBDaTkbZxRhIs+gprrRkUmfQYA4oMR5w+3EZr0GTo84a3cXgDCASxJuVEYqkD7LFIEbZU7tGjB5qmsWPHjurdoAipdKYSqtfUsWPHcPRVTXA4HCiKgtVqxefzsXnzZi655BL69evHkiVLmDRpEkuWLAmXDunXrx/Tp08PFynMysoiIyMDWZYxm83s2rWLjh07snTpUsaPHw9A3759Wbx4MZ06dWLVqlXBQmrNqEd4RQwYMIDt27fz888/M336dHw+H/Hx8bzxxhskJyeX2vbTTz/lxx9/5L333uORRx5h9OjRTJw4keeff56ff/4ZnU7HyJEjGTduHPPmzWPVqlW89tprvPfee/zyyy98+umn+Hw+2rdvz/Tp0zGbzUydOhW73c7GjRvJycnhscceY+LEifV+3UIIAn6B0Vi6LplyUln5SL5fVRXo67kxV3VQFAmzRcJkDrYd9nkE7hINVZWwWOvX8aMJgTcgwp0ZI6IwLxhtlZyKVAcvcknRISx2KHYg4hOrr6S8HjCVTbCsC2wGmbwSKDbHEefKQahqmXwSb0DjeLEfk04m2aovVw5ZkjDJGqaSAmKdRXj1Bop0RizG8rc/Fb0ik243cMTpJ8uvI1VnwuIuAaMJIQRFHhWzXgm2vs7NDY60YhPA663y2BAcgE+cOLFalqbqEJHhsXfv3hw9epT9+/eXKWJYUTfCkykoKODNN99E04IjssGDB9O3b186derEK6+8wsKFC0lKSuL+++8HguafwYMHc//99yPLMjfffDPyiYfvlltu4a233sLn89G7d2/69OkTluONN97gnnvuwWazRRyZVhm2nO/QebPKXVfT0vcBY0tcyRdFtu1Jpe8HDBjAd999hyRJ/Pe//+Wtt94qVc3ggw8+YMmSJbz//vulAioKCgr48ccfWbp0KZIkUVxcjNVqZcyYMWGlA8FcpGuvvRaAf/zjH3z22WfcdNNNQNDPNHv2bDIzM5kyZUqDKJVQPopySviwTifhj7AHvKYJhFb/3R5rgiRJGI0SBoOgpFgLhh5batebvCp8qkAgIo760kpcwR7q9lgkq73qHSLFHhOs0lvsrF5590AgmGVeT33l9aEoMGEkToigfCf5jwKaIMvpQ5Eg1W4oN8dHhPYryAsXjQwYTFBSUi0/j+7EjOWo00eWOYlUrwMb4PJpqJogzqoES+R4SiAhuepkylPo0KFDtbavDhFd5VdffcWXX35J27ZtS72wIDKl0rZtW1588cUyy+12O08++WS5+1x22WVcdtllZZafddZZTJs2rcxyg8EQVkrNnVDpewiWUbn66qvZs2cPd955J9nZ2fh8Ptq0+b1r2//+9z9atmzJjBkzfu99fQK73Y7RaOQvf/kLo0aNCs/sTmXnzp28+OKLOBwOiouLw1F5AOPHj0eWZTp16lRhf5m6JmTi0unKKhUIlpWvytkd6qHSEOXua0rQNBZUlIEAVKMrbrXxnPApGSNQsiIQQD2eFcypiK99WY9SGE3B4zqLELaYyBVpHdX7qgybQSGvxI/faEHvLEKckFUAx5w+VAHpMYZyO1gKnxfyc05Ep5kgpSWS0USgsBCdThceGEeKTpZItxs4WlDCMV0MLTx+Cr0aekXGopMgOxf0xmop5oYgIqUyZ84cnn/++YiTHU8XKptRNHTp+yeeeILbbruNsWPHhnN4QnTp0oWtW7eSlZVVStmE5Pzhhx9Yvnw533zzDR9++CFffPFFmXPed999vP/++3Tr1o2ZM2eycuXK8LpQ2XuoPFiiLjnVnxJCVoIm+UBAlJdDVorwbKeRIq0iJWSeC/gF+momdlYHT0BDkaXIeqfkHg9Wyk1Kq70f5RQkSULYYyEvO1xuJSK87qCppwYO/kgJm8AsccQVHIWsQyDL5JoT8chGWhgp03ZZaBoU5QeTOyUZElPghLIUQuD3+0v9hqqDIkukWRWyHF6On0iuT7LqgyVvAv5gPbUmZuaPSKkYDIZoNeJGxuFwkJqaCsCsWbNKrevevTs33HADU6ZM4dNPPw1vB1BcXIzb7WbUqFGcc845DB06FAh2eywu/r0EhMvlokWLFvj9fr7++utSx2hoyvOnhPi9B3zVx1FVccK537R+dKciyRI6fXC2YjLXnwnMG9AiMn2JQAA8JciJyYj6eoFb7UETkbMocqVSD/kppxI2gSET16o9eN0UeVQcGInzObE5iyBPDs5gTOagDbaoIPiCt8VAfCKS8vtr1ev1omlajZUKgGw00tJ3jGOmRHyKHrsOyM4Hi7XOCnTWJRENQa666ipmzJhBQUEBmqaV+ovSMDzwwAPcfvvtXHrppeXW6howYABPPPEEN9xwQzh3B4LKYvLkyYwePZorrriCZ555BoBLLrmEt99+m7Fjx7J//34efPBBJk6cyNVXX01GRkaDXVd5VORPCaHTSWiqqLKsvKY2bLn72qDXS8ES/fVUgFLVBH41Qn+KL+g3lUz198IK1gOzQ4kLUUVBN6GqiPycoD+lHk1fIWwGBW9AIyDJuA0WcjFiMSgkJidAcsugT0hToTA/ONuS5WAme1KLUgpFCEFxcTE6nS6c/F0TJElCNplJK8mhTawBuTAvmBRZ12bJOiKi0vdXXXVVhetmzpxZpwI1NGdC6fuTaQ5ye9waHrdGTJxSapYRkj3gF7icKhabjKGCKrtCCIoKVIwmGbOlcXvRRXLPNU3gKFQxmWVM5rqXN1QOJD3GgFlfuZNJFOZBYQG6Dp1Q63HgKPw+OHIA4hKR4soOlISmBWcyRQWgacGZQEJSlea42j7jflXjQKGXGJMO14mSNsEw31PMXqoaVHTllPsHcLvdOBwOYmNjI1IqlbYaKHZBThYkJAcrRMfEIiWUjv6M9N1VF1SWpxKR+evUxMcoUeqTivwpIUKDQTUAVGBVUBuxPEtNkGXpRGMvUS+D8d+d9BEoLK8XDIbgy7selYqkNyBMlmDXxZOaVoUjqArzg2YlszVoVqpHX8rJhExgDk8AWZJItevLbWQmKQoo5X9ZoVmKXq8vE9xUI8zmoDMxPxeUEyHETZSIlMqp+RBRotQXlflTQkiShE5XeXHJUBHHphhOXBF6vYTHraGpos7Ndp6AhlFXdal7IUTQ/BVBx8E6wR4bHIG7i8FiQ7hLgtV2fV4wmKBFSqP4DezGoAks1abHEElgwym43W5UVSUmphrRbZUgyQrCaA6GEMclVjuEuCGJOHB6zZo1bNu2LVyfK8Sf/vSnOheqMWkKRf9OF9wlwRekxSZH/MOqyp8SQtFJ4Uz08o4dmqnUceBSvRJUKuD3izIRRrVBnEh6rKjDYynUQPDm1WNb3VJYrMGpZ1EBwukIKhedHpJSwWprtMimWKOC3aDUqNWypmkUFxdjMBhq5aAvQ0xscOpdQZ5OU3l3RfSTmzVrFv/617/QNI1Vq1Zhs9nYuHFjg9nvGhJZlpu8z6E5IITA59Xw+wV+f+QPe0X5KacSyiOraLbSFMqzVBdZCZrBqnO/IsGnCjQhMEUyawtlZTeQqUmSpOBsxesJ/sUnQVobJFvVzb/qW66aKBQI+jY0TavzMlGSxYaUnFrufQkEAtXOg6kvIpqpLFq0iMcff5w2bdqwePFibrzxRoYOHcqXX35Z3/I1OCaTCY/Hg9frrfShNhqNeCMsi9CUaCi53SUqudkqkgRKLrRI00cU2pt9zI+mCgymsiO8k2VXVcHxY35i3Aqx8aVH4EIIjh3xY7JIKPWZTRgh1bnnLlcAl0OjZWt9neXXZDl87Mx1E9vKRola+WxFO7gPsg4hJaZi0nkb5FkRih4hJKTYxGDflVOqdlSXxvxt+v1+9u7di81mw263V6tDbk3lFkIgy3KtIszqkoiUSnFxcTipLhShkJGRwbZt2+pVuMZAkqQKKwKfTFJSUkQVQZsaDSX37q0lHDmo0meghTW/lCCho0Onyke/mirYts5Hmw6GcmfBp8p+7JCT/GyJwSNLb+txa2zf6KdbHxMWS8OMuCujOvfcXRxg7WYXNpuetDZ1Yzr5abODXw46mdAttUqfivrjF1BSjHL+BQ37jNvrrgxMY/42Fy9ezObNm7n++uurbclpru+UU4lovpSamsqhQ4eAYF2un3/+maVLlzbbKsBR6hdNC84UWqTpSU3Xk9RCx66tnnAZ+oooLFBRVUhMiczVl5isUJAXKJOv4igMOlRi4pquM7MiEhIVDEaJY0ciH+FWxc5cNx0TzVU76TUN9mcitW3cPKXmSlFREVu2bKFbt27ExcU1tjiNRsTJj05nsI/Btddey48//sjHH3/MDTfcUK/CRWme5OcE8HkFLVsFq7J27WXC7xNkbq98ap+XHfRlJSRHplQSknSoAXAUlM4Y/F2pNA0bc3WQZIkWLfVkZ5VVljWhxK9ysMhL56QITCM5x4KO8nZRpVITVq1ahSzLDBgwoLFFaVSq/PWGSgyEmjllZGTw+uuv17tgUZovWYf9yAqktAz6M2LjdbRqq2fvLi9tM4xYrOW/7HOzA9hjZYzGyJRBSPnk5QaIS/z9UXYUqpgtUoWJkU2dFuk6Du33kZcTILlF7XxCmXkeNAGdk6o26Yr9uwGQ2nWsYssop5Kbm8vOnTvp27fvGW/BqfJXJ8syL774YrNpQRulcRFCkHXYT0pLfakIrs49gi+1nZvL9tuGoMmsIDdAUoSmLwCTWcZik8nPKTtTaY6mrxDJqXpkBY7XgQlsV17Q6d0xMYKMyv2ZweZXLeunz8bpzIoVKzAajfTt27exRWl0IhrKnX322U2+S2CUpkFBrorXI0hrVXqEbbHKdOhk5PABP0UFZUO2C/OD/pRITV8hEpIU8nMD4Rh9VRW4nFqzVio6nURyCx3HjvhrnXuwKzfYltYeQY6KOLAbWrdHig4gq8WRI0fYv38/ffv2bTIRWI1JxBn1f//73+nXrx+JiYmlQm0rqwsW5czj6GE/sgwpaWXNNhlnmziw18e2jR4GjbCWeo5C/pTEaiqVxGQdh/f7KXZq2GIUnEUqQjRPJ/3JpKbrOX40gKNQJTa+Zi95IQQ7c930aVl1drzQVDi4F+nc0TU615mKEIIVK1ZgtVrp1atXY4vTJIhopuLz+ejfvz+SJJGfn09eXl74L0qUEEHTl4/kVF25fUH0BolO3UzkHg+Qfaz0bCUv54Q/xVQ9P0hCki68PzTvyK+TaXFCKR87UvNE3JziAIUelU4R+FPIOhJMPoxGflWLffv2kZWVxcCBA8s0yDtTiWgIdNddd9W3HFFOAwrzVTwlgi7dK86vaHeWgf27vWzf6CalhQ5JDpZ8z88J0Lp99fMyrHYZg1EiPzdA27OMOApVFAWsFQQDNBeMJpn4JIVjR/x07l4zk8rO3KD/KiIn/YGQkz6qVCJF0zRWrFhBXFwcZ599dmOL02SI6Jd3/Pjxcv/y8/OjPVUqoDA/wLJ5TpxF9dQgowmSddiPJAWjlypCViS69DThLNI4tN8H/O5PiTQ/5WQkSSIhWRd21juKNOyxClITb8wVCanpehyFKiXFNfuN7cxzY1Ak2sZFkAC6PxOMZkiNNuOLlP3795Ofn8+gQYNQmnCBx4Ymol/xn//85wrXybJM3759ueWWW87ohJ+TCQQE61aWUOzS2LnVQ78hDVTxtRERQpB1yE9SC12VobwtW+mJT1TYsdlDWhtD2HRVXX9KiIQkhWOH/XjcGo5ClZatTg8zRGq6nu0bPRw/4qd9FdUIymNXrpuMBFO5/dRPRezfDW07IMnRl2OkbN26FavV2uhN7ZoaEc1Ubr/9doYNG8Zrr73Gp59+ymuvvcawYcO45ZZb+Oc//4mmabz//vv1LWuzYet6N8UujeRUHVmH/Licp/9sJTSijuSFLkkSXXub8XoEe3d6ycuumT8lREgZHTnow+8Tzd6fEsJmV7DZZY4drX5osV/V2JvvjcifIgIBOLQvmklfDVwuF/v376dLly5NppBjUyGiu/HFF19w2223kZqaik6nIzU1lVtvvZUvv/yS9PR07rrrrtOyDlhNyDrs4+BeHxlnG+kz0IIsw54dza/wZHXJOuwHKTi6joSEJB2prfRk7vCQnxOo8SwFgk55RQf7M33hz6cLqel68rIDVZa4OZV9BV78mogsk/7ogWAzrGjSY8Rs374dIQTdunVrbFGaHBEpFSEEOTk5pZbl5uaG/SkmkwlVPf1H41XhLtHYuNpNbLxC524mjCaZ1u0NHN7vw+M+vX1PWYf8JCbrqjXbOLunCU2lxv6UELIsEZ+oo8QVvMcxsc1LqYjNaxD7ys8Da5GuRwg4nlW9KLBqOen3ZwJRJ32kCCHYtm0b6enpUZN/OUT0S77gggt45plnGDlyJImJieTn57No0SIuuOACANatWxcu43KmIoRgw68laKrgnMGWcOe+s7oYObDXx96dXrr2roc+sU0AZ5GKy6nRvmP17P42u0K7DAP79/hqNVOBoAks93gAs1VGb2g+TnpR7EJ763kQAumqW5FGTiiVvxOfqGA0SRw/4qdV28ij43bleUg060i0RDBzPJAZbJaV3LIGV3DmceTIEYqKihg4cGBji9IkieiXfMkll9C2bVtWrlzJvn37iIuL484776R3794ADBgw4IwvorZnp5fc7AC9+pux2X8fKVttCumt9ezf4yWjq7HZ1qOqjKzDQZt/ag0c5F17m2mbYayxPyVEQlLwnje3IpJizXIIBKBDZ8R/34FDe+Hq24N9RQj6n1qk6Tl60BduPBYJu3LdkeWnEHLSZzSrhmaNydatWzEYDFEHfQVEPDzs3bt3WIlEKU1hfoAdmz20bKUvN9ci42wTRw762b/bR6dup18Zh6xDPuKTFEzm6r/QZVnCHlN7c1Vcog6dDhISm1eJEbFyIaS1QX7oBcQ3/0XMmYU4ehD5zkeQYuOBoF/l4F4fedmBcJHOyij0BDjm8jO+Y1zV5/f74MgBpLGTanklZwZer5fMzEy6du0arYdYARXela+++orLLrsMgJkzZ1Z4gDO9TEsgIFi3qgSjUaJnP3O5o72YOIWUljr27fbSobOxyla5zQmXU8VRpNGtd+MqS51O4rwLYjA0J9NXdhbs2YF02WQkWUG69HpE6/ZoH7yG9tz9yHc9itS+I0kpOhQFjh3xR6RUdp3wp0Q0Uzm8H1QVqW3USR8JO3fuRFXVqIO+EiocWp5cguXksiyn/p3pbF3vptip0WegBUMlJdszzjbh8woO7fM1oHT1z++mr7rpUlgbTGY57MtqDohVi0CSkAaOCC+T+g1FfvhFUBS0Fx9GW7EQRSeR1CLoM4qEXbkeZAkyEqpW9KFy99HIr8jYunUrycnJpKSkNLYoTZYKZyq33npr+P/RMi3lEw4f7mIkqYq+F4nJOuKTFPbs8ND2LENE/dqbA1mH/MQlKBX2SIlSPkIIxKrF0KUnUkJSqXVS6/bIj72M9u4/EB+8inZoHzFnX83xrEBEfpWdeW7axxsx6iL4TvZngj0WTpEhSlmys7PJyclhxIgRVW98BhPxm8Dr9XLgwAF27txZ6u9MpdgV+D18OMLaTB3PNuEuERw5WHetYhuTkmKVooLTJ4O9QdmzHXKOIQ06r9zVkj0Geepfkc6fiJj/DZZfvgZBOGy6IlRNsDvXQ6dI+qcA4kBm1EkfIVu3bkVRFDp37tzYojRpIvI0LVmyhBkzZqDT6TAYSps53n777XoRrCkjhGDZguPB8OFBlohNLiktddhjZfZs99Cqrb7Z/5BDpq+WraNKpbqIlYvAYEQ6Z3CF20g6HdLVt6G1bo/tmx8g4UKcDhV7JXk4Rxw+3AEtskx6rweOHkLqU7EMUYIEAgF27txJRkZGtGdKFUSkVD755BMeeOABevbsWd/yNAv27vKSddhDz35mbNWIXJIkiYwuJtb/WsLxo4GIs8+bKlmH/MTEKVhtzSvZsLERfh9izXKkcwYjmap++ctDx2Dz+iEXXAdzoHXFRR+rk/TIwb0gtGjSYwRkZmbi8/miDvoIiMj8pdPp6Nq1a33L0mxo0VJPz77xtOlQfed0Whs9ZqtM5nZPrbv6NSbuEo2CvKjpq0ZsWg0lxUiDyzd9lYd+8HBMnjxcB7Mr3W5nrhubQSbNXvX3Eip3H+2hUjVbt24lNjaW9PRoFeeqiEipXHXVVXz00Uc4HI76lqdZYItR6DsosUbmK1mWyOhspCBPLdNbvTlx7DQ2fYmCPMSOTfV2fG3lIohLgC6Rz/wliw2b3oOrWAqarSpg1wl/SkTP5r5MiEtEikuIWI4zkcLCQo4cOULXrl2bvcm6IYjI/JWWlsYXX3zBTz/9VGZdZTksUcqndXsDO7d6yNzhITHF1tji1Iiswz5sMXKdJC42NcTsTxArFyL/39+RMup2hi6cRbBlLdLoi6tdZt6WGsvhLAVtzS8o544qs77Er3KwyMuQNvbIZDmQCVHTV5Vs27YNSZKijbgiJCKl8vrrrzN8+HCGDBlSxlEfpfooOokOnYzs2OyhqCBQ4x7kjYXQBAV5Ku0yqt/jozkgdm4GIdBmvIr81HQkY905ZsVvy4LJhoPPr/a+ttZJBHI8eFauxFqOUtlyvAQBdIqgMrEoKYbjR6plgjsT0TSN7du3065dO2y25jkAbGgiepu5XC6uuuqq6NSvDmmXYSBzu4fMHV76Dm5eSqW4WEPTwB57+uWmiJxjkJeN1H8YYs1yxP8+RLr2jro7/qpF0Lo9Unrbau8bmhW6sp1Ysg6jtUhnR46bNUddrD1SzIEiL1a9HFk48YETlYmj/pRK2b9/P8XFxVEHfTWI6G02cuRIli5dGk36qUP0Bpm2GUb27PTSpYfarCKoQi2SKwttba6IXVsAkC78A8QlIOZ9g+gzEKlrn9ofO+sw7N+N9Ieba7S/9USh0vUtB7F58X7W60oo9mkoEnRLsXDTWSkMam3DZqz6exEnlErUSV85W7duxWKx0K5du8YWpdkQkVLJzMxk7ty5fPXVV2X6B/z1r3+tcv/c3FzefPNNCgsLkSSJ0aNHc8EFF+ByuXjllVfIyckhOTmZ++67LzzF/Prrr1m4cCGyLDNlypRwMcu9e/fy5ptv4vP56NOnD1OmTEGSJPx+P2+88QZ79+7FbrczderUJl9KoUMnI3t3ejm830fn7s2nLL7LEUzAOx39KezczPGEluw/cITuoy7BumUd2gfTkf/6OpKlduaPYFkWGWnA8GrtF9AE8zILWbiniEEihq2pA9juzWJQWyv9Wtnp3dKKRV/N72J/JiS1QLLHVG+/M4ji4mL279/POeecE+3uWA0iUiqjRo1i1KiyNtxIURSF66+/ng4dOuB2u3n44Yfp2bMnixcvpkePHkyaNInZs2cze/ZsrrvuOg4fPsyKFSt4+eWXKSgo4Nlnn+W1115DlmXee+89br/9djp27Mjf//53NmzYQJ8+fVi4cCFWq5XXX3+dX375hU8//ZT77ruvxjI3BCazjNUuU1TQvKLAnA4Vk0VCpz+9zKFCCMTOLaxu1Z0Da9awbt06upwzij4LZhH/2XtIN9f8eRKaFizL0q1PuPpwJPKsOOjk4405ZDn9dIg3opgl+iPzwMJn0fV4CKnNkJrJs383UrTeV6VEuzvWjIjNX7UhPj6e+PjgD8lsNpOenk5+fj6rV6/m6aefBmDEiBE8/fTTXHfddaxevZohQ4ag1+tJSUkhNTWVzMxMkpOTcbvd4YZgw4cPZ/Xq1fTp04c1a9Zw5ZVXAjBo0CBmzJiBEKLJ+4Fi4xTycqvX1a+xcRZpp+csJfc4gYI8jrTS0alTR8xmM1u2bGF7x8FkHDlG/2ULSBpWw8HV7q2Qn4N0+eSINt90rJiPNuSwO89D21gjT4xsRd80K+t/LSE/R0aOT0Rb/jNK3+orFeF0QF42jJxQ7X3PFIQQbN26NdrdsQZE7CHevn07+/btw+MpHSMfKo8fKdnZ2ezbt4+MjAyKiorCyiY+Pj6cB5Ofn0/Hjr+PohISEsjPz0dRFBITE8PLQ10oQ/uE1imKgsViwel0EhNTeno/f/585s+fD8ALL7xAUlLNCunpdLoa73syLdMVjhzMw26Lx2iq/xd1beXWNEGxs4jWbWPr5PqrQ13d84pwb1jFZms8ASEYOHAgHTt2ZNy4cfyybBm/rfiF3eu30sXhYcTo0dVKgtPpdBjWrcBrtpA86kIkY8VRc7tzXLzzywFWHSggxWbg0TEdGd8lBeVEAdIWqfkcOZCPcfQkvP97n3gRQElOrdZ1eg9mUgjE9eqHoZL7Wd/3u76oC7m3b99OUVERo0aNarB70Fzv96lEpFRmzJjBypUr6dKlS6mQ4urOAjweD9OmTePGG2/EYrFUuF1FmeaVZaCXt648+UaPHs3o0aPDn3NzcysTuUKSkpJqvO/JKPpgEuG+vdkkpdR/ImFt5S52qaiqQGfw1sn1V4e6uucVoa1dycHENBRFwW63h8/Vt39/uibFsWHG22xCsGPPHtq0acOAAQNIS0ur8riJdhueXxYi9TuXPKcTnM4y2xx3+fjvplyW7HNgNcjc2CeZCzrFY9TJFOT/3mJCUoKtE3I7DsLO++R9Nwv54qurd52b1gJQFJuEVMn9rO/7XV/URm5N01i7di2rVq0iLi6OFi1aNNg9aE73u7LnPiKlsmzZMqZNm0ZCQs0zbwOBANOmTWPYsGHh3s6xsbEUFBQQHx9PQUFBeFaRmJhYqldLfn4+CQkJZZbn5eWFZQqtS0xMRFVVSkpKmkVceWx8cHbiKFAbRKnUFmfR6emkF0Igdm3mQHpPWrduXaarn7l9RwYOHUrvrz5my7ir2ZCTw//+9z8uv/zyKmctnt+WgtddYU7I/7bk8dnmXGQJLu2awOVdEyuM4Ard92I5DvvZvRG/zEdM/EO1EinFgUxokY5ksUa8z5mAy+Xi559/5vDhw3Tq1InzzjsPvb7p/yabGhGFNCQlJdXq5goheOedd0hPT2fixInh5f369WPJkiVAsBJy//79w8tXrFiB3+8nOzubrKwsMjIyiI+Px2w2s2vXLoQQLF26lH79+gHQt29fFi9eDMCqVavo1q1bk/enABhNMkaThKOw8pLmTQWnIxhUUJ1Cms2C3OMUuoopQqZt2/JzSKQxl2Do0IlzFn/NDRdPxGq18ssvv1RZw82zaC4kJEPHsg7fnGI/n27KoU9LC29d1IHJfVIqDQm22GSQgh035WFjID8Htm2s3rXu3x0tInkK+/fv57///S/Hjh1j1KhRjBs3DmMlZsooFRPRTOWOO+7g3Xff5dxzzyU2NrbUukgKTe7cuZOlS5fSpk0bHnzwQQCuvvpqJk2axCuvvMLChQtJSkri/vvvB6B169YMHjyY+++/H1mWufnmm8MhfbfccgtvvfUWPp+P3r1706dPMH/g/PPP54033uCee+7BZrMxderUiG9CYxMTp1BU2DwiwFxFKiazhL4Zte2NBLFjEwfsQXt2RTkJkqwgT7kX7a/3ovvvOwwYfQWLFi1i7969nHXWWeUft6gA38bfkMZfjlROWOqCvUVoAm7t14Jka9UDN0WRsFrlYFh3/4Fgiwk67LufE9l15mVDYX60PMsJVFVlxYoVrF+/nqSkJMaPH18ri0yUCJXK3r17Wb9+Pdu3b69RP5UuXbrwxRdflLvuySefLHf5ZZddVm4QwFlnncW0adPKLDcYDGGl1NyIiVPYt8uLpokm3xHS6dBOy6RHdm3hQHwq8fHxZQZOJyOlpCFdOQXx6Tuc3XsA6+PiWLlyJe3bty83l0H8ugQ0rdxmXKommJ9ZSK9UCy1skZc/stplXA4VSa9HGnweYuEPCEchUkxcpfuJnGNo0/8KOl2dJHM2dwoLC5k7dy7Z2dn07NmToUOHljF7Rqk+Ed3Bzz77jIceeijaT6WeiIlT0LRgUmFMXNN9YQshcDpU2p51epkFhBD4dm3jaHoPelRg+joZacQExPpVSDPfZ2B6Bj/FtmLbGy/S1aIHiw2stuC/Fhti+Tx0HbsiWrYqc5xNx0vIKQkwuU/1knRtMQq52QGEJpCGjglm/a9ahDT20oqv8UAm2vRnIBBAvu9ZpLQ21Trn6caOHTtYtGgRsixz4YUXVjjTjFJ9IlIqRqMx2k+lHok9oUiKCtUmrVTcxRqaCvaY0yy7OOcYR/waKlJE5TgkSUK++T7EnP+RUZDPep+f34SBjnt2oCtxgrsETvKzmG9/kJJyjjMvsxC7QWZQ6+oFlNjsMpoa7GljSWsDZ3VBLJuHGDOpXD+i2LwW7d1/gC0G+S9/Q2rZulrna66oqorT6aSoqAiHw0FRUVH4Lzc3l7S0NMaNG4fdHllV5yiREZFSueqqq/jwww+54ooryuR9RMsX1B6rXUaWwdHE/SrOUHmW08z8JXZu5oA9Eb2iRBQiDCDFxCP98VYAzj10iK+//pqtV97BOeecg9BUcLuhxAVeD+ae51ByIp8qRJEnwK+HnUzoFI9eqd5vKBQk4XJqWGxKcLbyn9eDfe9PKdWvLfsZ8clb0Kod8j1Pnva9UzZt2sSBAwfIy8vD6XSWCqKQZZnY2FhiYmLo3Lkzffr0ib6/6oGIlErIbzJv3rwy66L9VGqPLEvYY5Wmr1SKQpFfp9cPUezYzIHYFFq1aVMjm3rr1q1p06YNa9asoVu3bsGoIesJMxiU66BfvM9BQIOxZ8VV+3yh++9yqKS01CP1G4r4/N+IZfPC/V+EEIjvPkN89zl064N8x0NIpopzw04H8vPzWbx4McnJybRs2ZIuXboQExMTViQ2m61ZRIQ2dyL6Bb3xxhv1LccZT2ycwrGj/iZdWsbpUDGaJAyG00epCCHI37sbZ8uu9G/fvsbHGTJkCJ9//jlr165lyJDKS6cIIfg5s5DOSWbaxFXfP2U0yugNEi5ncOYomcxIA4Yhfl2C+OOtoDcgPnkT8csCpHNHIV13N9IZ4IBeu3YtOp2Om266Cbfb3djinLFE9KQlJyfXtxxnPDFxCgf3+fB6BCZzE1UqRadh5FdOFgdO/Awqyk+JhJSUFDp16sSGDRvo1asXVmvFiYU7ct0cdvi4Z1D1yqucjC0mGAEWQho2FrHsZ8SynxDbNsDW9UgX/RHpoqub7CClLnE4HOzcuZOePXtitVqjSqURqVSpRGLauuqqq+pMmDOZmBOZ9UUFKiZz05sJCCFwOVXatD+9On+KHZs5YE8iMSam1g7bQYMGkZmZyW+//cZ551XcUfHnzCJMOplz29S87LzdrnA8y//7gnYdIb0tYtYHIMtIN/wJedjYGh+/ubFu3TqAcN5alMajUqVyckmUKPVLzIkZgKNQpUVa0ysN4S4RqIHTL5Pet2MLWdY4emfUPhkwLi6O7t27s3nzZvr06VNuddtin8ovBxyMaB+DWV/zwYMtRubgPoHPp2EwyEiShDR2EmLmv5Fv+QtSj761uJLmRUlJCVu3bqVLly7RSK4mQKVK5a677mooOc549AYJi1Vuss7607HboxCCQ4cPoiWdVWed/QYMGMD27dtZuXIlEyaULS2/7IADryoYUwMH/cmEukAWOzQMSUHlJA8ZhRh0XrmBAaczGzZsQFVV+vY9cxRpU+bMevqaOE25XEvIfn9a5ahkZ3FANmKQZVq2bFknh7RYLPTp04fdu3eTnZ1dZv28zCLaxhnpmGiq1XnCEWDO0s9LQykUxZ9H7JEZxGR9iqR6qt6hnvB6vWzatClcGzBK43MavSGaPzFxMsVOjUCg8gKFjYHToQUjv4ynzyOjnaj31TotFUWpuxlYnz59MJlM/PLLL6WW7833kJnvYWxGbK2d5xarjCQTjgBrMISGuXAFCQdfQ+85iLF4G/GH30Lx5TSsHCfYtGkTPp8vXFg2SuNz+rwhTgNC2fQhU1NTwlmknnbl7vN2bKVYb6Jd57Pr9LhGo5H+/ftz6NAhDh48GF4+f08helliRLuKa4tFiixLWG0nCks2EIo/j7gj/8ae+x0+c3vy295HYfotyGoJ8YffwlC8s8FkAfD7/WzYsIG2bduSklK9UjdR6o8KlcrHH38c/v+WLVsaRJgznVC5lqbmVwnV/Dqdkh6FEOw/HjRP1SaUuCJ69OiB3W5nxYoVaJqGN6CxeL+DwW3s2CspbV8dbDFKqbDieuOk2YnOdxRHyuUUtbwRTReL39ye/NZ3o+riic36D5aCJaVK1NQn27Ztw+12R2cpTYwK3xKhlrsAL730UoMIc6Zjtsro9MGw4qaExx2M/DqdnPQcP8oBvYVks7FemrnpdDoGDRpEdnY2a9asYeUhJ8U+jTFn1X6WEsJmlyl2aWha/b3EFV9u6dlJm/vwxPSDk8x3mj6eglZ34LV1x5Y3l5jjM0HzV3LU2qOqKuvWraNly5bVau0cpf6pMPqrXbt2TJs2jVatWuH3+yvMWYnmqdQdkiQRE9f0yrWEI79OI/OXZ9sGjlli6duu5ln0VdG5c2d27drFDz/8QEF6f1JtyXRvUXelUmwxCkJAiUur+1BvoUHWAhIOfYmQZBwpl+Ox9y2lTEohG3C0uJqAIQ1r/s/E+3MpSr0OTR9Xt3KdYNeuXTidzkrzgaI0DhXOVO6//37atWtHQUEBQgjy8vLK/YtSt8TEKjiK1Cq7CTYk4W6PsaeP+evQzh0ISaZt17LdGOsKWZaZMGECSSmp2A+vYXiiD7kOs9vt9lAEWB37VYRGbNaHyAc+r3B2Ui6SREnCSIpaXo/iyyX+8Jvo3fvrVjaCpss1a9aQlJRUL6bLKLWjwplKbGwsl19+OQCapkVzVhqI2HiF/ZnB0WcoF6GxcRVpGIwSxtMk8ksIwf6CIoy2xDoLJa4Ig8GAdPZIvLnf4NyylLyzU0hMTKyTY1tD1YodKqTXXcKs3nMAY8lutFaXUGQcWLUyOQWf9WwKWt9FbNZHxB35N86US/DE9K8z+fbs2UNBQQHjx48/I0rQNDciekvcdddduFwulixZwtdff82SJUtwuVz1LdsZScxJvVWaCk6Helr5U8Sxwxww2mkTF1Pvpc8DmuCnPQ5Ep2Ho9Tpmz56N0+msk2Pr9RIms1TnEWAm5waEpIeWo6utUEKohhQKWt2Nz9KBmOyvMBcsqxPZQrOU2NhYMuqgCkKUuieiX9SuXbu45557mDdvHgcOHGD+/Pncc8897Nq1q77lO+OwxyggNZ0IsFDk1+mU9Ji9YS1uvZF2nbvU+7nWHHGRX+Jn9NnpXHLJJfj9fmbPno3HUzcJg1a7UiYBslZofoyuTXit3UCpXYKmUMwUtZyMx9YDe94cLPmLai3eoUOHyM7Opm/fvtFeKE2UiKoUf/jhh9xyyy2ce+654WUrVqzggw8+4O9//3u9CXcmougkbPamU67F4xYE/KeXk/7Avr0gFNp0r//22PMyC0myGjgnzYoi25g4cSLffPMN3377LZdeeil6fe3MVja7zNFDddcywViyE1nz4LH3oU5Kh0oKjhZXISQdtvyfkYSf4oQxNZ4BrV69GqvVSpcu9T8giFIzIlL1WVlZDB48uNSyQYMGcezYsXoR6kwntglFgDUnJ/3m48U4vJXfNyEEB1weUmRRaXn62hLQBLO25LIuq5gLuqagyMGXaKtWrRg3bhzHjh3jxx9/RNNqZ7qyxSj4fQKft24CO0zO9aiKHZ+lDnu2SwrOlCtwx/TDWrAIa97cGuWyZGVlceTIEc4555xym6nJ/nysuXPh+GIQTeP3cyYS0ZsiNTWVFStWlFq2cuVKWrRoUS9CnenExCm4SwQ+bwOX4CgHVzMJJ853B3hywSGmrzxa6XbuA3s5ZrTStkX99QjKzPPwl7n7+WRjLoNb27mub6tS6zMyMhg5ciT79+9n4cKFtYr0+70LZO2fFUktxlC8E6+tJ0h1/H1LMs7kSymJHYS1cCm23O+qrVjWrFmDyWSiW7fSEXs671Fijn1G4oF/YilcirzvU+IPvYnOc7CCI0WpTyIyf91444288MIL/PjjjyQlJZGTk0NWVhYPP/xwfct3RhJy1juKVJJSGneG4HSciPwyNe2Zyq+HnGgCVh8pZt1RF+eklZ/QeGD9GpAk2vXoVecyeAMan2/OZfb2fOJMOh4dns7A1nasRh3uU3zzPXv2pKSkhN9++w2LxVJlt8iKsNlD/epVElNq193R5NqMhIon5pyIts/JyUGW5cij2SQZV9LFgIKl6BckoeJMvgSkyp8tt9vNsmXL2LdvH4MGDcJgMIAQ6N17sRQuCUaqSUZK4obhjjuXBH0+8t7PSDj8Nu6YfrgSxyOU+puVRilNRE9h586def3111m3bh0FBQX07duXc845p14ykaOcpFQKNZIauaSRs6h5lGdZmZlDqq8QNI335+TSbc/H6PQ60OtBbwCdHo/ewHafDrPORIvOXev0/JuPF/Pmr8fIcvoZmxHL5D4p2AyVj/YHDhxISUkJa9aswWKx0Lt372qf12yRUJS6makYnRsIGFoQMFQdZl1cXMxXX32FpmlceumlpKZG2MVSknAlXYiQ9VgLFoMI4Ey5vFzFIoRgx44dLFu2DJ/PR//+/el7Th+Mri1YCpag9x5GVWy4Esbhjh2IUMzBHRM7kK+2xJK/AEvhLxhdW3EljguGNVehwKLUnoiHNjabjeHDh9enLFFOYDLLGE0SjkYu1yKEwOXQSGvT9JqGnYxzwzq25Bm5uGA7nVvYeYHu/Nx5HBd6diMCfor9fjYKI5uxEDDKDEqsu1DiYp/Kf9bn8FNmIak2Pc+Oak3P1MhGxZIkMXLkSEpKSli6dClms5nOnTtX6/ySJNVJBJjiz8PgOYArcVxETvQlS5YQCASwWq18++23XH755dWYsUgUJ4w94byfjyQCOFr8oZTJraioiIULF5B77CAd0uMZOqAv8SYv5iOvo/PnENAn4EiehMd+Dshln08hGylOugCPvS/2nG+IyZmN2bEGZ/IkAqZoWZf6pHbz5Sj1RlPoreL1CPx+0aRzVLSlc/lt3q+oXa5i8KTxdGqfSs+Fh/g8vzv9LhrFri0b2LJlC5qm0alTJ/r161dnyYe/Hnbyzm/HKfQEmHR2Atf0TMKoq56ykmWZ8ePH88033zBv3jyMRmO1G4bZY2QK8mr3rBid6xFIeGy9q9x2z549ZGZmMnjwYDp16sSsWbOYPXs2V155JTExEbZIliRKEkaBpGDL+wlJdaMaEpH9TtyOLJL9RdzcVUXXA+A4uHaAC/zGNIpaXI3X1j2iWYdqbEFh+q0YXRuw5c4h/vCbuGMGUJw47veZTZQ6JapUmigxcQr7dnnRNIEsN07W8O81v5qeyUBoGuLrjxFzv+TXwfeQYFLo2D4VSZL4Y0cTH81dw6z//owsQZcuXejbt2+dNnFavK+IV1Zk0TbOyKMj0umYWPMXlE6nY+LEiXz55ZfMmTOHSy+9tEymv7lwOYo/D1fyJWX2t8UoHDnoRw0IFF0NnhUhMDnX4ze3r7JWl9frZfHixSQlJXHOOeegKAqTJk3iyy+/ZPbs2VxxxRVYLJHXNyuJH4mQ9Nhyf0RzH6SwBApLBEKfgEg8C50lEU2JQdPZ0XQxqLqE6ocjSxJeex98lrOx5s/DXLQSg3sv+a3/BHKdBE5HOYmm97aIAgSViqbVja28pjhPnLup9aUXPi/iXy8h5n6Jb8QFrLe0YWC6idycHObNm8fCb2aS7j3KEWMaoyb9kdGjR9epQin2qXywLpvOSSamjW9XK4USwmg0MmnSJKxWK999912punpSwIkt72csRavKjWiynqgBVuyq2bOi8x5C58/HY+9T5bYrVqygpKSE888/P9zYLCkpiYsuugiXy8U333yD1+ut1vkLzf348ugYnv4xkX+tbs3xpOuxn3Mf/rRLcMcNxWvvid/cHlWfWOP8FgChmHAlX0RRyxvR+XOw5s+veqco1SZipZKT0zid3c5UmkJvFZdDRW+QMJoat76SEIKcnBy2b9/Oxt9+ZcXrLzH/eAHfDryQj/1mBufMx/fb13z++efs3r2bXr168YdrrudQfHc+31lS58U5P9+cS5FH5bZ+qeiVurs3FouFSZMmIctyqXIu1sJlIAJosglr/sIy+50cAVYTTM71CEkXNClVwtGjR9m8eTO9evUq45hPS0vjggsuIC8vj++//55AIFDleQOBAOvXr+c///kPGzZspFu3blx33XVkZGTUa00vn7UT7pgBWAqXo/McqrfzNFWkgIuYrE9RvPWTZxix+ev//u//+OCDD5gzZw4XXHBBvQgT5XesdhlZDtYAa1X15vVCsNuj3ChF+zRNIysri8zMTDIzMykuLg6vk3R2rC0SsdrjcHt15JrjuLR3OjF2O61btw6bX67uofLvtdn8dsTFwFb2OpHrYKGX73cWMDYjjoxa9pkvj9jYWCZNmsT//ve/oJ9i0jiSi1bhtfcioE/Blv8zOs+RUs7m0EylRrNaEcDk3IjX2hUhV3w9gUCABQsWYLfbGTRoULnbtGvXjjFjxvDTTz8xd+5cLrjggnIDIjRNY+fOnaxatQqn00nr1q0ZMmRIg+a9uRInYCjeQUz2l0EzmHRmeAIMxduJyf4KSfPgtXVDNUYYtVcNKr2TDz30EB06dKB9+/bhzN9Zs2ZFlUoDIMsS9tjGy6wP1vzSaNmq4SK/NE3jyJEjZGZmsmfPHkpKSlAUhXbt2tHebCD+p1lYtQDW2x9EyTibgCa44cvdDOxoo3+/tDLHm9Apnrm7C/lgXTbntLSiV2pn7RVC8N6a41j0Mtf1rr/kyZA5afbs2eRs/ITWqQGK489HU+xYCpdiLVhIUcvrw9vrdBJmq1yjLpCGkl3ImrtK09eaNWsoKCjg4osvDuaJVEDnzp3xeDwsWbKEhQsXMmrUqPCgRAjB/v37WbFiBXl5eaSkpDBq1CjatGlTbblri1BMOFMuJS7rP1jzF1GcOKbBZWhQNB/23B8wO37Db0jFkXZzvSgUqEKpPPDAA+zdu5c9e/bg8/l46KGHCAQCbNmyhQ4dOlTLIRel+sTGKRw7Wnd1naqDzyvw++o/8ksIwcGDB8OKxOPxoNPpaNeuHRkZGbRr1w7dul8QH76OkpqOuPsZpOTgj2HL8RKKfRqDKpiF6GSJm/um8NdFh/luZwGXda1d1NeKg042HS/hjv4tiKmjlsAVkZ6ezkXjR9LD/ymZBQlY28WjU3S4Y8/FWrAAxZuFavzdmW+zyzXqq2JyrEdTrPgsHSvcJi8vjzVr1tC5c+eIItN69eqF2+3mt99+w2w2c+6555KVlcUvv/zC0aNHiY2NZfz48XTs2LFRS9f7rF3w2HtjKViM19adgLF+2yA0FjrPIWKOz0Tx51McN4zixLH1OjOr9MiapjFo0CAGDRrE/PnzefDBB5k6dSpz585l3759KIrC9OnT6024M52YOIWD+3x4PQKTuWF/fA0V+bVy5UrWrFmDXq+nQ4cOZGRk0KZNG/R6PUIIxA8zEd/8Fzr3IOHxl8j3+ML7rjrkxKhI9G5ZcV7IOWk2+qVZ+WJzHue3jyXOXLMfkyeg8f66bNrHGxmbEVejY1SXs2MPoi8Q/LBJJi7nZ8aPH09J3LmYC5djLViEI/Wa8La2GIWDe7zVGoBIqhtjyQ7cMf0rLMsihGDBggUYDAaGDRtWal1edgBZhviksvd04MCBeDwe1q5dG64sbLFYOO+88+jatWvYyd/YOJMmYijJxJ79JQWt7qz78jSNiVCxFCzGmr8QTWenMO1m/HVZ060CKv2FTZ8+ndzc3HBL4eLiYvR6PX/5y18Aoj1V6pmTe6uYzA0bqBeK/KrNTEVs/A1RVIB07mikcl4ieXl5rFu3js6dOzNq1KhSRQJFwI/4+C3EigVIg85DmvwnZFsMeHIB0IRg1eFgOZaqckNu6tuCe77fyycbc/jToJqNRmdtySOvJMCD56aFi0PWJ5LqwlK0Eq+9F136dGL58uUsW7aMESNG4I4bjKVgCYrvOKoh6Iew2WVUNVhV2myJTD6jawuSCFRq+tq0aRPHjh1jzJgxpSwTTofKqqUuFEVi1IUx6A2lzylJEiNGjMDr9bJv3z4GDx5M7969a12Vua4RihVn8sXEHvsvlsLllMSPaGyR6gTFn0fMsZnovYfw2HrhTL6kwfJyKlUqzz//PKqqcvDgQZ588klmzJiBx+Phvffeo3379nTo0CFaqqUeCZdrKVBp0bJhf4zOIhW9vmaRX6LYifjvvxC/LQl+XvQD8jV3IHX8vTSKEILFixej1+sZNmxYaYVS4kJ7+wXYsQnpoquRLvpjmdH3rlwPBe4Ag1pX/fylxxiY2Dmeb3cUcEGneDokVM/BftThY/b2fEa2j+HslIYx+VoKloMIUJxwPuekpuByudiwYQOtW7fmrLZDMReuwJq/CEfqH4Hfw75dDhWzJbIBiMm5noA+mYCx/FCQoqIiVqxYQevWrUuVmtc0wYZfS5Bl8PsEe3Z66NKj7AtLkiTGjh2LEKJJ9z7x2nrgsXbDmj8fr7UrqqH+/GX1jhCYnGuw5XwPkkxRi6vw2ns3qAhVftOKotC+fXt0Oh1//etfMRqNdOvWjWPHjvHpp582hIxnLHpD0AHbGM56pyNY86u6Nm+xeQ3aU/cg1i5HuuQa5DseghIX2osPo814BeEoAGDnzp0cOXKEIUOGlBoBi9zjaC88BLu3IU2Zinzx1eXKsOqQE0WCfumRDWr+0COJGKPCe2uOVzvE+N9rj6OXJSb3aZhCbJJajLloJV5bD1RD8JznnnsuSUlJLFiwgGKvhDt2EEbXJhRfMNQ/ZKaM1K8i+wswePbhsfcuN/dDCMH333+PEILzzz+/1HewZ4eXwnyVnv0spLXWs3eXF6+n/PNKktSkFUoIV/IlCEmPPftLEI1fHbymmJzricn+ioCpFfmt721whQLVCCmePHkyEHxIhgwZUuOqqlGqR0yc3CjlWlwOjdRq9D0X7hLErBmIZT9DelvkPz+B1CZov5W790X88AXi59mIDb/im3g1yw9k06JFi1JlzMW+3WhvPAt+P/LUp5G6lN9ESwjBqsNOeqRaqyzaGMJmULi2VzJv/XaMJfsdjGwfG9F+qw+7WHu0mJvOSSGhhv6Y6mIpWHaimdX54WWKojBu3Dg+//xz5s+fzyUTRmIpWomlYDHOFldiMEro9EQcAWZybgCo0PSVmZnJzp07GTp0KLGxv9+rogKVnVs9pLXWk97GQGy8QtZhP7u2eujRt/kG7mg6O66kicRkz8JctAp3XDN8v4kA1vx5+I3pFKbd3GjFMyM+68iRIwF4/fXX60uWKOUQG6dQ7NIIBOo2ga8yvB4Nn1dE7KQX2zeiPX0PYvl8pAmXIz/2clihAEhGE/JlNyA/PR3ad2LV8mW4S0oYeVbb8ChWbFiF9s9HQG9AfuTFChUKwIFCL1lOP4MjMH2dzOizYjkrwcQrK7J4YelhDhZVnvntUzX+vfY4rWIMXNi57jLyK6P0LKV03kZiYiLnnnsu+/fvZ/POg7hjBmBybkD25yNJEja7EtlM5URZFp+pHZq+9HUFAgE2bNjAwoULSUtLK1U5WVMFG34txmCQ6N43aO6y2RXadDBwYK+PYlfzbozlsffBa+mELW8usj+/scWpNuai1SiBQooTxjZqNeZqD71q4kN56623WLduHbGxsUybNg0IOvlfeeUVcnJySE5O5r777gsf++uvv2bhwoXIssyUKVPCD/bevXt588038fl89OnThylTpiBJEn6/nzfeeIO9e/dit9uZOnUqKSmNXDO+joiJU0AEfRzxiQ0zUv6922PlswDh9SK++g9i4ffQIh35oReQzqq4zauU2orca+5my8yZdHflkPTu82ibzoPUVojZn0DbDOR7HkeKqfwFvuqwCwmqndCoyBLPjW7Nt9sLmL09n18P72Nk+xj+2COJFrayuRezt+VzzOXnmVGt0TVQ/TVL4fLgLCX+/HLX9+rVi3379rFs2TLa/mEiHaRfsRYsxplyGbYYmdzjVWey67xH0PlzcMQNDS/TNI3t27fz66+/4nK5SE9P54orrihlKty1zYOjSKP/UCtG4+8vrU7dTBza72PnFg/nDGrGfUskCWfypSQcfJWY7K8pTLupVmVhGhTNh6VgET5T+0rDwxuCBlFnI0eO5NFHHy21bPbs2fTo0YPp06fTo0cPZs+eDcDhw4dZsWIFL7/8Mo899hjvv/9+OPHyvffe4/bbb2f69OkcO3aMDRs2ALBw4UKsViuvv/46F1544Wnl66mqXIvQBF6vhtOhUlJHI0VX0YnIr0pqfok9O9CeuRex8HukURchP/FqpQoFfnfOmy0WBv/pL0gTLkf8tgzx9cfQeyDyX56vUqFA0J/SOclMfA3MURa9wh97JvGvSzpwcZcElh9wctd3e3l39THy3b+/kLNdfmZtzWNIGzu9IixlX1sktRhz4Uq8tu6oxvKzyyVJYvTo0ciyzI8LVlJi74vJsQ7ZX4A9RsHjFhRXUa7F5FyPQMFr64EQgl27dvHJJ5+wYMECrFYrkyZN4rLLLitVzbkgL8Du7V5atzOUMYuazDIdOhk5csBPUSO3a6gtmj4OV9IEDO5MTM41jS1OxFiKVqKozhM5KI2rCBtk6Nu1a1eys7NLLVu9ejVPP/00ACNGjODpp5/muuuuY/Xq1QwZMgS9Xk9KSgqpqalkZmaSnJyM2+2mU6dOAAwfPpzVq1fTp08f1qxZw5VXXgnAoEGDmDFjRqMkDNYHZquMTg8H9/oozFfxeYNthn1egc8X/OMky5gtRiY1XU9qmp64RKVG98DpUNHpqTA3RuRlo73yFNjsyA88V6mp6mS2bt3K8ePHGTt2LKaYWLhsMmLIKMTenUiDRiLJVftHjrt87CvwMuWc2kXoxJh0TDknhYu7xPPFljx+2l3I/D1FXNQ5nku7JjJjXfB5vemchpvxWgp/QRbeCmcpIex2O+eddx5z585l5cGejIoDS8ESWrW7mF3bPGzd4GbAsAosCiKAybURr7UL+w4dZ+XKleTk5JCQkMCFF15Ihw4dyjwzakCw/tcSTGaJbn3KD0s9q4uRA5k+dmx2M3B4844I9cT0x+TahC3neyTNjzt2YJPOX5FUD5aCJXgtnfCb2zW2OI1X+r6oqChcOTY+Ph6HwwFAfn4+HTv+Pn1LSEggPz8fRVFKjZwSExPJz88P7xNapygKFosFp9NZbm+H+fPnM39+sDrpCy+8QFJSUo3k1+l0Nd63urRqo3JgrwuvG4xmBZPZQEysjNGkYDIrmEwKRrOC161ycF8xe3a4ydzuxWxRaN3OSpv2Vlq2MqPTyRHJ7XEfIT7BSHJy2Re3EILCt57HL0Hi82+jpESW91FcXMzKlStp164d55577u8vrqQk6N47omPodDo25wc16ISebUmKrX3trSTgiTYtmVLoZsavB/lqWw4/ZhZR4lO5bXBbzm5b+yzriJ6VQDHSvpWIhL7Ep1de2BGCpVyOHj3K0lVbGHR5b6zOtbTKuJw+/RNZszIPt8tM63YnzbBUD2QvRcqaj6QWs2hrgF+2fUt8fDyXXXYZPXv2LBOlFZL7t+U5FDs1xl2cRsu0ip3xPfvpWbsyj4DPSmpa4/UqqZPfZsztSHs+xJ77HbbiNYi2V0Fct6r3qwU1lVs69A2S5kZ/1h9IsjbMO6kymlwVtYrCPSsLAy1vXUUj9NGjRzN69Ojw59zc3GpKGCQpKanG+1aX7n0VuveNreCaBBA48Qcp6UZ8Pj3ZRwMcO+pnzy4Hu7Y5UHSQnKqnQ0Yc/kAJii5YM0qnk1B0wcghnU5CliXycz2kpunLvT5t1SLE+lVIf7yNAlkPEd6D+fPn4/V6Offcc0uVda8OSUlJLNhxjHZxRox+F7m5dZd8awLu6pvIhWfZ+O+mHArdKmPaGuvkO47kWbHmzcOqesizDkWN8JyDBg1i7969fLa0kFv6anj2zKZF+kSsdpmVS45jMNvRiWIsRSswF61E1jwcLbYzb2s8R90qI0eOpFu3biiKEh6gnSr3jm3H2LrRRbsMAwZzCbm5JRXKk5IWrPywaukxzh1lazRLQZ39NpOvx2DZji3vB3Q7XsVrORtX0gWohvp5cddEbkl1kXj0Z7zW7jjcVnA3zDspLa1srb0QjaZUYmNjKSgoID4+noKCgvCsIjExsdRLJz8/n4SEhDLL8/LySEhIKLVPYmIiqqpSUlJyWiVlVvfHaTDItGpnoFU7A6oqyMsOcOyIn+NH/aw4XHkLA1kGTQNbbDk9wx2FiJn/hrO6IJ03IWJ5jh49yrZt2+jbt2+tui7mF/vYnuPmjz3qbzTWNs7II8Mbti60pLoxF/2Cx1q9qrEmk4kxY8bw9f+3d9/hUZ13ose/50wvmlEZFVRoakhYQggJA6HaxIkbxhuvd1Mubim2w/rZeBPbyeWm7LWTTSHYTsw6iRPv2k65MTFeZ70ucaGYjhDCSCBUKBISCPXRaPp57x8DMhgJVEYF/H6eZ54ZpDMzv3kZzW/O234bN3K0J4Vpym5645ZyTbGFqh2NUPs2Ln0FiBDHuuN560MbrX4Hc+bMYXlh4WVXtwcDGhW7e7HaVfIKL3/modcr5Mw0c2Cvl9NNoSFNSZ+QFIWAPZ92Ww7Wzm1Y298n/sSTeGMX4Im7DqGL/i7VQ2Xr2ByZ2DGBNsQct6RSUlLC5s2bWblyJZs3b6a0tLTv508//TS33HILHR0dNDc3k5WVhaqqWCwWjhw5QnZ2Nlu2bOGzn/0sAHPmzGHTpk3k5OSwc+dOZs6ceVWMp0SDTqeQNMlA0qTIXlomg5OWlnZCoUhfeSgkItdB0fczTYO0yRfPhhJ/+g34vKirVg9q/AMis4o2bdqE3W7v+z8erq317QgY1Cr6K4m18wNUzR8prztEGRkZFBUV8erevXxjaRh76+tkoTHzmoNoQqG63cWbBwQ9YTvFxcXcUlh4yV2Gz7dneyu9Ho0F19nRGwb395QxzUhdtZ/DB7wkT9KjjFPV0qhS9PTGLcEXU4yt/W0snR9gdu+jJ/4GfI6S8VsPEurC0rUTX0xx3yLZiWBMksqTTz5JVVUVbreb+++/nzvvvJOVK1eybt063nvvPVwuFw8//DAQ+SOZP38+Dz/8MKqqct999/X19X75y19m/fr1BAIBioqKmD07snDruuuu45e//CX/9E//hN1u55//+Z9H9fUIdzfhcAChKSgTbC+jS1EUBUeskUBo6P/tomI3Ys9WlNu+gJI6+K3KKyoqaG1t5eabbx70h9lAttS1kWI3MCXWNKLHmUgUzYelazs+28xh75K7YMECGhoaOHjKS0FKBWGMHGhL5c2KIL0hC6WlxcyaNQuTafDt1tIcpLrSQ2auiYTEwb9fVFVhRoGZsu29NB4PkjHt6inXq+ljcCd9Dq9jHvbWv+I4sxHl1HYqvZ8joHOhN0S6k/UGBYMh0q1sONutbDBGLtH8smtrfw+EwDOMLyOjSRHRLot3hWlqahryfbS3NiI2PB/5R4wTYuMhzoUSmwBx592OT4TkVJQJtE3FcPptRa8H7XurwWZHXfNzFP3gEmlPTw8vvvhiZBv3W28d0R+UJxBm1V9quSU3jnvGcEZWNFyqza0dm7G3vUl7+uoLCm8N1ZkzZ/jrK39g1mTYe1SgKSYmpxUQ9OSw8Po4XEmD//Lj7g6z4/0ezBY9n7reim6I1S2FEGz9Ww8Bv8aymxxDvv9IjeZ4p7dXo+FogIajfpKNVczPeAdFEbxVcwetvQOPMwCggNGoYDQpZ6/VyO2z/87JSyQs3IOKQxdsI/74z/E659KTeFsUXtnQTMgxlSuZUlhKTPIk3I3HoKMN0dEGHa2I+mroicxi68vUMc7IlNu8WSj5RSgJV9YHIoB45T+hqwP1wW8POqG0t7fz9ttvo2kaixcvHvE3tL0newhp4urq+tKCWDs/wG/JHlFCAUhMTKT42iXs3LmTwqJCiouLMehNvP9GNwf3eVl8gx51EF1RHW0hdm3xoKqw7DMpg/6QO5+iKOQVmtm52cPxWj/Tc8d/7GEkNE1wuinIifoALadCIMCVpCd2+hzcSdkknH6eFfl/oj3xi3gM2We7kj/qUg4GBMHgeUsBzi4H8PSE6WiL3BYa1B4+ycLlNmz2y3ct29rfAUVHb9yyMWiBoZFJZRiUSelYCorw9PNtSASD0NkWSTZnTkH1AURVBezZGkk0SZNQziYYcgtRbBP7Q1IcOYjY/CbKp29DmZZz2ePD4TD79u1j165dGI1GPvOZzxAbGzviOHY29pBgNZDrGr+pqtFm6d6LGu6hN35pVB6vqKiIWbNmXZDAZ862sHdbL8drA0zLuXT3V8upIHu3eTCZVOYttRGXYKK1dehJBSIzDV3J+siCyekmDIMck5lIerrDnDgaoOFogIA/MrMtO89ExjTjeR/8LtrT7ye2+T+Ib3kBQ9Ln8DmKh/Q8Qgg8bo1t73nYu62Xhdfb0ekHbi+d/xQmdwW9sYvR9BcvmxhvMqlEmWIwQGIKJKag5MyET10fmfLc3IA4VBG57NqM2PxmZIBvSiZK6SKUT12PYotOHfVoEQE/2n/+ElzJKLd98bLHt7S08M4779Da2kp2djZLliyJSnVQf0ij7GQPN+Yno14tEzBEGGvnFoLmyQTN06L2sB8/I0xJi3y4Vx/0kTrZgMncf1fsyRMBynf1EuNQuXaxPSr1e/IKzWz9Ww/11T5yr7lyvgz0dIc5dMDHqZNBFAWSUw1Mnm4kMaX/sz2hj6Ez7Ss4m1/C0fIySrgHb9ziQT+foijYHToWL0/mndeb+bDMy6y5lgHP7u3tf0OoRnqH8BxjSSaVMaAoCqROjgxwX38rIhSCYzWRBPPh3sjuvq++FEkuS2+EqeNbZvUc8d9/gpYm1G/8K4pp4C6MUCjE7t27KSsrw2KxcPPNN5OZGb0Kc1uOdeMPC5ZmuTi3HudKZ3ZXoAt14k5cMarbaiiKwjXFFja/6ebwAR+z5l6c5I/W+Dm4z0t8oo65C20YjNEZA4yN1zMpw0BNlZ9wOLJHmP4S38DHm9+nUX3Qx4n6AKouEu+UTOOgEqxQzXSm3o3j9J+JaXsDXbiHnoTPDmlmWMZUG9n5Jmqq/MS5dEzJvPjMUu9rwOSpoid+OUI3MXeFlkllHCh6PWTloWTlwa3/iGg8htj8BmLHJsT2d2FyJsrSG1HmLkEZwoydaBLH6xBvbYxUbcwvGvC4pqYm3n33XTo6OsjPz2fhwoWYzdHrQw+ENf70YSvZCWZKMpzDXjg5oQgNa8dmgsYUAtZL75cWDTEOHdNyTNRX+5mSaST27MakQgiOVPo4UuknOU3PnHm2S3a7DMesEisGg5e6w36aG4IUllhITJlYMyZDIUF9tZ/awz60MEzJNJIz0zzgWd2AFD3dyf+IprNj7dyKGnbTnXTHkLZ4yZ1pprM9zMF9Xpyxur7/q3PsbW+jqTa8520GOtHIpDIBKOlTUb74AOJzdyF2bkJsegPxwi8RLz+PsuA6lCU3okwauwV5IhxGe+EXkUkGf39vv8cEAgF27NhBRUUFMTExrFy5ksmTBz/VeLDequmktTfEQ/MnTYizt2gweg6hD7bQlfwPY7b5X85MMyePB/hwn5eFy+0g4MN9Xo7XBciYZqSwxDKogfyhMhgVZpVaSZti4MBeLzs3e0ifaiC/yHLBTseX4vdpnDwRpLkxgF6vYLOr2GJ02OwqVruK1aYOK3ZNEzQcjeyu7PcJUtIN5BWasceMYJ8vRaXHdSuaLgZ7+9soYQ/dKV9EqIP7cqioCsXzrGx5282e7R4W3xATaSctiNldjtFbi9t186AfbzzIpDKBKGYrytKbEEtuhJqqyNnLpjcQ7/4VZe5ilFWrL9kNFS3i7VfhRD3qA4/1O5EgFArx8ssv09bWxqxZs5g/f/6I16D0xxvUeLmyjcJk65jtFDzqhMDW8T4hQzx+e8GYPa3BoJA3y8L+Xb0crwvQejpEc2OQrDwTMwrMo56wXUkGlnxGT02Vj9pDflqaQ8wsspA2xdDvc2thwenmIA3HArQ0hRAiUrAuFBS0nQkRPq8XVFHAYlWxxUQSTHxCO4GgH4MhsjZEb4i8foMhsoZEb1A4cypEVYWXnm6NuAQdJZ+yEO+K0sehotAbvwxNbyemZSOxJ5/DnXgbIVMKKJd/DqNJpeRTNna+10lTeTmFU2sweQ6higAhQxJex7XRiXOUyKQyASmKAjkzUXJmIv6hA/Hu64g3XkacakT9+hqU+NHbpkScakS89gcono9S3H/1u7KyMtra2qI+dvJx/13dTpcvzJeWXME1wz/G4K3F4D9Jd+LtY77zbfoUA8drdXxY5gUgv8hM5hhO99XpFGYUWEjNMFKxp5fyXb00HtdTWGLBaou0RVdHmIajfk6eCBLwC0xmhek5JtKnGiO1hYh02/l9Ak+PRm9PGE+PFrm4NTrbghyvG1yBLZtdpeRTVlLS+k9sI+VzlKLpbDhP/ZH4xmcQip6QcRJBczohUzpBczphg+vCcRctiNFbw+TAh2QWVaEjQNBtwe+chc9eQNAyfULvmAwyqUx4iiMO5fYvIbJmoP36p2g//BfUB7+DMj036s8ltDDafzwNRhPq57/W7zGdnZ3s3buX7OzsUU0oPf4wG6vamZtuv6qmEds6NhHWOYY87TQaFEWhYE5kinHOTPO4rXZ3xOpYeL2dY3UBDh3wsukNN5OnG2k7E6a7M4yqQnKagYyp/c+4UhQFs0XBbFH7Xe0fH5dA86kzhIKCYCCyXiR4wW2wWBXSpxpHpcvvfAFbPm1TvoXBewyDvxG9rxFzdxmq2AGAppgImdMImtJROgO42stRNT+aasHvmEVVYzYVNamULHSQYp1YY1EDkUlllFS29PKXyja+UpLMpJiR//EqBSWoj/0U7Zf/F+2n30G5+yHUa5dEIdKPiL+9BnWHUe57GCU2/uLfny2ypaoqixYtiupzf9zGQ+30BjW+WDj+W3lHi957HKO3HnfCTYPqBhkNzjg9198y/msbFFVhWraJlDQDH5b1crQmQGy8joJiC6mTDRgHOd7SH1WnYDKpjNMcl4toegf+mEL8MWfrDgkNXeBMJMn4GzH4GrF2bgOdCb+9AL+tgIA1ExQdqfGCo609lO/ysPjTMdhGMt4zRmRSiTIhBK8f6eB3ZS2EBbD3NN9dlhGVx1bSJqN+Zy3asz9CPLcWrakhshdXFLaBEc2NkZK+RdeiDJCsampqOHHiBIsXLx7VXaA7vCH+eridRVMcTI27sldjn8/WsRlNteBzzh3vUCYMi1WldKGNUIgrcoHksCgqYVPy2eqecyI/E2FcLhfuto4LDtXpFUoWWNnytx72bvPwqeUxE3paNsikElX+kMa/7z7F+0e7KU2zkxlv4k8ftrH3ZA8ladH5EFZiHKjf+FfE759F/M+fEc0nUO97eEQD+JFur6fAZEb90oP99i/7/X62bt1KYmIihYWDq/Q4XC9XthHUBJ+/is5SdP5TmHoPRdYXTOCZO+NBUSIbL36iKboBx0qsdh2z51nZvcXD7q0eHOfKUigKCoBC3zVEylfEOHU4YnXY7eqY7xQtk8owHDx4kAMHDqDX6zGZTJjNZjTVwJ7Tflp8Cisnx7EoXY/JrLI1Rs9vy04zK8WGIUob6yl6A6xaDWmTEX9+Hu3Hj6KuXoMSP7wBbfG3/4L6apQv/wuKs/8a8bt27cLj8XDzzTdfVCEwmlp6grxV08HyTCepjqtnh1tbxyY0xYjXOX+8Q5GuQMmTDOQXmamp8tPdEUYQKSPet8fgudsCNEHfL1QdOJw6nHGRJOOM1RETqxvVsx2ZVIbBarWSnJxMd3c3Xq+X063t9PT6cIogsYD7MPzP4cix1xhNHFdcvLzDxz8uyIvaB7KiKCjLb0Mkp6P95qdoT5wdwM8c2mI60dyAePX3UDQPZW7/2z60tLRQUVFBQUEBKSmDLyI1HP/vYCsKCndec/WcpeBrwdRzgN7YhRN2FbQ08WXmDm62nhYWuLs1ujvDdHVGJj80nQhyvC7Qd4wtRmVGgZnUjOh/cZNJZRimT5/O3LlzOXPmDK8eaueN/WdISzby7UVpuMzg8/nw+/10d3dTV1dHsKaO1n0nee7QdnKys8nJyWHSpOgs5lMK5qA+9hO0Xz6O9rPvoNz5ZZSlNw7qsYUWRnv+XLfXA/2vF9A03n//fcxmMwsW9D/FOFoau/28V9/FLblxJNqunv4QpektQJ3Qq6Clq4eqU3DGRc5Ozo3mCiHw9opIoumIJJrRGsOSSWWYvMEwP9vWxAfH3SyYHMND8yZhMUTOQs4VQ0pKSiIrK4v80l4ef20P+bo2KisrOXDgAHa7neyzCSYpKWlECUZJnYz6nZ+h/e5JxB+ehZpKWPV1FPOlvxWLt1+Fo0cu2e1VWVnJ6dOnueGGG4ZU5Gk4/lDRilGncsfM4ZccnmjUUDec2Y7PMWdC7igrfTIoioLVpmC1qaNe5lkmlWFodgf4yZsVHGvv5a6iRG7Pj79kUsiIt7JgVh6vVLXzo7+7Hl33KY4cOUJFRQXl5eU4nU5ycnLIzc0lPv7iqbyDodgdqKvXIN78C+LV3yMa6lG/9ihK+tR+jxfNDYj/+gPMHrjbq7e3l23btpGenk5ubvTXxZyvvt3HthNu7rwmAaf56nlbWjs/ABHGExfd6d+SNFFdPX+9Y2hHg5tWT4DvLcugaNLgtg/5+2sSeL++i+crOvjxZyIJxO/3U1dXR3V1NXv37mXPnj24XC5yc3PJyckhJmZoW+Erqopy098jMmeg/eZnaD/6JsoXH0BdcGG5URE+2+1lHrjbC2Dr1q2EQiGWLVs26tt4vFRxBrtRZWXe8JLqRKBofnSBFvSBlrPXpzF668A1F81w5b4uSRoKmVSG4fa8eP5uzjTwdg/6PlaDjlWzk3hqRzObjnZz3XQnJpOJ/Px88vPz8Xg81NTUcOTIEbZt28a2bdtITU0lJyeHrKysIdUlUXILUP/Pk2i/+Rni+afQaqpQPv9VFGOk+6qv2+sr30Rx9N/t1dDQQHV1NaWlpcTF9X9MtFS19FLW5OGuokRsxnFc3CVCGHuPYHbvR+8/hVCNCNWMUE1oZ68j/zajqWZQFHSBVvSB05FEEvpojYFAR8iYiM9egGny56A7PH6vS5LGkEwqw6AoCi6bkVbv0O63dJqD/znSwQvlLczLsGM1fPQBarPZKCoqoqioiK6uLo4cOUJ1dTWbNm1i8+bNTJkyhZkzZzJ16lR0ust/8CrOuMh6ltf+GFnPcqwG9f7HCHndiNd+H9nbq7T/VfGhUIhNmzbhcDgoLS0d2oscIiEEL1WcIc6s4+bc0U1eAwSA3ncCs7scc88BVM2LptoIWKaiiGDk7CPYg17zo2g+FM2P8tFETgQ6wsZEguYMvMYSwsYkQsZkwob4vnUHJmMcMDo10yVpopFJZQypisJXSpJ55K3jbDjYxqrZ/derdzqdlJaWUlJSQltbG9XV1Rw+fJjXX38di8VCXl4e+fn5lx1/UXS6s/uG5aH97udoj3+DzoREMFtQv3j/gF1a5eXldHR0sGLFCvT60X2LbD7WTWWLl6+WJGPSj976l4/TBc5gdu/H7N6PLtSOUPT4bfn4YmYTsGYPvGmfECgigKL5QITR9M4Jv8GfJI0lmVTGWK7LwrJpDv7rcAefzoq95L5giqLgcrlwuVzMnz+f48ePU1lZSXl5Ofv27WPSpEnMnDmT7OxsDJdYkqwUzIl0h/3qJ4Trq1G++q1+u738fj/l5eWUlZWRlZXF1KlTo/GS+6UJwR8PtPLng23kJJi5ISt21J6rjwhh7t6HpXsPBn8jAoWgJRNP/HX47TMR6iB2JVAUhGKSq+IlaQCKEEJc/rCrV1NT07Du53K5aG0dXpdGuzfEA6/VU5hi5X8vGXrxLY/Hw+HDh6msrKSzsxODwUBOTg75+fmkpKQMeAYiQkFifR667LEX/DwYDLJ//3727duH3+8nKyuLpUuXRqW+fH96AmHWbWtib5OH66c7uX9uMkbd5c9Sht3mIoy5ex+2jvfQhToJGlPwxRTjjymMnGmMspG8V8aTjHtsXUlxp6amDvg7eaYyDuIteu68JoEX9p+hvNnD7EHOIDvHZrMxZ84ciouLaWpqoqqqiurqaiorK7Hb7WRlZZGdnX1RglH0BgxTs+DsGzcUCnHw4EH27NmD1+tl6tSpzJs3j6Sk/rvlouFEp58fbWnkdE+Qr5Umc2N27OjNLBNhzO5ybO3voQt1EDSl405cScCaM2YVFyXpk0YmlXGyYkYcf6vr5Lm9p3nq5mnoh7Hpm6IopKWlkZaWxuLFi6mvr6empoYDBw6wf//+ARNMOBymqqqK3bt34/F4yMjIYN68eUyaNCnaL/MC209089SOZsx6lceXTyY/aZS2LBFhzO79WDveQx9sJ2hKw524goA1VyYTSRplMqmME4NO5d7iJJ7YfJJ/332Kr5UOrgtoICaTiby8PPLy8vD7/dTX11NbW9uXYGw2G1lZWaSnp7N161a6u7tJSUnhhhtuICMjOlvzDySsCf5woJUNlZHxk8cWp5EwGgWHhIappwJb+7vog20ETal0TvpfBKx5MplI0hiRSWUclabZ+Vx+PH+paqe2zce3FqaS7hz5APDHE8zRo0epra3l4MGDVFRUkJiYyIoVK5gyZcqoL2rs8YdZu62Jfc0ePp3p5GulyRhGkDwvIjT0vgZMnirMPQfRhdoJGlPoTPkSAVu+TCaSNMZkUhlHiqKwanYS+UlWntrRzMNvHONrpclcN90ZtQ97k8nEjBkzmDFjBn6//2ztiujW5NaEwBfS8AQ0eoMavYEwnqCG2x/mTx+20tob5MG5KXwmOzZKTxjE6K3F5DmEyXMINdyDQCVomU6P60b8tvwL635LkjRmZFKZAErS7Dx501TWbW/m6Z2nqDjVy/1zky9YHBkNJpNpxDNMunwhtp1ws+2Em9PuQCSJBDUGmkIYZ9Hz+PLJ5CWObPxECffCmR04Tu3C2FuDKgJoiomALRe/LY+ANRehu3pq2UvSlUomlQkiwWrgB9dlsKGyjT992MqRNi/fWphGZvz4l9PtDYbZ2dDDlmPdVJzyoAnIcBq5JtmK1ajDZlCxGVWshshtq1GH1aBiM6gk2gyXXdSohHtRQ13oQt2ooW7U8LnbXaih7shtrRcAg84RWaBoyydgnT5utd4lSeqf/IucQHSqwj8UuLgm2craD5p45K1j3D07iVty40Z97OPj/CGNsqYethxzs/dkD0FNkGQzcHtePIunOpgSaxpZTEJg9NZg7diM0Vt/0a81nZ2w3oGmjyNonoKmj8WaOoc2r012bUnSBCaTygQ0M8nKkzdP4+kdzTxX1kLFqV6+VpqMy6qPSnLxhzTcgTBu/9nL+bf9YVp7Q+xr8uANacSaddyQHcviKQ5yXeaRP7/QMHkqsXZswuBvIqxz0BO/nLAhEU3vIKx3oulj+j0Dsdpd4LsyFodJ0ieVTCoTlMOk438vSeO/qzv4j/IWvvxqDzEmHVOcRjKcJqbEmpgca2KK04TddOHYixCCLl+Yk+4ATd0BmtwBTnYHaHYHOO05gj+kDfi8Jp2Cw6RjweQYFk91UJBsRTeMNTQXESHM7nKsHVvQB1sJGRLoTvo7fDGzZReWJF1F5F/zBKYoCrfOiGf2JBvlzR5OdPk50Rlg87FueoMfJYZ4i57JsSbsRpVmd5Cm7gDe8xKHXlVIsRtIcxhZMN2FQQRxmHTYjSoxJh0xRl3k2qQb0VqZfl+D5sfcvQdrx1Z04W6CplS6Ur6A3zZTdmNJ0lVIJpXxpgUj39Qv0a2U7jRdsH5FCEFrb4gTnX6Od/lp6PJzvDPAKXeASTFGZmQ6SY0xkBpjJM1hxGU19J1tjNr+QkKghD3oQu3ogh9dTJ4qVM1LwDwNd9Lnzu4ALNeOSNLVSiaV4RAaiHDkuo9y8Yel0FDDbtRgJ7pQF7pQJ2qo8+x1F7pgJ6rWi6YYCRtdhA0uQsZEwoZEwsZEQgYXqBfvYqwoCok2A4k2A3PS7KP7Wj9OC6IPnELvb0IfbEUXbEc9m0BUEbjg0LAuhoBlOr2xiwhZpoxtnJIkjQuZVIbB2rkVte5NBtp2URBJLko/qzc01YymjyWsdxI0ZaDpnajhHnTBMxh8DZh6PrzgfmG9k7AhkZAhIXI/g/Ps/ePODmiPXi0PRfOh9zdHEoj/JAZ/M7pACwqRZCoUPWFDPGF9AkHL9Mjtcxd9XL8JUZKkq5tMKsMQME9FS7+N3l7P2Z8IFBG5/ogAlLPTYmMJ62PRDM7L1+zQguiCbeiDZ9AFzvRdm3s+7Fur8dEzKGdnTMX2JSqhs6LpbJGLakWcvS1U04VjGFoQNdzz0SV07rYbNeRGH2hGH2zrOzysiyFkSsVvyyNkSiVoSkXTx8muLEmSLnBVJZX9+/fz/PPPo2ka119/PStXrhyV5wlZpoBrDr2jMTahGgibUgibUi7+nRZAd677LNiFLtRxtjutK3KWE65EEaF+H1agInRWlAYLrqAbVfP1e5ymmtB0MYTO1hwJmVIJmVLR9I5ovkpJkq5SV01S0TSN3/72t6xZs4aEhAS+/e1vU1JSQnr60ItgTViqkbAxibBxgI63c6Vuw72oYQ9q2IOinbsduTYbwBfSoeli0HR2NL09cn32gjoKuwdLkvSJcdUkldraWlJSUkhOTgZgwYIF7Nmz5+pKKpdzXqlbzXBxuWAAk8tFzxVSXU6SpCvPVZNU2tvbSUhI6Pt3QkICNTU1Fx33zjvv8M477wDwb//2b7hcrmE9n16vH/Z9x9OVGjdcubHLuMeWjHt8XTVJRYiLZ1r1t6XI8uXLWb58ed+/h7tm40qqJ32+KzVuuHJjl3GPLRn36LtUjfqrZklzQkICbW0fzVZqa2sjLq7/LiBJkiRpdFw1SSUzM5Pm5mZaWloIhUJs376dkpKS8Q5LkiTpE+Wq6f7S6XTce++9PPHEE2iaxrJly0a99rokSZJ0oasmqQAUFxdTXFw83mFIkiR9Yl013V+SJEnS+JNJRZIkSYoaRfQ3F1eSJEmShkGeqQzTY489Nt4hDMuVGjdcubHLuMeWjHt8yaQiSZIkRY1MKpIkSVLUyKQyTOdv9XIluVLjhis3dhn32JJxjy85UC9JkiRFjTxTkSRJkqJGJhVJkiQpaq6qbVpGav369ezbtw+n08natWsBOHbsGL/5zW/w+XwkJiby0EMPYbVaCYVCPPvssxw9ehRN01i8eDG33347APX19TzzzDMEAgFmz57NPffc0+82/BMt7u9///t0dHRgNBoBWLNmDU6nc8LE/etf/5q6ujpUVeXuu+9m5syZwMRv74HiHuv2bm1t5ZlnnqGzsxNFUVi+fDk33XQTPT09rFu3jjNnzpCYmMg3vvEN7HY7ABs3buS9995DVVXuueceioqKgLFt82jGPZZtPtS43W43P//5z6mtrWXp0qXcd999fY811u/xERFSn8rKSlFXVycefvjhvp899thjorKyUgghxLvvviv++Mc/CiGE2Lp1q1i3bp0QQgifzycefPBBcfr06b77VFdXC03TxBNPPCH27dt3RcT9ve99T9TW1o5qrMON+4033hDPPPOMEEKIzs5O8cgjj4hwONx3n4na3peKe6zbu729XdTV1QkhhOjt7RUPPfSQaGhoEC+++KLYuHGjEEKIjRs3ihdffFEIIURDQ4P45je/KQKBgDh9+rRYvXr1uLR5NOMeyzYfatxer1ccOnRIvPXWW+K555674LHG+j0+ErL76zz5+fl933TOaWpqIi8vD4DCwkJ27drV9zufz0c4HCYQCKDX67FarXR0dOD1esnJyUFRFBYvXsyePXsmfNzjYShxNzY2cs011wDgdDqx2WzU19dP+PYeKO7xEBcXx/Tp0wGwWCykpaXR3t7Onj17WLJkCQBLlizpa789e/awYMECDAYDSUlJpKSkUFtbO+ZtHq24x9pQ4zabzcyYMaPvLOqc8XiPj4RMKpeRkZHB3r17Adi5c2dfIbB58+ZhNpv56le/yoMPPsitt96K3W7vt6xxe3v7hI/7nPXr1/Otb32LDRs29FtNc7zinjp1Knv37iUcDtPS0kJ9fT2tra0Tvr0Hivuc8WrvlpYWjh49SlZWFl1dXX0F7eLi4uju7gYuLtEdHx9Pe3v7uLb5SOI+ZzzafDBxD2SivMcHS46pXMYDDzzA888/z4YNGygpKUGvjzRZbW0tqqryq1/9Co/Hw3e/+10KCgrG5YO4P0ONOzk5mYceeoj4+Hi8Xi9r165ly5Ytfd+oxjvuZcuW0djYyGOPPUZiYiK5ubnodLoJ394DxQ2MW3v7fD7Wrl3L3Xfffcmz1IHadrzafKRxw/i0+WDjHshEeY8Plkwql5GWlsaaNWuASBfHvn37APjggw8oKipCr9fjdDrJzc2lrq6OvLy8i8oax8fHT/i4k5OT++K0WCwsXLiQ2traMU8qA8Wt0+m4++67+45bs2YNkyZNwmazTej2HihuYFzaOxQKsXbtWhYtWsS1114LRLrlOjo6iIuLo6OjA4fDAVxcoru9vZ34+Ph+S3ePdptHI24Y+zYfStwDGY/2HgnZ/XUZXV1dAGiaxiuvvMKnP/1pAFwuFwcPHkQIgc/no6amhrS0NOLi4rBYLBw5cgQhBFu2bBmXssZDjTscDvedhodCIcrKysalcuZAcfv9fnw+HwAHDhxAp9ORnp4+4dt7oLjHo72FEDz77LOkpaVxyy239P28pKSEzZs3A7B582ZKS0v7fr59+3aCwSAtLS00NzeTlZU15m0erbjHus2HGvdAJsp7fLDkivrzPPnkk1RVVeF2u3E6ndx55534fD7eeustAObOncsXvvAFFEXB5/Oxfv16GhsbEUKwbNkyVqxYAUBdXR3r168nEAhQVFTEvffeO6rT/6IRt8/n43vf+x7hcBhN0ygoKOCuu+5CVUfve8dQ4m5paeGJJ55AVVXi4+O5//77SUxMBCZ2ew8U93i09+HDh/nud7/L5MmT+9rn85//PNnZ2axbt47W1lZcLhcPP/xw3zjbK6+8wvvvv983HXr27NnA2LZ5tOIe6zYfTtxf//rX6e3tJRQKYbPZWLNmDenp6WP+Hh8JmVQkSZKkqJHdX5IkSVLUyKQiSZIkRY1MKpIkSVLUyKQiSZIkRY1MKpIkSVLUyKQiSZIkRY1MKpI0Sp5++mnWr19/wc+qqqq499576ejoGKeoJGl0yaQiSaPknnvuoby8nAMHDgAQCAT41a9+xapVq/o2FByJcDg84seQpGiTix8laRTt2LGDl156ibVr1/LKK69w7Ngx7rjjDl544QUaGxtJTEy8oHDX+++/z2uvvUZbWxsOh4Pbbrutb8uXyspKfvGLX/DZz36W119/ncLCQu666y7Wr1/P4cOHURSFjIwMvv/974/qynxJuhS5oaQkjaL58+ezfft2nnrqKaqrq/nxj3/Mo48+yurVqykqKuLgwYOsXbuWJ598EofDgdPp5NFHHyU5OZlDhw7xwx/+kMzMzL66HJ2dnfT09LB+/XqEEGzYsIH4+Hiee+45AGpqaibs9h3SJ4P8OiNJo+y+++7j4MGD3HHHHWzbto3Zs2dTXFyMqqoUFhaSmZnZt6txcXExKSkpKIpCfn4+hYWFHD58uO+xFEXhzjvvxGAwYDQa0el0dHZ20trail6vJy8vTyYVaVzJMxVJGmWxsbE4HA7S09PZvXs3O3fupKysrO/34XC4r/urvLycDRs20NTUhBACv9/P5MmT+451OBwXVAZcsWIFL7/8Mo8//jgAy5cvZ+XKlWPzwiSpHzKpSNIYSkhIYNGiRdx///0X/S4YDLJ27VpWr17dV+jrJz/5yQXHfPwsxGKxsGrVKlatWkVDQwM/+MEPyMzMpKCgYFRfhyQNRHZ/SdIYWrRoEWVlZezfvx9N0wgEAlRWVtLW1kYoFCIYDOJwONDpdBfMHBtIWVkZp06dQgiBxWJBVVU5SC+NK3mmIkljyOVy8cgjj/DSSy/x1FNPoaoqWVlZfOUrX8FisXDPPfewbt06gsEgc+bMuWwxpubmZn73u9/R3d2NzWbjhhtu6OtKk6TxIKcUS5IkSVEjz5MlSZKkqJFJRZIkSYoamVQkSZKkqJFJRZIkSYoamVQkSZKkqJFJRZIkSYoamVQkSZKkqJFJRZIkSYqa/w/S+0dEZ0RMRQAAAABJRU5ErkJggg==\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"### type your answer here\n",
"df_can.sort_values(by=[\"Total\"], inplace=True)\n",
"df_can.tail()\n",
"df_Top5=df_can.loc[['India','China','United Kingdom of Great Britain and Northern Ireland', 'Philippines', 'Pakistan'], years]\n",
"df_Top5=df_Top5.transpose()\n",
"df_Top5.head()\n",
"\n",
"df_Top5.plot(kind='line')\n",
"plt.title('Top 5 Countries Immigrating to Canada')\n",
"plt.xlabel('Years')\n",
"plt.ylabel('# of Immigrants')\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Double-click __here__ for the solution.\n",
"<!-- The correct answer is:\n",
"\\\\ # Step 1: Get the dataset. Recall that we created a Total column that calculates the cumulative immigration by country. \\\\ We will sort on this column to get our top 5 countries using pandas sort_values() method.\n",
"\\\\ inplace = True paramemter saves the changes to the original df_can dataframe\n",
"df_can.sort_values(by='Total', ascending=False, axis=0, inplace=True)\n",
"-->\n",
"\n",
"<!--\n",
"# get the top 5 entries\n",
"df_top5 = df_can.head(5)\n",
"-->\n",
"\n",
"<!--\n",
"# transpose the dataframe\n",
"df_top5 = df_top5[years].transpose() \n",
"-->\n",
"\n",
"<!--\n",
"print(df_top5)\n",
"-->\n",
"\n",
"<!--\n",
"\\\\ # Step 2: Plot the dataframe. To make the plot more readeable, we will change the size using the `figsize` parameter.\n",
"df_top5.index = df_top5.index.map(int) # let's change the index values of df_top5 to type integer for plotting\n",
"df_top5.plot(kind='line', figsize=(14, 8)) # pass a tuple (x, y) size\n",
"-->\n",
"\n",
"<!--\n",
"plt.title('Immigration Trend of Top 5 Countries')\n",
"plt.ylabel('Number of Immigrants')\n",
"plt.xlabel('Years')\n",
"-->\n",
"\n",
"<!--\n",
"plt.show()\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Other Plots\n",
"\n",
"Congratulations! you have learned how to wrangle data with python and create a line plot with Matplotlib. There are many other plotting styles available other than the default Line plot, all of which can be accessed by passing `kind` keyword to `plot()`. The full list of available plots are as follows:\n",
"\n",
"* `bar` for vertical bar plots\n",
"* `barh` for horizontal bar plots\n",
"* `hist` for histogram\n",
"* `box` for boxplot\n",
"* `kde` or `density` for density plots\n",
"* `area` for area plots\n",
"* `pie` for pie plots\n",
"* `scatter` for scatter plots\n",
"* `hexbin` for hexbin plot"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Thank you for completing this lab!\n",
"\n",
"This notebook was originally created by [Jay Rajasekharan](https://www.linkedin.com/in/jayrajasekharan) with contributions from [Ehsan M. Kermani](https://www.linkedin.com/in/ehsanmkermani), and [Slobodan Markovic](https://www.linkedin.com/in/slobodan-markovic).\n",
"\n",
"This notebook was recently revised by [Alex Aklson](https://www.linkedin.com/in/aklson/). I hope you found this lab session interesting. Feel free to contact me if you have any questions!"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"This notebook is part of a course on **Coursera** called *Data Visualization with Python*. If you accessed this notebook outside the course, you can take this course online by clicking [here](http://cocl.us/DV0101EN_Coursera_Week1_LAB1)."
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<hr>\n",
"\n",
"Copyright &copy; 2019 [Cognitive Class](https://cognitiveclass.ai/?utm_source=bducopyrightlink&utm_medium=dswb&utm_campaign=bdu). This notebook and its source code are released under the terms of the [MIT License](https://bigdatauniversity.com/mit-license/)."
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python",
"language": "python",
"name": "conda-env-python-py"
},
"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.6.11"
},
"widgets": {
"state": {},
"version": "1.1.2"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment