Created
June 18, 2014 21:18
-
-
Save ssanderson/8df2e0eecf7e323de447 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"metadata": { | |
"name": "" | |
}, | |
"nbformat": 3, | |
"nbformat_minor": 0, | |
"worksheets": [ | |
{ | |
"cells": [ | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"import pandas as pd\n", | |
"import numpy as np\n", | |
"from datetime import datetime as dt" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [], | |
"prompt_number": 1 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# Build a sample DataFrame that looks like what you will get back from a history() call.\n", | |
"\n", | |
"df = pd.DataFrame(np.array([np.arange(10), np.arange(10)]).transpose(),\n", | |
" index=pd.date_range(start=pd.Timestamp('2014-06-17'), periods=10),\n", | |
" # In the actual history dataframe, columns are Security objects.\n", | |
" columns=['sid_1', 'sid_2'])\n", | |
"df" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"html": [ | |
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>sid_1</th>\n", | |
" <th>sid_2</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>2014-06-17</th>\n", | |
" <td> 0</td>\n", | |
" <td> 0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-18</th>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-19</th>\n", | |
" <td> 2</td>\n", | |
" <td> 2</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-20</th>\n", | |
" <td> 3</td>\n", | |
" <td> 3</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-21</th>\n", | |
" <td> 4</td>\n", | |
" <td> 4</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-22</th>\n", | |
" <td> 5</td>\n", | |
" <td> 5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-23</th>\n", | |
" <td> 6</td>\n", | |
" <td> 6</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-24</th>\n", | |
" <td> 7</td>\n", | |
" <td> 7</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-25</th>\n", | |
" <td> 8</td>\n", | |
" <td> 8</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-26</th>\n", | |
" <td> 9</td>\n", | |
" <td> 9</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 24, | |
"text": [ | |
" sid_1 sid_2\n", | |
"2014-06-17 0 0\n", | |
"2014-06-18 1 1\n", | |
"2014-06-19 2 2\n", | |
"2014-06-20 3 3\n", | |
"2014-06-21 4 4\n", | |
"2014-06-22 5 5\n", | |
"2014-06-23 6 6\n", | |
"2014-06-24 7 7\n", | |
"2014-06-25 8 8\n", | |
"2014-06-26 9 9" | |
] | |
} | |
], | |
"prompt_number": 24 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# Get the mean of all prices in this window.\n", | |
"means = df.mean()\n", | |
"means" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 25, | |
"text": [ | |
"sid_1 4.5\n", | |
"sid_2 4.5\n", | |
"dtype: float64" | |
] | |
} | |
], | |
"prompt_number": 25 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# Get a rolling means window in which each cell contains \n", | |
"# the mean of the current day and the previous three days.\n", | |
"# Note that the first three windows have NaN (not a number), \n", | |
"# because they don't have a full 3 days yet.\n", | |
"rolling_means = pd.rolling_mean(df, window=4)\n", | |
"rolling_means" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"html": [ | |
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>sid_1</th>\n", | |
" <th>sid_2</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>2014-06-17</th>\n", | |
" <td> NaN</td>\n", | |
" <td> NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-18</th>\n", | |
" <td> NaN</td>\n", | |
" <td> NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-19</th>\n", | |
" <td> NaN</td>\n", | |
" <td> NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-20</th>\n", | |
" <td> 1.5</td>\n", | |
" <td> 1.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-21</th>\n", | |
" <td> 2.5</td>\n", | |
" <td> 2.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-22</th>\n", | |
" <td> 3.5</td>\n", | |
" <td> 3.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-23</th>\n", | |
" <td> 4.5</td>\n", | |
" <td> 4.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-24</th>\n", | |
" <td> 5.5</td>\n", | |
" <td> 5.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-25</th>\n", | |
" <td> 6.5</td>\n", | |
" <td> 6.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-26</th>\n", | |
" <td> 7.5</td>\n", | |
" <td> 7.5</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 45, | |
"text": [ | |
" sid_1 sid_2\n", | |
"2014-06-17 NaN NaN\n", | |
"2014-06-18 NaN NaN\n", | |
"2014-06-19 NaN NaN\n", | |
"2014-06-20 1.5 1.5\n", | |
"2014-06-21 2.5 2.5\n", | |
"2014-06-22 3.5 3.5\n", | |
"2014-06-23 4.5 4.5\n", | |
"2014-06-24 5.5 5.5\n", | |
"2014-06-25 6.5 6.5\n", | |
"2014-06-26 7.5 7.5" | |
] | |
} | |
], | |
"prompt_number": 45 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# We can customize the minumum number of required observations by specifying min_periods.\n", | |
"rolling_means_less_nans = pd.rolling_mean(df, window=4, min_periods=2)\n", | |
"rolling_means_less_nans" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"html": [ | |
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>sid_1</th>\n", | |
" <th>sid_2</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>2014-06-17</th>\n", | |
" <td> NaN</td>\n", | |
" <td> NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-18</th>\n", | |
" <td> 0.5</td>\n", | |
" <td> 0.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-19</th>\n", | |
" <td> 1.0</td>\n", | |
" <td> 1.0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-20</th>\n", | |
" <td> 1.5</td>\n", | |
" <td> 1.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-21</th>\n", | |
" <td> 2.5</td>\n", | |
" <td> 2.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-22</th>\n", | |
" <td> 3.5</td>\n", | |
" <td> 3.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-23</th>\n", | |
" <td> 4.5</td>\n", | |
" <td> 4.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-24</th>\n", | |
" <td> 5.5</td>\n", | |
" <td> 5.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-25</th>\n", | |
" <td> 6.5</td>\n", | |
" <td> 6.5</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-26</th>\n", | |
" <td> 7.5</td>\n", | |
" <td> 7.5</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 47, | |
"text": [ | |
" sid_1 sid_2\n", | |
"2014-06-17 NaN NaN\n", | |
"2014-06-18 0.5 0.5\n", | |
"2014-06-19 1.0 1.0\n", | |
"2014-06-20 1.5 1.5\n", | |
"2014-06-21 2.5 2.5\n", | |
"2014-06-22 3.5 3.5\n", | |
"2014-06-23 4.5 4.5\n", | |
"2014-06-24 5.5 5.5\n", | |
"2014-06-25 6.5 6.5\n", | |
"2014-06-26 7.5 7.5" | |
] | |
} | |
], | |
"prompt_number": 47 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# Pandas has similar rolling functions for sum, stddev, \n", | |
"# and a variety of other statistical operations.\n", | |
"rolling_sums = pd.rolling_sum(df, window=2)\n", | |
"rolling_stddevs = pd.rolling_std(df, window=3)\n", | |
"# Combine both DataFrames by joining on the date index.\n", | |
"combined = rolling_sums.merge(rolling_stddevs, left_index=True, right_index=True, suffixes=(\"_sum\", \"_stddev\"))\n", | |
"combined" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"html": [ | |
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>sid_1_sum</th>\n", | |
" <th>sid_2_sum</th>\n", | |
" <th>sid_1_stddev</th>\n", | |
" <th>sid_2_stddev</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>2014-06-17</th>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-18</th>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-19</th>\n", | |
" <td> 3</td>\n", | |
" <td> 3</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-20</th>\n", | |
" <td> 5</td>\n", | |
" <td> 5</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-21</th>\n", | |
" <td> 7</td>\n", | |
" <td> 7</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-22</th>\n", | |
" <td> 9</td>\n", | |
" <td> 9</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-23</th>\n", | |
" <td> 11</td>\n", | |
" <td> 11</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-24</th>\n", | |
" <td> 13</td>\n", | |
" <td> 13</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-25</th>\n", | |
" <td> 15</td>\n", | |
" <td> 15</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-26</th>\n", | |
" <td> 17</td>\n", | |
" <td> 17</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 68, | |
"text": [ | |
" sid_1_sum sid_2_sum sid_1_stddev sid_2_stddev\n", | |
"2014-06-17 NaN NaN NaN NaN\n", | |
"2014-06-18 1 1 NaN NaN\n", | |
"2014-06-19 3 3 1 1\n", | |
"2014-06-20 5 5 1 1\n", | |
"2014-06-21 7 7 1 1\n", | |
"2014-06-22 9 9 1 1\n", | |
"2014-06-23 11 11 1 1\n", | |
"2014-06-24 13 13 1 1\n", | |
"2014-06-25 15 15 1 1\n", | |
"2014-06-26 17 17 1 1" | |
] | |
} | |
], | |
"prompt_number": 68 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# Note that these outputs are still DataFrames, so we can do nice things like this:\n", | |
"\n", | |
"# Get the first 5 elements of the frame.\n", | |
"combined.iloc[:5]" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"html": [ | |
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>sid_1_sum</th>\n", | |
" <th>sid_2_sum</th>\n", | |
" <th>sid_1_stddev</th>\n", | |
" <th>sid_2_stddev</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>2014-06-17</th>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-18</th>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-19</th>\n", | |
" <td> 3</td>\n", | |
" <td> 3</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-20</th>\n", | |
" <td> 5</td>\n", | |
" <td> 5</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-21</th>\n", | |
" <td> 7</td>\n", | |
" <td> 7</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 71, | |
"text": [ | |
" sid_1_sum sid_2_sum sid_1_stddev sid_2_stddev\n", | |
"2014-06-17 NaN NaN NaN NaN\n", | |
"2014-06-18 1 1 NaN NaN\n", | |
"2014-06-19 3 3 1 1\n", | |
"2014-06-20 5 5 1 1\n", | |
"2014-06-21 7 7 1 1" | |
] | |
} | |
], | |
"prompt_number": 71 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# Or this:\n", | |
"# Get all but the last element of the frame:\n", | |
"combined.iloc[:-1]" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"html": [ | |
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>sid_1_sum</th>\n", | |
" <th>sid_2_sum</th>\n", | |
" <th>sid_1_stddev</th>\n", | |
" <th>sid_2_stddev</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>2014-06-17</th>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-18</th>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-19</th>\n", | |
" <td> 3</td>\n", | |
" <td> 3</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-20</th>\n", | |
" <td> 5</td>\n", | |
" <td> 5</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-21</th>\n", | |
" <td> 7</td>\n", | |
" <td> 7</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-22</th>\n", | |
" <td> 9</td>\n", | |
" <td> 9</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-23</th>\n", | |
" <td> 11</td>\n", | |
" <td> 11</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-24</th>\n", | |
" <td> 13</td>\n", | |
" <td> 13</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-25</th>\n", | |
" <td> 15</td>\n", | |
" <td> 15</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 81, | |
"text": [ | |
" sid_1_sum sid_2_sum sid_1_stddev sid_2_stddev\n", | |
"2014-06-17 NaN NaN NaN NaN\n", | |
"2014-06-18 1 1 NaN NaN\n", | |
"2014-06-19 3 3 1 1\n", | |
"2014-06-20 5 5 1 1\n", | |
"2014-06-21 7 7 1 1\n", | |
"2014-06-22 9 9 1 1\n", | |
"2014-06-23 11 11 1 1\n", | |
"2014-06-24 13 13 1 1\n", | |
"2014-06-25 15 15 1 1" | |
] | |
} | |
], | |
"prompt_number": 81 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# Or this:\n", | |
"# Get every other entry in the DataFrame, in reverse.\n", | |
"combined.iloc[::-2]" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"html": [ | |
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>sid_1_sum</th>\n", | |
" <th>sid_2_sum</th>\n", | |
" <th>sid_1_stddev</th>\n", | |
" <th>sid_2_stddev</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>2014-06-26</th>\n", | |
" <td> 17</td>\n", | |
" <td> 17</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-24</th>\n", | |
" <td> 13</td>\n", | |
" <td> 13</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-22</th>\n", | |
" <td> 9</td>\n", | |
" <td> 9</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-20</th>\n", | |
" <td> 5</td>\n", | |
" <td> 5</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-18</th>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 85, | |
"text": [ | |
" sid_1_sum sid_2_sum sid_1_stddev sid_2_stddev\n", | |
"2014-06-26 17 17 1 1\n", | |
"2014-06-24 13 13 1 1\n", | |
"2014-06-22 9 9 1 1\n", | |
"2014-06-20 5 5 1 1\n", | |
"2014-06-18 1 1 NaN NaN" | |
] | |
} | |
], | |
"prompt_number": 85 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# Or this:\n", | |
"# Get the entries for June 20th and June 21st.\n", | |
"combined.loc[[pd.Timestamp('2014-06-20'), pd.Timestamp('2014-06-21')]]" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"html": [ | |
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>sid_1_sum</th>\n", | |
" <th>sid_2_sum</th>\n", | |
" <th>sid_1_stddev</th>\n", | |
" <th>sid_2_stddev</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>2014-06-20</th>\n", | |
" <td> 5</td>\n", | |
" <td> 5</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-21</th>\n", | |
" <td> 7</td>\n", | |
" <td> 7</td>\n", | |
" <td> 1</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 77, | |
"text": [ | |
" sid_1_sum sid_2_sum sid_1_stddev sid_2_stddev\n", | |
"2014-06-20 5 5 1 1\n", | |
"2014-06-21 7 7 1 1" | |
] | |
} | |
], | |
"prompt_number": 77 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# Or this:\n", | |
"# Get a specific column (this returns a Series)\n", | |
"combined['sid_2_sum']" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 86, | |
"text": [ | |
"2014-06-17 NaN\n", | |
"2014-06-18 1\n", | |
"2014-06-19 3\n", | |
"2014-06-20 5\n", | |
"2014-06-21 7\n", | |
"2014-06-22 9\n", | |
"2014-06-23 11\n", | |
"2014-06-24 13\n", | |
"2014-06-25 15\n", | |
"2014-06-26 17\n", | |
"Freq: D, Name: sid_2_sum, dtype: float64" | |
] | |
} | |
], | |
"prompt_number": 86 | |
}, | |
{ | |
"cell_type": "code", | |
"collapsed": false, | |
"input": [ | |
"# Or this:\n", | |
"# Get multiple specific columns (This returns a DataFrame)\n", | |
"combined[['sid_2_sum', 'sid_1_stddev']]" | |
], | |
"language": "python", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"html": [ | |
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>sid_2_sum</th>\n", | |
" <th>sid_1_stddev</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>2014-06-17</th>\n", | |
" <td>NaN</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-18</th>\n", | |
" <td> 1</td>\n", | |
" <td>NaN</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-19</th>\n", | |
" <td> 3</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-20</th>\n", | |
" <td> 5</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-21</th>\n", | |
" <td> 7</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-22</th>\n", | |
" <td> 9</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-23</th>\n", | |
" <td> 11</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-24</th>\n", | |
" <td> 13</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-25</th>\n", | |
" <td> 15</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2014-06-26</th>\n", | |
" <td> 17</td>\n", | |
" <td> 1</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"metadata": {}, | |
"output_type": "pyout", | |
"prompt_number": 87, | |
"text": [ | |
" sid_2_sum sid_1_stddev\n", | |
"2014-06-17 NaN NaN\n", | |
"2014-06-18 1 NaN\n", | |
"2014-06-19 3 1\n", | |
"2014-06-20 5 1\n", | |
"2014-06-21 7 1\n", | |
"2014-06-22 9 1\n", | |
"2014-06-23 11 1\n", | |
"2014-06-24 13 1\n", | |
"2014-06-25 15 1\n", | |
"2014-06-26 17 1" | |
] | |
} | |
], | |
"prompt_number": 87 | |
} | |
], | |
"metadata": {} | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment