Skip to content

Instantly share code, notes, and snippets.

@ikoustou
Created March 14, 2018 17:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ikoustou/9da32204fd0b238573b6f1a6cbfa806e to your computer and use it in GitHub Desktop.
Save ikoustou/9da32204fd0b238573b6f1a6cbfa806e to your computer and use it in GitHub Desktop.
Seaborn Matrix Plots
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import seaborn as sns\n",
"import numpy as np\n",
"%matplotlib inline "
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"We are going to use data offered from gov.uk regarding sales volume of properties in UK. The link is\n",
"http://publicdata.landregistry.gov.uk/market-trend-data/house-price-index-data/Sales-2017-12.csv?utm_medium=GOV.UK&utm_source=datadownload&utm_campaign=sales&utm_term=9.30_13_02_18"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import pandas as pd"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [],
"source": [
"df = pd.read_csv('Sales-2017-12.csv')"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Date</th>\n",
" <th>Region_Name</th>\n",
" <th>Area_Code</th>\n",
" <th>Sales_Volume</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1995-01-01</td>\n",
" <td>England</td>\n",
" <td>E92000001</td>\n",
" <td>47639</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1995-01-01</td>\n",
" <td>Wales</td>\n",
" <td>W92000004</td>\n",
" <td>1991</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1995-01-01</td>\n",
" <td>Inner London</td>\n",
" <td>E13000001</td>\n",
" <td>2890</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1995-01-01</td>\n",
" <td>Outer London</td>\n",
" <td>E13000002</td>\n",
" <td>4616</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1995-01-01</td>\n",
" <td>London</td>\n",
" <td>E12000007</td>\n",
" <td>7506</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Date Region_Name Area_Code Sales_Volume\n",
"0 1995-01-01 England E92000001 47639\n",
"1 1995-01-01 Wales W92000004 1991\n",
"2 1995-01-01 Inner London E13000001 2890\n",
"3 1995-01-01 Outer London E13000002 4616\n",
"4 1995-01-01 London E12000007 7506"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Find the sales for Reading"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df_R = df[df['Region_Name']=='Reading']"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'pandas.core.frame.DataFrame'>\n",
"Int64Index: 274 entries, 380 to 115556\n",
"Data columns (total 4 columns):\n",
"Date 274 non-null object\n",
"Region_Name 274 non-null object\n",
"Area_Code 274 non-null object\n",
"Sales_Volume 274 non-null int64\n",
"dtypes: int64(1), object(3)\n",
"memory usage: 10.7+ KB\n"
]
}
],
"source": [
"df_R.info() #274 rows"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Date</th>\n",
" <th>Region_Name</th>\n",
" <th>Area_Code</th>\n",
" <th>Sales_Volume</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>380</th>\n",
" <td>1995-01-01</td>\n",
" <td>Reading</td>\n",
" <td>E06000038</td>\n",
" <td>137</td>\n",
" </tr>\n",
" <tr>\n",
" <th>719</th>\n",
" <td>1995-02-01</td>\n",
" <td>Reading</td>\n",
" <td>E06000038</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1169</th>\n",
" <td>1995-03-01</td>\n",
" <td>Reading</td>\n",
" <td>E06000038</td>\n",
" <td>217</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1538</th>\n",
" <td>1995-04-01</td>\n",
" <td>Reading</td>\n",
" <td>E06000038</td>\n",
" <td>153</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1967</th>\n",
" <td>1995-05-01</td>\n",
" <td>Reading</td>\n",
" <td>E06000038</td>\n",
" <td>232</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Date Region_Name Area_Code Sales_Volume\n",
"380 1995-01-01 Reading E06000038 137\n",
"719 1995-02-01 Reading E06000038 161\n",
"1169 1995-03-01 Reading E06000038 217\n",
"1538 1995-04-01 Reading E06000038 153\n",
"1967 1995-05-01 Reading E06000038 232"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_R.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Create two more columns for Year and Month"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"C:\\Users\\koustoud\\AppData\\Local\\Continuum\\anaconda2\\lib\\site-packages\\ipykernel_launcher.py:1: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
" \"\"\"Entry point for launching an IPython kernel.\n"
]
}
],
"source": [
"df_R['Year']=df_R['Date'].str.slice(0,4)\n",
"\n",
"#ignore any warnings"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"C:\\Users\\koustoud\\AppData\\Local\\Continuum\\anaconda2\\lib\\site-packages\\ipykernel_launcher.py:2: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
" \n"
]
}
],
"source": [
"#A different approach using apply() method and a lambda function:\n",
"df_R['Month'] = df_R['Date'].apply(lambda s:s.split('-')[1])"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Date</th>\n",
" <th>Region_Name</th>\n",
" <th>Area_Code</th>\n",
" <th>Sales_Volume</th>\n",
" <th>Year</th>\n",
" <th>Month</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>113786</th>\n",
" <td>2017-06-01</td>\n",
" <td>Reading</td>\n",
" <td>E06000038</td>\n",
" <td>231</td>\n",
" <td>2017</td>\n",
" <td>06</td>\n",
" </tr>\n",
" <tr>\n",
" <th>114237</th>\n",
" <td>2017-07-01</td>\n",
" <td>Reading</td>\n",
" <td>E06000038</td>\n",
" <td>204</td>\n",
" <td>2017</td>\n",
" <td>07</td>\n",
" </tr>\n",
" <tr>\n",
" <th>114675</th>\n",
" <td>2017-08-01</td>\n",
" <td>Reading</td>\n",
" <td>E06000038</td>\n",
" <td>215</td>\n",
" <td>2017</td>\n",
" <td>08</td>\n",
" </tr>\n",
" <tr>\n",
" <th>115136</th>\n",
" <td>2017-09-01</td>\n",
" <td>Reading</td>\n",
" <td>E06000038</td>\n",
" <td>173</td>\n",
" <td>2017</td>\n",
" <td>09</td>\n",
" </tr>\n",
" <tr>\n",
" <th>115556</th>\n",
" <td>2017-10-01</td>\n",
" <td>Reading</td>\n",
" <td>E06000038</td>\n",
" <td>173</td>\n",
" <td>2017</td>\n",
" <td>10</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Date Region_Name Area_Code Sales_Volume Year Month\n",
"113786 2017-06-01 Reading E06000038 231 2017 06\n",
"114237 2017-07-01 Reading E06000038 204 2017 07\n",
"114675 2017-08-01 Reading E06000038 215 2017 08\n",
"115136 2017-09-01 Reading E06000038 173 2017 09\n",
"115556 2017-10-01 Reading E06000038 173 2017 10"
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_R.tail()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Create a Pivot Table with 'Month' as rows, 'Year' as columns and 'Sales_Volume' as data"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"pivot = df_R.pivot_table(values='Sales_Volume' , index='Month', columns='Year')"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th>Year</th>\n",
" <th>1995</th>\n",
" <th>1996</th>\n",
" <th>1997</th>\n",
" <th>1998</th>\n",
" <th>1999</th>\n",
" <th>2000</th>\n",
" <th>2001</th>\n",
" <th>2002</th>\n",
" <th>2003</th>\n",
" <th>2004</th>\n",
" <th>...</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>2014</th>\n",
" <th>2015</th>\n",
" <th>2016</th>\n",
" <th>2017</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Month</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>01</th>\n",
" <td>137.0</td>\n",
" <td>151.0</td>\n",
" <td>210.0</td>\n",
" <td>222.0</td>\n",
" <td>234.0</td>\n",
" <td>226.0</td>\n",
" <td>261.0</td>\n",
" <td>250.0</td>\n",
" <td>250.0</td>\n",
" <td>301.0</td>\n",
" <td>...</td>\n",
" <td>228.0</td>\n",
" <td>86.0</td>\n",
" <td>109.0</td>\n",
" <td>132.0</td>\n",
" <td>157.0</td>\n",
" <td>167.0</td>\n",
" <td>252.0</td>\n",
" <td>195.0</td>\n",
" <td>188.0</td>\n",
" <td>194.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>02</th>\n",
" <td>161.0</td>\n",
" <td>164.0</td>\n",
" <td>248.0</td>\n",
" <td>217.0</td>\n",
" <td>220.0</td>\n",
" <td>294.0</td>\n",
" <td>259.0</td>\n",
" <td>242.0</td>\n",
" <td>255.0</td>\n",
" <td>272.0</td>\n",
" <td>...</td>\n",
" <td>217.0</td>\n",
" <td>93.0</td>\n",
" <td>140.0</td>\n",
" <td>119.0</td>\n",
" <td>141.0</td>\n",
" <td>164.0</td>\n",
" <td>183.0</td>\n",
" <td>228.0</td>\n",
" <td>225.0</td>\n",
" <td>188.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>03</th>\n",
" <td>217.0</td>\n",
" <td>244.0</td>\n",
" <td>279.0</td>\n",
" <td>280.0</td>\n",
" <td>343.0</td>\n",
" <td>316.0</td>\n",
" <td>299.0</td>\n",
" <td>329.0</td>\n",
" <td>240.0</td>\n",
" <td>301.0</td>\n",
" <td>...</td>\n",
" <td>191.0</td>\n",
" <td>138.0</td>\n",
" <td>152.0</td>\n",
" <td>146.0</td>\n",
" <td>244.0</td>\n",
" <td>182.0</td>\n",
" <td>196.0</td>\n",
" <td>239.0</td>\n",
" <td>461.0</td>\n",
" <td>204.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>04</th>\n",
" <td>153.0</td>\n",
" <td>203.0</td>\n",
" <td>269.0</td>\n",
" <td>268.0</td>\n",
" <td>310.0</td>\n",
" <td>318.0</td>\n",
" <td>321.0</td>\n",
" <td>306.0</td>\n",
" <td>246.0</td>\n",
" <td>366.0</td>\n",
" <td>...</td>\n",
" <td>238.0</td>\n",
" <td>143.0</td>\n",
" <td>187.0</td>\n",
" <td>152.0</td>\n",
" <td>102.0</td>\n",
" <td>185.0</td>\n",
" <td>221.0</td>\n",
" <td>250.0</td>\n",
" <td>194.0</td>\n",
" <td>154.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>05</th>\n",
" <td>232.0</td>\n",
" <td>251.0</td>\n",
" <td>290.0</td>\n",
" <td>298.0</td>\n",
" <td>303.0</td>\n",
" <td>326.0</td>\n",
" <td>362.0</td>\n",
" <td>412.0</td>\n",
" <td>287.0</td>\n",
" <td>358.0</td>\n",
" <td>...</td>\n",
" <td>205.0</td>\n",
" <td>147.0</td>\n",
" <td>140.0</td>\n",
" <td>137.0</td>\n",
" <td>149.0</td>\n",
" <td>220.0</td>\n",
" <td>240.0</td>\n",
" <td>305.0</td>\n",
" <td>155.0</td>\n",
" <td>161.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>06</th>\n",
" <td>209.0</td>\n",
" <td>281.0</td>\n",
" <td>324.0</td>\n",
" <td>306.0</td>\n",
" <td>356.0</td>\n",
" <td>396.0</td>\n",
" <td>361.0</td>\n",
" <td>347.0</td>\n",
" <td>296.0</td>\n",
" <td>394.0</td>\n",
" <td>...</td>\n",
" <td>203.0</td>\n",
" <td>217.0</td>\n",
" <td>200.0</td>\n",
" <td>164.0</td>\n",
" <td>146.0</td>\n",
" <td>240.0</td>\n",
" <td>251.0</td>\n",
" <td>254.0</td>\n",
" <td>261.0</td>\n",
" <td>231.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>07</th>\n",
" <td>241.0</td>\n",
" <td>290.0</td>\n",
" <td>312.0</td>\n",
" <td>374.0</td>\n",
" <td>463.0</td>\n",
" <td>329.0</td>\n",
" <td>401.0</td>\n",
" <td>428.0</td>\n",
" <td>358.0</td>\n",
" <td>455.0</td>\n",
" <td>...</td>\n",
" <td>136.0</td>\n",
" <td>217.0</td>\n",
" <td>206.0</td>\n",
" <td>259.0</td>\n",
" <td>186.0</td>\n",
" <td>239.0</td>\n",
" <td>262.0</td>\n",
" <td>285.0</td>\n",
" <td>291.0</td>\n",
" <td>204.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>08</th>\n",
" <td>244.0</td>\n",
" <td>345.0</td>\n",
" <td>343.0</td>\n",
" <td>366.0</td>\n",
" <td>303.0</td>\n",
" <td>297.0</td>\n",
" <td>393.0</td>\n",
" <td>398.0</td>\n",
" <td>357.0</td>\n",
" <td>359.0</td>\n",
" <td>...</td>\n",
" <td>160.0</td>\n",
" <td>199.0</td>\n",
" <td>204.0</td>\n",
" <td>200.0</td>\n",
" <td>222.0</td>\n",
" <td>297.0</td>\n",
" <td>313.0</td>\n",
" <td>288.0</td>\n",
" <td>255.0</td>\n",
" <td>215.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>09</th>\n",
" <td>223.0</td>\n",
" <td>311.0</td>\n",
" <td>359.0</td>\n",
" <td>334.0</td>\n",
" <td>360.0</td>\n",
" <td>279.0</td>\n",
" <td>279.0</td>\n",
" <td>304.0</td>\n",
" <td>331.0</td>\n",
" <td>364.0</td>\n",
" <td>...</td>\n",
" <td>136.0</td>\n",
" <td>237.0</td>\n",
" <td>200.0</td>\n",
" <td>185.0</td>\n",
" <td>168.0</td>\n",
" <td>267.0</td>\n",
" <td>257.0</td>\n",
" <td>259.0</td>\n",
" <td>213.0</td>\n",
" <td>173.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>182.0</td>\n",
" <td>286.0</td>\n",
" <td>350.0</td>\n",
" <td>340.0</td>\n",
" <td>383.0</td>\n",
" <td>243.0</td>\n",
" <td>342.0</td>\n",
" <td>318.0</td>\n",
" <td>398.0</td>\n",
" <td>331.0</td>\n",
" <td>...</td>\n",
" <td>146.0</td>\n",
" <td>230.0</td>\n",
" <td>187.0</td>\n",
" <td>169.0</td>\n",
" <td>214.0</td>\n",
" <td>253.0</td>\n",
" <td>282.0</td>\n",
" <td>281.0</td>\n",
" <td>201.0</td>\n",
" <td>173.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>206.0</td>\n",
" <td>280.0</td>\n",
" <td>270.0</td>\n",
" <td>293.0</td>\n",
" <td>354.0</td>\n",
" <td>244.0</td>\n",
" <td>355.0</td>\n",
" <td>319.0</td>\n",
" <td>273.0</td>\n",
" <td>320.0</td>\n",
" <td>...</td>\n",
" <td>94.0</td>\n",
" <td>190.0</td>\n",
" <td>164.0</td>\n",
" <td>161.0</td>\n",
" <td>198.0</td>\n",
" <td>262.0</td>\n",
" <td>237.0</td>\n",
" <td>243.0</td>\n",
" <td>184.0</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>196.0</td>\n",
" <td>303.0</td>\n",
" <td>284.0</td>\n",
" <td>316.0</td>\n",
" <td>366.0</td>\n",
" <td>291.0</td>\n",
" <td>292.0</td>\n",
" <td>303.0</td>\n",
" <td>354.0</td>\n",
" <td>307.0</td>\n",
" <td>...</td>\n",
" <td>134.0</td>\n",
" <td>298.0</td>\n",
" <td>158.0</td>\n",
" <td>199.0</td>\n",
" <td>204.0</td>\n",
" <td>261.0</td>\n",
" <td>276.0</td>\n",
" <td>227.0</td>\n",
" <td>214.0</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>12 rows × 23 columns</p>\n",
"</div>"
],
"text/plain": [
"Year 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 \\\n",
"Month \n",
"01 137.0 151.0 210.0 222.0 234.0 226.0 261.0 250.0 250.0 301.0 \n",
"02 161.0 164.0 248.0 217.0 220.0 294.0 259.0 242.0 255.0 272.0 \n",
"03 217.0 244.0 279.0 280.0 343.0 316.0 299.0 329.0 240.0 301.0 \n",
"04 153.0 203.0 269.0 268.0 310.0 318.0 321.0 306.0 246.0 366.0 \n",
"05 232.0 251.0 290.0 298.0 303.0 326.0 362.0 412.0 287.0 358.0 \n",
"06 209.0 281.0 324.0 306.0 356.0 396.0 361.0 347.0 296.0 394.0 \n",
"07 241.0 290.0 312.0 374.0 463.0 329.0 401.0 428.0 358.0 455.0 \n",
"08 244.0 345.0 343.0 366.0 303.0 297.0 393.0 398.0 357.0 359.0 \n",
"09 223.0 311.0 359.0 334.0 360.0 279.0 279.0 304.0 331.0 364.0 \n",
"10 182.0 286.0 350.0 340.0 383.0 243.0 342.0 318.0 398.0 331.0 \n",
"11 206.0 280.0 270.0 293.0 354.0 244.0 355.0 319.0 273.0 320.0 \n",
"12 196.0 303.0 284.0 316.0 366.0 291.0 292.0 303.0 354.0 307.0 \n",
"\n",
"Year ... 2008 2009 2010 2011 2012 2013 2014 2015 2016 \\\n",
"Month ... \n",
"01 ... 228.0 86.0 109.0 132.0 157.0 167.0 252.0 195.0 188.0 \n",
"02 ... 217.0 93.0 140.0 119.0 141.0 164.0 183.0 228.0 225.0 \n",
"03 ... 191.0 138.0 152.0 146.0 244.0 182.0 196.0 239.0 461.0 \n",
"04 ... 238.0 143.0 187.0 152.0 102.0 185.0 221.0 250.0 194.0 \n",
"05 ... 205.0 147.0 140.0 137.0 149.0 220.0 240.0 305.0 155.0 \n",
"06 ... 203.0 217.0 200.0 164.0 146.0 240.0 251.0 254.0 261.0 \n",
"07 ... 136.0 217.0 206.0 259.0 186.0 239.0 262.0 285.0 291.0 \n",
"08 ... 160.0 199.0 204.0 200.0 222.0 297.0 313.0 288.0 255.0 \n",
"09 ... 136.0 237.0 200.0 185.0 168.0 267.0 257.0 259.0 213.0 \n",
"10 ... 146.0 230.0 187.0 169.0 214.0 253.0 282.0 281.0 201.0 \n",
"11 ... 94.0 190.0 164.0 161.0 198.0 262.0 237.0 243.0 184.0 \n",
"12 ... 134.0 298.0 158.0 199.0 204.0 261.0 276.0 227.0 214.0 \n",
"\n",
"Year 2017 \n",
"Month \n",
"01 194.0 \n",
"02 188.0 \n",
"03 204.0 \n",
"04 154.0 \n",
"05 161.0 \n",
"06 231.0 \n",
"07 204.0 \n",
"08 215.0 \n",
"09 173.0 \n",
"10 173.0 \n",
"11 NaN \n",
"12 NaN \n",
"\n",
"[12 rows x 23 columns]"
]
},
"execution_count": 37,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pivot"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Create a Heatmap for the Sales_Volume of Reading during the months of years 1995-2017 (the previous pivot table).\n",
"For heatmaps the data needs to be in a \"matrix\" form and by this I mean there must be variables not only in columns but in rows as well. That is why we created the pivot table."
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0xb324ac8>"
]
},
"execution_count": 40,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xee97ef0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.heatmap(data=pivot, cmap='coolwarm')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's make the graph bigger"
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0xe3ca470>"
]
},
"execution_count": 49,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xe49c9b0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"%matplotlib inline\n",
"\n",
"fig, ax = plt.subplots()\n",
"fig.set_size_inches(12,5)\n",
"ax.set_title ='Properties Sales Volume in Reading, UK'\n",
"\n",
"sns.heatmap(data=pivot, cmap='coolwarm')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Properties Sales Volume in Reading, UK"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"fig.savefig('Reading_Sales_Volume.png', dpi=200)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.14"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment