{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# *Analyzing CIA Factbook Data Using SQLite and Python*\n", "\n", "**In this Project we're working with data from the CIA World Factbook, a compendium of statistics about all of the countries on Earth. You can download the SQLite database, factbook.db, from this [GitHub repo](https://github.com/factbook/factbook.sql/releases).

The Factbook contains demographic information like:**\n", "\n", "> name - The name of the country.
\n", "> area - The total land and water area.
\n", "> area_land - The country's land area in square kilometers.
\n", "> area_water - The country's waterarea in square kilometers.
\n", "> population - The population as of 2015.
\n", "> population_growth - The annual population growth rate, as a percentage.
\n", "> birth_rate - The country's birth rate, or the number of births a year per 1,000 people.
\n", "> death_rate - The country's death rate, or the number of death a year per 1,000 people.
\n", "\n", "### Aim\n", "\n", "**Here, we'll explore the Python SQLite workflow to explore, analyze, and visualize data from this database**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Overview \n", "\n", "- Importing pandas and sqlite3.\n", "- Connecting to factbook.db and use pandas.read_sql_query() to return information on the tables in the database.\n", "- We will run another query to return first 5 rows of the facts table in the database." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
typenametbl_namerootpagesql
0tablefactsfacts2CREATE TABLE \"facts\" (\"id\" INTEGER PRIMARY KEY...
1tablesqlite_sequencesqlite_sequence3CREATE TABLE sqlite_sequence(name,seq)
\n", "
" ], "text/plain": [ " type name tbl_name rootpage \\\n", "0 table facts facts 2 \n", "1 table sqlite_sequence sqlite_sequence 3 \n", "\n", " sql \n", "0 CREATE TABLE \"facts\" (\"id\" INTEGER PRIMARY KEY... \n", "1 CREATE TABLE sqlite_sequence(name,seq) " ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import sqlite3\n", "import pandas as pd\n", "import warnings\n", "warnings.filterwarnings('ignore')\n", "\n", "conn = sqlite3.connect('factbook.db')\n", "query = \"SELECT * FROM sqlite_master WHERE type='table';\"\n", "pd.read_sql_query(query, conn)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
idcodenameareaarea_landarea_waterpopulationpopulation_growthbirth_ratedeath_ratemigration_ratecreated_atupdated_at
01afAfghanistan6522306522300325643422.3238.5713.891.512015-11-01 13:19:49.4617342015-11-01 13:19:49.461734
12alAlbania2874827398135030292780.3012.926.583.302015-11-01 13:19:54.4310822015-11-01 13:19:54.431082
23agAlgeria238174123817410395421661.8423.674.310.922015-11-01 13:19:59.9612862015-11-01 13:19:59.961286
34anAndorra4684680855800.128.136.960.002015-11-01 13:20:03.6599452015-11-01 13:20:03.659945
45aoAngola124670012467000196253532.7838.7811.490.462015-11-01 13:20:08.6250722015-11-01 13:20:08.625072
\n", "
" ], "text/plain": [ " id code name area area_land area_water population \\\n", "0 1 af Afghanistan 652230 652230 0 32564342 \n", "1 2 al Albania 28748 27398 1350 3029278 \n", "2 3 ag Algeria 2381741 2381741 0 39542166 \n", "3 4 an Andorra 468 468 0 85580 \n", "4 5 ao Angola 1246700 1246700 0 19625353 \n", "\n", " population_growth birth_rate death_rate migration_rate \\\n", "0 2.32 38.57 13.89 1.51 \n", "1 0.30 12.92 6.58 3.30 \n", "2 1.84 23.67 4.31 0.92 \n", "3 0.12 8.13 6.96 0.00 \n", "4 2.78 38.78 11.49 0.46 \n", "\n", " created_at updated_at \n", "0 2015-11-01 13:19:49.461734 2015-11-01 13:19:49.461734 \n", "1 2015-11-01 13:19:54.431082 2015-11-01 13:19:54.431082 \n", "2 2015-11-01 13:19:59.961286 2015-11-01 13:19:59.961286 \n", "3 2015-11-01 13:20:03.659945 2015-11-01 13:20:03.659945 \n", "4 2015-11-01 13:20:08.625072 2015-11-01 13:20:08.625072 " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "query1 = \"SELECT * FROM facts LIMIT 5\"\n", "pd.read_sql_query(query1, conn)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Summary Statistics \n", "\n", "We will write a single query that returns the:\n", "\n", " - minimum population\n", " - maximum population\n", " - minimum population growth\n", " - maximum population growth" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
min_popmax_popmin_pop_growthmax_pop_growth
0072564900110.04.02
\n", "
" ], "text/plain": [ " min_pop max_pop min_pop_growth max_pop_growth\n", "0 0 7256490011 0.0 4.02" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "query2 = '''SELECT MIN(population) 'min_pop', \n", "MAX(population) 'max_pop', \n", "MIN(population_growth) 'min_pop_growth', \n", "MAX(population_growth) 'max_pop_growth' \n", "FROM facts'''\n", "pd.read_sql_query(query2, conn)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exploring Outliers\n", "\n", "- We will write a query that return the countries with a population of 0.\n", "- We will write a query that return the countries with a population of 7256490011." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
idcodenameareaarea_landarea_waterpopulationpopulation_growthbirth_ratedeath_ratemigration_ratecreated_atupdated_at
0250ayAntarcticaNone280000.0None0NaNNaNNaNNone2015-11-01 13:38:44.8857462015-11-01 13:38:44.885746
1261xxWorldNoneNaNNone72564900111.0818.67.8None2015-11-01 13:39:09.9107212015-11-01 13:39:09.910721
\n", "
" ], "text/plain": [ " id code name area area_land area_water population \\\n", "0 250 ay Antarctica None 280000.0 None 0 \n", "1 261 xx World None NaN None 7256490011 \n", "\n", " population_growth birth_rate death_rate migration_rate \\\n", "0 NaN NaN NaN None \n", "1 1.08 18.6 7.8 None \n", "\n", " created_at updated_at \n", "0 2015-11-01 13:38:44.885746 2015-11-01 13:38:44.885746 \n", "1 2015-11-01 13:39:09.910721 2015-11-01 13:39:09.910721 " ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "query3 = '''SELECT * FROM facts WHERE population == 0 or population == 7256490011'''\n", "pd.read_sql_query(query3, conn)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Here, we can observe that country listed with zero population is Antartica, since there is nobody living there.
And, the country listed with 7.2 Billion people is actually the world itself where whole world's population gets counted in just a single country.**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Histograms\n", "\n", "- Using just the non-outlier rows, we will generate a 2 by 2 grid of histograms for the following columns:\n", "\n", " - population\n", " - population_growth\n", " - birth_rate\n", " - death_rate" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "%matplotlib inline\n", "\n", "fig = plt.figure(figsize =(10, 5))\n", "ax = fig.add_subplot(1, 1, 1)\n", "\n", "query4 = '''SELECT population, population_growth, \n", "birth_rate, death_rate \n", "FROM facts\n", "WHERE population != 0 and population != 7256490011;'''\n", "\n", "pd.read_sql_query(query4, conn).hist(ax = ax)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Further Exploration\n", "\n", "***Which countries have the highest population density?***" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
namepopulation_density
0Macau21168.964286
1Monaco15267.500000
2Singapore8259.784571
3Hong Kong6655.271202
4Gaza Strip5191.819444
5Gibraltar4876.333333
6Bahrain1771.859211
7Maldives1319.640940
8Malta1310.015823
9Bermuda1299.925926
10Bangladesh1297.977606
11Sint Maarten1167.323529
12Guernsey847.179487
13Jersey838.741379
14Taiwan725.825356
15Barbados675.823256
16Mauritius660.013300
17Aruba623.122222
18Lebanon604.565103
19Saint Martin588.037037
20San Marino541.311475
21Rwanda513.285755
22Korea, South506.760173
23Netherlands500.041424
24West Bank493.859220
25Nauru454.285714
26India420.993721
27Burundi418.312928
28Tuvalu418.038462
29Puerto Rico405.677227
.........
231Greenland0.026653
232Antarctica0.000000
233EthiopiaNaN
234South SudanNaN
235SudanNaN
236Holy See (Vatican City)NaN
237European UnionNaN
238Ashmore and Cartier IslandsNaN
239Coral Sea IslandsNaN
240Heard Island and McDonald IslandsNaN
241Clipperton IslandNaN
242French Southern and Antarctic LandsNaN
243Saint BarthelemyNaN
244Bouvet IslandNaN
245Jan MayenNaN
246AkrotiriNaN
247British Indian Ocean TerritoryNaN
248DhekeliaNaN
249South Georgia and South Sandwich IslandsNaN
250Navassa IslandNaN
251Wake IslandNaN
252United States Pacific Island Wildlife RefugesNaN
253Paracel IslandsNaN
254Spratly IslandsNaN
255Arctic OceanNaN
256Atlantic OceanNaN
257Indian OceanNaN
258Pacific OceanNaN
259Southern OceanNaN
260WorldNaN
\n", "

261 rows × 2 columns

\n", "
" ], "text/plain": [ " name population_density\n", "0 Macau 21168.964286\n", "1 Monaco 15267.500000\n", "2 Singapore 8259.784571\n", "3 Hong Kong 6655.271202\n", "4 Gaza Strip 5191.819444\n", "5 Gibraltar 4876.333333\n", "6 Bahrain 1771.859211\n", "7 Maldives 1319.640940\n", "8 Malta 1310.015823\n", "9 Bermuda 1299.925926\n", "10 Bangladesh 1297.977606\n", "11 Sint Maarten 1167.323529\n", "12 Guernsey 847.179487\n", "13 Jersey 838.741379\n", "14 Taiwan 725.825356\n", "15 Barbados 675.823256\n", "16 Mauritius 660.013300\n", "17 Aruba 623.122222\n", "18 Lebanon 604.565103\n", "19 Saint Martin 588.037037\n", "20 San Marino 541.311475\n", "21 Rwanda 513.285755\n", "22 Korea, South 506.760173\n", "23 Netherlands 500.041424\n", "24 West Bank 493.859220\n", "25 Nauru 454.285714\n", "26 India 420.993721\n", "27 Burundi 418.312928\n", "28 Tuvalu 418.038462\n", "29 Puerto Rico 405.677227\n", ".. ... ...\n", "231 Greenland 0.026653\n", "232 Antarctica 0.000000\n", "233 Ethiopia NaN\n", "234 South Sudan NaN\n", "235 Sudan NaN\n", "236 Holy See (Vatican City) NaN\n", "237 European Union NaN\n", "238 Ashmore and Cartier Islands NaN\n", "239 Coral Sea Islands NaN\n", "240 Heard Island and McDonald Islands NaN\n", "241 Clipperton Island NaN\n", "242 French Southern and Antarctic Lands NaN\n", "243 Saint Barthelemy NaN\n", "244 Bouvet Island NaN\n", "245 Jan Mayen NaN\n", "246 Akrotiri NaN\n", "247 British Indian Ocean Territory NaN\n", "248 Dhekelia NaN\n", "249 South Georgia and South Sandwich Islands NaN\n", "250 Navassa Island NaN\n", "251 Wake Island NaN\n", "252 United States Pacific Island Wildlife Refuges NaN\n", "253 Paracel Islands NaN\n", "254 Spratly Islands NaN\n", "255 Arctic Ocean NaN\n", "256 Atlantic Ocean NaN\n", "257 Indian Ocean NaN\n", "258 Pacific Ocean NaN\n", "259 Southern Ocean NaN\n", "260 World NaN\n", "\n", "[261 rows x 2 columns]" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "query5 = '''SELECT name, cast(population as float)/cast(area_land as float) 'population_density' \n", "FROM facts ORDER BY population_density desc'''\n", "\n", "pd.read_sql_query(query5, conn)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "***Histogram of population densities.***" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig1 = plt.figure(figsize=(10, 5))\n", "ax1 = fig1.add_subplot(1, 1, 1)\n", "pd.read_sql_query(query5, conn).hist(ax = ax1)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "***Which countries have the highest ratios of water to land?***" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
namewater_land_ratio
0British Indian Ocean Territory905.666667
1Virgin Islands4.520231
2Puerto Rico0.554791
3Bahamas, The0.386613
4Guinea-Bissau0.284673
5Malawi0.259396
6Netherlands0.225710
7Uganda0.222922
8Eritrea0.164356
9Liberia0.156240
10Bangladesh0.140509
11Gambia, The0.116601
12Taiwan0.115313
13Finland0.112996
14India0.105634
15Canada0.098000
16Sweden0.097384
17Colombia0.096476
18Brunei0.094967
19Guyana0.092050
20French Polynesia0.088842
21Nicaragua0.086507
22Burundi0.083723
23Iran0.076130
24United States0.072551
25Tanzania0.069429
26Vietnam0.068178
27Rwanda0.067699
28Estonia0.067000
29Norway0.064151
.........
231Turks and Caicos Islands0.000000
232American Samoa0.000000
233Guam0.000000
234Navassa Island0.000000
235Northern Mariana Islands0.000000
236Wake Island0.000000
237Gaza Strip0.000000
238Paracel Islands0.000000
239Spratly Islands0.000000
240Western Sahara0.000000
241EthiopiaNaN
242New ZealandNaN
243South SudanNaN
244SudanNaN
245Holy See (Vatican City)NaN
246European UnionNaN
247GreenlandNaN
248French Southern and Antarctic LandsNaN
249Saint BarthelemyNaN
250Saint MartinNaN
251AkrotiriNaN
252DhekeliaNaN
253United States Pacific Island Wildlife RefugesNaN
254AntarcticaNaN
255Arctic OceanNaN
256Atlantic OceanNaN
257Indian OceanNaN
258Pacific OceanNaN
259Southern OceanNaN
260WorldNaN
\n", "

261 rows × 2 columns

\n", "
" ], "text/plain": [ " name water_land_ratio\n", "0 British Indian Ocean Territory 905.666667\n", "1 Virgin Islands 4.520231\n", "2 Puerto Rico 0.554791\n", "3 Bahamas, The 0.386613\n", "4 Guinea-Bissau 0.284673\n", "5 Malawi 0.259396\n", "6 Netherlands 0.225710\n", "7 Uganda 0.222922\n", "8 Eritrea 0.164356\n", "9 Liberia 0.156240\n", "10 Bangladesh 0.140509\n", "11 Gambia, The 0.116601\n", "12 Taiwan 0.115313\n", "13 Finland 0.112996\n", "14 India 0.105634\n", "15 Canada 0.098000\n", "16 Sweden 0.097384\n", "17 Colombia 0.096476\n", "18 Brunei 0.094967\n", "19 Guyana 0.092050\n", "20 French Polynesia 0.088842\n", "21 Nicaragua 0.086507\n", "22 Burundi 0.083723\n", "23 Iran 0.076130\n", "24 United States 0.072551\n", "25 Tanzania 0.069429\n", "26 Vietnam 0.068178\n", "27 Rwanda 0.067699\n", "28 Estonia 0.067000\n", "29 Norway 0.064151\n", ".. ... ...\n", "231 Turks and Caicos Islands 0.000000\n", "232 American Samoa 0.000000\n", "233 Guam 0.000000\n", "234 Navassa Island 0.000000\n", "235 Northern Mariana Islands 0.000000\n", "236 Wake Island 0.000000\n", "237 Gaza Strip 0.000000\n", "238 Paracel Islands 0.000000\n", "239 Spratly Islands 0.000000\n", "240 Western Sahara 0.000000\n", "241 Ethiopia NaN\n", "242 New Zealand NaN\n", "243 South Sudan NaN\n", "244 Sudan NaN\n", "245 Holy See (Vatican City) NaN\n", "246 European Union NaN\n", "247 Greenland NaN\n", "248 French Southern and Antarctic Lands NaN\n", "249 Saint Barthelemy NaN\n", "250 Saint Martin NaN\n", "251 Akrotiri NaN\n", "252 Dhekelia NaN\n", "253 United States Pacific Island Wildlife Refuges NaN\n", "254 Antarctica NaN\n", "255 Arctic Ocean NaN\n", "256 Atlantic Ocean NaN\n", "257 Indian Ocean NaN\n", "258 Pacific Ocean NaN\n", "259 Southern Ocean NaN\n", "260 World NaN\n", "\n", "[261 rows x 2 columns]" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "query6 = '''SELECT name, cast(area_water as float)/cast(area_land as float) \n", "'water_land_ratio' FROM facts ORDER BY water_land_ratio desc'''\n", "pd.read_sql_query(query6, conn)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "***Which countries have more water than land?***" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
namediff
0British Indian Ocean Territory54280.0
1Virgin Islands1218.0
\n", "
" ], "text/plain": [ " name diff\n", "0 British Indian Ocean Territory 54280.0\n", "1 Virgin Islands 1218.0" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "query7 = '''SELECT name, cast(area_water as float) - cast(area_land as float) \n", "'diff' FROM facts \n", "WHERE diff > 0\n", "ORDER BY diff desc'''\n", "pd.read_sql_query(query7, conn)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "***British Indian Ocean Territory and Virgin Islands are the only two countries with more water area than land.***" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.8" } }, "nbformat": 4, "nbformat_minor": 2 }