Skip to content

Instantly share code, notes, and snippets.

@clettieri
Created August 23, 2017 11:28
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 clettieri/cfac5a69c118cfe1fd64c1a9d0872909 to your computer and use it in GitHub Desktop.
Save clettieri/cfac5a69c118cfe1fd64c1a9d0872909 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Data Challenge: Analyzing Click-Through Rates \n",
"\n",
"** Dependencies **\n",
"- Python 2.7\n",
"- Pandas 0.19.2\n",
"- Numpy 1.11.3\n",
"- Seaborn 0.7.1\n",
"- NLTK 3.2.2\n",
"\n",
"### Understand the Data"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"%matplotlib inline\n",
"import pandas as pd\n",
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 2,
"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_url</th>\n",
" <th>target_url</th>\n",
" <th>target_position</th>\n",
" <th>origin_template</th>\n",
" <th>target_template</th>\n",
" <th>origin_category</th>\n",
" <th>target_category</th>\n",
" <th>pageviews</th>\n",
" <th>target_clicks</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>https://www.thespruce.com/1-1-2-scale-miniatur...</td>\n",
" <td>https://www.thespruce.com/what-is-124-scale-23...</td>\n",
" <td>1</td>\n",
" <td>FLEXIBLEARTICLE</td>\n",
" <td>FLEXIBLEARTICLE</td>\n",
" <td>A</td>\n",
" <td>A</td>\n",
" <td>1491</td>\n",
" <td>15.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>https://www.thespruce.com/1-1-2-scale-miniatur...</td>\n",
" <td>https://www.thespruce.com/dolls-house-and-mini...</td>\n",
" <td>2</td>\n",
" <td>FLEXIBLEARTICLE</td>\n",
" <td>LIST</td>\n",
" <td>A</td>\n",
" <td>A</td>\n",
" <td>1491</td>\n",
" <td>12.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>https://www.thespruce.com/1-1-2-scale-miniatur...</td>\n",
" <td>https://www.thespruce.com/make-miniature-arche...</td>\n",
" <td>3</td>\n",
" <td>FLEXIBLEARTICLE</td>\n",
" <td>STEPBYSTEP</td>\n",
" <td>A</td>\n",
" <td>A</td>\n",
" <td>1491</td>\n",
" <td>2.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>https://www.thespruce.com/1-1-2-scale-miniatur...</td>\n",
" <td>https://www.thespruce.com/ways-to-measure-with...</td>\n",
" <td>4</td>\n",
" <td>FLEXIBLEARTICLE</td>\n",
" <td>FLEXIBLEARTICLE</td>\n",
" <td>A</td>\n",
" <td>A</td>\n",
" <td>1491</td>\n",
" <td>17.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>https://www.thespruce.com/1-1-2-scale-miniatur...</td>\n",
" <td>https://www.thespruce.com/make-village-church-...</td>\n",
" <td>5</td>\n",
" <td>FLEXIBLEARTICLE</td>\n",
" <td>STEPBYSTEP</td>\n",
" <td>A</td>\n",
" <td>A</td>\n",
" <td>1491</td>\n",
" <td>0.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" origin_url \\\n",
"0 https://www.thespruce.com/1-1-2-scale-miniatur... \n",
"1 https://www.thespruce.com/1-1-2-scale-miniatur... \n",
"2 https://www.thespruce.com/1-1-2-scale-miniatur... \n",
"3 https://www.thespruce.com/1-1-2-scale-miniatur... \n",
"4 https://www.thespruce.com/1-1-2-scale-miniatur... \n",
"\n",
" target_url target_position \\\n",
"0 https://www.thespruce.com/what-is-124-scale-23... 1 \n",
"1 https://www.thespruce.com/dolls-house-and-mini... 2 \n",
"2 https://www.thespruce.com/make-miniature-arche... 3 \n",
"3 https://www.thespruce.com/ways-to-measure-with... 4 \n",
"4 https://www.thespruce.com/make-village-church-... 5 \n",
"\n",
" origin_template target_template origin_category target_category \\\n",
"0 FLEXIBLEARTICLE FLEXIBLEARTICLE A A \n",
"1 FLEXIBLEARTICLE LIST A A \n",
"2 FLEXIBLEARTICLE STEPBYSTEP A A \n",
"3 FLEXIBLEARTICLE FLEXIBLEARTICLE A A \n",
"4 FLEXIBLEARTICLE STEPBYSTEP A A \n",
"\n",
" pageviews target_clicks \n",
"0 1491 15.0 \n",
"1 1491 12.0 \n",
"2 1491 2.0 \n",
"3 1491 17.0 \n",
"4 1491 0.0 "
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#Read and preview the data\n",
"df_raw = pd.read_csv('ctr_data.csv')\n",
"df = df_raw.copy()\n",
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'pandas.core.frame.DataFrame'>\n",
"RangeIndex: 177010 entries, 0 to 177009\n",
"Data columns (total 9 columns):\n",
"origin_url 177010 non-null object\n",
"target_url 177010 non-null object\n",
"target_position 177010 non-null int64\n",
"origin_template 177010 non-null object\n",
"target_template 177010 non-null object\n",
"origin_category 177010 non-null object\n",
"target_category 177010 non-null object\n",
"pageviews 177010 non-null int64\n",
"target_clicks 177010 non-null float64\n",
"dtypes: float64(1), int64(2), object(6)\n",
"memory usage: 12.2+ MB\n"
]
}
],
"source": [
"#Target clicks is a float? - interesting\n",
"df.info()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"origin_url 0\n",
"target_url 0\n",
"target_position 0\n",
"origin_template 0\n",
"target_template 0\n",
"origin_category 0\n",
"target_category 0\n",
"pageviews 0\n",
"target_clicks 0\n",
"dtype: int64"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#Check for missing values\n",
"df.isnull().sum()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"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>target_position</th>\n",
" <th>pageviews</th>\n",
" <th>target_clicks</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>177010.000000</td>\n",
" <td>177010.000000</td>\n",
" <td>177010.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>5.500000</td>\n",
" <td>1139.779029</td>\n",
" <td>9.271534</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>2.872289</td>\n",
" <td>3376.823792</td>\n",
" <td>53.305050</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>1.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>3.000000</td>\n",
" <td>119.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>5.500000</td>\n",
" <td>369.000000</td>\n",
" <td>2.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>8.000000</td>\n",
" <td>1046.000000</td>\n",
" <td>5.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>10.000000</td>\n",
" <td>177232.000000</td>\n",
" <td>6700.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" target_position pageviews target_clicks\n",
"count 177010.000000 177010.000000 177010.000000\n",
"mean 5.500000 1139.779029 9.271534\n",
"std 2.872289 3376.823792 53.305050\n",
"min 1.000000 0.000000 0.000000\n",
"25% 3.000000 119.000000 0.000000\n",
"50% 5.500000 369.000000 2.000000\n",
"75% 8.000000 1046.000000 5.000000\n",
"max 10.000000 177232.000000 6700.000000"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.describe()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Clean Data\n",
"\n",
"Looks like some zero values for page views, that won't provide us with any information. Remove those pages with no pageviews.\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df = df[df['pageviews'] > 0].copy()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"#Add Click-through rate\n",
"df['ctr'] = df['target_clicks'] / df['pageviews'] * 100"
]
},
{
"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>target_position</th>\n",
" <th>pageviews</th>\n",
" <th>target_clicks</th>\n",
" <th>ctr</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>168546.000000</td>\n",
" <td>168546.000000</td>\n",
" <td>168546.000000</td>\n",
" <td>168546.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>5.500030</td>\n",
" <td>1197.016162</td>\n",
" <td>9.733973</td>\n",
" <td>0.948869</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>2.872215</td>\n",
" <td>3450.660519</td>\n",
" <td>54.585703</td>\n",
" <td>3.234607</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>1.000000</td>\n",
" <td>2.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>3.000000</td>\n",
" <td>146.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>6.000000</td>\n",
" <td>403.000000</td>\n",
" <td>2.000000</td>\n",
" <td>0.277888</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>8.000000</td>\n",
" <td>1107.000000</td>\n",
" <td>7.000000</td>\n",
" <td>1.056338</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>10.000000</td>\n",
" <td>177232.000000</td>\n",
" <td>6700.000000</td>\n",
" <td>279.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" target_position pageviews target_clicks ctr\n",
"count 168546.000000 168546.000000 168546.000000 168546.000000\n",
"mean 5.500030 1197.016162 9.733973 0.948869\n",
"std 2.872215 3450.660519 54.585703 3.234607\n",
"min 1.000000 2.000000 0.000000 0.000000\n",
"25% 3.000000 146.000000 0.000000 0.000000\n",
"50% 6.000000 403.000000 2.000000 0.277888\n",
"75% 8.000000 1107.000000 7.000000 1.056338\n",
"max 10.000000 177232.000000 6700.000000 279.000000"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.describe()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Still some bad data. Seems like CTR can be greater than 100 which is suspicious. Also origin urls with a page view of 2 as minimum doesn't seem like would have enough information, need to estbalish a minimum sample size for page views."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##### Determine Minimum Sample Size"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"#Determine minimum page views needed\n",
"#Let's assume 95% confidence level with 5% margin of error\n",
"def get_sample_size(z_score, margin_of_error, p_hat):\n",
" '''(float, float, float) -> int\n",
" \n",
" Use the formula to determine needed sample size for\n",
" estimating population proportions.\n",
" 95% Confidence = 1.960 zscore\n",
" 90% Confidence = 1.645 zscore\n",
" \n",
" '''\n",
" assert(margin_of_error < 1 and margin_of_error > 0)\n",
" assert(p_hat < 1 and p_hat > 0)\n",
" \n",
" #n = ((zscore^2)*(p_hat)*(1-p_hat)) / margin_of_error^2\n",
" numerator = z_score**2 * p_hat * (1-p_hat)\n",
" n = numerator / margin_of_error**2\n",
" return int(np.ceil(n))"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"0.8131864191119995"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#Get estimate for p-hat\n",
"df['target_clicks'].sum() / df['pageviews'].sum() * 100"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"0.9488688546859679"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['ctr'].mean()"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"0.277888050813815"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['ctr'].median()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Will be conservative and round up to 1%."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"16"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"get_sample_size(1.96, .05, .01)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now I will remove all pages with less than 16 views. Pages with more than 16 views I will have a 95% confidence level in my results +/- a %5 margin of error."
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"(163569, 10)"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = df[df['pageviews']>=16].copy()\n",
"df.shape"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##### Clean Outliers\n",
"\n",
"Pageviews looks good now, but click-through rate being greater than 100 is potentially an error. I believe this is likely caused by a measurement error or an abnormal user that maybe opened the same link multiple times for some reason. Since these outliers are likely due to error I will remove them."
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAD8CAYAAAB5Pm/hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmcHGW97/HPL4lwELcgObkxcAz4Cl6DHoPmRlQUBFRE\njoDeqyAH4xEPHuWgKOdcA6ggGEU2EVk0kEhAIAlLQgwEQobsIctk35PJMpkJycxkXyaZzPKcP7pm\npmeme7p6umtqyff9es0rPdXV1b9MV33rqaeeqjbnHCIiklw9wi5ARESCpaAXEUk4Bb2ISMIp6EVE\nEk5BLyKScAp6EZGEU9CLiCScgl5EJOEU9CIiCdcr7AIATj31VDdgwICwyxARiZXFixfvcs71yTVf\nJIJ+wIABlJaWhl2GiEismFm5n/nUdSMiknAKehGRhFPQi4gknIJeRCThFPQiIgmnoBcRSTgFvYhI\nwsUi6Kes3MHuQ3Vhl5G3/UfqmbT87aIuc9qaKqoOHC3qMv04XNfAxKXbu/19i23n/qOUrK0Ku4xI\nWFm5nxWV+7r8+m27a5m9sSbnfJNXvM2+2mNdfp/jydZdh5mzcVfRlxv5oN97+Bg/fGYJ142J3wVV\nN49fzo+fW0pZ9cGiLfP7T5Xy9UfnFW15fv1y4ipuGreMJdv2dvt7F9OVj86N5boUhH95eA5fe3hu\nl1//+Xunc+2ohZ3OU7Gnlv98dik3Pre0y+9zPLngvhn866gFRV9u5IO+vqkJgMq9R0KuJH879qdq\nPlrfVNTlbt/X/X+Lnd5RxJFjjd3+3sW0Y3/3Hw0dz+oaUuvL2yGss9Iq8kEvIiKFUdCLiCScgl5E\nJOEU9CIiCaegFxFJuBgFvQu7gC5z8S1dpCi0CYQr8kFvWNgldJnFt/QOtLOSrknQRhBjkQ96iRZt\ntiLxo6AXEUk4Bb2ISMIp6EVEEk5BLyKScLEJ+jiP+nAaXCYiIYp80Md5iGKch4aKFJXaOqGKfNCL\nSHzFuaGWJDmD3sxON7PpZrbGzFab2U+86XeY2XYzW+b9XJr2mlvMrMzM1pvZl4P8D0j3UPeTSHz1\n8jFPA3Czc26Jmb0bWGxmb3jP/cE5d1/6zGY2CLgKOBv4ADDNzM5yzsX7GyskRS00kdjJ2aJ3zu1w\nzi3xHh8E1gL9O3nJ5cBY51ydc24LUAYMLUaxIiKSv7z66M1sAHAO0Pylhjea2QozG21mvb1p/YGK\ntJdV0vmOQUREAuQ76M3sXcCLwE3OuQPAY8CZwGBgB3B/Pm9sZtebWamZldbU5P4m+Tj3EMd5aKiI\nxJ+voDezd5AK+Weccy8BOOeqnHONzrkm4HFau2e2A6envfw0b1obzrmRzrkhzrkhffr0yf7evv4b\n0aQRByISBX5G3RgwCljrnHsgbXq/tNmuBFZ5jycBV5nZiWZ2BjAQWFi8kkUkbnRQGy4/o24+C1wL\nrDSzZd60W4GrzWwwqc9wK/ADAOfcajMbD6whNWLnBo24ETk+6aA2GnIGvXNuDpk/r1c7ec0IYEQB\ndYmISJHoyljxRSeUReJLQS950f17ROInNkHvYtykjG/lIpIEkQ96i/EYxfhWLiJJEvmgF5H4i/MR\neRIo6EUkMHE+Ik8SBb2ISMIp6EVEEk5BL76oh1UkvmIT9HEOmiSdiFKXq0j8RD7oY50rSkURiYDI\nB72IiBRGQS8igUtO52U8KeglLwk63SDdQJ2X0aCgF1+0wYrEl4JeRCThYhP0ce4yiHHpIpIAkQ/6\nOI9QjHHpHWhnJRJfkQ96iZY473hFjlcKehEJXJy7XpNAQS8igdERYDQo6EVEEk5BLyKScLEJ+jjf\nATLGpYtIAkQ+6C3GgxTVPykiURD5oJeI0FGJSGwp6CUvOkgRiZ+cQW9mp5vZdDNbY2arzewn3vRT\nzOwNM9vo/ds77TW3mFmZma03sy8H+R8QkehzOiQMlZ8WfQNws3NuEHAucIOZDQKGAyXOuYFAifc7\n3nNXAWcDlwCPmlnPIIoXkWiL8zm2JMkZ9M65Hc65Jd7jg8BaoD9wOTDGm20McIX3+HJgrHOuzjm3\nBSgDhha7cBER8SevPnozGwCcAywA+jrndnhP7QT6eo/7AxVpL6v0prVf1vVmVmpmpTU1NTnfO94H\nfvGuXkTizXfQm9m7gBeBm5xzB9Kfc6lB7nmlmXNupHNuiHNuSJ8+fTp543yWGi0xLl1EEsRX0JvZ\nO0iF/DPOuZe8yVVm1s97vh9Q7U3fDpye9vLTvGkiIhICP6NuDBgFrHXOPZD21CRgmPd4GPBy2vSr\nzOxEMzsDGAgsLF7JIiKSj14+5vkscC2w0syWedNuBe4GxpvZdUA58E0A59xqMxsPrCE1YucG51xj\n0SuXbqXhcSLxlTPonXNzyN7dfFGW14wARhRQl0SU6b4O0gW631O4dGWsiARG7YJoiE/Qx7hFoNaM\niIQp8kEf5xaBujlEJAoiH/QiIlIYBb2ISMIp6EVEEk5BL77ohLIUQutPuBT0khedXxaJn9gEfZwb\nBHGuXUTiL/JBH+cGZJxrF5HkiHzQi4hIYRT0IiIJp6AXEUk4Bb2ISMIp6EVEEi42Qe9ifMVFjEtv\nkYD/goRA111EQ+SDPs53gIxx6Vkl8L8kkniRD3qJFrXsReJHQS++qCUvEl8KehGRhFPQi4gknIJe\nRAIX51FzSRCboI/zaqKVXI5XcR41lySRD/o4ryYW6+pFJCkiH/QSDTomEYkvBb3kRccoIvGTM+jN\nbLSZVZvZqrRpd5jZdjNb5v1cmvbcLWZWZmbrzezLQRUuIiL++GnRPwlckmH6H5xzg72fVwHMbBBw\nFXC295pHzaxnsYoVEZH85Qx659wsYI/P5V0OjHXO1TnntgBlwNAC6hMRkQIV0kd/o5mt8Lp2envT\n+gMVafNUetMKphGKIvGlzTdcXQ36x4AzgcHADuD+fBdgZtebWamZldbU1HSxjHjQSi7HK528j4Yu\nBb1zrso51+icawIep7V7Zjtwetqsp3nTMi1jpHNuiHNuSJ8+fbpSRvRpLReRCOhS0JtZv7RfrwSa\nR+RMAq4ysxPN7AxgILCwsBIlCnR1r0h89co1g5k9B1wAnGpmlcDtwAVmNphUr8RW4AcAzrnVZjYe\nWAM0ADc45xqDKV3CoCvaReInZ9A7567OMHlUJ/OPAEYUUpSIiBSProwVEUm42AS909gVEZEuiU3Q\nx5nOY8rxTttAuBT0AdJ5Szne6eR9NCjoRUQSTkEvIpJwCnrxRV2sIvGloJc8qdNVJG5iE/Q6ay8i\n0jWxCfo40zUAcrzTNhAuBX2ANLRMjnemrr5IUNCLiCScgl5EJOEU9CIiCaegF1806kkkvmIT9MqZ\naNAJZpH4iU3Qx5r2UiISIgV9gDS0TCRFXX/hUtCLSGDU1RcNCnoRkYRT0IuIJJyCXvKivlaR+IlP\n0CtgQqW+VpH4ik/Qx1gS9lFqyYvEl4I+QElsBSfx/yTBUzshXAp6EQmM2gXRkDPozWy0mVWb2aq0\naaeY2RtmttH7t3fac7eYWZmZrTezLwdVuIiI+OOnRf8kcEm7acOBEufcQKDE+x0zGwRcBZztveZR\nM+tZtGpFRCRvOYPeOTcL2NNu8uXAGO/xGOCKtOljnXN1zrktQBkwtEi1iohIF3S1j76vc26H93gn\n0Nd73B+oSJuv0ptWMH3npIhI1xR8MtY55+jCSXUzu97MSs2stKamptAyIk1DE0UkTF0N+ioz6wfg\n/VvtTd8OnJ4232netA6ccyOdc0Occ0P69OnTxTKiTUMRRSQKuhr0k4Bh3uNhwMtp068ysxPN7Axg\nILCwsBIlCnRQIoXQUW24euWawcyeAy4ATjWzSuB24G5gvJldB5QD3wRwzq02s/HAGqABuME51xhQ\n7RICHaRIXrTCRELOoHfOXZ3lqYuyzD8CGFFIUSIiUjy6MlZEJOFiE/Tq4xMR6ZrYBH2c6RoAEQmT\ngj5A+nJwEYkCBb2ISMIp6MUfnSSRgmj9CZOCXvJiutxX8qDuy2hQ0IuIJFxsgl4HfiIiXROboI8z\ndW+LSJgU9AFSd7aIRIGCXkQk4RT0IhI4dV+GS0EvIoFR92U0KOjFFzXIROIrNkHvdOwXCWqgicRP\nbII+zrSLEpEwKehFRBJOQS8iknAKehGRhFPQi0jgdJ4qXAp6EQmMRmlFQ2yCXi2CcGl0q0h8xSbo\n4yxJ1wDoSkeR+FHQB0jfxiQiUaCgFxFJOAW95CVBvVAix41ehbzYzLYCB4FGoME5N8TMTgHGAQOA\nrcA3nXN7CytTwqZeKClEks5TxVExWvRfcM4Nds4N8X4fDpQ45wYCJd7vIiISkiC6bi4HxniPxwBX\nBPAeIiLiU6FB74BpZrbYzK73pvV1zu3wHu8E+mZ6oZldb2alZlZaU1OT+41ifOQX49JFJAEK6qMH\nznPObTezfwTeMLN16U8655yZZcw559xIYCTAkCFDEpmFSerWjvOOVuR4V1CL3jm33fu3GpgADAWq\nzKwfgPdvdaFFSnTopKxI/HQ56M3sZDN7d/Nj4EvAKmASMMybbRjwcqFFiohI1xXSddMXmOBd/dkL\neNY595qZLQLGm9l1QDnwzcLLFBGRrupy0DvnNgMfzzB9N3BRIUVJ4da8fYAPvv+dnHxioadhRAqn\nUzzh0pWxCVTX0MilD83mP/62OLD3+PFzSzn/3umBLV9EikfNve7Qzc2ZpqbUvwu37AnsPSYtfzuw\nZYtIcalFH6CwRqg0v68Ol0UEYh70yyr2Ub77cNbnJy7dTln1wW6sKD/OOR6ftZn9tfUBvUEwi5Xu\nt/9IPZtqDoVdRqeeL63gk3e9QVNTvFa8DVUHOdbQVNRlHjxaz4d/MYWZG3JfDNodIhX0ZdWHeHp+\nue/5r3hkLuffOyPr8zeNW8bFD8wqQmXBmL95DyNeXcutE1YWdbmtLfribXDFXJbk74pH5nLR/TPD\nLqNTt01Yxe7DxzjWWNzQDNLO/Uf50h9mccffVxd1uRuqDlHX0MSD0zYUdbldFak++q89PIfaY41c\ne+4Hwy6lWzRvEAeOFrdFb941uUFczWqJut43Prbsyn7kGhkxXDX2HTkGwOKtxb7BbrQaRpFq0dce\nawy7hG7VvF0UO5DVRy/5uGvyGo4UsO0134I4qPU5zqKy74tU0B9vguhiSad7gIsfo+ZsYfTcLQUv\np7P1WatiuBT0BZi9sYYGH/2R2YI86G4QbVviV0Nj4WtLkF2GUphIBn0cWqJzy3Zx7aiF/OnNsqzz\n+I3xoP67MfgzSkQU46hSXYatorbtRTLo42DXoTqgsJNkLRtGxFYKKdzPX1jB8BdXhF1Gt2rto9cK\n3fwXsLSLaTbXHGJxeTjfqhrJoI/TetJUQLEtG4baQB3s3H+Ul5dtD2z5QYfRuNIKxi6qyPt1zjme\nnl9O7bGGAKqC749ZxANT12d438KX3RxqWptbHa5r/RwvvH8m33hsXih1RDPowy7Ah6Ks1FE5Je9D\nd+98r3liPj8Zu8xX4A0Y/kreredi3R5ic80hBgx/hZK1VUVZ3vT11fxy4ip+++paX/M/MXszF94/\nw/fyp62t5qEM3Y3F+HjjOOom6FrX7TzIa6t25J7Rp3mbdnHWbVPyvsgykkEfBz1am+MFK+bKtmP/\nEcZ1oSXpV3fd1mHH/qOA/79Nvq3n2vriDOVdVrEPgL8X6d4/zUOM9xw+5mv+37yyls01bbsPJyyt\n5Jw7p/oaKFBURdwmultn6/UPni7lhcWVOZexZdfhjAE8t2x3IaW18fCbZRxrbGLl9v15vS6SQR92\nH1/p1j1c88R86jvZUJpHGBTWdVP8Q93vjFrILyauKuISw9H8Zw1qx5K+jq1+e3+XQvFwXUPLOZrm\npZVVHyyo26UYI1d+OXE1e2vr89uZpb3hswu2sX3fkbxf2llXZD7b9NyyXczbtMv3/MXQWXmvr67i\nv55fnnMZX7hvBpc+NDvn8tpbsm0v09b4OyLs0dKTkN8KEs2gJ3WI8sj07CNagvSz8cuZW7ab9Tuz\n3ycnnxOp2eYJIsT8tgQ7U7K2ikN1wfQR+xX0eYtn5m8DUsH81YfmcO/rHfutc/nek4taRl05lwqz\nix+Yxb8/VZpx/oo9tSzZlv1kXGOT44Znl7QsrysefnNjy2eXz+rV/HZv7zvCrRNWcs3j87POu2Dz\n7ownFVu6M7tQ++G6Bh5+cyMNjU1c88QCvv34gvwX0gXF3gbz2UE2+/qj8/j+U6Uc9bFjbq4339sJ\nRTLoAb79+IIubXwA5bsP89m738w5X/OJr/QTJmXVh1p+v+xPc7IGXg8fFzs1r/ij5uS4GMVbxJ9K\nNnLNE9k3MD+swDV3c80hrhtTys9f8Nfn/YX7ZhT0frlku9bgaH2j76s599UeY0NV2512ybpq6hub\nqD6QGj21ojK/Q2GABWn9/I7WgMt2qP65e6bz9Ufbnowrqz7IgOGvUFZ9iH21rTvpfI8Um09c3ze1\n9d4q+a4Lyyr28Rlvu9ndSYPhWyPnZzypWMiqd//UDdw3dUMgt79ubHKsqNzXpdfu9kbXZbNu5wHG\nzNvapWW3d+tLue951fyZlqyt4oxbXvG97EgGffo6/lXvUMiPQ3UNDBj+CuffO8PXnnXWxl38cuIq\nrhuzqGXaxQ/MbLOSf2dUtpZFc9dNKhyrDqT6lJuaXIcun3mbMm/47beL+9/Y0Gl/XvvDX+cc5bsP\nc+2oBQz5zbTUMnNsbNPXVVNWfYgXFlcye2PHO+sdrkuFZ/kef8NG04eX1jc2FXQpfbpcOTf4zql8\n5Fev+VrWVx+aw5f+0PHmdkZry6hHhi3hwNH6lv/Pm+uqGDD8FXZ65w7aa3KuS914k5anTtRNXtE2\n4NKX1Oij+faTscs6TMsnd2esr+GKR+a2vn8BB1RdeelB735PR4p07iTdo9PL+NrDczs9msqm+RwM\nwLDRC/nO6IUt2zrAJQ/O5vZJHW+I5rer6u20nCrtZOhlY5PjcF1Dy2f61FvleX1G0Qz6tFVl6+7a\nnPPfPWUda3cc4K0sgZpNrddan795D994bF7GD2fJttYP+vqnSvnY7a8DrStm9cE6Lrx/Jp/6bQkA\nNz+/nIG3TemwnPYtynR+uynq2t1KdeyiCs6/dwazN+5qGdffo93WPWD4Ky39f4fqGvi3Jxdx8QMz\n+a/nl3PtqIW+3tevb/7lrZbwvXn8cj5x1xu+Xre4fC8Ve2ppaGzi24/P5+4p6zLOd/EDM1vu9Hm0\n3n+femc7/ea/faYjh3++I7Uzcc7x7ILUyd5sLcOVlfs7vaZiZdoRwxOzN7c87pHlUDx9VfzTmxuz\nLjfdrnatTz/9ys22trvdd/O24JzjUF0DR441Un0w806umZ9x9K+t2smA4a/w6IzWbtnv/nUhz3sn\nO2+b0Pn5pUemlzFguL+WbNWBowy+cyoTvaOdHfta63fOsTntts+bag5lvL1yj7SW08wNNczaUMOn\nflvC8orsRwjt63t6fjkTlmY+mfuZtJ6HbXuyZ93Pxi/j7Ntf77B9+xXJoM/Xn2du4it/nJ21b3TR\n1j0sr9jHsYYm3lzXetJjYto47cXle7MOuatvbGLUnC1MXVPFQW/n8N9e10b6B77/SD0TlmYe+92+\nRTlv0y6+NTLVTdN+u8h0j/0Vlfs6nGlv30/akKVFPeatrTxfWsFHvZ2UH6u2H+COSaspqz7Ioq2d\nD0VsPoJZ6u0UD9U18OKSypbzBRV7ajs92fSNx+bxuXumc8/r65m3aTd/nrkp466vrPoQzy7Y1iZI\npq7e2fK4eXz4d/+6kN/5HJ7o56Tvj55ZkhbIjnlluzp8z8G2PbV8McNRQ+XeWlZW7udfHp7TMq35\nVtxVB462jLLJdLQ2fX0197y2jnlpR3nb9x1h7MJtGev8YbuvjpyyamfG+QCqD7QN7YNH23ZRHj7W\nSFn1QUbN2cJHb3+dj/zqNYaOKMm6vHGLtrHXG3HS/D9ZXL6HjdWtYbpk296Wr7e857XWbtkZ6/3f\ns725O3fMvK1tulwB9tfW838fm0eFF5hT11Sxr7aeTd6opLGLtvG7KWvZV3uM5xZWcOH9M1u2+YYm\nl/GcYLajtNdW78zrHvY/Hed/pwtQe6yhzXUkLy9LHfF19UArUrcpbpZvyzyX//fntwDo/76T2L7v\nCE99byifG3gqr69uGz7NwdveT8ctY/KK1rGw2foRbxq7tM3vb66r7jBPY5Oj+uDRNieb2n945987\ng9N6n0TPHsbvvv4xDtc1ZtyJtV8JL/vTHA4c7XhOYfbGXZzYq2fGmp+YvZmhZ5zCP5/2PqBt4D05\nbytPev2PZ3/gPRlfD3DoaAP3pJ1PuaVdX+NX/jibQ3UNrLvrEr4zeiHXnXcG7+hpXPi/+7aZL30n\n2bwR1TU0cvhYA99OOzm4dkdryF7/dGu4PfRmGed+6P3MWF/DjPU1fOrMUzj3zPe3PP+HN9reG9zR\n+jdM789ubHJtToxNWbWToWecAsCv/76mZeinH+f9vuP36h6ua6ChsanlKBBgebtzBCXrqinJsP58\n+/H5lO+u5aQTelLf7v40izLcanebd0T8T+9/Z5vp9T66gy5+YBaD+mX/3FveY08tP3+x9TO/57V1\nLK/Yz/p2R7Htz0/k8sO/LWbKqp3cdPFAPtb/vVz0kdb15fZJq1nz9gFGXPlR7pq8hvM/3Ie39x2l\ntHwvj83cxG+v/Bhrdxxos7zZG3cxe+Mu/jJzM1cPPR1IjXNvtshrOO2vrefZhdsY9pkPct2YzI1H\n5+CsX7Qeub/RriFT6BDnX05czYtLKun33pNa1j3Ib6eYLpJB/92/Lur0+aff2krvk0/Ie7nNh/Df\nGb2QEVd+1Pfr0kMeUl+Mncn0tA8h0xn0mRtqGDa6Y3fJll2HebLd3QMr96ZqzTb6YHH53jbdAdB2\npW1vWpYLen7zSmvL94RePbj76x/LON+adhtNup+/uIKpaSt6+pjyw3UNLSe0Z22oYeGWPS2tqAk/\n+gzn/FPvlnlrDnY88TX4zo7dP3/t5E6LLy1p3Vl878m2G+kfS9p2gTjXukOZtaGG8Ysq6NHDeHR6\nGZvbdcM015xPyGez69CxDn3qszbU8EnvPEtnyr3gztQnn8nnvS9wf+7fz+U9J7Vu7n6/Bar9556p\nC/K11W2PHMaXduymyNQA2X+kno//emrW924+InlwWupz+8KH+7R5flxpBeNKU4E65q3WLyxqbHTc\nNXkNzy7IfOQDqdAH2szjnOOOSatbGjdzy7IP8Wz/HRLtG38vZTmyh9Tfvsm5rA1LgBeXpP6GPx23\nrM05ga6ysMesA5z0gbPcF28dnXPkw68uG8Sdk9cU5T0/3PfdHVocQTuhZ49YfftOJpNvPI+P9n+v\n737SH180kIdKsvcxP/itwdw0zl9o+XFmn5M7XECUzQ8v+BCPzdhUtPeOk1yfS3cIahvs1cNo6MLX\nGX6k33s6HAVEXfnvL1vsnBuSa75IBP2J/Qa6fsMeDLsM8WHyjefxx5KNHQ5VRaT7+Q36RJyMle7z\n9FvlCnmRmFHQS16a+0RFJD4CC3ozu8TM1ptZmZkND+p9RESkc4EEvZn1BB4BvgIMAq42s0FBvJeI\niHQuqBb9UKDMObfZOXcMGAtcHtB7iYhIJ4IK+v5AemdupTdNRES6WWgnY83sejMrNbPMl56JiEhR\nBHVl7Hbg9LTfT/OmtXDOjQRGAgwZMsSV3v3VgEoREUkm+72/+YJq0S8CBprZGWZ2AnAVMCmg9xIR\nkU4E0qJ3zjWY2X8CrwM9gdHOuY43bRYRkcAFdlMz59yrwKtBLV9ERPzRlbEiIgmnoBcRSTgFvYhI\nwinoRUQSTkEvIpJwkfjiETM7CKzPOWP3OxXI/n1i4VFd+YliXVGsCVRXvsKu64POuT65ZorKd8au\n9/MtKd3NzEpVl3+qy78o1gSqK19Rras9dd2IiCScgl5EJOGiEvQjwy4gC9WVH9XlXxRrAtWVr6jW\n1UYkTsaKiEhwotKiFxGRoDjnQv0BLiE1tLIMGB7A8k8HpgNrgNXAT7zppwBvABu9f3unveYWr571\nwJfTpn8SWOk99xCtR0QnAuO86QuAAT5r6wksBSZHpSbvte8DXgDWAWuBT4ddG/BT7/NbBTwH/EMY\nNQGjgWpgVdq0bqkDGOa9x0ZgmI+67vU+wxXABOB9Uagr7bmbAQecGpW6gBu9v9lq4J7uriuon8Df\nIMfG2xPYBJwJnAAsBwYV+T36AZ/wHr8b2EDqC8vvwduxAMOB33uPB3l1nAic4dXX03tuIXAuYMAU\n4Cve9B8Bf/YeXwWM81nbz4BnaQ360Gvy5h8DfN97fAKp4A+tNlJfQ7kFOMn7fTzw3TBqAj4PfIK2\ngRp4HaR2Jpu9f3t7j3vnqOtLQC/v8e+jUpc3/XRStzEvxwv6sOsCvgBMA070fv/H7q4rqJ+wg/7T\nwOtpv98C3BLwe74MfJHUnrmfN60fqbH8HWrwVsZPe/OsS5t+NfCX9Hm8x71IXUBhOeo4DSgBLqQ1\n6EOtyZv3vaRC1dpND602Wr+D+BRv/smkQiyUmoABtA2IwOtIn8d77i/A1Z3V1e65K4FnolIXqSPG\njwNbaQ36UOsi1YC4OMPfrlvrCuIn7D76bv0ScTMbAJxD6lCqr3Nuh/fUTqBvjpr6e48z1dryGudc\nA7AfeH+Och4E/j/QlDYt7Jog1WKpAf5qZkvN7AkzOznM2pxz24H7gG3ADmC/c25qmDW10x11FLqt\nfI9UizP0uszscmC7c255u6fC/nudBXzOzBaY2Uwz+z8RqatgYQd9tzGzdwEvAjc55w6kP+dSu1bX\njbVcBlQ75xZnm6e7a0rTi9Qh7WPOuXOAw6S6I0Krzcx6A5eT2gl9ADjZzP41zJqyiUod6czsNqAB\neCYCtbwTuBX4Vdi1ZNCL1FHjucB/A+PNzMItqTjCDvqcXyJeDGb2DlIh/4xz7iVvcpWZ9fOe70fq\nxExnNW33HmeqteU1ZtaLVPfH7k5K+izwNTPbCowFLjSzv4VcU7NKoNI5t8D7/QVSwR9mbRcDW5xz\nNc65euD4aeP+AAABoklEQVQl4DMh15SuO+ro0rZiZt8FLgOu8XZCYdf1IVI77OXe+n8asMTM/lfI\ndUFq3X/JpSwkdbR9agTqKlzQfUOd/ZDag24m9cE3n4w9u8jvYcBTwIPtpt9L2xNo93iPz6btiZfN\nZD/xcqk3/QbanngZn0d9F9DaRx+VmmYDH/Ye3+HVFVptwKdIjYJ4p7esMaRGR4RSEx37dgOvg1RL\ncwupE3i9vcen5KjrElKjzfq0my/Uuto9t5XWPvqw/17/AdzpPT6LVBeLdXddQfyEGvTef/xSUiNh\nNgG3BbD880gdSq8Alnk/l5LqLyshNcRpWvofG7jNq2c93ll0b/oQUsP7NgEP0zqU6h+A50kNpVoI\nnJlHfRfQGvRRqWkwUOr9zSZ6K2SotQG/JjXsbRXwtLfRdXtNpIZ27gDqSbUAr+uuOkj1s5d5P//m\no64yUmHVvN7/OQp1tXt+K22HV4b59zoB+Jv3PkuAC7u7rqB+dGWsiEjChd1HLyIiAVPQi4gknIJe\nRCThFPQiIgmnoBcRSTgFvYhIwinoRUQSTkEvIpJw/wPQWF4OL2rOwAAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x4489f98>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df['ctr'].plot();"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAD8CAYAAAB5Pm/hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAADVBJREFUeJzt3V+IXOd9h/HnW2kjimOKVG2FKyuRA+qFLFyFLmppDIkc\nsN1QkENbIxNSXRiUCzdVwIXaoZD0QpBCk1w1AZmY6MJdR20SYlK7raMGB9/EWaWuZck1EbWNVsjW\nGonEmKJI8q8XOnYmyf6Z2dnJaN8+H1j2zDvnzPwWzOPxuzPeVBWSpHb92rgHkCSNlqGXpMYZeklq\nnKGXpMYZeklqnKGXpMYZeklqnKGXpMYZeklq3NpxDwCwcePG2rp167jHkKRV5dixY69X1eRS510T\nod+6dSszMzPjHkOSVpUkr/Rznls3ktQ4Qy9JjTP0ktQ4Qy9JjTP0ktQ4Qy8tYGJigiTvfE1MTIx7\nJGlZDL00j4mJCS5fvsz69et57rnnWL9+PZcvXzb2WpWuiffRS9eatyN//vx5AM6fP8+GDRu4cOHC\nmCeTBucremkBTz311KK3pdXC0EsL+OAHP7jobWm1MPTSPNauXcuFCxfYsGEDx48ff2fbZu1adzu1\n+vhPrTSPS5cuMTExwYULF7jllluAq/G/dOnSmCeTBmfopQUYdbXCrRtJapyhl6TGGXpJapyhl6TG\nGXpJapyhl6TGGXpJapyhl6TGGXpJapyhl6TGGXpJapyhl6TGLRn6JFuSfDfJySQnkhzo1j+b5EyS\nZ7uvj/Rc82CSU0leTHLHKH8ASdLi+vm/V14G7q+qHya5HjiW5Mnuvi9W1d/3npxkO7AXuBn4beA7\nSX6nqq6s5OCSpP4s+Yq+qs5W1Q+74zeAF4DNi1yyB3i0qi5W1UvAKWDXSgwrSRrcQHv0SbYC7we+\n3y19MslzSR5Osr5b2wyc7rlslsX/xSBJGqG+Q5/k3cDXgU9V1U+ALwPvA3YCZ4HPD/LESfYnmUky\nMzc3N8ilkqQB9BX6JBNcjfwjVfUNgKp6raquVNVbwEP8bHvmDLCl5/Ibu7WfU1WHqmqqqqYmJyeH\n+RkkSYvo5103Ab4CvFBVX+hZv6HntI8Cz3fHjwF7k6xLchOwDXhm5UaWJA2in3fdfAD4OHA8ybPd\n2qeBe5LsBAp4GfgEQFWdSHIEOMnVd+zc5ztuJGl8lgx9VT0NZJ67Hl/kmoPAwSHmkiStED8ZK0mN\nM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS\n1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhD\nL0mNWzL0SbYk+W6Sk0lOJDnQrW9I8mSSH3Xf1/dc82CSU0leTHLHKH8ASdLi+nlFfxm4v6q2A38A\n3JdkO/AAcLSqtgFHu9t09+0FbgbuBL6UZM0ohpckLW3J0FfV2ar6YXf8BvACsBnYAxzuTjsM3NUd\n7wEeraqLVfUScArYtdKDS5L6M9AefZKtwPuB7wObqupsd9erwKbueDNwuuey2W7tFx9rf5KZJDNz\nc3MDji1J6lffoU/ybuDrwKeq6ie991VVATXIE1fVoaqaqqqpycnJQS6VJA2gr9AnmeBq5B+pqm90\ny68luaG7/wbgXLd+BtjSc/mN3ZokaQz6eddNgK8AL1TVF3ruegzY1x3vA77Vs743ybokNwHbgGdW\nbmRJ0iDW9nHOB4CPA8eTPNutfRr4HHAkyb3AK8DdAFV1IskR4CRX37FzX1VdWfHJJUl9WTL0VfU0\nkAXu/vAC1xwEDg4xlyRphfjJWElqnKGXpMYZeklqnKGXpMYZeklqnKGXpMYZeklqnKGXpMYZeklq\nnKGXpMYZeklqnKGXpMYZeklqnKGXpMYZeklqnKGXpMYZeklqnKGXpMYZeklqnKGXpMYZeklqnKGX\npMYZeklqnKGXpMYZeklqnKGXpMYtGfokDyc5l+T5nrXPJjmT5Nnu6yM99z2Y5FSSF5PcMarBJUn9\n6ecV/VeBO+dZ/2JV7ey+HgdIsh3YC9zcXfOlJGtWalhJ0uCWDH1VfQ843+fj7QEeraqLVfUScArY\nNcR8kqQhDbNH/8kkz3VbO+u7tc3A6Z5zZrs1SdKYLDf0XwbeB+wEzgKfH/QBkuxPMpNkZm5ubplj\nSJKWsqzQV9VrVXWlqt4CHuJn2zNngC09p97Yrc33GIeqaqqqpiYnJ5czhiSpD8sKfZIbem5+FHj7\nHTmPAXuTrEtyE7ANeGa4ESVJw1i71AlJpoEPARuTzAKfAT6UZCdQwMvAJwCq6kSSI8BJ4DJwX1Vd\nGc3okqR+pKrGPQNTU1M1MzMz7jEkaVVJcqyqppY6z0/GSlLjDL0kNc7QS1LjDL0kNc7QS1LjDL0k\nNc7QS1LjDL0kNc7QS1LjDL0kNc7QS1LjDL0kNc7QS1LjDL0kNc7QS1LjDL0kNc7QS1LjDL0kNc7Q\nS1LjDL0kNc7QS1LjDL0kNc7QS1LjDL0kNc7QS1LjDL0kNW7J0Cd5OMm5JM/3rG1I8mSSH3Xf1/fc\n92CSU0leTHLHqAaXJPWnn1f0XwXu/IW1B4CjVbUNONrdJsl2YC9wc3fNl5KsWbFpJUkDWzL0VfU9\n4PwvLO8BDnfHh4G7etYfraqLVfUScArYtUKzSpKWYbl79Juq6mx3/CqwqTveDJzuOW+2W5MkjcnQ\nv4ytqgJq0OuS7E8yk2Rmbm5u2DEkSQtYbuhfS3IDQPf9XLd+BtjSc96N3dovqapDVTVVVVOTk5PL\nHEOStJTlhv4xYF93vA/4Vs/63iTrktwEbAOeGW5ESdIw1i51QpJp4EPAxiSzwGeAzwFHktwLvALc\nDVBVJ5IcAU4Cl4H7qurKiGaXJPVhydBX1T0L3PXhBc4/CBwcZihJ0srxk7GS1DhDL0mNM/SS1DhD\nL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mN\nM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1DhDL0mNM/SS1Li1w1yc5GXg\nDeAKcLmqppJsAL4GbAVeBu6uqgvDjSlJWq6VeEW/u6p2VtVUd/sB4GhVbQOOdrclSWMyiq2bPcDh\n7vgwcNcInkOS1KdhQ1/Ad5IcS7K/W9tUVWe741eBTfNdmGR/kpkkM3Nzc0OOIUlayFB79MCtVXUm\nyW8BTyb57947q6qS1HwXVtUh4BDA1NTUvOdIkoY31Cv6qjrTfT8HfBPYBbyW5AaA7vu5YYeUJC3f\nskOf5Lok1799DNwOPA88BuzrTtsHfGvYIaVxmJ6eZseOHaxZs4YdO3YwPT097pGkZRlm62YT8M0k\nbz/OP1bVvyb5AXAkyb3AK8Ddw48p/WpNT09z4MABrrvuOgDefPNNDhw4AMA999wzztGkgaVq/Nvj\nU1NTNTMzM+4xpHds2bKFK1eu8Mgjj3Drrbfy9NNP87GPfYw1a9Zw+vTpcY8nAZDkWM9b2xfkJ2Ol\neczOznL48GF2797NxMQEu3fv5vDhw8zOzo57NGlgw77rRmrW7bffPu4RpBXhK3pJapyhl6TGGXpp\nEevWrfu579JqZOilRTzxxBP89Kc/5Yknnhj3KNKy+ctYaRG33XbbuEeQhuYreklqnKGX5rHQnrx7\n9VqNDL00j4sXLw60Ll3LDL0kNc7QS1LjDL0kNc7QS1LjDL0kNc7QS1LjDL0kNc7QS1LjDL0kNc7Q\nS1LjDL0kNc7QS1LjDL0kNc7QS1LjDL0kNc7QS1LjRhb6JHcmeTHJqSQPjOp5JEmLG0nok6wB/gH4\nI2A7cE+S7aN4LknS4taO6HF3Aaeq6n8AkjwK7AFOjuj5pL4k+ZU8RlUN/TzSShlV6DcDp3tuzwK/\nP6Ln0v9jv/u3/86P//dS3+e/96+/3dd5r/zdHw/1GFsf+Je+ZwL4jV+f4L8+c/tA10j9GlXol5Rk\nP7Af4D3vec+4xtAq99bW+7l+BI+746s7Frl35X/l9BYAx1f8cSUYXejPAFt6bt/Yrb2jqg4BhwCm\npqb871wty/F9o4vjfFs0bsloNRrVu25+AGxLclOSdwF7gcdG9FzSSFTVL31Jq9FIXtFX1eUkfwH8\nG7AGeLiqToziuSRJixvZHn1VPQ48PqrHlyT1x0/GSlLjDL0kNc7QS1LjDL0kNc7QS1Ljci28NzjJ\nHPDKuOeQFrAReH3cQ0jzeG9VTS510jUReulalmSmqqbGPYe0XG7dSFLjDL0kNc7QS0s7NO4BpGG4\nRy9JjfMVvSQ1ztBLC0hyl3/rWC0w9NLC7uLqH7f/JUnG9tfZpEG5Ry91kvw58FdAAeeA3wN+3H39\nCfAV4FngVmC6qj4/plGlgfiqRAKS3Az8DfCHVfV6kg3AF4BvV9U/d+cAvMsPT2m1cetGuuo24J+q\n6nWAqjq/wHlf+9WNJK0MQy8N5s1xDyANytBLV/0H8GdJfhOg27p5A7h+rFNJK8A9egmoqhNJDgJP\nJbkC/CfwEPBQkr8E/nSsA0pD8F03ktQ4t24kqXGGXpIaZ+glqXGGXpIaZ+glqXGGXpIaZ+glqXGG\nXpIa93+qDBzb3kP0qQAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xefadac8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df['ctr'].plot.box();"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"171210 279.000000\n",
"126277 279.000000\n",
"4430 279.000000\n",
"131301 279.000000\n",
"117730 279.000000\n",
"82432 279.000000\n",
"39881 279.000000\n",
"56073 279.000000\n",
"29091 279.000000\n",
"45154 41.666667\n",
"58033 41.176471\n",
"128442 36.842105\n",
"164065 36.842105\n",
"33461 36.363636\n",
"11886 36.363636\n",
"33462 36.170213\n",
"7703 36.170213\n",
"7700 36.046512\n",
"106725 36.000000\n",
"11884 36.000000\n",
"Name: ctr, dtype: float64"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['ctr'].sort_values(ascending=False).head(20)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"origin_url https://www.thespruce.com/when-stitches-are-tw...\n",
"target_url https://www.thespruce.com/join-in-the-round-fo...\n",
"target_position 1\n",
"origin_template FLEXIBLEARTICLE\n",
"target_template FLEXIBLEARTICLE\n",
"origin_category A\n",
"target_category A\n",
"pageviews 522\n",
"target_clicks 1456.38\n",
"ctr 279\n",
"Name: 171210, dtype: object"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#Inspect a few outliers\n",
"df.ix[171210]"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"origin_url https://www.thespruce.com/antique-yard-sale-tr...\n",
"target_url https://www.thespruce.com/michigan-yard-sales-...\n",
"target_position 1\n",
"origin_template FLEXIBLEARTICLE\n",
"target_template FLEXIBLEARTICLE\n",
"origin_category B\n",
"target_category B\n",
"pageviews 138\n",
"target_clicks 385.02\n",
"ctr 279\n",
"Name: 4430, dtype: object"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.ix[4430]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##### Target Click error\n",
"\n",
"It seems the outliers are some sort of error in that their click through rate is the same at 279. Also the target_clicks value for these outliers is a float, which it shouldn't be since having .02 clicks is not a click. Hence I am confident this is an error and can be safely removed. But now I want to find any other places where target clicks or pageviews may be a float value.\n",
"\n",
"From the df.info() call earlier I see that pageviews is of type int so that should be fine. However I will need to examine target_clicks for any other potential errors."
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"#Remove any target_click values that have decimal value\n",
"df = df[df['target_clicks'].apply(float.is_integer)]"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xa58dc88>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df['ctr'].plot.box();"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"count 163560.000000\n",
"mean 0.870971\n",
"std 1.601694\n",
"min 0.000000\n",
"25% 0.000000\n",
"50% 0.304105\n",
"75% 1.077586\n",
"max 41.666667\n",
"Name: ctr, dtype: float64"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['ctr'].describe()"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nRK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xa1578d0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.plot.scatter('pageviews', 'ctr');"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\ns1EeXgAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xa24d0f0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"\n",
"df['ctr'][(df['ctr']<6)&(df['ctr']>0)].hist(bins=100)\n",
"plt.title(\"Distribution of Clickthrough Rates per Page\")\n",
"plt.xlabel(\"Clickthrough Rate %\")\n",
"plt.ylabel(\"Frequency\");"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Mean is still heavily skewed by some lower number of pageview samples with high click through rates. Median is more indicative of the typical CTR for a page. Perhaps a higher pageview threshold could be used.\n",
"\n",
"Close to 90% of the samples are below a 2% clickthrough rate. However there are a number of exceptional cases that can't be ignored, hence the large difference between mean and median.\n",
"\n",
"### Question 1 - Overall Clickthrough Rate"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"0.8709714942587011"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['ctr'].mean()"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"0.30410542321338063"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['ctr'].median()"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"0.8038079435846637"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#Entire site\n",
"df['target_clicks'].sum() / df['pageviews'].sum() * 100"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The entire site, taken as a whole, has a clickthrough rate of 0.80%. \n",
"Per article, the median click through rate is 0.30% and the mean click through rate is 0.87%.\n",
"\n",
"It seems that a small amount of pages account for a large portion of the clickthrough rate. It would be worth looking into these cases that skew the distribution towards a higher mean even though most pages have a clickthrough rate of much less.\n",
"\n",
"### Question 2 - Clickthrough Rate by Target Position and Origin Template\n",
"\n",
"#### Clickthrough Rate vs Target Position"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import seaborn as sns"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"7 0.100012\n",
"4 0.100012\n",
"9 0.100006\n",
"6 0.100006\n",
"3 0.100006\n",
"5 0.100000\n",
"10 0.099994\n",
"8 0.099994\n",
"2 0.099988\n",
"1 0.099982\n",
"Name: target_position, dtype: float64"
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#Verify distribution\n",
"df['target_position'].value_counts(normalize=True)"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nl1qGJdLT01FeXo4JEyagvr4ey5Yto5bULoMHD8bmzZsxfvx47NmzB5WVlTAMIyEPJ2faDiHEqbmb\nkZGB5ubmDtHR6U7aTuTEiROYNm0afvazn+GGG26glmOZxYsXY8OGDXj00UcRCASo5bTJO++8g23b\ntuH222/Hvn37MGvWLFRXV1PLapfCwkLceOON0DQNhYWFyMnJSXjNOTk5GDlyJDweD/r16wev14u6\nujpqWe3S1NSEkpISDB8+nFqKJV577TWMHDkSGzZswF//+lfMnj0b4XCYWlabTJ48GT6fD7feeis2\nbtyIIUOGJKTBPhffvb9uaWnpMI8iG+0Ep6amBnfccQceeugh3HzzzdRyLPHuu+/ipZdeAgCkpaVB\n07QOCdBQ5Y033sCf//xnvP766xg8eDAWL16M/Px8alntsnbtWixatAgAUFlZCb/fn/Car7zySnzy\nyScQQqCyshLBYBA5OTnUstpl586duOaaa6hlWCYrKwuZmZkAgOzsbMRiMRiGQayqbb744gtcc801\nWL16Na6//noUFBRQS7LMZZddhh07dgAA/v73v+OHP/xhhzw3cX1pDABg2bJlaGpqwosvvogXX3wR\nQGtARCIHTP3kJz/BnDlz8Itf/AKxWAxz585NaL1O5Oabb8acOXNQVFQETdOwcOHChHaNA8CYMWOw\nc+dO3HzzzRBCYN68eQl/qiopKUGvXr2oZVhm+vTpmDt3Lm699VZEo1E8+OCDSE9Pp5bVJn369MFz\nzz2HZcuWITMzE7/97W+pJVlm1qxZePTRR/H73/8e/fr1w3XXXdchz+UuXwzDMAzjEBLXZ8kwDMMw\nzGmw0WYYhmEYh8BGm2EYhmEcAhtthmEYhnEIbLQZhmEYxiGw0WaYBKG5uRn33HOPrc+YM2cOysvL\nbX0G0Jo7fueddwIANm3ahJUrVwIAVq9ejdWrV9v+fIZJVthoM0yC0NjYiP3799v6jB07dqAjsjy7\nd++O5cuXA2it0ez3+wEARUVFKCoqsv35DJOsJHY1BobpRCxYsABVVVW499570b9/f3z66adobGxE\nbm4unn/+eeTn52P48OEYMmQIampqsHbtWixduhQbNmxAbm4u8vPzMXbsWEyaNAnvvvsuVq1aBdM0\nMWTIEDz22GNYtWoVqqqqMGPGDLzxxhvIzc09p47bb78d/fr1w969exEOhzF37lyMHDkSNTU1ePjh\nh1FRUQG3240HH3wQo0ePxqeffoolS5YAaK3C9bvf/Q6BQADTpk3Dyy+/jDVr1gAAevbsiYqK5/+4\njgAABC1JREFUCgDAfffdh82bN+PZZ5+FaZooKCjAE088ga5du2Ls2LG48cYbsWXLFgSDQSxevBjf\n+973OuaHwDCJjmAYJiEoKysTY8aMEaWlpaK4uFgYhiGEEOKhhx4Sr776qhBCiIEDB4rt27cLIYT4\n8MMPRVFRkQiHw6KhoUGMGTNGvPPOO+LgwYOiqKhIhEIhIYQQTz/9tPjDH/4ghBBizJgxoqysrF0d\nt912m5g9e7YQQoivvvpKjBgxQoTDYXH//feLFStWCCGEOHbsmBgxYoSorq4Wt912m9izZ48QQohV\nq1aJTz755NT/ixBCLF26VCxduvS0X9fU1IiRI0ee0rJ8+XJx3333ndK4cuVKIYQQf/rTn0RxcfEF\nvlmGSR74pM0wCUafPn0wa9YsvP322ygpKcHu3bvRu3fvU39+xRVXAAC2bduGCRMmwOPxwOPxYPz4\n8QBaXeBHjx7Fz3/+cwCtvcIvu+wyKQ3fjB08eDDy8/Nx4MABbN++HQsWLAAAFBQU4IorrsCePXsw\nbtw4FBcXY/z48Rg3bhxGjBhx3k56e/fuxeWXX36qROjUqVNP67A2atQoAMCAAQPw/vvvS2lnmGSG\njTbDJBhffvklZs6cienTp+O6666Druun3UN/U8dd13WYpnnWeMMwMGHCBDzyyCMAWjsQyTaN+G5N\ncNM04Xa7z7oLF0LAMAxMnz4dY8aMwebNm7FkyRLs3bv3vN3oztQthEAsFjv1316vFwASvm0nw3Q0\nHIjGMAmC2+1GLBbDzp07cfXVV6OoqAj9+/fH1q1bz2l0R4wYgffffx+RSAR+vx8fffQRNE3DsGHD\nsHHjRtTW1kIIgccffxyrVq0C0GqMrRjwv/3tbwBauzA1NTVh4MCBGD58ONauXQsAKCsrw+eff46h\nQ4diypQpaGlpwfTp0zF9+nR89dVXp/1dLpfrNIMM4NQp/ZsT+Ztvvolhw4bJvzSG6WTwSZthEoS8\nvDz07NkTmzZtQigUwg033ICUlBRceuml53Q3/+hHP8Lnn3+OiRMnIjs7G926dYPX68WgQYNQXFyM\nX/7ylzBNE4MHD8aMGTMAANdeey1mzJiBV155pd02iGVlZZg4cSIA4JlnnoHL5cLDDz+MefPmYd26\ndQBaA+e6deuG3/zmN5g9ezbcbje8Xi/mz59/2t911VVXYdasWejateup3+vatSueeOIJFBcXIxqN\nomfPno7q8MQwVHCXL4ZxKLt27UJpaSkmTpyIaDSKqVOnYuHChRg0aNAF/b233347iouL+eTLMAkI\nn7QZxqEUFhbihRdewMqVKyGEwE033WTZYM+cOROHDh066/fHjh0bb5kMw8QRPmkzDMMwjEPgQDSG\nYRiGcQhstBmGYRjGIbDRZhiGYRiHwEabYRiGYRwCG22GYRiGcQhstBmGYRjGIfw/Wqb6cIrn6VwA\nAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xd5befd0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.stripplot(x='target_position', y='ctr', data=df, jitter=True);"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\ndftj2Dfgs5z7du1Yqc0fkxW1XfgdDnd8YdU8n+SYMrKy//7jSEpJbZ70Gq7t2q272nBll36+O/Py\nQoOijdOEw1WqrY3tXnIyhGukJif6hUY4XKX62o6HpZOlPiyFm7rhxVFWplJnFHidhSSp6ZltsX1j\nVl9lXDcnscnEoPbpX8T0fRlZ2Zp0/U8TnE1sdm66q8PvidfoQEpK88xVSyMwLRI9AnOmpBbtSCSi\ne+65R++//7569uype++9V0OGDElmCkmXldVbGarxzSNfqVm9vU4j8MLhKqm2LqYONynCdd3zIgMJ\n17wOxTH17dW/S6/TI6X5VlFjddfmpZys6bgYt+Scnd61EZiM1OacnaqGv/s1Kus6f2srqUX73//9\n31VfX69nnnlG77zzjn7yk5/o4Ycf7tRrHK+t7vLs8XBD8zBXVo+uFdLjtdXq383uaWdl9VZqqNpX\ns8czMqNfaGRl9VZTarWvJqJlZXSvi6PmC43a2DvcRAtXK9wUffi3JedYu9yECp9UuCn6CkvNo1x1\nMXW4yVAbrpSaOp530bdXf/2fy/0xOvB//19s5y47va9++rV/TXA2Hbvrd/d3+meSWrT/8z//U+PH\nj5ckffWrX9Uf/vCHTv18dnbHV3PhcJXq6qJPrIlEmn/Z6yJNUb8vPT1dWVE60/5ZmTHl9GmUe9rV\nDVJD9DRi1iNVyuwRPY/+MTwWFa6JPjxeVy81xinntFQpPcq1U7hGimX79Ppw9OHxxjop0vh3JOgi\nJU1Ki/JZVh+WFOXzOSurt2pqO3gAva4xzic5+q96tPd5K8eJfi/ZifNFUyjK7Y5Yj+U40e8nJyvn\nGI/jOJGo95IdJ76PmIZCKV06VjhcpZqaGv1o6z9FeR1HUrzOc0ihKO8Lx4molxN9kYlwuEo1tTW6\n+eVF7X5PJG75SilqP9+IHPUKdW5RjKQW7aqqKvXu/dmHQ2pqqhobG5WW5p5Gdnam0tJSW/+8atWD\nHR7j0Ucf1euvv95hHpJOy8XN+PHj9b3vfa/DY0YzcGCOUlLa/5+WWlWlhtr4rC+a2jNDPaL8mwb0\nkQYMGKCcnD7tfk9H+UpSpKpKTXHKuUfPDGVGyTmzd3xyropUqbYpPjln9MhQ72jdf2b0nJOfb3qX\n8pWkoUOHqqKiIupxqqqqVBun90VGRkaHv5/WcraWr9RxzpmZmR02SVL8ro1CoejXcqFQijIzM7uc\n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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xcdfa4a8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.boxplot(x='target_position', y='ctr', data=df);"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAe0AAAFlCAYAAADGV7BOAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xl0FGWi/vGnOwvZiBAWvaLDBZURcC6OiiwjqIAKaAAh\nKBFBxA0vIiGAQCAsBtCILIJGlhkHQQgBCQEU9UbEDQ3GHRX9DYocAQ9LEpbsSXf//sjQQ6Q7nZCk\nqgu+n3M85013p+ohQp5+q6vesrlcLpcAAIDfs5sdAAAAVA+lDQCARVDaAABYBKUNAIBFUNoAAFgE\npQ0AgEUEmh0AsAKHw6FVq1Zp69atcjgcKisr06233qqxY8equLhYw4YNkyQVFhbq8OHDatWqlSSp\na9euGjp0qG677Ta1adPGvb3CwkJdcsklmjt3ri6//PI6y/nJJ58oOTlZknTs2DE5HA5dfPHFkqTH\nHntMffv2rbN9efL1118rIyNDM2fOPOu52NhYHT58WA0bNpTNZlNpaak6dOigmTNnqkGDBjXeV2Zm\nprKzs5WQkKDt27drz549euKJJyo9DpxvbFynDfiWmJioEydOaM6cOWrYsKEKCws1YcIEhYeHa968\nee7X7dq1S0lJSXrjjTfcjx04cEDR0dH66quv3I+5XC7Nnj1beXl5WrBgQb1kXrJkifLy8jR9+vR6\n2b4nGzZs0I4dO5SSknLWc7GxsXrooYfUq1cvSZLT6dSYMWPUqlUrTZgwoVb7XbhwoQoLCzV16tRa\nbQfwd8y0AR9+++03bd26VR9//LEiIiIkSWFhYZo1a1alIq6JkpISHT16VE2aNDnrufHjx6tdu3Z6\n6KGHJEmpqanatWuX5syZoylTpmj//v2y2+1q3769nn76adnt1f+U6+eff1ZSUpKKiop0+PBhtW/f\nXgsXLpTdbtf111+vm2++WT/99JMWLVqk33//XQsWLFBAQIDatWunjz76SK+//rouueQSpaWlKS0t\nTU6nU1FRUUpMTFRQUJBeeuklnTp1SlOnTtWcOXOqzGK329WpUydlZWVJkj777DPNmzdPJSUlCgoK\n0rhx43TTTTfp8OHDmjRpkk6cOCFJ6tGjh8aMGeN+g/Dwww/r9ddfl8PhUEREhC699FL3G4dDhw5p\n1qxZOnTokCRp4MCBevDBB7V//349+uij6tKli3bv3q1Tp04pPj5evXv3rvbPEjADn2kDPvzwww+6\n8sor3YV9WrNmzXT77bdXaxvFxcXq37+/oqOj1bVrV919991eZ5iDBw9WRkaG++v09HTdc889yszM\nVEFBgTZv3qzXX39dUsUbippYv369Bg8erLS0NGVmZmrfvn368MMP3Rlvv/12vfPOO2revLkmT56s\nBQsWaPPmzbruuut09OhRSdKnn36qN954Q2vXrlVGRoYeeOABPfnkk7rssss0evRoderUyWdhS9Lx\n48f11ltvqVOnTsrNzVVcXJymT5+uLVu2aO7cuRo/frwOHTqktLQ0tW7dWps2bdJrr72mvXv3Kj8/\n372d6667TjExMYqOjtbYsWMr7SM+Pl5/+9vftHXrVq1Zs0bp6el6++23JUm//vqrevTooY0bNyou\nLk7PP/98jX6WgBmYaQM+2O12OZ3OWm0jJCREmzdvliR99NFHmjhxov72t78pPDz8rNd26tRJJSUl\n2r17t0JDQ5Wbm6suXbrowIEDWrhwoYYNG6auXbvqgQceUMuWLWuU46mnntLOnTu1fPly/frrr8rJ\nyVFhYaH7+RtuuEFSxaz3z3/+s/tz+MGDB7uL+P3339e+fft07733ur8vLy9Pp06d8rn/uXPnasmS\nJTr9qVyPHj10//336/3331fr1q31l7/8RZL05z//WR06dNBnn32m7t2767HHHtOBAwfUtWtXPfXU\nU2e9gfIkPz9fu3fv1urVqyVJkZGR6t+/vz788EO1bdtWwcHB6tatmySpXbt27pk84M8obcCH//mf\n/9Evv/yi/Pz8SmVx+PBhJSYmavHixQoJCan29rp166YHH3xQ8fHxeuutt9SwYcNKz9tsNsXExGjz\n5s0KCgpSTEyMbDabLr/8cmVmZmrXrl3KysrSgw8+qGnTptXokG5cXJxsNpt69+6tHj166MCBAzrz\ntJawsDBJUmDg2b8abDabpIqT8gYNGqRx48a5vz569OhZfw5PEhIS3J9pn8nTqTVOp1Pl5eW69tpr\ntX37dn366afKyspSTEyMli5d6nNfTqfzrO2e3qYkNWjQwP1nstlsHjMA/obD44APF198saKjo5WQ\nkOA+LJufn6+ZM2eqUaNGNSrs00aOHKnIyEgtXrzY4/N333233nvvPb3zzjsaOHCgJGnt2rWaMmWK\nbrrpJk2cOFE33XST/vWvf9Vovx9//LHGjBmjvn37yul0avfu3R6PIlx//fXau3eve/vbtm1TYWGh\n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\nN05hYWFmx6pSy5Yt9cILL2jp0qVq2LCh5syZY3akapk0aZISExO1YMECtW7dWnfccYch+2VFNAAA\nLMJ/j1kCAIBKKG0AACyC0gYAwCIobQAALILSBgDAIihtwA/MmjVL/fv3V9++fXXNNdeof//+6t+/\nvzZu3Fhv+9y/f7+mTZvm8fHTGQYMGKA777xTDz30kI4cOVLjfWRmZurFF1+UJC1cuFBffvmlJGnK\nlCnas2dP7f4AwAWIS74AP3LgwAENHz5c7733Xr3v65NPPtHy5cu1cuXKSo/v379fDz/8sDIzM92P\nJScn6+DBg7VakjY2Nlbjx483bBEK4HzETBvwc7///rt7nfFbb71VCxculCRt2LBBw4cPV3R0tF54\n4QUdOnRIQ4cOVXR0tCZOnKibb75ZUsW69U899ZQGDhyoAQMGaNu2bZKk2bNn65tvvtHs2bN9ZujY\nsaN+/fVXSdKXX36pmJgYRUdHa8SIEfrtt98kSX//+98VHR2tu+++WzNnznRnnDp1qjZu3Kgff/xR\nCQkJ2rt3r2JjY/X5559Lkl566SX17dtX0dHRSk5OltPp1P79+zVw4ECNHz9ed911lx588EGdPHmy\nLn+sgCVR2oCf27p1q/r166cNGzYoIyNDq1at0okTJyRJR44cUUZGhsaOHaukpCT169dPW7duVY8e\nPdxrkb/00kvq0KGD0tPTtXr1ar300ks6ePCgpk2bpg4dOng8RH6m0tJSbdu2Tdddd51KS0sVHx+v\nWbNmaevWrYqJidGECRNUWlqqV155RZs2bdLGjRvldDorrYU+aNAgXX311Zo7d66uvPJK9+Pbt2/X\nRx99pE2bNmnTpk365ZdftH79eknSnj179Mgjj+iNN95QSEiI3njjjbr+0QKW49/rHgLQI488oqys\nLP3973/X3r17VVZWpuLiYkmqdHOFTz/9VAsWLJAk9enTR9OnT5dUcRi8rKzMXYZFRUXau3evgoKC\nvO7z999/V//+/SVVlHaHDh00btw4/fzzz2rSpInat28vSbrrrrs0ffp0lZeX65prrlFMTIx69uyp\n4cOHV2st9KysLEVHR6tBgwaSKu5fvW3bNnXp0kXNmjXT1VdfLUlq06aN+40KcCGjtAE/N2fOHB0+\nfFh33nmnbr/9dvdNNyRVWtPdbrfL0ykqTqdTCxYscBfgsWPHdNFFFyk7O9vrPv/rv/5LmzdvPutx\nT7e1dblccjqdWrZsmb766it9+OGHGjlypPsNRFX+mNflcrlvcHG6yL29FrgQcXgc8HOffPKJHnnk\nEfXu3VsHDhzQsWPHPN65qWvXru5DyO+99577dqidOnVSamqqpIo7gkVHR+vIkSMKCAio8R2grrji\nCh07dkzff/+9pIpD961atVJhYaHuvPNOXX311YqLi1Pnzp31//7f/6v0vYGBgWftr3Pnztq6datK\nSkpUXl6u9PR0derUqUaZgAsJM23Azz322GOKj49XZGSkmjZtqnbt2nmc8U6bNk2TJk3S2rVr1bZt\nW4WHh0uSxo4dq5kzZyo6OloOh0OTJ09WixYtFBoaqtzcXE2ePNl9m09fQkJCNH/+fM2YMUPFxcVq\n1KiR5s+fr+bNm2vQoEEaOHCgwsLC1KJFC/Xv39990pskdevWTdOmTdPzzz/vfqxXr1768ccfNWjQ\nIJWVlal79+6KjY3VwYMHa/lTA85PXPIFnCdWrlyp7t27q3Xr1vr222+VlJSkDRs2mB0LQB1ipg2c\nJ1q2bKm4uDjZ7XaFhITo6aefNjsSgDrGTBsAAIvgRDQAACyC0gYAwCIobQAALILSBgDAIihtAAAs\ngtIGAMAi/j8wYG6mnqDkLAAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xd3fcac8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.boxplot(x='target_position', y='ctr', data=df)\n",
"plt.ylim(-1,4)\n",
"plt.title(\"CTR vs Target Position\")\n",
"plt.xlabel(\"Target Position\")\n",
"plt.ylabel(\"Clickthrough Rate %\");"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"#Function for viewing mean and median clickthrough rate by a column\n",
"def get_mean_and_median_ctr(df, col):\n",
" '''(DataFrame, string) -> Dataframe\n",
" \n",
" Given a column name, return a dataframe of the\n",
" mean and median clickthrough rate, grouped by\n",
" the given column.\n",
" '''\n",
" #Ensure column in dataframe\n",
" assert(col in df.columns)\n",
" assert('ctr' in df.columns)\n",
" \n",
" #Get average clickthrough rate by column\n",
" ctr_mean = df[['ctr', col]].groupby(col).mean()\n",
" ctr_median = df[['ctr', col]].groupby(col).median()\n",
" #Join\n",
" df_avg = ctr_mean.join(ctr_median, lsuffix='_mean', rsuffix='_median')\n",
" return df_avg"
]
},
{
"cell_type": "code",
"execution_count": 35,
"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>ctr_mean</th>\n",
" <th>ctr_median</th>\n",
" </tr>\n",
" <tr>\n",
" <th>target_position</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1.916579</td>\n",
" <td>1.092044</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1.337463</td>\n",
" <td>0.710564</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1.080577</td>\n",
" <td>0.517241</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>0.978634</td>\n",
" <td>0.471103</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>0.737455</td>\n",
" <td>0.263852</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>0.661480</td>\n",
" <td>0.240096</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>0.617158</td>\n",
" <td>0.179533</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>0.593976</td>\n",
" <td>0.192802</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>0.402973</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>0.383667</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" ctr_mean ctr_median\n",
"target_position \n",
"1 1.916579 1.092044\n",
"2 1.337463 0.710564\n",
"3 1.080577 0.517241\n",
"4 0.978634 0.471103\n",
"5 0.737455 0.263852\n",
"6 0.661480 0.240096\n",
"7 0.617158 0.179533\n",
"8 0.593976 0.192802\n",
"9 0.402973 0.000000\n",
"10 0.383667 0.000000"
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"get_mean_and_median_ctr(df, 'target_position')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##### Clickthrough Rate vs Target Position - Conclusion\n",
"\n",
"There is a pretty clear tendency for the clickthrough rates to decrease as the target position increases.\n",
"\n",
"\n",
"\n",
"#### Clickthrough Rate vs Origin Template"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"FLEXIBLEARTICLE 0.664062\n",
"STEPBYSTEP 0.169718\n",
"LIST 0.165548\n",
"RECIPE 0.000673\n",
"Name: origin_template, dtype: float64"
]
},
"execution_count": 36,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#Verify distribution\n",
"df['origin_template'].value_counts(normalize=True)"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nc/qcbvny5RgzZsy5vSlBJj8/3/Men7JixQpcddVVmDNnDt5//328//77EELA4XDg3nvvxYUXXohb\nb5ebOa4AAA2zSURBVL0VbrcbRUVFiI+PR2xsLGbNmoV77rkngD9N//Xyyy9j27ZtcDqdkCQJDz/8\nMJ5//nkAwJEjRzBkyBCEh4djwYIFqK6uxscff4zk5GTP60/9bs/8exVCIDY21vPZWLZsGYYOHQoh\nBOx2O5566inEx8fjhhtuwKpVqzBo0CAAwIYNG/Dyyy9j1apV2LJlC1599VUIIWC1WnHLLbdgwYIF\neOihh1BbW4uKigro9XokJydj2LBhuPzyyz3tnHLqc3j2Z97tduOpp55CXl6eir/p/iM/P9/rd9Xe\n3o7MzEw88MADuP76672+twHgtddeg1ar9fsdduZn9czvYwDQ6XR45pln4HA4fHLCmccOOmKAKSsr\nEzfccEOP64QQYvny5eKbb77p8jgbN24UCxcuFDabTTzzzDPij3/8oxBCiO3bt4tly5YJIYS45ZZb\nRGFhoRBCCLfbLRYvXiz2799/Tu0JIcTjjz8unn/+ebF8+XLPuv/85z/iueee8yy7XC6xaNEisX//\nfr/7CCHErFmzhBBC7Nq1S9x8882ira1NCCFEY2OjmDdvnigoKOjydUIIcckllwir1eo3zoHuzPf4\nlFPvndlsFnPnzhU2m00IIUR1dbWYPXu2cLlcPvuSfwUFBWLRokXC7XYLIYQ4fPiwuPbaaz3bz/xs\nCSHEiy++KN56660uj3X23+vvf/978frrr/u8j5s3bxY//vGPhRBCvP/+++Lmm28WbrdbNDc3i/nz\n54vS0lIhhBAXXXSRaGlpEUII0draKi699FJRX1/vN5au/l5OOftv4euvvxY/+9nPevjtDFxd/a4e\nfPBB8corr3T5nSlE999h/r6PhRBi1apV4ne/+53f7+Ngxdvjflx88cWYMmUK7rnnHhw9ehT33Xdf\nt/vb7XY4HA6vq+i+aG9vx/bt23Hvvfdi9+7daGxs9Ltfa2sroqKienXcNWvW4NZbb4XJZALQeQWw\nZs0a5ObmnlOcoc5gMMDhcODtt99GaWkpUlJSsG7dOq+7EtSzqKgoVFZW4r333kNNTQ1GjhyJ9957\n77yPK4RAa2srIiIifLaZzWbEx8cDABYuXIi4uDisXr0azz77LO6++27P3ayoqCi88cYbKCgogMlk\n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\nYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1246bd30>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.stripplot(x='origin_template', y='ctr', data=df, jitter=True);"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nuvXWWzVmzBglJyfrwQcfLHH7vLw8eTyeQqPossjOzlZSUpLGjh2rb7/9VkeOHCl2u+PHj6tmzdJd\nKW7VqlUaNmyYIiIiJJ389L9q1SpdffXV51RnVVe9enV5PB699tpr2rNnj+rVq6f169cXmpVA6dSs\nWVP79+/X6tWrdfDgQTVv3lyrV68+73aNMTp+/Lhq1Khxxs+OHTum2rVrS5J69+6tqKgovf7661qw\nYIFGjx7tn9GqWbOmXnnlFW3fvl0RERH64IMPVKdOnfOuTZIyMzOLrK2qysvL06FDh3TRRRcVu825\nHscq42td6abHJWnHjh2KjY313x8/fnyx2yYkJOj555/3358xY4aaNm0qSRo8eLC6deumhISEYg/K\n8fHxCg8PV2pqqho1aqR69erp0KFDZe7v/fffV+fOnRUaGqq77rpLq1ev1qhRoyRJ7777rr7//nul\npaUpIiJCo0eP1lVXXVWq1+LQoUP+A1GBiy+++KzPGz58uP93DgoKOuOStFVVaGioli5dqqVLl2rE\niBHyeDwaOXKkBg0a5HRp1qlXr56eeeYZLV++XE899ZTCwsI0YcIEde3atdjnvPzyy3r//ff990eP\nHq3WrVtL+u1v1uVy6frrr1fv3r21efNmJSUlKTY2Vnl5eUpOTtZTTz3lf/6jjz6qAQMG6LrrrlPv\n3r39j7/44ot6+eWXNXHiRB05ckQDBw7U2LFj5XK5iq2toJ8Cd955p0aMGCHpt/d9UFCQ6tatq7i4\nuLK/YJVIwWuVnp6uoKAg9e/fX7fffrvmzZtX6DW89tprNWXKlDIdxwqOyS6XSw0bNlRcXJyOHj16\nRi4UtG2bShnajRs31rJly/z39+7dW+y2cXFxatu27RmPezweTZkyRTNnztQTTzyhP/7xj6pXr94Z\n2y1YsEBXX321fD6fpk2bpiVLligmJqbM/a1atUrBwcG677775Ha7deDAAf8bvkePHpo8ebJSU1M1\nYsSIUge2JF122WX69ddf1axZM/9jmzdv1iWXXFLi81588UWFhoaWup+q4uDBg3K73Zo5c6Yk6Zdf\nftGIESN0yy23+D/soXT+97//KTIyUvPmzZMk/fjjjxo5cqRuu+22Ymes7r33Xt1zzz1F/qy4v9mW\nLVv6z0/YtWuXBg4cqI0bNyosLEy1a9fWLbfcou7du/u3z8zM1P79+xUXF6e4uDgdPHhQDz74oK69\n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\nDQCAJf4/vI79q42A9MoAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x12790b38>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.boxplot(x='origin_template', y='ctr', data=df)\n",
"plt.ylim(-1,5);"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x12795eb8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.violinplot(x='origin_template', y='ctr', data=df)\n",
"plt.ylim(-1, 10)\n",
"plt.title(\"CTR vs Origin Template\")\n",
"plt.xlabel(\"Origin Template\")\n",
"plt.ylabel(\"Clickthrough Rate %\");"
]
},
{
"cell_type": "code",
"execution_count": 40,
"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>ctr_mean</th>\n",
" <th>ctr_median</th>\n",
" </tr>\n",
" <tr>\n",
" <th>origin_template</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>FLEXIBLEARTICLE</th>\n",
" <td>0.932648</td>\n",
" <td>0.358166</td>\n",
" </tr>\n",
" <tr>\n",
" <th>LIST</th>\n",
" <td>0.831892</td>\n",
" <td>0.291545</td>\n",
" </tr>\n",
" <tr>\n",
" <th>RECIPE</th>\n",
" <td>0.590421</td>\n",
" <td>0.364461</td>\n",
" </tr>\n",
" <tr>\n",
" <th>STEPBYSTEP</th>\n",
" <td>0.668879</td>\n",
" <td>0.113422</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" ctr_mean ctr_median\n",
"origin_template \n",
"FLEXIBLEARTICLE 0.932648 0.358166\n",
"LIST 0.831892 0.291545\n",
"RECIPE 0.590421 0.364461\n",
"STEPBYSTEP 0.668879 0.113422"
]
},
"execution_count": 40,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"get_mean_and_median_ctr(df, 'origin_template')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##### Clickthrough Rate vs Origin Template - Conclusion\n",
"\n",
"There is an interesting relationship here between template and clickthrough rate. All four types seem to have some high clickthrough rate articles that really pull up their means, but list, flexible article, and step by step all seem to really benefit from that. \n",
"\n",
"Step by step articles have the lowest median which leads me to believe that with step by step articles, it is really hit or miss for a high click through rate. My thought is that **either the person is interested in doing something step by step and wants to click through to more related information or after reading the origin article, they decide it is not for them and move on.**\n",
"\n",
"Recipe on the other hand has the lowest mean but the highest median. This makes me think that when someone is looking at a recipe perhaps they are pretty committed to the task they are reading about and will tend to click through for a little more information. However, recipe accounts for such a small sample of the total that it is hard to make meaningful conclusions.\n",
"\n",
"\n",
"\n",
"### Question 3 - Improving Recommendations\n",
"\n",
"To improve recommendations I will examine the number of unique keywords from the originl url that appear in the target url.\n",
"\n",
"It appears that every url in the dataset is of the form: \n",
"https://www.thespruce.com/article-title-12312312\n",
"\n",
"This will make processing a bit easier as I can assume a consistent url structure. First I will strip away everything before the last '/'. Then I will get the list of unique keyword stems from the remaining words in the url. And finally this feature will be the intersection of keyword stems between the origin url and the target url."
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import re\n",
"\n",
"def get_article_name_from_url(url):\n",
" '''(string) -> List of strings\n",
" \n",
" Given a url from this dataset in the assumed format of\n",
" \"https://www.thespruce.com/article-title-12312312\", return \n",
" a list of words that occur after the last '/' which indicate\n",
" the article url title.\n",
" '''\n",
" #Get everything after the last '/'\n",
" article = url.split('/')[-1]\n",
" #Split on '-' to get individual words\n",
" words = article.split('-')\n",
" #Use regex to remove numbers from word list\n",
" word_list = [re.sub(r'\\d+', '', word) for word in words]\n",
" #Remove empty strings from word list\n",
" word_list = filter(None, word_list)\n",
" return word_list"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from nltk.stem import SnowballStemmer\n",
"from nltk.corpus import stopwords\n",
"\n",
"def get_unique_keywords(word_list):\n",
" '''(list) -> set\n",
" \n",
" Given a list of words, stem the words, remove stopwords,\n",
" and remove duplicates. Return the new list of unique\n",
" keywords (or key stems really).\n",
" '''\n",
" #Get word stems\n",
" snow_stemmer = SnowballStemmer('english')\n",
" stems = [snow_stemmer.stem(word) for word in word_list]\n",
" #Remove stopwords\n",
" stems_filtered = [word for word in stems if word not in stopwords.words('english')]\n",
" #Remove duplicate stems\n",
" return set(stems_filtered)"
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"#Main function to apply to df\n",
"def get_keyword_match_count(row):\n",
" '''(DataFrame row) -> int\n",
" \n",
" Meant to be called with apply from DF. Given a row\n",
" of the dataframe, return count for new column 'keyword_match_count'\n",
" that is the total number of unique keywords from origin url\n",
" that exist in target url.\n",
" '''\n",
" #Get words from url\n",
" origin_list = get_article_name_from_url(row['origin_url'])\n",
" target_list = get_article_name_from_url(row['target_url'])\n",
" #Get unique keywords from article name\n",
" origin_set = get_unique_keywords(origin_list)\n",
" target_set = get_unique_keywords(target_list)\n",
" #Get intersection - number of origin words that exist in target\n",
" match_count = len(origin_set & target_set)\n",
" return match_count"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"df['keyword_match_count'] = df.apply(get_keyword_match_count, axis=1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"** Explore keyword_match_count **"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"1 65061\n",
"2 43295\n",
"0 40387\n",
"3 11708\n",
"4 2725\n",
"5 372\n",
"6 12\n",
"Name: keyword_match_count, dtype: int64"
]
},
"execution_count": 45,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#View raw counts\n",
"df['keyword_match_count'].value_counts()"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"1 0.397781\n",
"2 0.264704\n",
"0 0.246925\n",
"3 0.071582\n",
"4 0.016661\n",
"5 0.002274\n",
"6 0.000073\n",
"Name: keyword_match_count, dtype: float64"
]
},
"execution_count": 46,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['keyword_match_count'].value_counts(normalize=True)"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n2kIIIYRG/D84qtRuF6QTagAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xa334048>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.stripplot(x='keyword_match_count', y='ctr', data=df, jitter=True);"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAe0AAAFlCAYAAADGV7BOAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XlUVfX+//HXYVbQBCW7VtefZZp1rzYoDukVEHMWJTEc\n0K6uSjNNU6+JaJpkopVpTuktp5wyUTQz565pOWRpWXrLopaWXzWOE6MM+/cHeYILeAA757Dh+Vir\ntfY5Z+/9eX8O5IvPnj4WwzAMAQCAcs/N1QUAAICSIbQBADAJQhsAAJMgtAEAMAlCGwAAkyC0AQAw\nCUIbFVZOTo6WLFmiiIgIhYeHq3Pnzpo5c6auXbumK1euKDw8XOHh4Wrfvr0aN25sex0fH68zZ86o\nUaNGtveurxcdHa3Tp0//6bVGR0fro48+sr0+d+6cOnfurKlTpyo3N/dPb+9mPfjggzpz5kyh96Oj\no9WwYcNC39GhQ4fUsGFDvf3223b3PWjQIFmt1huuExoaqq+//rpEtX7xxRcaPHiwwsPD1bVrVz31\n1FP67rvvSrRtWZSkfqCsPFxdAOAokydP1uXLl7Vs2TJVq1ZNaWlpGjNmjCZMmKCZM2cqMTFRknTw\n4EFNnTrV9lqSzpw5Ix8fnwLvGYahuLg4zZo1S6+//rrD6v7pp580aNAgRUVF6amnnnJYO45Sp04d\nJSYm6tlnn7W9t2HDBtWqVatE2+/fv/9Pq+Xw4cMaO3as5s6dq7/97W+SpE2bNik6Olpbt25VQEDA\nn9bWdX9m/cD/YqSNCun06dPavHmzpk2bpmrVqkmSqlatqilTpqh9+/Zl2mdmZqYuXLigW265pdBn\no0ePLjCKXL16tUaOHKnU1FSNGDFC4eHh6tmzp2JjY284cj558qQGDhyoESNGFAjsc+fOadiwYYqI\niFC3bt20cOFCSdKCBQs0evRo23pHjhxRjx49NGzYMK1bt06SdPTo0QKj3wULFmjGjBnKysrS1KlT\n1blzZ3Xr1k0TJkxQSkqKpLyR7MiRI9WpUyft2LFDn3/+ucLDw9WjRw9NnDjxhn3o3r27Nm/ebHud\nnp6uL774Qi1btrS9t2fPHkVFRSkiIkLBwcF64403JEnjx4+XJA0cOFBnz55VUlKSoqOj1aVLF3Xr\n1k0ffvihbR9r1661bT9r1qwia5kzZ46eeeYZW2Bfr++ll15STk6ObT9du3ZV9+7dNWjQICUlJUmS\nXnjhhQI/0/yvQ0ND9eabb6pv374KCQnRjBkziqwf+LMR2qiQvv32W9WvX19+fn4F3g8MDNSjjz5a\non1kZGQoPDxc3bp1U6tWrdSzZ0/Vq1dPY8aMKbRuZGSkNm7caHudkJCg3r17a8eOHUpNTVViYqLe\nf/99SSr28PoXX3yh6Oho3XbbberevXuBz8aOHavHHntMCQkJev/99/Xpp5/qww8/VO/evfXxxx/r\n0qVLkvICKCoqSu3bt9cnn3wiSfrkk08UGBioTz/9VJK0a9cudezYUQsWLND58+eVmJioxMRE5ebm\n2sJHku655x5t3bpVbdu21XPPPacXXnhBGzduVPPmzZWRkVHs99aoUSN5eXnp2LFjkqTt27crNDRU\nHh55B/YMw9A777yj6dOnKyEhQWvXrtWiRYtktVr1yiuvSJKWLVumv/zlL3r++efVsWNHbdmyRYsW\nLdLrr79u+8PC29tbCQkJWrdund55550iQ/L48eN66KGHCr3foUMHBQYG6rPPPtO///1vLV++XJs2\nbVLXrl01bNgwleRBkWlpaVq1apXWrFmjd999V6dPny5UP/BnI7RRIbm5ud30ueDrh8c3b96s+Ph4\nXbx4UY888oh8fX0Lrdu8eXNlZmbq66+/1qlTp2S1WtWyZUs9/PDDOnXqlKKjo7Vo0SINHDhQdevW\nLbK9TZs2ad68eUpPTy8wckxLS9Phw4c1e/ZshYeHq3fv3jp79qxOnjypmjVrKjg4WImJibp8+bL2\n7dunbt26KSQkRAcPHlR2drb27dunoUOHav/+/Tp37pySk5P197//XXv37lVUVJQ8PT3l5uam6Oho\nW9BLUtOmTSVJ3333nTw8PGwj5a5duxb5HeQXHh6uTZs2SZI2btyonj172j6zWCxauHChvvnmG82d\nO1fTp0+XYRhKT08vsI9Lly7p5MmTioyMlCT95S9/0c6dO21/iHXt2lVS3h9itWrVUnJycqE67P0e\nfPLJJ+rcubPtMHlERITOnTtX5Pn6/9WuXTtJUu3atVWzZk1dvnzZ7jbAzSK0USE1btxYP/74o21U\ndt25c+f01FNP3XCkWJQ2bdron//8p55//nldvXq10OcWi0W9evVSYmKi1q9fr169eslisejOO+/U\njh079NRTTyklJUX//Oc/C1xwll9MTIyCgoI0e/ZsrVq1Stu3b5ck5ebmyjAMrVmzxjYqXrt2rZ5+\n+mlJUr9+/bR+/Xp98MEHevTRR+Xr66tbbrlF9913n/bs2aOrV68qPDxcn3/+uXbu3KmwsDBZLJZC\nYZabm6usrCzb66pVq9r69r8jz+uj5uJ069ZN27Zt0+nTp5WSkqIGDRrYPktLS1PPnj31zTff6L77\n7tO//vUveXh4FNuGxWKxvffjjz/afnb5ayiqRkl64IEHbCP+/KZMmaJPP/20yG0Mw1B2dnahfeb/\nbqS8kb699oE/G6GNCql27drq1q2bYmJibMGdkpKiyZMnq0aNGvLx8Sn1PgcNGqTq1atrzpw5RX7e\ns2dP7d69W9u2bVNERIQkadWqVRo/frxat26tsWPHqnXr1vr++++L3N7Ly0uSVK9ePU2dOlUvvPCC\nfvjhB/n5+emBBx7QkiVLJElXrlxRnz59tGvXLknSQw89JDc3N7399tvq06ePbX9hYWF6/fXX1bJl\nS/n5+alevXpavHixOnToICnvD5E1a9YoKytLubm5WrlypR555JFCdTVo0ECGYeg///mPpLzD6/ZG\nlbVr11bDhg0VExOj8PDwAp/9/PPPSklJ0ciRIxUaGqpDhw7p2rVrtj8i3N3dlZ2dLT8/P91///22\n0w5nz55Vnz59ivyjqThDhw7V3Llzdfz4cdt7CQkJ2rZtmxo0aKDWrVvrww8/tF3tvX79etWoUUN1\n69aVv7+/bTur1arPP/+8RG1erx9wBEIbFdaLL76o+vXrKyoqSuHh4YqMjFT9+vUVFxdXpv15enpq\n4sSJWrVqVZG3DAUGBuq+++5TgwYNVLt2bUlSjx49lJOTo86dOysiIkIpKSkaMGCA3bY6d+6s8PBw\nDRs2TCkpKXr11Vd17NgxdevWTZGRkbYLp66LiIjQrbfeqoYNG9reCwsLU1JSklq1aiVJat26tbKz\ns23neIcOHapatWqpR48e6tSpk7KzszVhwoQi+z1v3jzb4fkdO3aoZs2advsQHh6uL7/80nYY+7qG\nDRsqODhYnTp1sv2hU79+ff3888+SpPbt26tv37767rvv9Nprr2nr1q3q3r27hgwZopdfflmBgYF2\n276uadOmiouL08svv2y77W/79u1avny5atWqpUceeURPPPGEBg4cqC5dumjjxo166623bKcLLly4\noA4dOmjs2LEKCgoqUZv56wf+bBam5gTMLTs7W8OGDbOFEoCKi5E2YGKnTp2yHf7u2LGjq8sB4GCM\n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\nhYeHq1u3bq4uxyXi4+O1bds2TZw4UWlpaa4uxynWr1+vTz/9VNHR0Tpx4oTGjRunCxcuuLosp6lX\nr566d+8ui8WievXqqUaNGpWq/zVq1FDr1q3l5eWlu+66S97e3rJara4uqwBCuwgPPfSQ9u7dK0k6\nevSoGjRo4OKK4Ey//fabBg0apLFjx6pXr16uLsfpNm7cqLfeekuSVKVKFVksFrm5VY5/KlauXKl3\n331XK1asUKNGjRQfH6/AwEBXl+U077//vqZPny5JOnfunFJSUipV/x9++GF98sknMgxD586dU3p6\numrUqOHqsgpg+FiE9u3ba//+/YqKipJhGJo2bZqrS4ITLVy4UFeuXNH8+fM1f/58SXkX5lWWC5Me\nffRRjR8/Xv369VN2drZiYmIqTd8ru169emn8+PHq06ePLBaLpk2bVqmOMoaEhOjw4cPq1auXDMPQ\npEmTyt01LTwRDQAAk6gcx7wAAKgACG0AAEyC0AYAwCQIbQAATILQBgDAJAhtoIR69OghKe9e3rVr\n15Z4u/fee08hISGKj48v8H5oaGiBp879+9//VpcuXcrNwyzefPPNEj/Kdvfu3VqyZEmpt5Okq1ev\n6plnninys4YNG2rw4MEF3rNarbr//vvttrF27Vp98MEHxX5+5swZhYaGlrhOoDwgtIESSEpKUt26\ndSVJX3zxhR5++OESb/vBBx9o6tSpGjduXLHrLF26VImJiVqxYoUpH2bxzTffKCUlpUzbXr58WSdP\nniz2859++kmXL1+2vd6+fXuJnof+5Zdf6tq1a2WqCSivKs9d80AZDR48WN999508PDwUHh6upKQk\nJSUlKSEhocB669ev15IlS2SxWHT//fdr4sSJWrJkib7++mtNmTJFsbGxatu2baH9L1++XBs3btSy\nZcsUEBAgKe+pbJMmTdL//d//yWKxaPTo0WrRooXCwsL09ttvq169ekpLS1OnTp3Upk0b3Xffferb\nt6/ee+89LVmyRFu3blVWVpbCwsK0c+dO7du3T2+88YZyc3N155136qWXXlKtWrUUGhqqxo0b68SJ\nE1q1apU2bNig9957T/7+/qpevboaN26srKwsxcTE6Pvvv5ck9e3bV71797bVf+rUKa1Zs0aSVKdO\nHUnSV199paioKJ07d04REREaPny4UlJSFBMTo3Pnzun8+fNq2rSpZsyYobi4OJ0/f17Dhg3TvHnz\nCn0/oaGh2rlzpx577DFJ0rZt29S+fXvb51u3btWSJUuUkZGhzMxMxcXFKSsrS7t379aBAwcUGBio\nu+66S+PHj5fVapWPj4/i4uLk5+enjIwMjRo1St9//72qV6+uefPmyd/f/2Z+XQDHMgDYNX36dGP/\n/v3G1atXjb59+xb6/OTJk0ZYWJhhtVoNwzCMyZMnG9OnTzcMwzD69+9vHDhwoNA2ISEhRnx8vNGw\nYUPj/fffL/DZyJEjjZ07dxqGYRjnzp0z2rVrZ1y9etWYPXu28cYbbxiGYRgbNmwwJk2aZPznP/8x\nhg8fbtuuZcuWxoULF4zPPvvMGDFihPHbb78ZrVu3Nk6fPm0YhmEsXrzYtn5ISIixfv16wzAM46uv\nvjI6duxopKSkGKmpqUbXrl2NOXPmGAcPHjSefPJJwzAMw2q1GuPGjSvUlzlz5hhz5syxLffs2dPI\nzMw0kpOTjSZNmhhXr141Nm/ebMyfP98wDMPIzMw0wsLCjK+//to4ffq0ERISUuT33qBBA+PIkSO2\n9s+fP28MHDjQ1l5OTo4xYMAAIzk52TAMw1i3bp3x9NNPG4ZhGOPGjbP17cknnzTeffddwzAM4+OP\nPzZGjBhhnD592mjYsKFx7NgxwzAMY/jw4bZ1gPKKw+NACZw6dUoNGzbU999/r3vuuafQ54cPH1ZI\nSIhtlPb444/rwIEDdvd78OBBLVy4UDNmzNCvv/5qe//TTz/VnDlzFB4erieffFLZ2dk6ffq0IiIi\nbOdpN2zYoIiICDVv3lxfffWVcnJy9OOPP6pz5846fPiw9u7dq5CQEH311Vdq3Lix7rjjjiJra9Kk\niSTp0KFDatu2rXx9fVW1alV17NhRknTPPfcoKSlJgwcP1qZNmzRmzBi7/WrTpo28vLwUEBAgf39/\nXb58WV27dtUjjzyipUuXKi4uTpcuXSrRRCQPPvigkpKSdPXqVW3btk0dOnSwfebm5qZ58+Zp3759\nmj17tjZs2FBgsp/rDh8+rPDwcElS27ZtNXv2bEnSrbfeqsaNG0uS6tevr4sXL9qtB3AlQhuwY/Dg\nwTp06JAGDRqkkSNHas+ePYqIiCiwTm5uboHXhmEoOzvb7r5nzpyp4OBgRUVFafTo0crJybHtb9my\nZUpMTFRiYqLWrl2rBg0a6I477lCdOnW0fft2JScnq0mTJvL29ta9996rzZs366677lLz5s11+PBh\n7d+/X//4xz/s1ubt7S1JslgsBda9/sxpf39/bdmyRf3791dSUpJ69uypK1eu3LBf+Z9XbbFYZBiG\nVqxYoRkzZiggIED9+/fX3XffLaMET1G2WCwKCQnRrl27tH379gKhnZqaqscee0xnzpxRs2bNFB0d\nbbcewzB06tSpYusEyjNCG7Bj6tSpatWqlRITE9WqVSstWLCg0PnsoKAg7d69W5cuXZKUd8V48+bN\n7e7by8tLkvTss88qMzPTdk63RYsWWrVqlaS8UX737t2Vnp4uSXrssccUFxen7t272/bTtm1bzZs3\nT0FBQQoKCtKuXbtUpUoVBQQEqEmTJjp27JjtSvW1a9cWWVvLli318ccf6+rVq8rMzNSOHTskSbt2\n7dKYMWMUHBys2NhYVa1aVWfPni2w7fU5529k//79evzxx21TP548edI27a29bTt16qRVq1bJ09PT\ndt5fyrtIzc3NTUOGDFGLFi20d+9e2x8+7u7utuWmTZtqy5YtkvKOYkycOPGG7QHlFReiAXYcPXpU\nDz74oCTpv//9rxo2bFhonXvvvVdPP/20oqOjlZWVpfvvv19TpkwpcRuenp6aOXOmevXqpZYtWyo2\nNlaTJk2yzeU9Y8YM+fn5ScqbhSs2NtZ2uFeSgoODNXnyZAUFBemWW25RzZo1FRwcLEmqVauWXnrp\nJT377LPKyspSnTp19PLLLxeqoVGjRho4cKB69eql6tWr2y4q+8c//qFt27apS5cu8vb21qOPPlro\nO2jWrJnGjRunWrVqFdvHgQMHavLkyXrnnXfk6+urBx98UGfOnFHTpk1Vp04dRUdHa8WKFUVu+8AD\nD+jChQuKjIws8P69996rRo0aqVOnTvLx8VGzZs1spxlatWql119/XdWqVdOkSZMUGxurVatWqUqV\nKoqLi7vRjwMot5jlCzARwzC0d+9erV69WgsXLnR1OQCcjJE2YCLTpk3Tnj17tHjxYleXAsAFGGkD\nAGASXIgGAIBJENoAAJgEoQ0AgEkQ2gAAmAShDQCASRDaAACYxP8HH40tp2clawkAAAAASUVORK5C\nYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xebd0128>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.boxplot(x='keyword_match_count', y='ctr', data=df)\n",
"plt.ylim(-1,4)\n",
"plt.title(\"CTR vs Keyword Match Count\")\n",
"plt.xlabel(\"# of Keywords that Match\")\n",
"plt.ylabel(\"Clickthrough Rate %\");"
]
},
{
"cell_type": "code",
"execution_count": 49,
"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>ctr_mean</th>\n",
" <th>ctr_median</th>\n",
" </tr>\n",
" <tr>\n",
" <th>keyword_match_count</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0.607259</td>\n",
" <td>0.136178</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>0.856007</td>\n",
" <td>0.327869</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1.049242</td>\n",
" <td>0.417491</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1.151621</td>\n",
" <td>0.437392</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1.003056</td>\n",
" <td>0.324149</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>1.526031</td>\n",
" <td>0.815729</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>2.240785</td>\n",
" <td>1.833483</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" ctr_mean ctr_median\n",
"keyword_match_count \n",
"0 0.607259 0.136178\n",
"1 0.856007 0.327869\n",
"2 1.049242 0.417491\n",
"3 1.151621 0.437392\n",
"4 1.003056 0.324149\n",
"5 1.526031 0.815729\n",
"6 2.240785 1.833483"
]
},
"execution_count": 49,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"get_mean_and_median_ctr(df, 'keyword_match_count')"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"##### Improving Recommendations - Conclusion\n",
"\n",
"There is a strong difference in average click through rate for target urls that have at least one or more matching keywords vs those that have no matching keywords.\n",
"\n",
"I would therefore suggest that the number of matching unique keywords between origin and target url be used as a feature, and that ** target urls with no matching keywords to not be recommended as often.**\n",
"\n",
"##### Further Steps\n",
"\n",
"This idea of looking at differences in key words between origin url and target url can be extended further by: \n",
"\n",
"- Including word duplicates in the count\n",
"- Counting keywords as percentage of total words in title\n",
"- Looking at how many keywords do not match\n",
"- Keep numbers in the title (not that ID integer at the end) \n",
"- Length of title\n",
"\n",
"##### Other Ideas\n",
"\n",
"** Does clickthrough rate change as a function of number of recommendations shown? **\n",
"\n",
"I would like to run an A/B test showing different counts of recommended articles and see if clickthrough rates can be improved by suggesting fewer articles.\n",
"\n",
"\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"\n",
"### Bonus - Evaluating Individual Target URLs\n",
"\n",
"##### Approach\n",
"\n",
"First I would group the data by target url and explore that in a similar fashion to how I answered question 2. I assume this would be a very sparse dataset so I would then try to find a way to group similar urls together and evaluate the performance of that group. This could potentially be done by a clustering algorithim or by some feature engineering similar to how I answered question 3.\n",
"\n",
"To group the urls into clusters manually I could try a few different things, such as:\n",
"- Grouping on % of matching words or % of matching keywords\n",
"- Grouping on structure of the title or similarity of the stop words\n",
"- Grouping on origin/target template match and key word match\n",
"\n",
"Another approach could be to look at the target urls with the most page impressions (those that may have a large enough sample size) and see if there are any clickthrough rate outliers in that set. I would then examine those outliers and try to get some ideas for new features test.\n",
"\n",
"\n",
"##### Potential Confounds\n",
"\n",
"- Dealing with high dimensional data and potentially low sample counts\n",
"- Controlling for seasonality/ timing of publication\n",
"- URL structure or format potentially changing\n",
"- Limitations of NLP for synonym detection (if using keywords)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.13"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment