Skip to content

Instantly share code, notes, and snippets.

@TomAugspurger
Last active March 17, 2022 18:50
Show Gist options
  • Star 19 You must be signed in to star a gist
  • Fork 11 You must be signed in to fork a gist
  • Save TomAugspurger/6e052140eaa5fdb6e8c0 to your computer and use it in GitHub Desktop.
Save TomAugspurger/6e052140eaa5fdb6e8c0 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This notebook compares [pandas](http://pandas.pydata.org)\n",
"and [dplyr](http://cran.r-project.org/web/packages/dplyr/index.html).\n",
"The comparison is just on syntax (verbage), not performance. Whether you're an R user looking to switch to pandas (or the other way around), I hope this guide will help ease the transition.\n",
"\n",
"We'll work through the [introductory dplyr vignette](http://cran.r-project.org/web/packages/dplyr/vignettes/introduction.html) to analyze some flight data.\n",
"\n",
"I'm working on a better layout to show the two packages side by side.\n",
"But for now I'm just putting the ``dplyr`` code in a comment above each python call."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"# Some prep work to get the data from R and into pandas\n",
"%matplotlib inline\n",
"%load_ext rpy2.ipython\n",
"\n",
"import pandas as pd\n",
"import seaborn as sns\n",
"\n",
"pd.set_option(\"display.max_rows\", 5)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# %%R\n",
"# install.packages(\"nycflights13\", repos='http://cran.us.r-project.org')"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"# %%R\n",
"# library(nycflights13)\n",
"# write.csv(flights, \"flights.csv\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Data: nycflights13"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"flights = pd.read_csv(\"flights.csv\", index_col=0)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"(336776, 16)"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# dim(flights) <--- The R code\n",
"flights.shape # <--- The python code"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th>dep_time</th>\n",
" <th>dep_delay</th>\n",
" <th>arr_time</th>\n",
" <th>arr_delay</th>\n",
" <th>carrier</th>\n",
" <th>tailnum</th>\n",
" <th>flight</th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" <th>air_time</th>\n",
" <th>distance</th>\n",
" <th>hour</th>\n",
" <th>minute</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>517</td>\n",
" <td>2</td>\n",
" <td>830</td>\n",
" <td>11</td>\n",
" <td>UA</td>\n",
" <td>N14228</td>\n",
" <td>1545</td>\n",
" <td>EWR</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1400</td>\n",
" <td>5</td>\n",
" <td>17</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>533</td>\n",
" <td>4</td>\n",
" <td>850</td>\n",
" <td>20</td>\n",
" <td>UA</td>\n",
" <td>N24211</td>\n",
" <td>1714</td>\n",
" <td>LGA</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1416</td>\n",
" <td>5</td>\n",
" <td>33</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>542</td>\n",
" <td>2</td>\n",
" <td>923</td>\n",
" <td>33</td>\n",
" <td>AA</td>\n",
" <td>N619AA</td>\n",
" <td>1141</td>\n",
" <td>JFK</td>\n",
" <td>MIA</td>\n",
" <td>160</td>\n",
" <td>1089</td>\n",
" <td>5</td>\n",
" <td>42</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>544</td>\n",
" <td>-1</td>\n",
" <td>1004</td>\n",
" <td>-18</td>\n",
" <td>B6</td>\n",
" <td>N804JB</td>\n",
" <td>725</td>\n",
" <td>JFK</td>\n",
" <td>BQN</td>\n",
" <td>183</td>\n",
" <td>1576</td>\n",
" <td>5</td>\n",
" <td>44</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>554</td>\n",
" <td>-6</td>\n",
" <td>812</td>\n",
" <td>-25</td>\n",
" <td>DL</td>\n",
" <td>N668DN</td>\n",
" <td>461</td>\n",
" <td>LGA</td>\n",
" <td>ATL</td>\n",
" <td>116</td>\n",
" <td>762</td>\n",
" <td>5</td>\n",
" <td>54</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" year month day dep_time dep_delay arr_time arr_delay carrier tailnum \\\n",
"1 2013 1 1 517 2 830 11 UA N14228 \n",
"2 2013 1 1 533 4 850 20 UA N24211 \n",
"3 2013 1 1 542 2 923 33 AA N619AA \n",
"4 2013 1 1 544 -1 1004 -18 B6 N804JB \n",
"5 2013 1 1 554 -6 812 -25 DL N668DN \n",
"\n",
" flight origin dest air_time distance hour minute \n",
"1 1545 EWR IAH 227 1400 5 17 \n",
"2 1714 LGA IAH 227 1416 5 33 \n",
"3 1141 JFK MIA 160 1089 5 42 \n",
"4 725 JFK BQN 183 1576 5 44 \n",
"5 461 LGA ATL 116 762 5 54 "
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# head(flights)\n",
"flights.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Single table verbs"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"``dplyr`` has a small set of nicely defined verbs. I've listed their closest pandas verbs.\n",
"\n",
"\n",
"<table>\n",
" <tr>\n",
" <td><b>dplyr</b></td>\n",
" <td><b>pandas</b></td>\n",
" </tr>\n",
" <tr>\n",
" <td><code>filter()</code> (and <code>slice()</code>)</td>\n",
" <td><code>query()</code> (and <code>loc[]</code>, <code>iloc[]</code>)</td>\n",
" </tr>\n",
" <tr>\n",
" <td><code>arrange()</code></td>\n",
" <td><code>sort_values</code> and <code>sort_index()</code></td>\n",
" </tr>\n",
" <tr>\n",
" <td><code>select() </code>(and <code>rename()</code>)</td>\n",
" <td><code>__getitem__ </code> (and <code>rename()</code>)</td>\n",
" </tr>\n",
" <tr>\n",
" <td><code>distinct()</code></td>\n",
" <td><code>drop_duplicates()</code></td>\n",
" </tr>\n",
" <tr>\n",
" <td><code>mutate()</code> (and <code>transmute()</code>)</td>\n",
" <td>assign</td>\n",
" </tr>\n",
" <tr>\n",
" <td>summarise()</td>\n",
" <td>None</td>\n",
" </tr>\n",
" <tr>\n",
" <td>sample_n() and sample_frac()</td>\n",
" <td><code>sample</code></td>\n",
" </tr>\n",
" <tr>\n",
" <td><code>%>%</code></td>\n",
" <td><code>pipe</code></td>\n",
" </tr>\n",
"\n",
"</table>\n",
"\n",
"\n",
"Some of the \"missing\" verbs in pandas are because there are other, different ways of achieving the same goal. For example `summarise` is spread across `mean`, `std`, etc. It's closest analog is actually the `.agg` method on a `GroupBy` object, as it reduces a DataFrame to a single row (per group). This isn't quite what `.describe` does.\n",
"\n",
"I've also included the `pipe` operator from R (`%>%`), the `pipe` method from pandas, even though it isn't quite a verb."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Filter rows with filter(), query()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th>dep_time</th>\n",
" <th>dep_delay</th>\n",
" <th>arr_time</th>\n",
" <th>arr_delay</th>\n",
" <th>carrier</th>\n",
" <th>tailnum</th>\n",
" <th>flight</th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" <th>air_time</th>\n",
" <th>distance</th>\n",
" <th>hour</th>\n",
" <th>minute</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>517</td>\n",
" <td>2</td>\n",
" <td>830</td>\n",
" <td>11</td>\n",
" <td>UA</td>\n",
" <td>N14228</td>\n",
" <td>1545</td>\n",
" <td>EWR</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1400</td>\n",
" <td>5</td>\n",
" <td>17</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>533</td>\n",
" <td>4</td>\n",
" <td>850</td>\n",
" <td>20</td>\n",
" <td>UA</td>\n",
" <td>N24211</td>\n",
" <td>1714</td>\n",
" <td>LGA</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1416</td>\n",
" <td>5</td>\n",
" <td>33</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",
" <td>...</td>\n",
" <td>...</td>\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>841</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>AA</td>\n",
" <td>N3EVAA</td>\n",
" <td>1925</td>\n",
" <td>LGA</td>\n",
" <td>MIA</td>\n",
" <td>NaN</td>\n",
" <td>1096</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>842</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>B6</td>\n",
" <td>N618JB</td>\n",
" <td>125</td>\n",
" <td>JFK</td>\n",
" <td>FLL</td>\n",
" <td>NaN</td>\n",
" <td>1069</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>842 rows × 16 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day dep_time dep_delay arr_time arr_delay carrier \\\n",
"1 2013 1 1 517 2 830 11 UA \n",
"2 2013 1 1 533 4 850 20 UA \n",
".. ... ... ... ... ... ... ... ... \n",
"841 2013 1 1 NaN NaN NaN NaN AA \n",
"842 2013 1 1 NaN NaN NaN NaN B6 \n",
"\n",
" tailnum flight origin dest air_time distance hour minute \n",
"1 N14228 1545 EWR IAH 227 1400 5 17 \n",
"2 N24211 1714 LGA IAH 227 1416 5 33 \n",
".. ... ... ... ... ... ... ... ... \n",
"841 N3EVAA 1925 LGA MIA NaN 1096 NaN NaN \n",
"842 N618JB 125 JFK FLL NaN 1069 NaN NaN \n",
"\n",
"[842 rows x 16 columns]"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# filter(flights, month == 1, day == 1)\n",
"flights.query(\"month == 1 & day == 1\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We see the first big *language* difference between R and python.\n",
"Many python programmers will shun the R code as too magical.\n",
"How is the programmer supposed to know that `month` and `day` are supposed to represent columns in the DataFrame?\n",
"On the other hand, to emulate this *very* convenient feature of R, python has to write the expression as a string, and evaluate the string in the context of the DataFrame."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The more verbose version:"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th>dep_time</th>\n",
" <th>dep_delay</th>\n",
" <th>arr_time</th>\n",
" <th>arr_delay</th>\n",
" <th>carrier</th>\n",
" <th>tailnum</th>\n",
" <th>flight</th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" <th>air_time</th>\n",
" <th>distance</th>\n",
" <th>hour</th>\n",
" <th>minute</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>517</td>\n",
" <td>2</td>\n",
" <td>830</td>\n",
" <td>11</td>\n",
" <td>UA</td>\n",
" <td>N14228</td>\n",
" <td>1545</td>\n",
" <td>EWR</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1400</td>\n",
" <td>5</td>\n",
" <td>17</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>533</td>\n",
" <td>4</td>\n",
" <td>850</td>\n",
" <td>20</td>\n",
" <td>UA</td>\n",
" <td>N24211</td>\n",
" <td>1714</td>\n",
" <td>LGA</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1416</td>\n",
" <td>5</td>\n",
" <td>33</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",
" <td>...</td>\n",
" <td>...</td>\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>841</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>AA</td>\n",
" <td>N3EVAA</td>\n",
" <td>1925</td>\n",
" <td>LGA</td>\n",
" <td>MIA</td>\n",
" <td>NaN</td>\n",
" <td>1096</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>842</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>B6</td>\n",
" <td>N618JB</td>\n",
" <td>125</td>\n",
" <td>JFK</td>\n",
" <td>FLL</td>\n",
" <td>NaN</td>\n",
" <td>1069</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>842 rows × 16 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day dep_time dep_delay arr_time arr_delay carrier \\\n",
"1 2013 1 1 517 2 830 11 UA \n",
"2 2013 1 1 533 4 850 20 UA \n",
".. ... ... ... ... ... ... ... ... \n",
"841 2013 1 1 NaN NaN NaN NaN AA \n",
"842 2013 1 1 NaN NaN NaN NaN B6 \n",
"\n",
" tailnum flight origin dest air_time distance hour minute \n",
"1 N14228 1545 EWR IAH 227 1400 5 17 \n",
"2 N24211 1714 LGA IAH 227 1416 5 33 \n",
".. ... ... ... ... ... ... ... ... \n",
"841 N3EVAA 1925 LGA MIA NaN 1096 NaN NaN \n",
"842 N618JB 125 JFK FLL NaN 1069 NaN NaN \n",
"\n",
"[842 rows x 16 columns]"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# flights[flights$month == 1 & flights$day == 1, ]\n",
"flights[(flights.month == 1) & (flights.day == 1)]"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th>dep_time</th>\n",
" <th>dep_delay</th>\n",
" <th>arr_time</th>\n",
" <th>arr_delay</th>\n",
" <th>carrier</th>\n",
" <th>tailnum</th>\n",
" <th>flight</th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" <th>air_time</th>\n",
" <th>distance</th>\n",
" <th>hour</th>\n",
" <th>minute</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>517</td>\n",
" <td>2</td>\n",
" <td>830</td>\n",
" <td>11</td>\n",
" <td>UA</td>\n",
" <td>N14228</td>\n",
" <td>1545</td>\n",
" <td>EWR</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1400</td>\n",
" <td>5</td>\n",
" <td>17</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>533</td>\n",
" <td>4</td>\n",
" <td>850</td>\n",
" <td>20</td>\n",
" <td>UA</td>\n",
" <td>N24211</td>\n",
" <td>1714</td>\n",
" <td>LGA</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1416</td>\n",
" <td>5</td>\n",
" <td>33</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",
" <td>...</td>\n",
" <td>...</td>\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>8</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>557</td>\n",
" <td>-3</td>\n",
" <td>709</td>\n",
" <td>-14</td>\n",
" <td>EV</td>\n",
" <td>N829AS</td>\n",
" <td>5708</td>\n",
" <td>LGA</td>\n",
" <td>IAD</td>\n",
" <td>53</td>\n",
" <td>229</td>\n",
" <td>5</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>557</td>\n",
" <td>-3</td>\n",
" <td>838</td>\n",
" <td>-8</td>\n",
" <td>B6</td>\n",
" <td>N593JB</td>\n",
" <td>79</td>\n",
" <td>JFK</td>\n",
" <td>MCO</td>\n",
" <td>140</td>\n",
" <td>944</td>\n",
" <td>5</td>\n",
" <td>57</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>9 rows × 16 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day dep_time dep_delay arr_time arr_delay carrier \\\n",
"1 2013 1 1 517 2 830 11 UA \n",
"2 2013 1 1 533 4 850 20 UA \n",
".. ... ... ... ... ... ... ... ... \n",
"8 2013 1 1 557 -3 709 -14 EV \n",
"9 2013 1 1 557 -3 838 -8 B6 \n",
"\n",
" tailnum flight origin dest air_time distance hour minute \n",
"1 N14228 1545 EWR IAH 227 1400 5 17 \n",
"2 N24211 1714 LGA IAH 227 1416 5 33 \n",
".. ... ... ... ... ... ... ... ... \n",
"8 N829AS 5708 LGA IAD 53 229 5 57 \n",
"9 N593JB 79 JFK MCO 140 944 5 57 \n",
"\n",
"[9 rows x 16 columns]"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# slice(flights, 1:10)\n",
"flights.iloc[:9]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Arrange rows with arrange(), sort()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th>dep_time</th>\n",
" <th>dep_delay</th>\n",
" <th>arr_time</th>\n",
" <th>arr_delay</th>\n",
" <th>carrier</th>\n",
" <th>tailnum</th>\n",
" <th>flight</th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" <th>air_time</th>\n",
" <th>distance</th>\n",
" <th>hour</th>\n",
" <th>minute</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>517</td>\n",
" <td>2</td>\n",
" <td>830</td>\n",
" <td>11</td>\n",
" <td>UA</td>\n",
" <td>N14228</td>\n",
" <td>1545</td>\n",
" <td>EWR</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1400</td>\n",
" <td>5</td>\n",
" <td>17</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>533</td>\n",
" <td>4</td>\n",
" <td>850</td>\n",
" <td>20</td>\n",
" <td>UA</td>\n",
" <td>N24211</td>\n",
" <td>1714</td>\n",
" <td>LGA</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1416</td>\n",
" <td>5</td>\n",
" <td>33</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",
" <td>...</td>\n",
" <td>...</td>\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>111295</th>\n",
" <td>2013</td>\n",
" <td>12</td>\n",
" <td>31</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>UA</td>\n",
" <td>NaN</td>\n",
" <td>219</td>\n",
" <td>EWR</td>\n",
" <td>ORD</td>\n",
" <td>NaN</td>\n",
" <td>719</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>111296</th>\n",
" <td>2013</td>\n",
" <td>12</td>\n",
" <td>31</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>UA</td>\n",
" <td>NaN</td>\n",
" <td>443</td>\n",
" <td>JFK</td>\n",
" <td>LAX</td>\n",
" <td>NaN</td>\n",
" <td>2475</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>336776 rows × 16 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day dep_time dep_delay arr_time arr_delay carrier \\\n",
"1 2013 1 1 517 2 830 11 UA \n",
"2 2013 1 1 533 4 850 20 UA \n",
"... ... ... ... ... ... ... ... ... \n",
"111295 2013 12 31 NaN NaN NaN NaN UA \n",
"111296 2013 12 31 NaN NaN NaN NaN UA \n",
"\n",
" tailnum flight origin dest air_time distance hour minute \n",
"1 N14228 1545 EWR IAH 227 1400 5 17 \n",
"2 N24211 1714 LGA IAH 227 1416 5 33 \n",
"... ... ... ... ... ... ... ... ... \n",
"111295 NaN 219 EWR ORD NaN 719 NaN NaN \n",
"111296 NaN 443 JFK LAX NaN 2475 NaN NaN \n",
"\n",
"[336776 rows x 16 columns]"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# arrange(flights, year, month, day) \n",
"flights.sort_values(['year', 'month', 'day'])"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th>dep_time</th>\n",
" <th>dep_delay</th>\n",
" <th>arr_time</th>\n",
" <th>arr_delay</th>\n",
" <th>carrier</th>\n",
" <th>tailnum</th>\n",
" <th>flight</th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" <th>air_time</th>\n",
" <th>distance</th>\n",
" <th>hour</th>\n",
" <th>minute</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>7073</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>9</td>\n",
" <td>641</td>\n",
" <td>1301</td>\n",
" <td>1242</td>\n",
" <td>1272</td>\n",
" <td>HA</td>\n",
" <td>N384HA</td>\n",
" <td>51</td>\n",
" <td>JFK</td>\n",
" <td>HNL</td>\n",
" <td>640</td>\n",
" <td>4983</td>\n",
" <td>6</td>\n",
" <td>41</td>\n",
" </tr>\n",
" <tr>\n",
" <th>235779</th>\n",
" <td>2013</td>\n",
" <td>6</td>\n",
" <td>15</td>\n",
" <td>1432</td>\n",
" <td>1137</td>\n",
" <td>1607</td>\n",
" <td>1127</td>\n",
" <td>MQ</td>\n",
" <td>N504MQ</td>\n",
" <td>3535</td>\n",
" <td>JFK</td>\n",
" <td>CMH</td>\n",
" <td>74</td>\n",
" <td>483</td>\n",
" <td>14</td>\n",
" <td>32</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",
" <td>...</td>\n",
" <td>...</td>\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>336775</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>MQ</td>\n",
" <td>N511MQ</td>\n",
" <td>3572</td>\n",
" <td>LGA</td>\n",
" <td>CLE</td>\n",
" <td>NaN</td>\n",
" <td>419</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>336776</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>MQ</td>\n",
" <td>N839MQ</td>\n",
" <td>3531</td>\n",
" <td>LGA</td>\n",
" <td>RDU</td>\n",
" <td>NaN</td>\n",
" <td>431</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>336776 rows × 16 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day dep_time dep_delay arr_time arr_delay carrier \\\n",
"7073 2013 1 9 641 1301 1242 1272 HA \n",
"235779 2013 6 15 1432 1137 1607 1127 MQ \n",
"... ... ... ... ... ... ... ... ... \n",
"336775 2013 9 30 NaN NaN NaN NaN MQ \n",
"336776 2013 9 30 NaN NaN NaN NaN MQ \n",
"\n",
" tailnum flight origin dest air_time distance hour minute \n",
"7073 N384HA 51 JFK HNL 640 4983 6 41 \n",
"235779 N504MQ 3535 JFK CMH 74 483 14 32 \n",
"... ... ... ... ... ... ... ... ... \n",
"336775 N511MQ 3572 LGA CLE NaN 419 NaN NaN \n",
"336776 N839MQ 3531 LGA RDU NaN 431 NaN NaN \n",
"\n",
"[336776 rows x 16 columns]"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# arrange(flights, desc(arr_delay))\n",
"flights.sort_values('arr_delay', ascending=False)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It's worth mentioning the other common sorting method for pandas DataFrames, `sort_index`. Pandas puts much more emphasis on indicies, (or row labels) than R.\n",
"This is a design decision that has positives and negatives, which we won't go into here. Suffice to say that when you need to sort a `DataFrame` by the index, use `DataFrame.sort_index`."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Select columns with select(), []"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>336775</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" </tr>\n",
" <tr>\n",
" <th>336776</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>336776 rows × 3 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day\n",
"1 2013 1 1\n",
"2 2013 1 1\n",
"... ... ... ...\n",
"336775 2013 9 30\n",
"336776 2013 9 30\n",
"\n",
"[336776 rows x 3 columns]"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# select(flights, year, month, day) \n",
"flights[['year', 'month', 'day']]"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>336775</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" </tr>\n",
" <tr>\n",
" <th>336776</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>336776 rows × 3 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day\n",
"1 2013 1 1\n",
"2 2013 1 1\n",
"... ... ... ...\n",
"336775 2013 9 30\n",
"336776 2013 9 30\n",
"\n",
"[336776 rows x 3 columns]"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# select(flights, year:day) \n",
"flights.loc[:, 'year':'day']"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# select(flights, -(year:day)) \n",
"\n",
"# No direct equivalent here. I would typically use\n",
"# flights.drop(cols_to_drop, axis=1)\n",
"# or fligths[flights.columns.difference(pd.Index(cols_to_drop))]\n",
"# point to dplyr!"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"1 N14228\n",
"2 N24211\n",
" ... \n",
"336775 N511MQ\n",
"336776 N839MQ\n",
"Name: tail_num, dtype: object"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# select(flights, tail_num = tailnum)\n",
"flights.rename(columns={'tailnum': 'tail_num'})['tail_num']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"But like Hadley mentions, not that useful since it only returns the one column. ``dplyr`` and ``pandas`` compare well here."
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th>dep_time</th>\n",
" <th>dep_delay</th>\n",
" <th>arr_time</th>\n",
" <th>arr_delay</th>\n",
" <th>carrier</th>\n",
" <th>tail_num</th>\n",
" <th>flight</th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" <th>air_time</th>\n",
" <th>distance</th>\n",
" <th>hour</th>\n",
" <th>minute</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>517</td>\n",
" <td>2</td>\n",
" <td>830</td>\n",
" <td>11</td>\n",
" <td>UA</td>\n",
" <td>N14228</td>\n",
" <td>1545</td>\n",
" <td>EWR</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1400</td>\n",
" <td>5</td>\n",
" <td>17</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>533</td>\n",
" <td>4</td>\n",
" <td>850</td>\n",
" <td>20</td>\n",
" <td>UA</td>\n",
" <td>N24211</td>\n",
" <td>1714</td>\n",
" <td>LGA</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1416</td>\n",
" <td>5</td>\n",
" <td>33</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",
" <td>...</td>\n",
" <td>...</td>\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>336775</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>MQ</td>\n",
" <td>N511MQ</td>\n",
" <td>3572</td>\n",
" <td>LGA</td>\n",
" <td>CLE</td>\n",
" <td>NaN</td>\n",
" <td>419</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>336776</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>MQ</td>\n",
" <td>N839MQ</td>\n",
" <td>3531</td>\n",
" <td>LGA</td>\n",
" <td>RDU</td>\n",
" <td>NaN</td>\n",
" <td>431</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>336776 rows × 16 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day dep_time dep_delay arr_time arr_delay carrier \\\n",
"1 2013 1 1 517 2 830 11 UA \n",
"2 2013 1 1 533 4 850 20 UA \n",
"... ... ... ... ... ... ... ... ... \n",
"336775 2013 9 30 NaN NaN NaN NaN MQ \n",
"336776 2013 9 30 NaN NaN NaN NaN MQ \n",
"\n",
" tail_num flight origin dest air_time distance hour minute \n",
"1 N14228 1545 EWR IAH 227 1400 5 17 \n",
"2 N24211 1714 LGA IAH 227 1416 5 33 \n",
"... ... ... ... ... ... ... ... ... \n",
"336775 N511MQ 3572 LGA CLE NaN 419 NaN NaN \n",
"336776 N839MQ 3531 LGA RDU NaN 431 NaN NaN \n",
"\n",
"[336776 rows x 16 columns]"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# rename(flights, tail_num = tailnum)\n",
"flights.rename(columns={'tailnum': 'tail_num'})"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Pandas is more verbose, but the the argument to `columns` can be any mapping. So it's often used with a function to perform a common task, say `df.rename(columns=lambda x: x.replace('-', '_'))` to replace any dashes with underscores. Also, ``rename`` (the pandas version) can be applied to the Index."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"One more note on the differences here.\n",
"Pandas could easily include a `.select` method.\n",
"[`xray`](http://xray.readthedocs.org/en/stable/), a library that builds on top of NumPy and pandas to offer labeled N-dimensional arrays (along with many other things) does [just that](http://xray.readthedocs.org/en/stable/indexing.html#indexing-with-labeled-dimensions).\n",
"Pandas chooses the `.loc` and `.iloc` accessors because *any valid selection is also a valid assignment*. This makes it easier to modify the data.\n",
"\n",
"```python\n",
"flights.loc[:, 'year':'day'] = data\n",
"```\n",
"\n",
"where `data` is an object that is, or can be broadcast to, the correct shape."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Extract distinct (unique) rows "
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array(['N14228', 'N24211', 'N619AA', ..., 'N776SK', 'N785SK', 'N557AS'], dtype=object)"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# distinct(select(flights, tailnum))\n",
"flights.tailnum.unique()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"FYI this returns a numpy array instead of a Series."
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>EWR</td>\n",
" <td>IAH</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>LGA</td>\n",
" <td>IAH</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>255456</th>\n",
" <td>EWR</td>\n",
" <td>ANC</td>\n",
" </tr>\n",
" <tr>\n",
" <th>275946</th>\n",
" <td>EWR</td>\n",
" <td>LGA</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>224 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" origin dest\n",
"1 EWR IAH\n",
"2 LGA IAH\n",
"... ... ...\n",
"255456 EWR ANC\n",
"275946 EWR LGA\n",
"\n",
"[224 rows x 2 columns]"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# distinct(select(flights, origin, dest))\n",
"flights[['origin', 'dest']].drop_duplicates()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"OK, so ``dplyr`` wins there from a consistency point of view. ``unique`` is only defined on Series, not DataFrames."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Add new columns with mutate() "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We at pandas shamelessly stole this for [v0.16.0](http://pandas.pydata.org/pandas-docs/stable/whatsnew.html#whatsnew-0160-enhancements-assign)."
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th>dep_time</th>\n",
" <th>dep_delay</th>\n",
" <th>arr_time</th>\n",
" <th>arr_delay</th>\n",
" <th>carrier</th>\n",
" <th>tailnum</th>\n",
" <th>flight</th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" <th>air_time</th>\n",
" <th>distance</th>\n",
" <th>hour</th>\n",
" <th>minute</th>\n",
" <th>gain</th>\n",
" <th>speed</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>517</td>\n",
" <td>2</td>\n",
" <td>830</td>\n",
" <td>11</td>\n",
" <td>UA</td>\n",
" <td>N14228</td>\n",
" <td>1545</td>\n",
" <td>EWR</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1400</td>\n",
" <td>5</td>\n",
" <td>17</td>\n",
" <td>9</td>\n",
" <td>370.044053</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>533</td>\n",
" <td>4</td>\n",
" <td>850</td>\n",
" <td>20</td>\n",
" <td>UA</td>\n",
" <td>N24211</td>\n",
" <td>1714</td>\n",
" <td>LGA</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1416</td>\n",
" <td>5</td>\n",
" <td>33</td>\n",
" <td>16</td>\n",
" <td>374.273128</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",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\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>336775</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>MQ</td>\n",
" <td>N511MQ</td>\n",
" <td>3572</td>\n",
" <td>LGA</td>\n",
" <td>CLE</td>\n",
" <td>NaN</td>\n",
" <td>419</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>336776</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>MQ</td>\n",
" <td>N839MQ</td>\n",
" <td>3531</td>\n",
" <td>LGA</td>\n",
" <td>RDU</td>\n",
" <td>NaN</td>\n",
" <td>431</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>336776 rows × 18 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day dep_time dep_delay arr_time arr_delay carrier \\\n",
"1 2013 1 1 517 2 830 11 UA \n",
"2 2013 1 1 533 4 850 20 UA \n",
"... ... ... ... ... ... ... ... ... \n",
"336775 2013 9 30 NaN NaN NaN NaN MQ \n",
"336776 2013 9 30 NaN NaN NaN NaN MQ \n",
"\n",
" tailnum flight origin dest air_time distance hour minute gain \\\n",
"1 N14228 1545 EWR IAH 227 1400 5 17 9 \n",
"2 N24211 1714 LGA IAH 227 1416 5 33 16 \n",
"... ... ... ... ... ... ... ... ... ... \n",
"336775 N511MQ 3572 LGA CLE NaN 419 NaN NaN NaN \n",
"336776 N839MQ 3531 LGA RDU NaN 431 NaN NaN NaN \n",
"\n",
" speed \n",
"1 370.044053 \n",
"2 374.273128 \n",
"... ... \n",
"336775 NaN \n",
"336776 NaN \n",
"\n",
"[336776 rows x 18 columns]"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# mutate(flights,\n",
"# gain = arr_delay - dep_delay,\n",
"# speed = distance / air_time * 60)\n",
"\n",
"flights.assign(gain=flights.arr_delay - flights.dep_delay,\n",
" speed=flights.distance / flights.air_time * 60)"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th>dep_time</th>\n",
" <th>dep_delay</th>\n",
" <th>arr_time</th>\n",
" <th>arr_delay</th>\n",
" <th>carrier</th>\n",
" <th>tailnum</th>\n",
" <th>flight</th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" <th>air_time</th>\n",
" <th>distance</th>\n",
" <th>hour</th>\n",
" <th>minute</th>\n",
" <th>gain</th>\n",
" <th>gain_per_hour</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>517</td>\n",
" <td>2</td>\n",
" <td>830</td>\n",
" <td>11</td>\n",
" <td>UA</td>\n",
" <td>N14228</td>\n",
" <td>1545</td>\n",
" <td>EWR</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1400</td>\n",
" <td>5</td>\n",
" <td>17</td>\n",
" <td>9</td>\n",
" <td>2.378855</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>533</td>\n",
" <td>4</td>\n",
" <td>850</td>\n",
" <td>20</td>\n",
" <td>UA</td>\n",
" <td>N24211</td>\n",
" <td>1714</td>\n",
" <td>LGA</td>\n",
" <td>IAH</td>\n",
" <td>227</td>\n",
" <td>1416</td>\n",
" <td>5</td>\n",
" <td>33</td>\n",
" <td>16</td>\n",
" <td>4.229075</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",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\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>336775</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>MQ</td>\n",
" <td>N511MQ</td>\n",
" <td>3572</td>\n",
" <td>LGA</td>\n",
" <td>CLE</td>\n",
" <td>NaN</td>\n",
" <td>419</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>336776</th>\n",
" <td>2013</td>\n",
" <td>9</td>\n",
" <td>30</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>MQ</td>\n",
" <td>N839MQ</td>\n",
" <td>3531</td>\n",
" <td>LGA</td>\n",
" <td>RDU</td>\n",
" <td>NaN</td>\n",
" <td>431</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>336776 rows × 18 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day dep_time dep_delay arr_time arr_delay carrier \\\n",
"1 2013 1 1 517 2 830 11 UA \n",
"2 2013 1 1 533 4 850 20 UA \n",
"... ... ... ... ... ... ... ... ... \n",
"336775 2013 9 30 NaN NaN NaN NaN MQ \n",
"336776 2013 9 30 NaN NaN NaN NaN MQ \n",
"\n",
" tailnum flight origin dest air_time distance hour minute gain \\\n",
"1 N14228 1545 EWR IAH 227 1400 5 17 9 \n",
"2 N24211 1714 LGA IAH 227 1416 5 33 16 \n",
"... ... ... ... ... ... ... ... ... ... \n",
"336775 N511MQ 3572 LGA CLE NaN 419 NaN NaN NaN \n",
"336776 N839MQ 3531 LGA RDU NaN 431 NaN NaN NaN \n",
"\n",
" gain_per_hour \n",
"1 2.378855 \n",
"2 4.229075 \n",
"... ... \n",
"336775 NaN \n",
"336776 NaN \n",
"\n",
"[336776 rows x 18 columns]"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# mutate(flights,\n",
"# gain = arr_delay - dep_delay,\n",
"# gain_per_hour = gain / (air_time / 60)\n",
"# )\n",
"\n",
"(flights.assign(gain=flights.arr_delay - flights.dep_delay)\n",
" .assign(gain_per_hour = lambda df: df.gain / (df.air_time / 60)))\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The first example is pretty much identical (aside from the names, `mutate` vs. `assign`).\n",
"\n",
"The second example just comes down to language differences. In `R`, it's possible to implement a function like `mutate` where you can refer to `gain` in the line calcuating `gain_per_hour`, even though `gain` hasn't actually been calcuated yet.\n",
"\n",
"In Python, you can have arbitrary keyword arguments to functions (which we needed for `.assign`), but the order of the argumnets is arbitrary since `dict`s are unsorted and `**kwargs*` is a `dict`. So you can't have something like `df.assign(x=df.a / df.b, y=x **2)`, because you don't know whether `x` or `y` will come first (you'd also get an error saying `x` is undefined.\n",
"\n",
"To work around that with pandas, you'll need to split up the assigns, and pass in a *callable* to the second assign. The callable looks at itself to find a column named `gain`. Since the line above returns a DataFrame with the `gain` column added, the pipeline goes through just fine."
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>gain</th>\n",
" <th>gain_per_hour</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>9</td>\n",
" <td>2.378855</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>16</td>\n",
" <td>4.229075</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>336775</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>336776</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>336776 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" gain gain_per_hour\n",
"1 9 2.378855\n",
"2 16 4.229075\n",
"... ... ...\n",
"336775 NaN NaN\n",
"336776 NaN NaN\n",
"\n",
"[336776 rows x 2 columns]"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# transmute(flights,\n",
"# gain = arr_delay - dep_delay,\n",
"# gain_per_hour = gain / (air_time / 60)\n",
"# )\n",
"(flights.assign(gain=flights.arr_delay - flights.dep_delay)\n",
" .assign(gain_per_hour = lambda df: df.gain / (df.air_time / 60))\n",
" [['gain', 'gain_per_hour']])\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Summarise values with summarise()"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"12.639070257304708"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# summarise(flights,\n",
"# delay = mean(dep_delay, na.rm = TRUE))\n",
"flights.dep_delay.mean()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This is only roughly equivalent.\n",
"`summarise` takes a callable (e.g. `mean`, `sum`) and evaluates that on the DataFrame. In pandas these are spread across `pd.DataFrame.mean`, `pd.DataFrame.sum`. This will come up again when we look at `groupby`."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Randomly sample rows with sample_n() and sample_frac()"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th>dep_time</th>\n",
" <th>dep_delay</th>\n",
" <th>arr_time</th>\n",
" <th>arr_delay</th>\n",
" <th>carrier</th>\n",
" <th>tailnum</th>\n",
" <th>flight</th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" <th>air_time</th>\n",
" <th>distance</th>\n",
" <th>hour</th>\n",
" <th>minute</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>197774</th>\n",
" <td>2013</td>\n",
" <td>5</td>\n",
" <td>5</td>\n",
" <td>1814</td>\n",
" <td>-4</td>\n",
" <td>2118</td>\n",
" <td>-2</td>\n",
" <td>B6</td>\n",
" <td>N554JB</td>\n",
" <td>35</td>\n",
" <td>JFK</td>\n",
" <td>PBI</td>\n",
" <td>141</td>\n",
" <td>1028</td>\n",
" <td>18</td>\n",
" <td>14</td>\n",
" </tr>\n",
" <tr>\n",
" <th>114716</th>\n",
" <td>2013</td>\n",
" <td>2</td>\n",
" <td>5</td>\n",
" <td>639</td>\n",
" <td>-6</td>\n",
" <td>953</td>\n",
" <td>1</td>\n",
" <td>UA</td>\n",
" <td>N825UA</td>\n",
" <td>369</td>\n",
" <td>EWR</td>\n",
" <td>DFW</td>\n",
" <td>211</td>\n",
" <td>1372</td>\n",
" <td>6</td>\n",
" <td>39</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",
" <td>...</td>\n",
" <td>...</td>\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>150179</th>\n",
" <td>2013</td>\n",
" <td>3</td>\n",
" <td>15</td>\n",
" <td>1949</td>\n",
" <td>-6</td>\n",
" <td>2237</td>\n",
" <td>-33</td>\n",
" <td>AA</td>\n",
" <td>N3ETAA</td>\n",
" <td>1709</td>\n",
" <td>LGA</td>\n",
" <td>MIA</td>\n",
" <td>145</td>\n",
" <td>1096</td>\n",
" <td>19</td>\n",
" <td>49</td>\n",
" </tr>\n",
" <tr>\n",
" <th>52160</th>\n",
" <td>2013</td>\n",
" <td>10</td>\n",
" <td>28</td>\n",
" <td>720</td>\n",
" <td>0</td>\n",
" <td>1005</td>\n",
" <td>5</td>\n",
" <td>UA</td>\n",
" <td>N534UA</td>\n",
" <td>261</td>\n",
" <td>LGA</td>\n",
" <td>IAH</td>\n",
" <td>185</td>\n",
" <td>1416</td>\n",
" <td>7</td>\n",
" <td>20</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>10 rows × 16 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day dep_time dep_delay arr_time arr_delay carrier \\\n",
"197774 2013 5 5 1814 -4 2118 -2 B6 \n",
"114716 2013 2 5 639 -6 953 1 UA \n",
"... ... ... ... ... ... ... ... ... \n",
"150179 2013 3 15 1949 -6 2237 -33 AA \n",
"52160 2013 10 28 720 0 1005 5 UA \n",
"\n",
" tailnum flight origin dest air_time distance hour minute \n",
"197774 N554JB 35 JFK PBI 141 1028 18 14 \n",
"114716 N825UA 369 EWR DFW 211 1372 6 39 \n",
"... ... ... ... ... ... ... ... ... \n",
"150179 N3ETAA 1709 LGA MIA 145 1096 19 49 \n",
"52160 N534UA 261 LGA IAH 185 1416 7 20 \n",
"\n",
"[10 rows x 16 columns]"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# sample_n(flights, 10)\n",
"flights.sample(n=10)"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th>dep_time</th>\n",
" <th>dep_delay</th>\n",
" <th>arr_time</th>\n",
" <th>arr_delay</th>\n",
" <th>carrier</th>\n",
" <th>tailnum</th>\n",
" <th>flight</th>\n",
" <th>origin</th>\n",
" <th>dest</th>\n",
" <th>air_time</th>\n",
" <th>distance</th>\n",
" <th>hour</th>\n",
" <th>minute</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>28971</th>\n",
" <td>2013</td>\n",
" <td>10</td>\n",
" <td>3</td>\n",
" <td>605</td>\n",
" <td>-5</td>\n",
" <td>728</td>\n",
" <td>-17</td>\n",
" <td>WN</td>\n",
" <td>N238WN</td>\n",
" <td>2609</td>\n",
" <td>LGA</td>\n",
" <td>STL</td>\n",
" <td>126</td>\n",
" <td>888</td>\n",
" <td>6</td>\n",
" <td>5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>233436</th>\n",
" <td>2013</td>\n",
" <td>6</td>\n",
" <td>13</td>\n",
" <td>617</td>\n",
" <td>-6</td>\n",
" <td>916</td>\n",
" <td>20</td>\n",
" <td>B6</td>\n",
" <td>N580JB</td>\n",
" <td>203</td>\n",
" <td>JFK</td>\n",
" <td>LAS</td>\n",
" <td>314</td>\n",
" <td>2248</td>\n",
" <td>6</td>\n",
" <td>17</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",
" <td>...</td>\n",
" <td>...</td>\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>3100</th>\n",
" <td>2013</td>\n",
" <td>1</td>\n",
" <td>4</td>\n",
" <td>1257</td>\n",
" <td>-2</td>\n",
" <td>1356</td>\n",
" <td>-12</td>\n",
" <td>UA</td>\n",
" <td>N825UA</td>\n",
" <td>343</td>\n",
" <td>EWR</td>\n",
" <td>BOS</td>\n",
" <td>43</td>\n",
" <td>200</td>\n",
" <td>12</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>61881</th>\n",
" <td>2013</td>\n",
" <td>11</td>\n",
" <td>7</td>\n",
" <td>1431</td>\n",
" <td>1</td>\n",
" <td>1658</td>\n",
" <td>-6</td>\n",
" <td>B6</td>\n",
" <td>N281JB</td>\n",
" <td>477</td>\n",
" <td>JFK</td>\n",
" <td>JAX</td>\n",
" <td>126</td>\n",
" <td>828</td>\n",
" <td>14</td>\n",
" <td>31</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>3368 rows × 16 columns</p>\n",
"</div>"
],
"text/plain": [
" year month day dep_time dep_delay arr_time arr_delay carrier \\\n",
"28971 2013 10 3 605 -5 728 -17 WN \n",
"233436 2013 6 13 617 -6 916 20 B6 \n",
"... ... ... ... ... ... ... ... ... \n",
"3100 2013 1 4 1257 -2 1356 -12 UA \n",
"61881 2013 11 7 1431 1 1658 -6 B6 \n",
"\n",
" tailnum flight origin dest air_time distance hour minute \n",
"28971 N238WN 2609 LGA STL 126 888 6 5 \n",
"233436 N580JB 203 JFK LAS 314 2248 6 17 \n",
"... ... ... ... ... ... ... ... ... \n",
"3100 N825UA 343 EWR BOS 43 200 12 57 \n",
"61881 N281JB 477 JFK JAX 126 828 14 31 \n",
"\n",
"[3368 rows x 16 columns]"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# sample_frac(flights, 0.01)\n",
"flights.sample(frac=.01)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Grouped operations "
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>dist</th>\n",
" <th>delay</th>\n",
" <th>count</th>\n",
" </tr>\n",
" <tr>\n",
" <th>tailnum</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>N0EGMQ</th>\n",
" <td>676.188679</td>\n",
" <td>9.982955</td>\n",
" <td>371</td>\n",
" </tr>\n",
" <tr>\n",
" <th>N10156</th>\n",
" <td>757.947712</td>\n",
" <td>12.717241</td>\n",
" <td>153</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>N999DN</th>\n",
" <td>895.459016</td>\n",
" <td>14.311475</td>\n",
" <td>61</td>\n",
" </tr>\n",
" <tr>\n",
" <th>N9EAMQ</th>\n",
" <td>674.665323</td>\n",
" <td>9.235294</td>\n",
" <td>248</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>2961 rows × 3 columns</p>\n",
"</div>"
],
"text/plain": [
" dist delay count\n",
"tailnum \n",
"N0EGMQ 676.188679 9.982955 371\n",
"N10156 757.947712 12.717241 153\n",
"... ... ... ...\n",
"N999DN 895.459016 14.311475 61\n",
"N9EAMQ 674.665323 9.235294 248\n",
"\n",
"[2961 rows x 3 columns]"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# planes <- group_by(flights, tailnum)\n",
"# delay <- summarise(planes,\n",
"# count = n(),\n",
"# dist = mean(distance, na.rm = TRUE),\n",
"# delay = mean(arr_delay, na.rm = TRUE))\n",
"# delay <- filter(delay, count > 20, dist < 2000)\n",
"\n",
"planes = flights.groupby(\"tailnum\")\n",
"delay = (planes.agg({\"year\": \"count\",\n",
" \"distance\": \"mean\",\n",
" \"arr_delay\": \"mean\"})\n",
" .rename(columns={\"distance\": \"dist\",\n",
" \"arr_delay\": \"delay\",\n",
" \"year\": \"count\"})\n",
" .query(\"count > 20 & dist < 2000\"))\n",
"delay"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For me, dplyr's ``n()`` looked is a bit starge at first, but it's already growing on me.\n",
"\n",
"I think pandas is more difficult for this particular example.\n",
"There isn't as natural a way to mix column-agnostic aggregations (like ``count``) with column-specific aggregations like the other two. You end up writing could like `.agg{'year': 'count'}` which reads, \"I want the count of `year`\", even though you don't care about `year` specifically. You could just as easily have said `.agg('distance': 'count')`.\n",
"Additionally assigning names can't be done as cleanly in pandas; you have to just follow it up with a ``rename`` like before."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We may as well reproduce the graph. It looks like `ggplots` `geom_smooth` is some kind of lowess smoother. We can either us [seaborn](http://stanford.edu/~mwaskom/software/seaborn/):"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nkpQViQfvGOO8YxxfBlyQcDmSJElSItxAR5IkSUqAwVuSJElKgMFbkiRJSoDBW5IkSUqAwVuSJElK\ngMFbkiRJSoDBW5IkSUqAwVuSJElKgMFbkiRJSoDBW5IkSUqAwVuSJElKgMFbkiRJSoDBW5IkSUqA\nwVuSJElKgMFbkiRJSoDBW5IkSUqAwVuSJElKgMFbkiRJSoDBW5IkSUqAwVuSJElKgMFbkiRJSoDB\nW5IkSUqAwVuSJElKgMFbkiRJSoDBW5IkSUqAwVuSJElKgMFbkiRJSoDBW5IkSUqAwVuSJElKgMFb\nkiRJSkAqnU7nugZJkiQp7zniLUmSJCXA4C1JkiQlwOAtSZIkJcDgLUmSJCXA4C1JkiQlwOAtSZIk\nJaAg1wWcqBBCCrgNmAQcBD4VY9yQ26qUpBDC88Du5k9fBb4J/BxoAipjjDc1n3cD8GmgAfhGjPGh\n5KtVtoUQpgH/EmO8JIQwiuPshRBCMXAnUAHUAn8VY6zOxXNQ53tbX5wD/A+wtvnhH8cY77Uveo4Q\nQgFwOzACKAS+AfwJrxc92jH6ooosXi+644j3PKAoxngh8GXgezmuRwkKIRQBxBhnN//3STI98JUY\n48VArxDClSGEQcDngAuA9wP/HELok7PClRUhhFuBnwJFzYdOpBduBFbHGGcCvwS+lvgTUFa00RdT\ngO8ecd24177ocT4K7Gz+//p+4N/xeqHWfTGXTF+cSxavF91uxBuYATwCEGNcFkI4L8f1KFmTgH4h\nhMVAb+CrwLkxxmebH/89MIfMCMaSGGMjUBtCWAdMBJ7PQc3KnleAq8hc8ACmHGcvTCJzLfnWEef6\nQpo/juoL4OwQwjwyo1i3AOdjX/Qk9wD3Nn/cG2jk+F877Iv8dWRf9CIzmj0FGJ2t60V3HPEu461p\nBgCNIYTu+Dz0zuwHvhNjvJzMb5p3AakjHt9DpkdKad0ne4H+SRWpZMQYf0vmBfSwE+mFI48fPld5\noI2+WAbc2jyyuQH4Oke/ltgXeSzGuD/GuC+EUEomaH0Vrxc9Xht98XfAcuBL2bpedMfAWkvmiR7W\nK8bYlKtilLi1ZMI2McZ1QDUw6IjHS4E3yfRJWRvHld+OvBa01ws1tL6W2B/57f4Y46rDHwPnkHmx\ntC96kBDCUOBJ4BcxxrvxeiHa7IusXi+6Y/D+A/ABgBDCdGBNbstRwhYC3wUIIZxO5h/CoyGEi5sf\nnws8C6wAZoQQCkMI/YHRQGUO6lWyXgghzGz+uKNeWErztaT5z2ff/sWUNx45YlripWSmnNkXPUjz\nHN3FwN/GGH/RfHiV14ue7Rh9kdXrRXec4/1b4LIQwh+aP1+Yy2KUuJ8Bt4cQngHSwMfJjHr/Z/ON\nDn8G7osxpkMIPwSWkHk78Ssxxvoc1azkfAn46fH0Qgjhx8AvQgjPAnXA9TmrWtn218B/hBDqgW3A\np2OMe+2LHuXLwMnA10IIf0/m9eNm4EdeL3q0tvrib4AfZOt6kUqn01l6LpIkSZIO645TTSRJkqRu\nx+AtSZIkJcDgLUmSJCXA4C1JkiQlwOAtSZIkJcDgLUmSJCWgO67jLUk6TiGEHwGvA++NMV5xjHPK\nyOzadlWixUlSD+OItyTlvy3HCt3NBgCTkipGknoqN9CRpDwTQvhX4EPAdjK7qd0J/EOMcWQI4Xrg\nVqAReBX4GHAPcDnwUIzx6txULUn5zxFvScojIYT5wBRgDHAlcGbzQ4dHWf4JuCzGOBV4GQjA54HX\nDd2SlF0Gb0nKL5cAi2KMTTHGGuD+tz3+ALA0hPBtMiPcqxOvUJJ6KIO3JOWXNJA64vNDRz4YY7wF\nmA9UA3c2Tz2RJCXA4C1J+eUx4NoQQmHzaiUtN1WGEHqFECKwM8b4LeAOYDKZ+d59clKtJPUgBm9J\nyiMxxgeBx4FK4GEy87gPP9YEfB14IoSwArgI+B6ZmzA3hRCeSL5iSeo5XNVEkiRJSoAj3pIkSVIC\nDN6SJElSAgzekiRJUgIM3pIkSVICDN6SJElSAgzekiRJUgIM3pIkSVICDN6SJElSAv4fLkX/MIss\n1uUAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x112870a90>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, ax = plt.subplots(figsize=(12, 6))\n",
"\n",
"sns.regplot(\"dist\", \"delay\", data=delay, lowess=True, ax=ax,\n",
" scatter_kws={'color': 'k', 'alpha': .5, 's': delay['count'] / 10}, ci=90,\n",
" line_kws={'linewidth': 3});"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Or using statsmodels directly for more control over the lowess, with an extremely lazy\n",
"\"confidence interval\"."
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import statsmodels.api as sm"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAt4AAAF8CAYAAAD4qLwnAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd01Ped7//nFI1GXQI1ioQo0tBFtelgig0YGzu2MW6x\nYztZZ+1N2822e3/3nHtuOXdLdjfZJN7sJhsnXscFF2xMtU1vpggQQjCAAEmgLlRnNH1+fwgmlhEg\nQJqRxOtxTk6sme98v2/EF+k1n/l83h9DMBhERERERER6ljHSBYiIiIiI3A0UvEVEREREwkDBW0RE\nREQkDBS8RURERETCQMFbRERERCQMFLxFRERERMLAHOkCbpfP5w82NDgjXYb0Mikpsei+kK/TfSGd\n0X0hndF9IZ1JS0swdMd5+uyIt9lsinQJ0gvpvpDO6L6Qzui+kM7ovpCe1GeDt4iIiIhIX6LgLSIi\nIiISBgreIiIiIiJhoOAtIiIiIhIGCt4iIiIiImGg4C0iIiIiEgYK3iIiIiIiYaDgLSIiIiISBgre\nIiIiIiJhoOAtIiIiIhIGCt4iIiIiImGg4C0iIiIiEgYK3iIiIiIiYaDgLSIiIiISBgreIiIiIiJh\noOAtIiIiIhIGCt4iIiIiImGg4C0iIiIiEgYK3iIiIiIiYaDgLSIiIiISBgreIiIiIiJhoOAtIiIi\nIhIGCt4iIiIiImGg4C0iIiIiEgYK3iIiIiIiYaDgLSIiIiISBgreIiIiIiJhYI7ERW02218DD1+5\n/s+BPcAbQAAostvtr0aiLhERERGRnhL2EW+bzTYfmGm322cB9wEjgX8C/tZut88HjDabbWW46xIR\nERER6UmRmGryAFBks9nWAp9c+d8Uu92+68rzG4HFEahLRERERKTHRGKqSSqQDawARtAevL/6BqAF\nSIpAXSIiIiIiPSYSwbseOGm3233AaZvN5gKGfuX5BKCxKydKS0vogfKkr9N9IZ3RfSGd0X0hndF9\nIT0lEsF7N/A94J9tNttgIA74wmazzbfb7TuAZcDWrpyotral56qUPiktLUH3hVxD94V0RveFdEb3\nhXSmu96MhT142+329Tabba7NZjsAGIDvAheAX9tstijgJPB+uOsSEREJl127dlBWVsrDDz9KQoJG\nV0XuFhFpJ2i32/+6k4cXhLsOERGRSDh8+CBut5sTJ44zY8asSJcjImESkeAtIiJyN1u8+AHKy8uY\nOnV6pEsRkTBS8BYREQmz8eMnMH78hEiXISJhpi3jRURERETCQMFbRERERCQMFLxFRERERMJAwVtE\nREREJAwUvEVEREREwkDBW0REREQkDBS8RURERETCQMFbRERERCQMFLxFRERERMJAwVtEREREJAwU\nvEVEREREwkDBW0REREQkDBS8RURERETCQMFbRERERCQMFLxFRERERMJAwVtEREREJAwUvEVERERE\nwkDBW0REREQkDBS8RURERETCQMFbRERERCQMFLxFRERERMJAwVtEREREJAwUvEVEREREwkDBW/qk\nS5cucunSxUiXISIiItJlCt7SJ73//rusWfNOpMsQERER6TJzpAsQuR1z584nGAxGugwRERGRLlPw\nlj5pypRpkS5BRERE5JZoqomIiIiISBgoeIuIiIiIhIGCt4iIiIhIGCh4i4iIiIiEgYK3iIiIiEgY\nKHiLiIiIiISBgreIiIiISBgoeIv0IL/fT0nJWQKBQKRLERERkQhT8BbpQZs3b+Ttt99k27bPI12K\niIiIRJiCt0gPysjIID4+gbS0jEiXIiIiIhGmLeNFetDUqdOZOnV6pMsQERGRXkAj3iIiIiIiYaDg\nLSIiIiISBgreIiIiIiJhoOAtIiIiIhIGCt4iIiIiImGg4C0iIiIiEgYK3iIiIiIiYaDgLdLDgsEg\nlZUV2jZeRETkLqfgLdLDtm/fyn/8x+ts3Lg+0qWIiIhIBCl4i/SwxMRELBYrycnJkS5FREREIkhb\nxov0sKlTpzNlyjQMBkOkSxEREZEI0oi3SBgodIuIiIiCt4iIiIhIGCh4i4iIiIiEgYK3iIiIiEgY\nKHiLiIiIiISBgreIiIiISBgoeIuIiIiIhIGCt0g/19bWxr59u/H7/ZEuRURE5K4WsQ10bDZbOnAI\nWAz4gTeAAFBkt9tfjVRdIv3NgQP72bVrOwMGpGKzjY50OSIiInetiIx422w2M/BvgPPKQ/8E/K3d\nbp8PGG0228pI1CXSH82aNYeVK79BXp4t0qWIiIjc1SI11eQfgdeBCsAATLHb7buuPLeR9lFwEekG\nUVFRTJiQr90zpd/y+Xxs2rSB0tLSSJciInJDYQ/eNpvtBaDGbrd/Rnvo/nodLUBSuOsSEZG+qaqq\nkoMH93P48IFIlyIickORmOP9LSBgs9mWAPnA74G0rzyfADR25URpaQndX530ebovpDO6L/qvtLSx\n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\nuXMlDB8+IvRcfX09v/zlz5g0aQoPPXRta0W/38+5cyWMGpV7w+9de9ea8+zevZP09AxOnCjCaDTy\n2GOrbvrnbf+0poLc3L61oE66TzAY5M03f4vL5cLpbGP69Bv3pBeR/qOrwfsl4Cm73f6mzWZ7CPgV\n8N9v96I2my0L+BD4ud1uf8dms/39V55OABq7cp60tLtjZ7hAwIvF8se/Kp/P0yN/9urqcszm9v9P\nS0vA5/PR1FRPdLSR/PyJREVFMXXq1LB939PSpjJzZse5pUVFRRQU7MdsNpOdPRiPx0l0dDRms5nN\nmzeHgujXtbS0MHjwYDIzM8jNzeX8eTseTzNDhnT/5hUuVzOxsVG43S0dvldz587g8OEoZs+eHnp8\nxYr7WbJkPgUFBWzatImUlFxSU1O4fPkypaWlvP32G+Tm5vLd734Xi8VCQ0MDPp+LuLgY7r9/CQUF\nBaSlpWGz2YiPj6e+vn3qTTAYJC0tAYPBgMPh4NChQ8yZM6fPbE1dWXme5uZ6mpvb3/QZjQHi4szX\n3HtpaQnk5XXezuzNN9+kuLiYJUuWsHDhQtLSEkhIiGLChDFMmGDr9D7euHEju3btYuXKldx7772d\nnLXdunV7OX36NM88s5pRo0bx0ksvXdkh1MHLL798wykEnd3XEjmR+j2Snj6AmpoasrLS+/TvsnPn\nzlFUVMTEiRPJycmJdDkhLS0txMfH3/bgQ1/+O5HeratdTSqAn1z57z+/kwvabLYMYDPtG+9su/Lw\nEZvNNs9ut+8EltHFRZs32omuP7HZxrNz57bQ11OmjO2RP/vkyTNoaXGRlzeaqqpG1q//BLPZyqhR\necyatTDUWeJ617668O+r0zaKi4twuz2hxYV3qqjoNG63H7fbT11dDW63n5SURMaOHUdTUwu1tR/j\ndDqveV0wGKShoZGYmBomTpyC2+3n2LFTWCxdb63WVXPnLiE1dfCVhWl//F5lZeWSldU+ynn18S++\n+Iyf/OTvSE9PZ+TIXKKjo4mJSaCtrQqjMQqrNZ7y8krWr/+MOXPmEQgYSU5Opa6ujkAgyA9+8FeM\nHTsOgP3791JeXnmlhvnU1bUCsHXr5+zduxuwdEs/9etpa2tjw4Z1xMcncP/9S+9otH3QoOE8++xL\nDByYislkYubM+4iKiqKmprnL57VY4vD7DZhM7fPea2tbOHKkALu9hNGj8zu9j4cMGcGwYZWkpg65\n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\n6tVr2bdvD1qthhUrVg25raWlha+/Poivrx9z584b88+cysqKgUZPwwPd9vY2iouLmTQphfz8PPbv\n3+t6jK+vH4mJBubNW0BzcxPvv/8HFApnVRlfX1+mT5/JkSOH8fT0pKAgn+TkSeTn55GYmDhirntY\nWDhr1qyltNTZ1Op6q4xxcQm4uenZu3c3ERERrFy52nW+Oi9wLSgUCmJiYrFarUyYkMjMmdk3/J5S\nKBSufPlBKpXqnkynFOJOksB7DNlsNjIyslxfDt3d3Zw4cZScnNGpPDGWzGYzVqsNhQJMJtM9ky9d\nWnoJpVKJ3W697ma6B01zczNff31ooCmLD1arFYMhyTVrGhoaxquv/tC1SnDl37umppr//u+30WjU\nvPbaXw7rAPjll5spKirEx8eXiROTyc3NJTw8CpPJhF6vd9WiHvTppx/R09NDYWEBixcv5bXX/hJw\nfrEfP36U1tYWHA47S5Ys4+zZM7z33u+pra1hypRMoqKiCAsL44MP3kWl0vDaa3/pqlai0WgGuj86\n33+rVq25pdfIarWye/dO4uPjXXnoztcmlBdeeJmamhoiIiIxGovIyMikra2VnTt34OnpxdKlK8jP\nz8PHx5f6+vohQXd5eTl/+tN7+PsHUFxsdLW51+vd+N73/sJ1Px8fX9aufYR9+3ajVCpJT8+gq6uL\n+PgEfH2d6RI9PV3YbDY+++xjtm37ko0bXyIpKRk/Pz9UKjUWi5lHHnmUzMysm+rI6eHhybRp0/ny\nyy/w9fWnp6cHi8WMQuGcRXdzcyMpaRJr19qJj7+82fbEiWNUV1dhMCRRWlqCp6cXc+bk3NLrbbFY\nOHhwH/HxiTz77IYR7/PZZx/T1taK1WpFr9e7Np2ONofDgdlsHnL+nDuXx5Ytn7vy6a/U39/PO++8\nicVi4cSJowQHh7hSaY4cOYyvr5+r+c369Y/z9NPPD3TBTEOr1eLt7U1y8iQ0Gg2FhQVotVoyM6ex\ndOnya44xNXXykC6a17N165aB95GDPXt2sXr1Wtdtc+fOc9VVf/75jbf8dxstJ08e5+TJ47i7u7N2\n7SMySSLuGxJ4j6HBOrCDnHlv9nEc0e1zlnh7FrO5nwkTxrbl/e0Y/IJJTZ2MQqEkNTXtrpyRHy/d\n3d1cmT6iUqkGmj1dptVqR6xdrNU6N90NBs9XpxhpNFqsVgs6nY7vfvdV1qxZS3n55Rz7qwPAkJAw\n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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x10f12f9b0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"smooth = sm.nonparametric.lowess(delay.delay, delay.dist, frac=1/8)\n",
"ax = delay.plot(kind='scatter', x='dist', y = 'delay', figsize=(12, 6),\n",
" color='k', alpha=.5, s=delay['count'] / 10)\n",
"ax.plot(smooth[:, 0], smooth[:, 1], linewidth=3);\n",
"std = smooth[:, 1].std()\n",
"ax.fill_between(smooth[:, 0], smooth[:, 1] - std, smooth[:, 1] + std, alpha=.25);"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>planes</th>\n",
" <th>flights</th>\n",
" </tr>\n",
" <tr>\n",
" <th>dest</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>ABQ</th>\n",
" <td>108</td>\n",
" <td>254</td>\n",
" </tr>\n",
" <tr>\n",
" <th>ACK</th>\n",
" <td>58</td>\n",
" <td>265</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>TYS</th>\n",
" <td>273</td>\n",
" <td>631</td>\n",
" </tr>\n",
" <tr>\n",
" <th>XNA</th>\n",
" <td>176</td>\n",
" <td>1036</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>105 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" planes flights\n",
"dest \n",
"ABQ 108 254\n",
"ACK 58 265\n",
"... ... ...\n",
"TYS 273 631\n",
"XNA 176 1036\n",
"\n",
"[105 rows x 2 columns]"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# destinations <- group_by(flights, dest)\n",
"# summarise(destinations,\n",
"# planes = n_distinct(tailnum),\n",
"# flights = n()\n",
"# )\n",
"\n",
"destinations = flights.groupby('dest')\n",
"destinations.agg({\n",
" 'tailnum': lambda x: len(x.unique()),\n",
" 'year': 'count'\n",
" }).rename(columns={'tailnum': 'planes',\n",
" 'year': 'flights'})"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"There's a little know feature to `groupby.agg`: it accepts a dict of dicts mapping\n",
"columns to `{name: aggfunc}` pairs. Here's the result:"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr>\n",
" <th></th>\n",
" <th>tailnum</th>\n",
" <th>year</th>\n",
" </tr>\n",
" <tr>\n",
" <th></th>\n",
" <th>planes</th>\n",
" <th>flights</th>\n",
" </tr>\n",
" <tr>\n",
" <th>dest</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>ABQ</th>\n",
" <td>108</td>\n",
" <td>254</td>\n",
" </tr>\n",
" <tr>\n",
" <th>ACK</th>\n",
" <td>58</td>\n",
" <td>265</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>TYS</th>\n",
" <td>273</td>\n",
" <td>631</td>\n",
" </tr>\n",
" <tr>\n",
" <th>XNA</th>\n",
" <td>176</td>\n",
" <td>1036</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>105 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" tailnum year\n",
" planes flights\n",
"dest \n",
"ABQ 108 254\n",
"ACK 58 265\n",
"... ... ...\n",
"TYS 273 631\n",
"XNA 176 1036\n",
"\n",
"[105 rows x 2 columns]"
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"destinations = flights.groupby('dest')\n",
"r = destinations.agg({'tailnum': {'planes': lambda x: len(x.unique())},\n",
" 'year': {'flights': 'count'}})\n",
"r"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The result is a `MultiIndex` in the columns which can be a bit awkard to work with (you can drop a level with `r.columns.droplevel()`). Also the syntax going into the `.agg` may not be the clearest."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Similar to how ``dplyr`` provides optimized C++ versions of most of the `summarise` functions, pandas uses [cython](http://cython.org) optimized versions for most of the `agg` methods."
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"year month day\n",
"2013 1 1 842\n",
" 2 943\n",
" ... \n",
" 12 30 968\n",
" 31 776\n",
"Name: distance, dtype: int64"
]
},
"execution_count": 31,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# daily <- group_by(flights, year, month, day)\n",
"# (per_day <- summarise(daily, flights = n()))\n",
"\n",
"daily = flights.groupby(['year', 'month', 'day'])\n",
"per_day = daily['distance'].count()\n",
"per_day"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"year month\n",
"2013 1 27004\n",
" 2 24951\n",
" ... \n",
" 11 27268\n",
" 12 28135\n",
"Name: distance, dtype: int64"
]
},
"execution_count": 32,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# (per_month <- summarise(per_day, flights = sum(flights)))\n",
"per_month = per_day.groupby(level=['year', 'month']).sum()\n",
"per_month"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"336776"
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# (per_year <- summarise(per_month, flights = sum(flights)))\n",
"per_year = per_month.sum()\n",
"per_year"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"I'm not sure how ``dplyr`` is handling the other columns, like `year`, in the last example. With pandas, it's clear that we're grouping by them since they're included in the groupby. For the last example, we didn't group by anything, so they aren't included in the result."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Chaining"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Any follower of Hadley's [twitter account](https://twitter.com/hadleywickham/) will know how much R users *love* the ``%>%`` (pipe) operator. And for good reason!"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th>arr_delay</th>\n",
" <th>dep_delay</th>\n",
" </tr>\n",
" <tr>\n",
" <th>year</th>\n",
" <th>month</th>\n",
" <th>day</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th rowspan=\"5\" valign=\"top\">2013</th>\n",
" <th rowspan=\"2\" valign=\"top\">1</th>\n",
" <th>16</th>\n",
" <td>34.247362</td>\n",
" <td>24.612865</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>32.602854</td>\n",
" <td>28.658363</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th rowspan=\"2\" valign=\"top\">12</th>\n",
" <th>17</th>\n",
" <td>55.871856</td>\n",
" <td>40.705602</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>32.226042</td>\n",
" <td>32.254149</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>49 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" arr_delay dep_delay\n",
"year month day \n",
"2013 1 16 34.247362 24.612865\n",
" 31 32.602854 28.658363\n",
"... ... ...\n",
" 12 17 55.871856 40.705602\n",
" 23 32.226042 32.254149\n",
"\n",
"[49 rows x 2 columns]"
]
},
"execution_count": 34,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# flights %>%\n",
"# group_by(year, month, day) %>%\n",
"# select(arr_delay, dep_delay) %>%\n",
"# summarise(\n",
"# arr = mean(arr_delay, na.rm = TRUE),\n",
"# dep = mean(dep_delay, na.rm = TRUE)\n",
"# ) %>%\n",
"# filter(arr > 30 | dep > 30)\n",
"(\n",
"flights.groupby(['year', 'month', 'day'])\n",
" [['arr_delay', 'dep_delay']]\n",
" .mean()\n",
" .query('arr_delay > 30 | dep_delay > 30')\n",
")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"A bit of soapboxing here if you'll indulge me.\n",
"\n",
"The example above is a bit contrived since it only uses methods on `DataFrame`. But what if you have some function to work into your pipeline that pandas hasn't (or won't) implement? In that case you're required to break up your pipeline by assigning your intermediate (probably uninteresting) DataFrame to a temporary variable you don't actually care about.\n",
"\n",
"`R` doesn't have this problem since the `%>%` operator works with any function that takes (and maybe returns) DataFrames.\n",
"The python language doesn't have any notion of right to left function application (other than special cases like `__radd__` and `__rmul__`).\n",
"It only allows the usual left to right `function(arguments)`, where you can think of the `()` as the \"call this function\" operator.\n",
"\n",
"Pandas wanted something like `%>%` and we did it in a farily pythonic way. The `pd.DataFrame.pipe` method takes a function and optionally some arguments, and calls that function with `self` (the DataFrame) as the first argument.\n",
"\n",
"So\n",
"\n",
"```R\n",
"flights >%> my_function(my_argument=10)\n",
"```\n",
"\n",
"becomes\n",
"\n",
"```python\n",
"flights.pipe(my_function, my_argument=10)\n",
"```\n",
"\n",
"We initially had grander visions for `.pipe`, but the wider python community didn't seem that interested."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Other Data Sources"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Pandas has tons [IO tools](http://pandas.pydata.org/pandas-docs/version/0.15.0/io.html) to help you get data in and out, including SQL databases via [SQLAlchemy](http://www.sqlalchemy.org)."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Summary"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"I think pandas held up pretty well, considering this was a vignette written for dplyr. I found the degree of similarity more interesting than the differences. The most difficult task was renaming of columns within an operation; they had to be followed up with a call to ``rename`` *after* the operation, which isn't that burdensome honestly.\n",
"\n",
"More and more it looks like we're moving towards future where being a language or package partisan just doesn't make sense. Not when you can load up a [Jupyter](http://jupyter.org) (formerly IPython) notebook to call up a library written in R, and hand those results off to python or Julia or whatever for followup, before going back to R to make a cool [shiny](http://shiny.rstudio.com) web app.\n",
"\n",
"There will always be a place for your \"utility belt\" package like dplyr or pandas, but it wouldn't hurt to be familiar with both.\n",
"\n",
"If you want to contribute to pandas, we're always looking for help at https://github.com/pydata/pandas/.\n",
"You can get ahold of me directly on [twitter](https://twitter.com/tomaugspurger)."
]
}
],
"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.5.0"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
@gepcel
Copy link

gepcel commented Dec 28, 2014

Wonderful notebook! Helps me know R better. There might be something that will help others know pandas better.

Anyway, as in In[8], flights.iloc[:9] is fine. But wouldn't flights.loc[:10] be more equivalent?

And In[12]:

# select(flights, year:day) 

# No real equivalent here. Although I think this is OK.
# Typically I'll have the columns I want stored in a list
# somewhere, which can be passed right into __getitem__ ([]).

I'm only guessing what the R code does, but how about flights.loc[:, 'year':'day'] ? And if there's a list of columns to get, named columns for example, I think flights[columns] will do, other than __getitem__ ([]).

And In[13]:

# select(flights, -(year:day)) 
...

If I'm guessing right, flights.loc[:, ~flight.columns.isin(a.loc[:, 'year':'day'])] might do. But it's a little bit tedious and less elegant than R.

Again, a very helpful notebook.

@pwwang
Copy link

pwwang commented Mar 17, 2022

For those who are struggling to translate your R code into python, you might want to take a look at this package:

https://github.com/pwwang/datar

which reimages pandas APIs and aligns them with tidyverse's.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment