Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save patriciamatosm/b192f3816e47b41af5174961a786e606 to your computer and use it in GitHub Desktop.
Save patriciamatosm/b192f3816e47b41af5174961a786e606 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 [**Python Basics for Data Science**](https://www.edx.org/course/python-basics-for-data-science-2) and [**Analyzing Data with Python**](https://www.edx.org/course/data-analysis-with-python).\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 [**Analyzing Data with Python**](https://www.edx.org/course/data-analysis-with-python).\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/coursera/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": 5,
"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": [
"<class 'pandas.core.frame.DataFrame'>\n",
"RangeIndex: 195 entries, 0 to 194\n",
"Data columns (total 43 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 Type 195 non-null object\n",
" 1 Coverage 195 non-null object\n",
" 2 OdName 195 non-null object\n",
" 3 AREA 195 non-null int64 \n",
" 4 AreaName 195 non-null object\n",
" 5 REG 195 non-null int64 \n",
" 6 RegName 195 non-null object\n",
" 7 DEV 195 non-null int64 \n",
" 8 DevName 195 non-null object\n",
" 9 1980 195 non-null int64 \n",
" 10 1981 195 non-null int64 \n",
" 11 1982 195 non-null int64 \n",
" 12 1983 195 non-null int64 \n",
" 13 1984 195 non-null int64 \n",
" 14 1985 195 non-null int64 \n",
" 15 1986 195 non-null int64 \n",
" 16 1987 195 non-null int64 \n",
" 17 1988 195 non-null int64 \n",
" 18 1989 195 non-null int64 \n",
" 19 1990 195 non-null int64 \n",
" 20 1991 195 non-null int64 \n",
" 21 1992 195 non-null int64 \n",
" 22 1993 195 non-null int64 \n",
" 23 1994 195 non-null int64 \n",
" 24 1995 195 non-null int64 \n",
" 25 1996 195 non-null int64 \n",
" 26 1997 195 non-null int64 \n",
" 27 1998 195 non-null int64 \n",
" 28 1999 195 non-null int64 \n",
" 29 2000 195 non-null int64 \n",
" 30 2001 195 non-null int64 \n",
" 31 2002 195 non-null int64 \n",
" 32 2003 195 non-null int64 \n",
" 33 2004 195 non-null int64 \n",
" 34 2005 195 non-null int64 \n",
" 35 2006 195 non-null int64 \n",
" 36 2007 195 non-null int64 \n",
" 37 2008 195 non-null int64 \n",
" 38 2009 195 non-null int64 \n",
" 39 2010 195 non-null int64 \n",
" 40 2011 195 non-null int64 \n",
" 41 2012 195 non-null int64 \n",
" 42 2013 195 non-null int64 \n",
"dtypes: int64(37), object(6)\n",
"memory usage: 65.6+ KB\n"
]
}
],
"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": 7,
"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": 7,
"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": 8,
"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": 9,
"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": 10,
"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": 10,
"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": 11,
"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": 11,
"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": 12,
"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": 12,
"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": 13,
"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": 14,
"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": 14,
"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": 15,
"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": 15,
"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": 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": [
"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": 16,
"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": 17,
"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": 17,
"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": 18,
"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": 19,
"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": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_can.head(3)"
]
},
{
"cell_type": "code",
"execution_count": 20,
"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": 21,
"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": 22,
"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": 23,
"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": 24,
"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": 25,
"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": 25,
"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": 26,
"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": 27,
"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": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# 2. pass this condition into the dataFrame\n",
"df_can[condition]"
]
},
{
"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
}
},
"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": 28,
"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": 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": [
"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": 29,
"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": 30,
"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": 31,
"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.1.1\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": 32,
"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": [
"['seaborn-colorblind', 'seaborn-muted', 'seaborn-ticks', 'seaborn-white', 'seaborn-pastel', 'fast', 'seaborn', 'seaborn-whitegrid', 'seaborn-dark-palette', 'seaborn-poster', 'seaborn-notebook', 'seaborn-talk', 'ggplot', 'seaborn-deep', 'dark_background', 'seaborn-bright', 'Solarize_Light2', 'classic', 'bmh', 'seaborn-dark', 'fivethirtyeight', 'tableau-colorblind10', 'grayscale', 'seaborn-paper', '_classic_test', 'seaborn-darkgrid']\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": 33,
"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": 33,
"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": 34,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x7f31dd4c4828>"
]
},
"execution_count": 34,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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HyJqUhJMn41+bjPmj260FjIfYKhHe46i//JryJ6OWuj74ihidFGGgbFkORgxmI+UWR0hB6Df34n5k++jH38YcudgrHoA45xFIYxWRAup3gkh47afwY7XMbc9Z9Vb//VPcGahdXPujLNQhnVFd+TvT4CzwfpYb8hV3limbKmob37Xmq37j79YM1ePoZ0O9BOPoN96FexTMW65HcLQNVNED0n6IaRi46DwfGIKz0c31KFfeR79yhbMnW+AzY46/3OoufNof/I31v/4vTMWxdimzlkEO99A/+8f0Xlno3Jmors86OfL0c88DhrUV66xbtiPk7UNRHBJ0g8TlZaBWnwd+svXwM4qzG3/QP/1D+i//gFiYjCuXBLuEEWAKKXgm99Ff7gL86F1GFdci/nko+Coh7MWYHz9epR9arjDFFFCkn6Yqdg4OHshMWcvRDvq0a9sIfGk6RxJzw53aCKA1MRJGEu+j3n/asz/+RmkZ2Os+G9Z11WEnCT9UUSlpqO+eu2oaRQnAkudXoD65netxegv/IL0jBFhIUlfiBAyLrws3CGIKCclm0IIEUUk6QshRBSRpC+EEFFEkr4QQkQRSfpCCBFFJOkLIUQUkaQvhBBRRJK+EEJEEaX9WdZHCCHEmBTRV/orV64Mdwh+kbhDS+IOrbEaN4zt2PtEdNIXQghxPEn6QggRRWLuvPPOO8MdRDDNmDEj3CH4ReIOLYk7tMZq3DC2Ywe5kSuEEFFFhneEECKKSNIXQogoMqYWUdm4cSPbt28nKSmJtWvXAvDRRx+xadMmOjs7SU1NZfny5UyYMIHu7m4efPBB9u/fj2maLFq0iK9+9asA1NTUsGHDBjweDwUFBZSUlFjrmI7yuO+8807cbjfjxo0D4I477iApKSlocfsT+69+9Sv27duHYRgsWbKE008/HRj953yguEN5zhsbG9mwYQNNTU0opSguLuayyy6jra2NsrIyHA4HqamprFixgsTERAA2b97M1q1bMQyDkpIS8vPzgdCe70DGHer3+HBjb21tZd26dVRXV3PhhReydOlS77FC/R73mx5Ddu3apfft26dLS0u921auXKl37dqltdb6xRdf1H/84x+11lq//PLLuqysTGutdWdnp7755pv14cOHvfvs2bNHm6ap77nnHr19+/YxEffq1at1dXV1UGMdSezPPvus3rBhg9Za66amJn3bbbfpnp4e7z6j9ZwPFncoz7nL5dL79u3TWmt95MgRvXz5cn3w4EH92GOP6c2bN2uttd68ebN+7LHHtNZaHzx4UP/whz/UHo9HHz58WH/ve98Ly/kOZNyhfo8PN/aOjg79/vvv6+eee04/9NBDxx0r1O9xf42p4Z3TTjvNe6XQ59ChQ8yZMweAM888k9dff937u87OTnp6evB4PMTGxjJhwgTcbjcdHR3Mnj0bpRSLFi2iqqpq1McdLsOJvba2ljPOOAOApKQkJk6cSE1Nzag/5wPFHWrJycneypCEhASysrJwuVxUVVVRVFQEQFFRkffcVVVVsXDhQuLi4khLSyM9PZ3q6uqQn+9AxR0Ow409Pj6eU0891ftJpE843uP+GlNJvz/Tpk3jzTffBOBf//oXTqcTgPnz5xMfH8+NN97IzTffzJe+9CUSExNxuVykpKR4909JScHlco36uPts3LiRW2+9lSeffBIdpsKrgWI/+eSTefPNN+np6aGhoYGamhoaGxtH/TkfKO4+4TjnDQ0N7N+/n9zcXJqbm0lOTgasJNXS0gJwwnm12Wy4XK6wnu+RxN0nXO9xX2IfyGh5j/tiTI3p9+emm27i0Ucf5cknn6SwsJDYWOslVVdXYxgGv/zlL2lvb2fVqlXk5eWFLVF+1nDjnjp1KsuXL8dms9HR0cHatWvZtm2b92pkNMR+0UUXUVtby8qVK0lNTeWUU04hJiZm1J/zgeIGwnLOOzs7Wbt2LUuWLBn0U95A5zVc53ukcUN4zjf4HvtARst73BdjPulnZWVxxx13ANbH9+3btwPwyiuvkJ+fT2xsLElJSZxyyins27ePOXPmeK/wAJxOJzabbdTHPXXqVG+cCQkJnH/++VRXV4cl6Q8Ue0xMDEuWLPE+7o477iAjI4OJEyeO6nM+UNxAyM95d3c3a9eu5YILLuDcc88FrCEnt9tNcnIybrebyZMnA9bV5LHn1eVyYbPZTtgeivMdiLgh9Od7uLEPJBzn3F9jfninubkZANM0eeqpp7j00ksBsNvtvPfee2it6ezs5MMPPyQrK4vk5GQSEhLYu3cvWmu2bdtGYWHhqI+7p6fH+xGzu7ubt956i2nTpoU87sFiP3r0KJ2dnQC88847xMTEkJ2dPerP+UBxh/qca6158MEHycrK4vLLL/duLywspKKiAoCKigrmzZvn3V5ZWUlXVxcNDQ3U1dWRm5sb8vMdqLjD8R4fbuwDGS3vcV+MqRm5999/P7t376a1tZWkpCSuuuoqOjs7ee655wA455xzuOaaa1BK0dnZycaNG6mtrUVrzUUXXcSXv/xlAPbt28fGjRvxeDzk5+dz/fXXB7W0KhBxd3Z2snr1anp6ejBNk7y8PK677joMI7h/t4cTe0NDA/fccw+GYWCz2fjud79LamoqMLrP+UBxh/qcf/DBB6xatYqcnBzvubn66quZNWsWZWVlNDY2YrfbKS0t9d7neeqpp3jppZe8paYFBQVAaM93oOIOx3vcn9hvueUWjhw5Qnd3NxMnTuSOO+4gOzs75O9xf42ppC+EEGJkxvzwjhBCCN9J0hdCiCgiSV8IIaKIJH0hhIgikvSFECKKSNIXQogoIklfCCGiyP8HnqqISm5Att8AAAAASUVORK5CYII=\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": 35,
"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": "iVBORw0KGgoAAAANSUhEUgAAAY4AAAEaCAYAAAAG87ApAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOzdeXhU5fXA8e97sxMgZF/Zk8hO0LCKbMZalVZKrSsqCErdUPFXa6uC1g21rBa0BUTR2opWYlWsiigoqMQFFDdkE5DEhEx2ApPkvr8/bjImZGGSzJJMzud5eEjuzL33zBBy5t3Oq7TWGiGEEMJJhrcDEEII0b5I4hBCCNEskjiEEEI0iyQOIYQQzSKJQwghRLNI4hBCCNEskjhEuzVhwgRmzZrl1Rjee+89lFIcPnzYI/f785//TGxsLEopnn76aY/c09N69erFAw880ORzDhw4gFKKDz74wENRidqUrOMQLTV9+nQOHz7Mxo0bvXJ/m82Gv78/Xbt29cj9/P39WbVqFdOnT3ccs9vt2Gw2YmJiMAz3fg77+OOPGTVqFJmZmYwcOZKwsDBCQkLcek9nPP3008yaNYvKysp6j02YMIHk5GRWrVrl9PXy8vLo1KkToaGhACQnJzNt2jTuvfdex3OqqqrIy8sjMjKSgICAVr8G0Tz+3g5AiJaKiIho9TUqKirw9/dHKdWi8wMDA4mLi2t1HM74/vvvMQyDCy+8sNHntPb1tAXR0dGnfI6fn5/H3ndRn3RVCZeZPn06GRkZPP744yQlJdG5c2dmzZpFRUUFTz75JD179iQ8PJzrrrsOu93uOG/ChAnMnDmTu+++m5iYGLp168Zdd92FaZr85S9/ITY2lujoaO6666469zu5q6q8vJzrrruOsLAwwsPDueGGG/jTn/5EcnJygzH26tWLoKAgysrKePvtt5kwYQIRERGEhYUxfvx4tm/f7jivV69eVFVVMWPGDJRSjl/MDXVVffTRR4wbN46QkBDCw8O5/PLLyc3NdTx+7733kpyczCuvvEK/fv0IDQ1l4sSJ7N27t8n39sorr8Q0zTr3b+z1VFRUcOedd5KYmEhgYCADBgzg+eefr3NNpRSPP/44l1xyCaGhofTo0YOXXnqJoqIirrjiCrp06UKfPn34z3/+49S/vzNO9T5D3a6qCRMmsHfvXu677z7H6z5w4IB0VXmZJA7hUllZWXzyySe8/fbbPP/88zz33HNceOGFbNu2jTfeeINnn32WZ599ltWrV9c576WXXqKiooIPPviARYsW8dBDDzF58mRKS0t5//33+etf/8pDDz3EG2+80ei9//jHP/LKK6/w7LPP8tFHHxEWFsaKFSvqPW/79u1s2rSJzMxMdu7cSXBwMKWlpdx444189NFHbNu2jZSUFH75y1+Sn5/veF1+fn4sWbKE7OxssrOzG4whJyeHX/ziFyQlJbF9+3ZeffVVdu3axW9/+9s6z8vOzuaJJ57gn//8J9u2baOwsJBrrrmm0de2dOlSlixZgp+fX737N/R6/vznP7Ny5UqWLFnCrl27mDZtGtOmTeOdd96pc90HH3yQ888/n507dzJ58mSuuuoqLr30Us455xw+//xzLrjgAq666irH+9Bap3qfT/byyy/Tq1cvbr/9dsfr7t69u0tiEa2ghWihq6++Wp999tl1vo+OjtYnTpxwHDv//PN1ZGSkPn78uOPYr3/9a/3b3/7W8f348eP10KFD61x7wIABetCgQXWODRkyRN9+++11zps5c6bWWuvS0lIdGBioV61aVeeckSNH6r59+9aJMSwsTJeUlDT52qqqqnS3bt30c8895zjm5+en16xZU+d57777rgb0oUOHtNZa33333ToxMbHOe7Bjxw4N6M2bN2uttZ4/f7728/PTubm5juf861//0kopXV5e3mhMa9as0X5+fnWONfR6ysrKdGBgoF6+fHmd506ZMkVPnDjR8T2gb7nlFsf3ubm5GtA33XST45jNZtOAfvXVV5uMC9ChoaH1/hiG4fg3akhD73PPnj31/fff7/i+b9++ev78+XXO279/vwb0+++/3+i1hftIi0O4VP/+/QkMDHR8HxcXx2mnnUZQUFCdY7W7bgCGDh1a5/u4uDiGDBlS79jJ59XYs2cPdrudUaNG1Tk+evToBmPs3LlznWP79+/nyiuvJDk5ma5du9K1a1eKior44Ycfmni19X311VeMGjWqznswdOhQwsLC+OqrrxzHEhIS6vTlJyYmorVu9PU15eTXU/NejBs3rs7zxo8fXyeGmthqREdH4+fnV+d9Dw8PJzAw8JRx+fn5sWPHjnp/0tPT6zzPVe+z8C4ZHBcudfIMF6VUg8dM03TJeSdzZlC4ZrZObZMn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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": 36,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAY4AAAEaCAYAAAAG87ApAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOzdeVyU5fr48c89wyKiIDCsgiuQuWLhvuCCmWXL12y3krQ82XayX1bH0sxKW1wT65w0O62nrKTlVCZhaJJJuZTLybUUBUGGXXCQuX9/DEyMbAPMAsP9fr14Cc/M8zzXDMjFvV23kFJKFEVRFMVKGmcHoCiKorQuKnEoiqIojaISh6IoitIoKnEoiqIojaISh6IoitIoKnEoiqIojaISh9JqjRkzhpkzZzo1hu+//x4hBBkZGQ653z/+8Q+Cg4MRQvDWW2855J6O1q1bN5577rl6n/PHH38ghOCHH35wUFRKdUKt41Caavr06WRkZJCcnOyU++v1etzc3PDx8XHI/dzc3Fi7di3Tp083HzMYDOj1eoKCgtBo7Pt32E8//cTQoUNJSkpiyJAh+Pr64uXlZdd7WuOtt95i5syZXLhwocZjY8aMITIykrVr11p9vZycHNq3b4+3tzcAkZGRTJs2jWeeecb8nIqKCnJycggICMDd3b3Zr0FpHDdnB6AoTeXv79/sa5SXl+Pm5oYQoknne3h4EBIS0uw4rHH48GE0Gg3XXXddnc9p7utpCQIDAxt8jlarddj7rtSkuqoUm5k+fTrx8fG8+uqrhIeH06FDB2bOnEl5eTmvv/46Xbt2xc/Pj3vvvReDwWA+b8yYMcyYMYOnnnqKoKAgOnXqxLx58zAajTz77LMEBwcTGBjIvHnzLO53cVdVaWkp9957L76+vvj5+TF79myefPJJIiMja42xW7dueHp6UlJSwubNmxkzZgz+/v74+voSFxfHzp07zed169aNiooKEhISEEKYfzHX1lW1Y8cORo8ejZeXF35+ftx2221kZ2ebH3/mmWeIjIzks88+o1evXnh7ezN27FiOHj1a73t7xx13YDQaLe5f1+spLy/niSeeoHPnznh4eNC7d2/ef/99i2sKIXj11Ve5+eab8fb2pkuXLnz88ccUFBRw++2307FjR3r06MEnn3xi1fffGg29z2DZVTVmzBiOHj3KwoULza/7jz/+UF1VTqYSh2JT6enp/Pzzz2zevJn333+fd999l+uuu460tDS+/vpr3nnnHd555x3WrVtncd7HH39MeXk5P/zwA8uWLeOFF15g8uTJFBcXs23bNl555RVeeOEFvv766zrv/fjjj/PZZ5/xzjvvsGPHDnx9fVmzZk2N5+3cuZOUlBSSkpLYu3cv7dq1o7i4mPvvv58dO3aQlpZGVFQUV155Jbm5uebXpdVqWbFiBZmZmWRmZtYaQ1ZWFldccQXh4eHs3LmTL774gn379nHDDTdYPC8zM5PXXnuN9957j7S0NPLz87n77rvrfG0rV65kxYoVaLXaGvev7fX84x//4I033mDFihXs27ePadOmMW3aNL777juL6z7//PNcddVV7N27l8mTJ3PnnXdyyy23MGHCBHbv3s3VV1/NnXfeaX4fmquh9/lin376Kd26dePRRx81v+6IiAibxKI0g1SUJrrrrrvk+PHjLb4ODAyU58+fNx+76qqrZEBAgCwrKzMfu/baa+UNN9xg/jouLk4OGDDA4tq9e/eWffv2tTjWv39/+eijj1qcN2PGDCmllMXFxdLDw0OuXbvW4pwhQ4bInj17WsTo6+sri4qK6n1tFRUVslOnTvLdd981H9NqtXL9+vUWz9uyZYsE5MmTJ6WUUj711FOyc+fOFu/Bnj17JCBTU1OllFIuWLBAarVamZ2dbX7OBx98IIUQsrS0tM6Y1q9fL7VarcWx2l5PSUmJ9PDwkImJiRbPvf766+XYsWPNXwPy4YcfNn+dnZ0tAfnAAw+Yj+n1egnIL774ot64AOnt7V3jQ6PRmL9Htantfe7atatctGiR+euePXvKBQsWWJx3/PhxCcht27bVeW3FflSLQ7GpSy+9FA8PD/PXISEhXHLJJXh6elocq951AzBgwACLr0NCQujfv3+NYxefV+XIkSMYDAaGDh1qcXzYsGG1xtihQweLY8ePH+eOO+4gMjISHx8ffHx8KCgo4M8//6zn1da0f/9+hg4davEeDBgwAF9fX/bv328+FhYWZtGX37lzZ6SUdb6++lz8eqrei9GjR1s8Ly4uziKGqtiqBAYGotVqLd53Pz8/PDw8GoxLq9WyZ8+eGh+xsbEWz7PV+6w4lxocV2zq4hkuQohajxmNRpucdzFrBoWrZutUN3nyZHQ6HYmJiURERODh4cHIkSMtxmKsVVcM1Y9XTyzVH2vo9dWmttdTWxxSyhrHapuR1JT3HbAYS6py8awvW77PivOoxKG4hMjISDw8PPjxxx/p3bu3+fiOHTsaPDc3N5cDBw7w1VdfMXHiRAAyMjJq/JXt4eFBRUVFvdfq06cP69evx2AwmJPD3r17KSgooE+fPo19WU0SGRmJp6cnqampFvfcunWrw2KojbXv88Wsed8Vx1KJQ3EJ3t7ezJo1i6eeeorg4GCio6P597//zcGDBxuc3unn50dgYCBvvPEGPXv2JDc3l7lz59b4a7l79+5s2bKFSZMm4eHhgU6nq3GtBx54gJUrVzJ9+nT+8Y9/kJ+fz+zZsxk5ciSjRo2y6WuuS/v27XnooYd4+umnCQwMJCYmhg0bNvDZZ5+xefNmh8RQG2vf54t1796d7du3c+LECdq3b2+TadhK86gxDsVlvPjii1xzzTXcdtttDB48mLy8PKZPn067du3qPU+j0bBhwwaOHj1K//79mT59On//+98JDQ21eN7SpUv55Zdf6N69e53JKDg4mG+//ZaMjAwGDRrE5MmT6du3r02ntFrj+eef55577uHvf/87ffr04d133+Xdd99l/PjxDo2jOmvf54stXLiQgoICLrnkEgIDAzlx4oSDIlbqolaOKy5t3Lhx+Pn5OfwXt6K4MtVVpbiM3377jV27djFs2DAMBgPvvPMOW7Zs4auvvnJ2aIriUlTiUFyGEILXXnuNhx56CKPRSK9evdi4cSOTJk1ydmiK4lJUV5WiKIrSKGpwXFEURWkUlTgURVGURmkzYxynT59u0nk6nY6zZ8/aOBr7U3E7lorbsVpr3NC6Yg8LC6v1uGpxKIqiKI2iEoeiKIrSKCpxKIqiKI2iEoeiKIrSKCpxKIqiKI2iEoeiKIrSKCpxKIqiKI2iEoeiKEoLIn9NR2adcnYY9VKJQ1EUpYWQUmL818sY33/d2aHUSyUORVGUlqIgD86XwcG9yLNnnB1NnVTiUBRFaSlyssyfyrTvnBhI/VTiUBRFaSFkdqbpk6Aw5PbvkEajcwOqg0ociqIoLUVOJmg0iMk3gz4H/versyOqlUociqIoLUVOFvgHImJHQPsOyO3Jzo6oVipxKIqitBAyOxOCQhHuHoghcchdPyJLip0dVg0qcSiKorQUOVmIwBAAxMh4uFCO3LnVyUHVpBKHoihKCyBLiqGkCAJDARBdekJE9xbZXaUSh6IoSkuQY5pRJYJCzYfEiAnw5xFkxnFnRVUrlTgURVFaAFm1hqOyqwpADBkNbm7I7S1rTYdKHIqiKC1B1RqO6omjgw8iZihyxxbkhXInBVaTShyK0oadPHmSqVOnEhcXx9ixY1m7dq35sby8PG655RZGjBjBLbfcQn5+PgB6vZ6pU6cSFRXFvHnzLK7366+/Mn78eEaMGMHTTz+NlLLGPT/88EP69evHhAkTzB+HDh1qVNwvvviixWsYN25co85viiFDhqDX6+13g5xM8PVHeLazOCxGxENxEexNt9+9G0klDkVpw9zc3FiwYAGpqal88cUXvPXWW+Zf4omJiYwcOZLt27czcuRIEhMTAWjXrh1z587l6aefrnG9J598khdffJEffviB48ePs2XLllrve+2117J582bzR3R0tFXxSikxGo0WicNVyJwsi9aGWe8B4KfD2IIGyVXiUJQ2LDQ0lH79+gHQoUMHoqKiyMoy9bVv2rSJG2+8EYAbb7yRb775BoD27dszePBgPD09La515swZioqKiI2NRQjB1KlTzedYo6SkhJtuuomJEycyfvx4Nm3aBJhaFHFxcTz55JNMnDiRRx99lNLSUiZMmMADDzwAQEVFBY899hhjx47l1ltvpbS0FDC1gOLj47nmmmtYtGiRuWXy4YcfWrSW7rzzTtLS0gB44oknmDRpEmPHjuWVV16pEWdpaSm333477733HgCffPIJV199NRMmTGDu3LlUVFRY/ZotZGeap+JWJzRaxPBxsG8XMi+3ade2MZU4FEUBTL+g9+3bx8CBAwE4e/YswcHBAAQHB5ObW/8vraysLEJD/5oRFBoaak5CF/v8888tuqpKS0vx9PRk3bp1bNq0iQ0bNvDss8+au7qOHj3K1KlT+fbbb1m+fDleXl5s3ryZ1atXA3D8+HHuuusutmzZgo+PD1999RUAc+bMYdGiRXzxxRdWvw+PP/44X3/9NcnJyezYsYMDBw6YHyspKWH69Olcf/313H777Rw+fJjPP/+cpKQkNm/ejFar5dNPP7X6XlWk4Tzk66HajKrqxPDxII3IH1MafW17cHPUjUpKSnj99dc5efIkQgjuu+8+wsLCWL58OTk5OQQGBvLII4/QoUMHADZu3EhKSgoajYaEhARiYmIAOHbsGImJ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VUrzFOaBj4PHXh3MqsSRmprKm2++iZubGx4elgM+r732ml0Ca7H02Yjofna5tAjrgtz9E7Lc4NIDa00hS4qQX38M/WLR3Pv/MD49G+NHb6J5eln9rb8TR8HDw9wN1RAREo7c85ONolbaGlO5kXNtt6uqunfffZdHH32U/v372zueFk1WVECevllVcesV1hWk0bQT3cWbDbVx8uuPofQcmil3INw9EDfchfzXy8jt3yFGXVH3eSeOQeduCK2VXYsh4VD0LbK40NR1pSiN4eI7/1WxamqKm5sbvXv3tncsLV9+rukXu526qkRYFwA1znERqc9BfvclYuhYRLip71jEjoSevZCfvWcqmV7beUYjnDzW8MK/aszFDtVugEpTVC7+c+WS6mBl4rj55pt5++23zbWk2iwbbOBUr+BQ04yt02qcozr52fsAiOtuNx8TQqC5aQYU5CG//rT2E8+eMXUbWDOjqooqdqg0RxtpcVjVVRUWFsZHH33Epk2bajxWfb2Hq5M22MCpPsLNHYLCkKdP2uX6rZHM+AP5YwpiwnU1Fl2KHpcgBschNychR0+suSizspR6Y1ocBASCm7uaWaU0iaxKHC6+jsOqxPHqq68yevRohg8fXmNwvE0xL/6zU4uDygHyqr0jFIwb34F27RGTptb6uJhyJ3L3j8hP30bc86jFY/LEMVMLLqxrrefWej2NFoLDrF4noigWCivrVHVUiYPi4mJuvvnmtrtVbJXcbOjoi/DwtN89wrrArjTk+fMITzvepxWQh/bBr+mIKXfVOVAtAgIRE65HfvURcvxkRI+/pofLE0chtItpjUwjiJBw5MnjzYpdaaMK86G9d6N/5lobq8Y4xowZw9atW+0dS4tn2sDJfq0NANG5C0gJWW27u0pKifGTf5sWW46fXO9zxaQbwNcP40frzKX3pZRw4lide4zXKzQczmYhy8ubErrShsnCfJeuilvFqhbHkSNH+Oabb/j000/p1MmyCbZw4UK7BNYi6XNMLQJ7quxWkadOILpat6e7S9r9Ixz7HXHnAw228EQ7L8R1tyPfXo38+QfEoFGQr4eiArB24V91IeFgNEJOpv2/34prKXD9ciNgZeIYP34848ePt3csLZqU0rT4r9/l9r1RUCi4uUEbnpIrKyowfvoOhEYghlv3cydGjEdu+S/yk38jY4aYtoqFJrU4LIod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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": 39,
"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": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"### type your answer here\n",
"df_china_india = df_can.loc[['China', 'India'], years]\n",
"df_china_india.head()"
]
},
{
"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": 42,
"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": [
"<matplotlib.axes._subplots.AxesSubplot at 0x7f31dd06cb00>"
]
},
"execution_count": 42,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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JEM9BJESG23567Vr1/Laa6/R19fHc889N0ZrL+VMPQSpCKPZki+W0Za/BqipqWHx4sU8+eSTnH766WOw9lLO1EMQKbGRlr9OJpO0tbUB4RjC+vXrmTlz5pitv5Qv9RBEiii3/PWsWbOGLH990UUXAXDppZdy7bXXMn/+/Gz562OPPZadO3dyySWX0NfXh+/7nHbaadkQESkklb+WsqXy1yIjo11GIiICKBBERCSiQBAREUCBICIiEQWCiIgACgQREYkoEESKqFDlrzMuueSSvPcSKSQFgkgRFar8NcATTzxBfX19SddfKosCQaSIClX+OplMct9993H99deXtgFSUVS6QipC7Y5Hsfq2FvQ9vepDSE1eMuLlRlP++o477uArX/kKtbW1BW2DSC71EERKbKTlr1977TXeeecdzjnnnDFecyl36iFIRRjNlnyxjLT8dUdHB6+++ionnHACruvS3t7Oeeedx7p168ayGVKG1EMQKbGRlr9evnw5r732Gn/84x95/PHHOfzwwxUGUhTqIYgUUSHKX4uUispfS9lS+WuRkdEuIxERARQIIiISUSCIiAigQBARkYgCQUREAAWCiIhEFAgiRVSo8tfnnXcep5xyCgsXLmThwoXZk9tECkmBIFJEhSx//f3vf58NGzawYcMGWltbS9oOqQwKBJEiKlT5a5FSUOkKqQgvv/9vdKTeLeh7jq+dzpxDvzTi5UZT/hrC3U+mafLpT3+aG264AcMwCtYWEVAPQaTkRlr+GsLdRRs3buTxxx/nxRdfZO3atWPYAilX6iFIRRjNlnyxjLT89fTp05kyZQoA8Xicz33uc7zyyissXbp0zNog5Uk9BJESG2n5a9d12b17NxAeifTrX/+ao48+eszWX8qXeggiRVSI8tfd3d0sXboUx3HwfZ/58+dzySWXjGWzpEyp/LWULZW/FhkZ7TISERFAgSAiIhEFgoiIAAoEERGJKBBERARQIIiISESBIFJEhSp/nU6nWbVqFSeffDJz587l8ccfL3lbpPwpEESKqFDlr++66y5aWlp48cUX+d3vfsfcuXNL3hYpfwoEkSIqVPnrBx98kGuuuQYA0zSZMGFCCVshlUKlK6Qi1G/egt2TKuh7unW1dH9k2oiXG2n5687OTgC+/e1v88ILLzB9+nRuv/12Jk6cWND2iKiHIFJiIy1/7bou27Zt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+GLmzp3LvHnz8s5mFikkBYJIERWq/PWVV17JCy+8wPr16/nDH/7A+vXrS9sQqQgKBJEiKkT567q6Ok477TQAqqqq+NjHPsa2bdtK2AqpFCpdIRXh5ff/jY7UuwV9z/G105lz6JdGvNzBlL/u7OzkqaeeYsWKFQVrh0iGeggiJTba8teu67Jy5UpWrFihS2lKUaiHIBVhNFvyxTLa8terVq1ixowZrFy5srQrLBVDPQSREhtN+evbb7+drq4uvvnNb47NSktFULVTKVsfhGqnueWvW1tbhyx/vXr1agzDYPPmzXnlr7/73e8ybdo0tm3bxvHHH8/MmTOz7bnssstYtmzZoJ+naqdyMBQIUrY+CIFQagoEORjaZSQiIoACQUREIgoEEREBFAgiIhJRIIiICKBAEBGRiAJBpIgKUf4aYOnSpZx++unMmzePG2+8Ec/zSt4WKX8KBJEiKlT56x/+8Ic888wzPPvss+zevZvHHnustA2RiqBAECmiQpS/BmhoaADCAneO42AYRqmaIBVExe2kItRv3oLdkyroe7p1tXR/ZNqIlxtt+esLLriAV155hTPPPJNzzz23oG0RAfUQREputOWv165dy2uvvUZfXx/PPffcWK2+lDH1EKQijGZLvlhGW/4aoKamhsWLF/Pkk09y+umnl2ydpTKohyBSYiMtf51MJmlrawPCMYT169czc+bMsVl5KWvqIYgUUW7561mzZg1Z/vqiiy4CoL29Pa/8deboo56eHi655BL6+vrwfZ/TTjstGyIihaTy11K2VP5aZGS0y0hERAAFgoiIRBQIIiICKBBERCSiQBAREUCBICIiEQWCSBEVqvx1xiWXXJL3XiKFpEAQKaJClb8GeOKJJ6ivry/dykvFUSCIFFGhyl8nk0nuu+8+rr/++hKuvVQala6QiuA8cB/+5k0FfU/zIzOIffGKES83mvLXd9xxB1/5yleora0taBtEcqmHIFJiIy1//dprr/HOO+9wzjnnjPGaS7lTD0Eqwmi25ItlpOWvX3jhBV599VVOOOEEXNelvb2d8847j3Xr1o3J+kv5UiCIlNiuXbtobW0dsvx1EATU19fnlb8+6qijWL58OQCbN29m2bJlCgMpCgWCSBEVovy1SKmo/LWULZW/FhkZDSqLiAigQBARkYgCQUREAAWCiIhEFAgiIgIoEEREJKJAECmiQpW/Pu+88zjllFNYuHAhCxcuZNeuXSVvi5Q/BYJIERWy/PX3v/99NmzYwIYNG2htbS1dI6RiKBBEiqhQ5a9FSkGlK6Qi/OD329jU0VvQ95wxvoaVfzd1xMuNpvw1hLufTNPk05/+NDfccAOGYRS0PSLqIYiU2EjLX0O4u2jjxo08/vjjvPjii6xdu3YsmyBlSj0EqQij2ZIvlpGWvwaYMmUKAPF4nM997nO88sorLF26tMRrLuVOPQSREsscITRU+evu7m6AvPLXruuye/duABzH4de//jVHH3302Ky8lDX1EESKqBDlr/v6+li6dCmO4+D7PvPnz+eSSy4ZszZJ+VL5aylbKn8tMjLaZSQiIoACQUREIgoEEREBFAgiIhJRIIiICKBAEBGRiAJBpIgKVf46nU6zatUqTj75ZObOncvjjz9e8rZI+VMgiBRRocpf33XXXbS0tPDiiy/yu9/9jrlz55a2IVIRFAgiRVSo8tcPPvgg11xzDQCmaTJhwoRSNUEqiEpXSEV49eUknR1uQd+zabzNrDnxES830vLXhx9+OADf/va3eeGFF5g+fTq33347EydOLGh7RNRDECmxkZa/dl2Xbdu2cdJJJ7F+/XrmzJnDrbfeOraNkLKkHoJUhNFsyRfLSMtfjx8/nrq6Os455xwAPvOZz/Af//EfpV9xKXvqIYiU2EjLXxuGwaJFi7JHHT333HMceeSRY7PyUtZU7VTK1geh2mlu+evW1tYhy1+vXr0awzDYvHlzXvnr7373u0ybNg2ALVu2cNVVV9HZ2UlLSwt33303hx566KCfp2qncjAUCFK2PgiBUGoKBDkY2mUkIiKAAkFERCIKBBERARQIIiISUSCIiAigQBARkYgCQaSIClH+OplMsnDhwuzt6KOPZvXq1WPSHilvCgSRIipE+et4PM6GDRuyt0MPPTRbxkKkkBQIIkVUqPLXGZs2baK9vZ2TTz65BGsvlUbF7aQibNiwgZ07dxb0PSdOnMjChQtHvNxIy19//OMfzy778MMPs2TJEgzDKFg7RDLUQxApsZGWv861bt06PvvZz47FaksFUA9BKsJotuSLZaTlrzNef/11XNdl1qxZpV1hqRjqIYiU2EjLX2c88sgjnH/++aVfYakY6iGIFFFu+etZs2YNWf76oosuAqC9vT2v/HXm6KOMRx99lAcffLDkbZDKofLXUrZU/lpkZLTLSEREAAWCiIhEFAgiIgIoEEREJKJAEBERQIEgIiIRBYJIERWi/DWENYwWLFjAggULWLp0Kbt37y55W6T8KRBEiqgQ5a9d12X16tU8/PDDbNy4kWOOOYYf/ehHJW+LlD8FgkgRFaL8dRAEBEFAT08PQRCQSCSYPHlyaRsiFUGlK6Qi1O54FKtva0Hf06s+hNTkJSNebjTlr++8804WLFhAXV0dM2bM4I477ihoW0RAPQSRkhtp+WvHcfjJT37C+vXree211zjmmGO4++67x7gVUo7UQ5CKMJot+WIZafnr119/HYDDDjsMgCVLlvC9732vxGstlUA9BJESG2n56ylTpvDGG2/Q3t4OhIPOM2fOHJuVl7KmHoJIERWi/PXkyZO58cYbWbJkCbZtM23aNPUQpChU/lrKlspfi4yMdhmJiAigQBARkYgCQUREAAWCiIhEFAgiIgIoEEREJKJAECmiQpW/XrduHQsWLGDevHmsWbOm5O2QyqBAECmiQpS/7ujoYM2aNfziF7/gueeeY9euXTz77LMlb4uUPwWCSBEVovz1e++9x4wZM2hpaQFg/vz52WVECkmlK6QivPz+v9GRereg7zm+djpzDv3SiJcbafnrefPm8dZbb7F582amTp3Kr371KxzHKWhbREA9BJGSG2n56+bmZu68804uv/xyzj33XKZNm4ZlWWPcCilH6iFIRRjNlnyxjLT8NcDixYtZvHgxAD/96U8VCFIU6iGIlNhIy1/nLrN3715+/OMfs2zZsjFYcyl36iGIFFEhyl8DrF69mr/85S8ArFq1isMPP7z0jZGyp/LXUrZU/lpkZLTLSEREAAWCiIhEFAgiIgJ8yMcQtm3bNqrlWlpashcsrxSV2GbP8yru8MxKbHMlfrYPps1Tp04d9jX1EEREBFAgiIhIRIEgUiRbt27l85//PAsWLGDhwoX88Ic/BGDPnj1ceOGFnHrqqVx44YXs3bs3u8w///M/c+qppzJv3jyeeeaZ7PQ///nPnHnmmZx66ql8/etf50O8p1c+wBQIIkVi2zbf+MY32LhxI48//jg/+clPePPNN7n33ns57bTTeP755znttNOyJ6C9+eabPProozz99NM88MAD3HLLLXieB8Df//3fc8cdd/C73/2Od955hw0bNoxl06RMKRBEimTSpEkcd9xxAMTj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FDBasJgoWlx9Rl8M+z67CX93C2qha63xPY1X13h1hetsLFJvvVqzQfiFX/gFbrjhBh588MHmtkceeYSLLrqIm266iUceeYRHHnmEd7/73Rw8eJAnnniC+++/n/n5eT7xiU/wR3/0R0gp+bM/+zN+4zd+g3379vEHf/AHPP3001xyySU89thjFAoF/uRP/oTvfOc7/MVf/AV33333ljzsepQO7zTTI3qT/UpKQtelNjSYyt7poo1Xzo8j04lrI0Bfaf9aQBciHu8gpWzO8/k8+/btw3XdVd0utm3vOndaEGmmKh2uncTqP1YOCNs6cUXizrG4cCzf5t4ZLVhYxuYYelEYA76egN6raep11QR/vabxahGep9G69ZnqvAXGXz+6KfeQ1poNwgUXXMDU1FTbtieffJJ7770XgDe96U3ce++9vPvd7+bJJ5/k6quvxrIsxsbGmJiY4MUXX2R0dJRarca558YFHa699lqefPJJLrnkEp566ine/va3A3DVVVfxxS9+Ea311kesNAq2NKC/YsGWOJ3DphRsybRj1IDxei3zzQK6YRhd2zqPSy93qq+vj717927J32QnqB6qJuSPLCeduEln7ky1vRPXNSWTfRavGnC4ck+xDfrDObOtE3cjSlvz9QTybdCva+o1hVdXvetnaYWjajjBEk5tlr7aHI63gOMvxvNwmYm9NxNxChqEXlpcXGxGRQwNDbG0tATA3Nwc+/btax43PDzM3NwchmG0xVqXSiXm5uaa5zT2GYZBPp9neXmZ/v7WyM2GHn30UR599FEAPvWpTzEysvHCefLoMYzvPcVkuYJouHyEQBcL6NERwr4iulhE9xXBspCAk0w7WaZpHtffayfr6NGjCCFQSnUBu3Nbr+X1AL0T5qZpIqVs277S8lYYPUqpV/z/eakecHChzqHFOgcXahx5+gUOzNc4tFBjttpO2MGcyWkDOS7eU+D0AZc9g7lk7jKY21iodBgqatWIWjWkWomay+3bQmq1KC681iFTRrh4OFGZAW8BpzKDtXgEpzaH4y/iNqBvRpij48jRCYzRcYyxCYyRi5L1CeTgMJbjEK5Ux+UEtKmdyiv9gFb7YW1kFOZ1113Hdddd11w/nl52d3mZQdOkWhpeuWCLimBxccPX3s461ZEYx6MwDDcc4ZLef9VVV7Fnz54Vr9/LQjdNc0VrfD0W+nqk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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"### type your answer here\n",
"\n",
"df_china_india.plot(kind='line')\n",
"plt.title('Immigration from China and India')\n",
"plt.ylabel('Number of immigrants')\n",
"plt.xlabel('Years')\n",
"\n",
"plt.show()\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": 44,
"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": 44,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_china_india = df_china_india.transpose()\n",
"df_china_india.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": 48,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "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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_china_india.index = df_china_india.index.map(int)\n",
"df_china_india.plot(kind='line')\n",
"plt.title('Immigration from China and India')\n",
"plt.ylabel('Number of immigrants')\n",
"plt.xlabel('Years')\n",
"\n",
"plt.show()"
]
},
{
"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": 68,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "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3HCDiI+PF7169RLLly8vVs4zZ84IQLzyyivFjhNCiPHjx4uEhATv/Tt79mwhSZL3YV0apRIdHS1efvllcfz4ce/v6dNPP/Xup3379mLChAnee9nlcnmvS5MmTcRHH30kTp06Jc6cOVNIqaSnp4vGjRuLMWPGiN27d4ujR4+K5ORkERISIs6ePSuEEGLu3LmiWbNmYvPmzeLs2bNi27ZtYsmSJSVeg+pGVyrVjD+lEhcX5zMLGTp0qIiJiRF2u9277He/+5246667vJ+TkpJE+/btffbdunVr0bZtW59l7dq1E7NmzfLZzqNUsrOzhdlsFm+++abPNt26dSukVCIiIkp821RVVURGRor333/fu8xgMIj//Oc/PuMKKpW//OUvon79+j7XYM+ePQIQGzduFEK4lYrBYBBXrlzxjvnwww+FJEnet9biKEmpDB061GfZl19+KYKDg0V2drbP8tGjR4t77rlHCPGLUlm6dKl3vcPhEGazWbz99ttCCCFWr14tZFn2Oe7FixeFyWQqVqn86U9/Ek2aNBEul8u7bNu2bQLwzgY9x9+xY0eJ5y9E0Upl586dAhA//PCDd5miKKJZs2ZixowZQohflMoLL7zgHaNpmmjdunWx57F7927x5ptvip07d4off/xRJCcnC1mWffZTkLVr1wpAfPvtt8WeT0pKipBlWXzwwQc+y/v06SN+//vfCyFKp1TGjBnjM6Zbt25i8uTJRW7jOT9ALF682O9yj1JZtGiRaNWqlXfm46Fjx47iqaeeEkII8cADD4gRI0YUe841Ed2nUgO56aabfGz4CQkJtGzZEovF4rPs8OHDPtu1b9/e53NCQkIhO25CQgJXrlzxe9wTJ07gdDrp3r27z/IePXqwevXqQjKGhob6LDt9+jR//etf2bp1K1euXEHTNGw2G2fPni3hjH05ePAg3bt397kG7du3JyIigoMHD9K7d28A6tWr5/UFANSvXx8hBFeuXKFRo0alOmZBunbt6vN5x44d5ObmUqdOHZ/lTqeTxMREn2UdOnTw/t9sNhMbG0tKSgoAhw4dol69ej72/3r16nHjjTcWK8/Bgwfp2bOnj8+ja9euWK1WDh48WEje8nDw4EHMZrPPfWAwGLjllls4ePCgz9gePXp4/y9JEj179uTQoUNF7rtDhw4+16dr167k5OTw/PPPM2vWLL/biLya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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_can.sort_values(by='Total', axis=0, inplace=True, ascending=False)\n",
"\n",
"topfive = df_can.head(5)\n",
"topfive = topfive[years].transpose()\n",
"\n",
"topfive.index = topfive.index.map(int)\n",
"topfive.plot(kind='line')\n",
"plt.title('Immigration Trend of Top 5 Countries')\n",
"plt.ylabel('Number of Immigrants')\n",
"plt.xlabel('Years')\n",
"plt.show()\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 **edX** called *Visualizing Data with Python*. If you accessed this notebook outside the course, you can take this course online by clicking [here](http://cocl.us/DV0101EN_edX_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.10"
},
"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