Skip to content

Instantly share code, notes, and snippets.

@skitazaki
Created May 25, 2018 11:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save skitazaki/31ddb529c2b8768e6254084f737c0972 to your computer and use it in GitHub Desktop.
Save skitazaki/31ddb529c2b8768e6254084f737c0972 to your computer and use it in GitHub Desktop.
Modelling Customer Churn
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Modelling Customer Churn When Churns Are Not Explicitly Observed, with Python\n",
"\n",
"Python impplementation of\n",
"[Modelling Customer Churn When Churns Are Not Explicitly Observed, with R](https://towardsdatascience.com/modelling-customer-churn-when-churns-are-not-explicitly-observed-with-r-a768a1c919d5)."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Setup\n",
"\n",
"Prepare common data analytics packages; `numpy` and `pandas` for data manupilation, `matplotlib` and `seaborn` for data visualization.\n",
"It also requires `requests` for data acquisition and `xlrd` for data reader.\n",
"You can install all packages using `pip` command.\n",
"\n",
"After install all of them, import Python modules."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import datetime\n",
"import math\n",
"\n",
"import requests\n",
"\n",
"import numpy as np\n",
"import pandas as pd\n",
"\n",
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"\n",
"sns.set_style(\"whitegrid\")\n",
"\n",
"%matplotlib inline"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Supress warnings for `seaborn`."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import sys\n",
"import warnings\n",
"\n",
"if not sys.warnoptions:\n",
" warnings.simplefilter(\"ignore\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Data gathering\n",
"\n",
"Download Excel file from UCI machine learning repository."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"DATAFILE = 'Online Retail.xlsx'"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"UCI_ML_REPOSITORY = \"http://archive.ics.uci.edu/ml\"\n",
"DATASET = \"/machine-learning-databases/00352/Online%20Retail.xlsx\"\n",
"REMOTE_URL = UCI_ML_REPOSITORY + DATASET\n",
"\n",
"r = requests.get(REMOTE_URL)\n",
"if r.status_code == 200:\n",
" with open(DATAFILE, 'wb') as fp:\n",
" fp.write(r.content)\n",
"else:\n",
" print(\"fail to download: {}\".format(REMOTE_URL))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Read Excel file using panda's *read_excel* method via `ExcelFile` class.\n",
"To avoid type casting, specify *dtype* explicitly."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['Online Retail']\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Quantity</th>\n",
" <th>UnitPrice</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>541909.000000</td>\n",
" <td>541909.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>9.552250</td>\n",
" <td>4.611114</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>218.081158</td>\n",
" <td>96.759853</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>-80995.000000</td>\n",
" <td>-11062.060000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>1.000000</td>\n",
" <td>1.250000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>3.000000</td>\n",
" <td>2.080000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>10.000000</td>\n",
" <td>4.130000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>80995.000000</td>\n",
" <td>38970.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Quantity UnitPrice\n",
"count 541909.000000 541909.000000\n",
"mean 9.552250 4.611114\n",
"std 218.081158 96.759853\n",
"min -80995.000000 -11062.060000\n",
"25% 1.000000 1.250000\n",
"50% 3.000000 2.080000\n",
"75% 10.000000 4.130000\n",
"max 80995.000000 38970.000000"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dtype = {\n",
" 'InvoiceNo': object,\n",
" 'StockCode': object,\n",
" 'Description': object,\n",
" 'Quantity': int,\n",
" 'InvoiceDate': object,\n",
" 'UnitPrice': float,\n",
" 'CustomerID': object,\n",
" 'Country': object,\n",
"}\n",
"with pd.ExcelFile(DATAFILE) as xlsx:\n",
" print(xlsx.sheet_names)\n",
" df = pd.read_excel(xlsx, 'Online Retail', dtype=dtype)\n",
"df.describe()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>InvoiceNo</th>\n",
" <th>StockCode</th>\n",
" <th>Description</th>\n",
" <th>InvoiceDate</th>\n",
" <th>CustomerID</th>\n",
" <th>Country</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>541909.0</td>\n",
" <td>541909</td>\n",
" <td>540455</td>\n",
" <td>541909</td>\n",
" <td>406829.0</td>\n",
" <td>541909</td>\n",
" </tr>\n",
" <tr>\n",
" <th>unique</th>\n",
" <td>25900.0</td>\n",
" <td>4070</td>\n",
" <td>4223</td>\n",
" <td>23260</td>\n",
" <td>4372.0</td>\n",
" <td>38</td>\n",
" </tr>\n",
" <tr>\n",
" <th>top</th>\n",
" <td>573585.0</td>\n",
" <td>85123A</td>\n",
" <td>WHITE HANGING HEART T-LIGHT HOLDER</td>\n",
" <td>2011-10-31 14:41:00</td>\n",
" <td>17841.0</td>\n",
" <td>United Kingdom</td>\n",
" </tr>\n",
" <tr>\n",
" <th>freq</th>\n",
" <td>1114.0</td>\n",
" <td>2313</td>\n",
" <td>2369</td>\n",
" <td>1114</td>\n",
" <td>7983.0</td>\n",
" <td>495478</td>\n",
" </tr>\n",
" <tr>\n",
" <th>first</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>2010-12-01 08:26:00</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>last</th>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>2011-12-09 12:50:00</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" InvoiceNo StockCode Description \\\n",
"count 541909.0 541909 540455 \n",
"unique 25900.0 4070 4223 \n",
"top 573585.0 85123A WHITE HANGING HEART T-LIGHT HOLDER \n",
"freq 1114.0 2313 2369 \n",
"first NaN NaN NaN \n",
"last NaN NaN NaN \n",
"\n",
" InvoiceDate CustomerID Country \n",
"count 541909 406829.0 541909 \n",
"unique 23260 4372.0 38 \n",
"top 2011-10-31 14:41:00 17841.0 United Kingdom \n",
"freq 1114 7983.0 495478 \n",
"first 2010-12-01 08:26:00 NaN NaN \n",
"last 2011-12-09 12:50:00 NaN NaN "
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df[['InvoiceNo', 'StockCode', 'Description', 'InvoiceDate', 'CustomerID', 'Country']].describe()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Check cancel invoices.\n",
"\"Attribute Information\" tells:\n",
"\n",
" If this code starts with letter 'c', it indicates a cancellation."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Quantity</th>\n",
" <th>UnitPrice</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>9288.000000</td>\n",
" <td>9288.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>-29.885228</td>\n",
" <td>48.393661</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>1145.786965</td>\n",
" <td>666.600430</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>-80995.000000</td>\n",
" <td>0.010000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>-6.000000</td>\n",
" <td>1.450000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>-2.000000</td>\n",
" <td>2.950000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>-1.000000</td>\n",
" <td>5.950000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>-1.000000</td>\n",
" <td>38970.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Quantity UnitPrice\n",
"count 9288.000000 9288.000000\n",
"mean -29.885228 48.393661\n",
"std 1145.786965 666.600430\n",
"min -80995.000000 0.010000\n",
"25% -6.000000 1.450000\n",
"50% -2.000000 2.950000\n",
"75% -1.000000 5.950000\n",
"max -1.000000 38970.000000"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df[df['InvoiceNo'].apply(lambda s: str(s).lower()[0]) == 'c'].describe()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As we can see, it has 541909 total records and 9288 cancellation records.\n",
"All cancellation records have negative quantity values, and there are negative unit price in on the records other than cancellation records. In short, there might be some noise records."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Idea\n",
"\n",
"Check data distribution overview from the view of total expenses and number of purchases."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x7faabe8bffd0>"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 864x432 with 4 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df['Total'] = df['Quantity'] * df['UnitPrice']\n",
"\n",
"fig, axes = plt.subplots(nrows=2, ncols=2, figsize=(12, 6))\n",
"fig.subplots_adjust(hspace=.3)\n",
"axes[0][0].set_title('Total more than 0')\n",
"axes[0][1].set_title('Total between 0 and 10')\n",
"axes[1][0].set_title('Total between 10 and 100')\n",
"axes[1][1].set_title('Total between 100 and 1000')\n",
"\n",
"kwargs = {'kde': False, 'rug': False}\n",
"sns.distplot(df[df['Total'] > 0]['Total'], bins=10, ax=axes[0][0], **kwargs)\n",
"sns.distplot(df[(df['Total'] > 0) & (df['Total'] < 10)]['Total'], bins=10, ax=axes[0][1], **kwargs)\n",
"sns.distplot(df[(df['Total'] >= 10) & (df['Total'] < 100)]['Total'], bins=10, ax=axes[1][0], **kwargs)\n",
"sns.distplot(df[(df['Total'] >= 100) & (df['Total'] < 1000)]['Total'], bins=10, ax=axes[1][1], **kwargs)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead tr th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe thead tr:last-of-type th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr>\n",
" <th></th>\n",
" <th colspan=\"2\" halign=\"left\">InvoiceNo</th>\n",
" <th>Total</th>\n",
" <th>StockCode</th>\n",
" <th colspan=\"4\" halign=\"left\">Quantity</th>\n",
" <th colspan=\"4\" halign=\"left\">UnitPrice</th>\n",
" </tr>\n",
" <tr>\n",
" <th></th>\n",
" <th>count</th>\n",
" <th>nunique</th>\n",
" <th>sum</th>\n",
" <th>nunique</th>\n",
" <th>min</th>\n",
" <th>max</th>\n",
" <th>mean</th>\n",
" <th>std</th>\n",
" <th>min</th>\n",
" <th>max</th>\n",
" <th>mean</th>\n",
" <th>std</th>\n",
" </tr>\n",
" <tr>\n",
" <th>CustomerID</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>12346</th>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>0.00</td>\n",
" <td>1</td>\n",
" <td>-74215</td>\n",
" <td>74215</td>\n",
" <td>0.000000</td>\n",
" <td>104955.859532</td>\n",
" <td>1.04</td>\n",
" <td>1.04</td>\n",
" <td>1.040000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12347</th>\n",
" <td>182</td>\n",
" <td>7</td>\n",
" <td>4310.00</td>\n",
" <td>103</td>\n",
" <td>2</td>\n",
" <td>240</td>\n",
" <td>13.505495</td>\n",
" <td>18.856172</td>\n",
" <td>0.25</td>\n",
" <td>12.75</td>\n",
" <td>2.644011</td>\n",
" <td>2.255381</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12348</th>\n",
" <td>31</td>\n",
" <td>4</td>\n",
" <td>1797.24</td>\n",
" <td>22</td>\n",
" <td>1</td>\n",
" <td>144</td>\n",
" <td>75.516129</td>\n",
" <td>51.091990</td>\n",
" <td>0.29</td>\n",
" <td>40.00</td>\n",
" <td>5.764839</td>\n",
" <td>13.400323</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12349</th>\n",
" <td>73</td>\n",
" <td>1</td>\n",
" <td>1757.55</td>\n",
" <td>73</td>\n",
" <td>1</td>\n",
" <td>36</td>\n",
" <td>8.643836</td>\n",
" <td>6.982856</td>\n",
" <td>0.42</td>\n",
" <td>300.00</td>\n",
" <td>8.289041</td>\n",
" <td>35.028021</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12350</th>\n",
" <td>17</td>\n",
" <td>1</td>\n",
" <td>334.40</td>\n",
" <td>17</td>\n",
" <td>1</td>\n",
" <td>24</td>\n",
" <td>11.588235</td>\n",
" <td>4.345383</td>\n",
" <td>0.85</td>\n",
" <td>40.00</td>\n",
" <td>3.841176</td>\n",
" <td>9.334751</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" InvoiceNo Total StockCode Quantity \\\n",
" count nunique sum nunique min max mean \n",
"CustomerID \n",
"12346 2 2 0.00 1 -74215 74215 0.000000 \n",
"12347 182 7 4310.00 103 2 240 13.505495 \n",
"12348 31 4 1797.24 22 1 144 75.516129 \n",
"12349 73 1 1757.55 73 1 36 8.643836 \n",
"12350 17 1 334.40 17 1 24 11.588235 \n",
"\n",
" UnitPrice \n",
" std min max mean std \n",
"CustomerID \n",
"12346 104955.859532 1.04 1.04 1.040000 0.000000 \n",
"12347 18.856172 0.25 12.75 2.644011 2.255381 \n",
"12348 51.091990 0.29 40.00 5.764839 13.400323 \n",
"12349 6.982856 0.42 300.00 8.289041 35.028021 \n",
"12350 4.345383 0.85 40.00 3.841176 9.334751 "
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.groupby('CustomerID').agg({\n",
" 'InvoiceNo': ['count', 'nunique'],\n",
" 'Total': ['sum'],\n",
" 'StockCode': ['nunique'],\n",
" 'Quantity': ['min', 'max', 'mean', 'std'],\n",
" 'UnitPrice': ['min', 'max', 'mean', 'std'],\n",
"}).head()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAikAAAEpCAYAAABWe7KDAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzt3X14lPWd7/H3ECIEbA1UYCFYoWv6NSLaiG21aFvxWHxE2qqrW5XauuyDtbVnDwp0j9quVLrU+nBce9Vqj2i1YikGCrToYlfPHo8oMVaQ9NtaQGBU8IEojQGTMOePuRMnySSZJPNw35nP67pyZeY398x8MgzJd35PdyyRSCAiIiISNkMKHUBEREQkHRUpIiIiEkoqUkRERCSUVKSIiIhIKKlIERERkVBSkSIiIiKhFMUiJZGtr+3bt2ftsfL9pezKX2zZo54/ytmjnj+L2SXPolikZE1TU1OhI/SbshdOlPNHOTtEO3+Us0O080c5e7EbWugAhbT2j+9S9+6OtLf97ac/muc0IiIikqqoe1JEREQkvFSkiIiISCipSBEREZFQUpEiIiIioaQiRUREREJJRYqIiIiEkooUERERCSUVKSIiIhJKKlJEREQklFSkiIiISCipSBEREZFQUpEiIiIioaQiRUREREJJRYqIiIiEkooUERERCSUVKSIiIhJKKlJEREQklFSkiIiISCipSBEREZFQUpEiIiIioaQiRUREREJJRYqIiIiEkooUERERCSUVKSIiIhJKKlJEREQklFSkiIiISCipSBEREZFQUpEiIiIioaQiRUREREJJRYqIiIiE0tBCBwirhzbs6PH2v/30R/OUREREpDipJ0VERERCST0p/dRTT4t6WURERAZORUoO9DZUlA2vvf4ude/m/nmypafCbSBDa4W6r/RNLl/rQv076v0THvrQOHjFEolEoTP0SW1tbbQCi4jIoDFt2rRYoTMUk8gVKSIiIlIcNHFWREREQklFioiIiISSihQREREJJRUpIiIiEkoqUkRERCSUIlekBEuQs/K1ffv2rD1Wvr+UXfmLLXvU80c5e9TzZzF7v2Xzb9cg/OpW5IqUbGpqaip0hH5T9sKJcv4oZ4do549ydoh2/ihnL3ZFXaSIiIhIeKlIERERkVDK2bl7zOwI4H5gHMkxp7vd/XYzuxH4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\n",
"text/plain": [
"<Figure size 576x288 with 3 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df1 = df.groupby('CustomerID').agg({\n",
" 'InvoiceNo': ['count', 'nunique'],\n",
"})['InvoiceNo']\n",
"grid = sns.jointplot('count', 'nunique', data=df1)\n",
"grid.fig.set_figwidth(8)\n",
"grid.fig.set_figheight(4)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>count</th>\n",
" <th>nunique</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>4372.000000</td>\n",
" <td>4372.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>93.053294</td>\n",
" <td>5.075480</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>232.471608</td>\n",
" <td>9.338754</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>1.000000</td>\n",
" <td>1.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>17.000000</td>\n",
" <td>1.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>42.000000</td>\n",
" <td>3.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>102.000000</td>\n",
" <td>5.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>7983.000000</td>\n",
" <td>248.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" count nunique\n",
"count 4372.000000 4372.000000\n",
"mean 93.053294 5.075480\n",
"std 232.471608 9.338754\n",
"min 1.000000 1.000000\n",
"25% 17.000000 1.000000\n",
"50% 42.000000 3.000000\n",
"75% 102.000000 5.000000\n",
"max 7983.000000 248.000000"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df1.describe()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x7faab7459240>"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 864x432 with 4 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"s1 = df1['nunique']\n",
"\n",
"fig, axes = plt.subplots(nrows=2, ncols=2, figsize=(12, 6))\n",
"fig.subplots_adjust(hspace=.4)\n",
"axes[0][0].set_title('Number of invoices')\n",
"axes[0][1].set_title('Number of invoices more than 5') # upper 25%\n",
"axes[1][0].set_title('Number of invoices between 5 and 50')\n",
"axes[1][1].set_title('Number of invoices at least 20 purchases')\n",
"\n",
"kwargs = {'kde': False, 'rug': False}\n",
"sns.distplot(s1[s1 > 0], bins=10, ax=axes[0][0], **kwargs)\n",
"sns.distplot(s1[s1 > 5], bins=10, ax=axes[0][1], **kwargs)\n",
"sns.distplot(s1[(s1 > 5) & (s1 < 50)], bins=10, ax=axes[1][0], **kwargs)\n",
"sns.distplot(s1[s1 >= 20], bins=10, ax=axes[1][1], **kwargs)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Analysis\n",
"\n",
"Some data transformation required."
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th>Quantity</th>\n",
" <th>UnitPrice</th>\n",
" <th>Total</th>\n",
" </tr>\n",
" <tr>\n",
" <th>CustomerID</th>\n",
" <th>InvoiceNo</th>\n",
" <th>InvoiceDate</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th rowspan=\"2\" valign=\"top\">12346</th>\n",
" <th>541431</th>\n",
" <th>2011-01-18 10:01:00</th>\n",
" <td>74215</td>\n",
" <td>1.04</td>\n",
" <td>77183.60</td>\n",
" </tr>\n",
" <tr>\n",
" <th>C541433</th>\n",
" <th>2011-01-18 10:17:00</th>\n",
" <td>-74215</td>\n",
" <td>1.04</td>\n",
" <td>-77183.60</td>\n",
" </tr>\n",
" <tr>\n",
" <th rowspan=\"3\" valign=\"top\">12347</th>\n",
" <th>537626</th>\n",
" <th>2010-12-07 14:57:00</th>\n",
" <td>319</td>\n",
" <td>89.59</td>\n",
" <td>711.79</td>\n",
" </tr>\n",
" <tr>\n",
" <th>542237</th>\n",
" <th>2011-01-26 14:30:00</th>\n",
" <td>315</td>\n",
" <td>73.17</td>\n",
" <td>475.39</td>\n",
" </tr>\n",
" <tr>\n",
" <th>549222</th>\n",
" <th>2011-04-07 10:43:00</th>\n",
" <td>483</td>\n",
" <td>62.29</td>\n",
" <td>636.25</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Quantity UnitPrice Total\n",
"CustomerID InvoiceNo InvoiceDate \n",
"12346 541431 2011-01-18 10:01:00 74215 1.04 77183.60\n",
" C541433 2011-01-18 10:17:00 -74215 1.04 -77183.60\n",
"12347 537626 2010-12-07 14:57:00 319 89.59 711.79\n",
" 542237 2011-01-26 14:30:00 315 73.17 475.39\n",
" 549222 2011-04-07 10:43:00 483 62.29 636.25"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.groupby(['CustomerID', 'InvoiceNo', 'InvoiceDate']).sum().head()"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>CustomerID</th>\n",
" <th>InvoiceNo</th>\n",
" <th>InvoiceDate</th>\n",
" <th>Spend</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>12346</td>\n",
" <td>541431</td>\n",
" <td>2011-01-18 10:01:00</td>\n",
" <td>77183.60</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>12347</td>\n",
" <td>537626</td>\n",
" <td>2010-12-07 14:57:00</td>\n",
" <td>711.79</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>12347</td>\n",
" <td>542237</td>\n",
" <td>2011-01-26 14:30:00</td>\n",
" <td>475.39</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>12347</td>\n",
" <td>549222</td>\n",
" <td>2011-04-07 10:43:00</td>\n",
" <td>636.25</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>12347</td>\n",
" <td>556201</td>\n",
" <td>2011-06-09 13:01:00</td>\n",
" <td>382.52</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" CustomerID InvoiceNo InvoiceDate Spend\n",
"0 12346 541431 2011-01-18 10:01:00 77183.60\n",
"1 12347 537626 2010-12-07 14:57:00 711.79\n",
"2 12347 542237 2011-01-26 14:30:00 475.39\n",
"3 12347 549222 2011-04-07 10:43:00 636.25\n",
"4 12347 556201 2011-06-09 13:01:00 382.52"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"txns = df.groupby(['CustomerID', 'InvoiceNo', 'InvoiceDate']).sum()['Total'].rename('Spend')\n",
"txns = txns[txns > 0].reset_index()\n",
"txns.head()"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>CustomerID</th>\n",
" <th>InvoiceNo</th>\n",
" <th>InvoiceDate</th>\n",
" <th>Spend</th>\n",
" <th>PreviousInvoiceDate</th>\n",
" <th>Days</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>12346</td>\n",
" <td>541431</td>\n",
" <td>2011-01-18 10:01:00</td>\n",
" <td>77183.60</td>\n",
" <td>NaT</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>12347</td>\n",
" <td>537626</td>\n",
" <td>2010-12-07 14:57:00</td>\n",
" <td>711.79</td>\n",
" <td>NaT</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>12347</td>\n",
" <td>542237</td>\n",
" <td>2011-01-26 14:30:00</td>\n",
" <td>475.39</td>\n",
" <td>2010-12-07 14:57:00</td>\n",
" <td>49.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>12347</td>\n",
" <td>549222</td>\n",
" <td>2011-04-07 10:43:00</td>\n",
" <td>636.25</td>\n",
" <td>2011-01-26 14:30:00</td>\n",
" <td>70.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>12347</td>\n",
" <td>556201</td>\n",
" <td>2011-06-09 13:01:00</td>\n",
" <td>382.52</td>\n",
" <td>2011-04-07 10:43:00</td>\n",
" <td>63.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" CustomerID InvoiceNo InvoiceDate Spend PreviousInvoiceDate \\\n",
"0 12346 541431 2011-01-18 10:01:00 77183.60 NaT \n",
"1 12347 537626 2010-12-07 14:57:00 711.79 NaT \n",
"2 12347 542237 2011-01-26 14:30:00 475.39 2010-12-07 14:57:00 \n",
"3 12347 549222 2011-04-07 10:43:00 636.25 2011-01-26 14:30:00 \n",
"4 12347 556201 2011-06-09 13:01:00 382.52 2011-04-07 10:43:00 \n",
"\n",
" Days \n",
"0 NaN \n",
"1 NaN \n",
"2 49.0 \n",
"3 70.0 \n",
"4 63.0 "
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"txns['PreviousInvoiceDate'] = txns.groupby('CustomerID')['InvoiceDate'].shift(1)\n",
"txns['Days'] = (txns['InvoiceDate'] - txns['PreviousInvoiceDate']).dt.days\n",
"txns.head()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>CustomerID</th>\n",
" <th>InvoiceNo</th>\n",
" <th>InvoiceDate</th>\n",
" <th>Spend</th>\n",
" <th>PreviousInvoiceDate</th>\n",
" <th>Days</th>\n",
" <th>nPurchase</th>\n",
" <th>e_cdf</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>12346</td>\n",
" <td>541431</td>\n",
" <td>2011-01-18 10:01:00</td>\n",
" <td>77183.60</td>\n",
" <td>NaT</td>\n",
" <td>NaN</td>\n",
" <td>1</td>\n",
" <td>1.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>12347</td>\n",
" <td>537626</td>\n",
" <td>2010-12-07 14:57:00</td>\n",
" <td>711.79</td>\n",
" <td>NaT</td>\n",
" <td>NaN</td>\n",
" <td>7</td>\n",
" <td>0.142857</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>12347</td>\n",
" <td>542237</td>\n",
" <td>2011-01-26 14:30:00</td>\n",
" <td>475.39</td>\n",
" <td>2010-12-07 14:57:00</td>\n",
" <td>49.0</td>\n",
" <td>7</td>\n",
" <td>0.142857</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>12347</td>\n",
" <td>549222</td>\n",
" <td>2011-04-07 10:43:00</td>\n",
" <td>636.25</td>\n",
" <td>2011-01-26 14:30:00</td>\n",
" <td>70.0</td>\n",
" <td>7</td>\n",
" <td>0.142857</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>12347</td>\n",
" <td>556201</td>\n",
" <td>2011-06-09 13:01:00</td>\n",
" <td>382.52</td>\n",
" <td>2011-04-07 10:43:00</td>\n",
" <td>63.0</td>\n",
" <td>7</td>\n",
" <td>0.142857</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" CustomerID InvoiceNo InvoiceDate Spend PreviousInvoiceDate \\\n",
"0 12346 541431 2011-01-18 10:01:00 77183.60 NaT \n",
"1 12347 537626 2010-12-07 14:57:00 711.79 NaT \n",
"2 12347 542237 2011-01-26 14:30:00 475.39 2010-12-07 14:57:00 \n",
"3 12347 549222 2011-04-07 10:43:00 636.25 2011-01-26 14:30:00 \n",
"4 12347 556201 2011-06-09 13:01:00 382.52 2011-04-07 10:43:00 \n",
"\n",
" Days nPurchase e_cdf \n",
"0 NaN 1 1.000000 \n",
"1 NaN 7 0.142857 \n",
"2 49.0 7 0.142857 \n",
"3 70.0 7 0.142857 \n",
"4 63.0 7 0.142857 "
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"txns1 = txns.merge(pd.DataFrame(txns.groupby('CustomerID')['InvoiceNo'].count().rename('nPurchase')),\n",
" left_on='CustomerID', right_on='CustomerID')\n",
"txns1['e_cdf'] = 1/txns1['nPurchase']\n",
"txns1.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Pick up 20 sample customers."
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([13668, 15039, 12569, 17581, 16684, 12720, 13534, 12841, 13089,\n",
" 14527, 13599, 16839, 15615, 17243, 13854, 14646, 16523, 15159,\n",
" 12415, 13069])"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"samples = np.random.choice(txns1[txns1['nPurchase'] > 20]['CustomerID'].unique(), 20)\n",
"samples"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 864x864 with 20 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, axes = plt.subplots(nrows=5, ncols=4, figsize=(12, 12), sharex=True, sharey=True)\n",
"fig.subplots_adjust(hspace=.3)\n",
"fig.text(0.5, 0.06, 'Time Since Last Purchase (Days)', ha='center')\n",
"fig.text(0.06, 0.5, 'Frequency', va='center', rotation='vertical')\n",
"\n",
"kwargs = {'kde': False, 'rug': False}\n",
"\n",
"for i, s in enumerate(samples):\n",
" ax = axes[math.floor(i/4), i%4]\n",
" ax.set_title('CustomerID: {}'.format(s))\n",
" txns1[txns1['CustomerID'] == s]['Days'].hist(normed=1, bins=15, ax=ax)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>CustomerID</th>\n",
" <th>Days</th>\n",
" <th>e_cdf</th>\n",
" <th>cumsum</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>18562.000000</td>\n",
" <td>14224.000000</td>\n",
" <td>18562.000000</td>\n",
" <td>18562.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>15266.266782</td>\n",
" <td>39.436516</td>\n",
" <td>0.233703</td>\n",
" <td>0.616852</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>1733.952850</td>\n",
" <td>51.822986</td>\n",
" <td>0.265148</td>\n",
" <td>0.300838</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>12346.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.004762</td>\n",
" <td>0.004762</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>13777.000000</td>\n",
" <td>6.000000</td>\n",
" <td>0.058824</td>\n",
" <td>0.348929</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>15176.500000</td>\n",
" <td>21.000000</td>\n",
" <td>0.142857</td>\n",
" <td>0.625000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>16779.000000</td>\n",
" <td>51.000000</td>\n",
" <td>0.333333</td>\n",
" <td>0.930949</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>18287.000000</td>\n",
" <td>365.000000</td>\n",
" <td>1.000000</td>\n",
" <td>1.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" CustomerID Days e_cdf cumsum\n",
"count 18562.000000 14224.000000 18562.000000 18562.000000\n",
"mean 15266.266782 39.436516 0.233703 0.616852\n",
"std 1733.952850 51.822986 0.265148 0.300838\n",
"min 12346.000000 0.000000 0.004762 0.004762\n",
"25% 13777.000000 6.000000 0.058824 0.348929\n",
"50% 15176.500000 21.000000 0.142857 0.625000\n",
"75% 16779.000000 51.000000 0.333333 0.930949\n",
"max 18287.000000 365.000000 1.000000 1.000000"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"txns2 = txns1[['CustomerID', 'Days', 'e_cdf']].sort_values(by=['CustomerID', 'Days'])\n",
"txns2['cumsum'] = txns2.groupby(['CustomerID'])['e_cdf'].cumsum()\n",
"txns2.describe()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 864x864 with 20 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, axes = plt.subplots(nrows=5, ncols=4, figsize=(12, 12), sharex=True, sharey=True)\n",
"fig.subplots_adjust(hspace=.3)\n",
"fig.text(0.5, 0.06, 'Time Since Last Purchase (Days)', ha='center')\n",
"fig.text(0.06, 0.5, 'e_cdf', va='center', rotation='vertical')\n",
"\n",
"kwargs = {'kde': False, 'rug': False}\n",
"\n",
"for i, s in enumerate(samples):\n",
" ax = axes[math.floor(i/4), i%4]\n",
" ax.set_title('CustomerID: {}'.format(s))\n",
" txns2[txns2['CustomerID'] == s].plot(x='Days', y='cumsum', ax=ax, legend=False)\n",
" ax.hlines(y=0.9, xmin=0, xmax=60, linewidth=1, color='r')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Calculate 90th percentile values for each customer."
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>90th</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>13668</th>\n",
" <td>27.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15039</th>\n",
" <td>13.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12569</th>\n",
" <td>20.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17581</th>\n",
" <td>47.1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16684</th>\n",
" <td>39.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12720</th>\n",
" <td>27.6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13534</th>\n",
" <td>29.1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12841</th>\n",
" <td>23.4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13089</th>\n",
" <td>8.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14527</th>\n",
" <td>9.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13599</th>\n",
" <td>48.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16839</th>\n",
" <td>17.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15615</th>\n",
" <td>33.7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17243</th>\n",
" <td>22.6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13854</th>\n",
" <td>28.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14646</th>\n",
" <td>14.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16523</th>\n",
" <td>25.1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15159</th>\n",
" <td>26.2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12415</th>\n",
" <td>33.2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13069</th>\n",
" <td>37.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" 90th\n",
"13668 27.0\n",
"15039 13.5\n",
"12569 20.0\n",
"17581 47.1\n",
"16684 39.0\n",
"12720 27.6\n",
"13534 29.1\n",
"12841 23.4\n",
"13089 8.5\n",
"14527 9.0\n",
"13599 48.5\n",
"16839 17.8\n",
"15615 33.7\n",
"17243 22.6\n",
"13854 28.0\n",
"14646 14.0\n",
"16523 25.1\n",
"15159 26.2\n",
"12415 33.2\n",
"13069 37.0"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"val = []\n",
"for i, s in enumerate(samples):\n",
" t1 = txns2[txns2['CustomerID'] == s]\n",
" val.append(t1.quantile(.90)['Days'])\n",
"pd.DataFrame(val, columns=['90th'], index=samples)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Conclusion\n",
"\n",
"We could calculate distribution of days since last purchase and confirm that the 90th percentile values are different for each customer. To calculate it for all customers, we can add a good indicator for customer churn."
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment