{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2019-09-20T20:33:21.057390Z", "start_time": "2019-09-20T20:33:15.598910Z" } }, "outputs": [], "source": [ "%load_ext autoreload\n", "%autoreload 2\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Cross Validation\n", "\n", "## TimeGapSplit\n", "\n", "We allow for a timeseries split that contains a gap.\n", "\n", "You won't always need it, but sometimes you consider these two situations;\n", "\n", "- If you have multiple samples per timestamp: you want to make sure that a timestamp doesn’t appear at the same time in training and validation folds.\n", "- If your target is looking $x$ days ahead in the future. In this case you cannot construct the target of the last x days of your available data. It means that when you put your model in production, the first day that you are going to score is always x days after your last training sample, therefore you should select the best model according to that setup. In other words, if you keep that gap in the validation, your metric might be overestimated because those first x days might be easier to predict since they are closer to the training set. If you want to be strict in terms of robustness you might want to replicate in the CV exactly this real-world behaviour, and thus you want to introduce a gap of x days between your training and validation folds.\n", "\n", "TimeGapSplit provides 4 parameters to really reproduce your production implementation in your cross-validation schema. We will demonstrate this in a code example below. \n", "\n", "#### Examples\n", "\n", "Let's make some random data to start with, and next define a plotting function." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2019-09-20T20:33:35.888431Z", "start_time": "2019-09-20T20:33:21.065603Z" } }, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "from datetime import timedelta\n", "\n", "from sklego.model_selection import TimeGapSplit" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "ExecuteTime": { "end_time": "2019-09-20T20:33:36.252123Z", "start_time": "2019-09-20T20:33:35.902091Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(30, 5)\n" ] } ], "source": [ "df = (pd.DataFrame(np.random.randint(0, 30, size=(30, 4)), columns=list('ABCy'))\n", " .assign(date=pd.date_range(start='1/1/2018', end='1/30/2018')[::-1]))\n", "print(df.shape)\n", "\n", "# For performance testing\n", "if False:\n", " df = pd.concat([df]*50000, axis=0)\n", " df = df.reset_index(drop=True)\n", " df.index = df.index + 22\n", " print(df.shape)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2019-09-20T20:33:36.435511Z", "start_time": "2019-09-20T20:33:36.256691Z" } }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCydate
05231392018-01-30
14132442018-01-29
218202752018-01-28
3248192018-01-27
4132620292018-01-26
\n", "
" ], "text/plain": [ " A B C y date\n", "0 5 23 13 9 2018-01-30\n", "1 4 13 24 4 2018-01-29\n", "2 18 20 27 5 2018-01-28\n", "3 2 4 8 19 2018-01-27\n", "4 13 26 20 29 2018-01-26" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "def plot_cv(cv, X):\n", " \"\"\"\n", " Plot all the folds on time axis\n", " :param pandas.DataFrame X:\n", " \"\"\"\n", " X_index_df = cv._join_date_and_x(X)\n", "\n", " plt.figure(figsize=(16, 4))\n", " for i, split in enumerate(cv.split(X)):\n", " x_idx, y_idx = split\n", " x_dates = X_index_df.iloc[x_idx]['__date__'].unique()\n", " y_dates = X_index_df.iloc[y_idx]['__date__'].unique()\n", " plt.plot(x_dates, i*np.ones(x_dates.shape), c=\"steelblue\")\n", " plt.plot(y_dates, i*np.ones(y_dates.shape), c=\"orange\")\n", "\n", " plt.legend(('training', 'validation'), loc='upper left')\n", " plt.ylabel('Fold id')\n", " plt.axvline(x=X_index_df['__date__'].min(), color='gray', label='x')\n", " plt.axvline(x=X_index_df['__date__'].max(), color='gray', label='d')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example 1**" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "ExecuteTime": { "end_time": "2019-09-20T20:33:38.651965Z", "start_time": "2019-09-20T20:33:38.483371Z" } }, "outputs": [], "source": [ "cv = TimeGapSplit(date_serie=df['date'],\n", " train_duration=timedelta(days=10),\n", " valid_duration=timedelta(days=2),\n", " gap_duration=timedelta(days=1))" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA6YAAAD4CAYAAAD/7vvxAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAd2klEQVR4nO3de5RV9ZXg8e9uQAkIWkDEB0Ygy9GyfPCoGBJDfEUldkviCzRxOphRupnpGDKTmdFMT9RMnHF6GYc4HcnCxJgYQ4+t0WiPitqDbcxS2yolBIQOEYkiBgoC4gONjz1/1IWUWC+gTp26t76fte6qc8/j99v37GVZm9/v/G5kJpIkSZIkleVPyg5AkiRJktS/WZhKkiRJkkplYSpJkiRJKpWFqSRJkiSpVBamkiRJkqRSDSw7gLZGjRqVY8eOLTuMdm3atAmAkSNHlhyJJEmSJJVvV2uk5ubmjZn5wfaO9anCdOzYsTQ1NZUdRrtuvvlmAGbNmlVqHJIkSZLUF+xqjRQRv+3omFN5JUmSJEmlsjCVJEmSJJXKwlSSJEmSVKo+9Yxpe9566y3Wrl3LG2+8UWocDQ0NAKxYsaLUOPbU4MGDGTNmDIMGDSo7FEmSJEkCqqAwXbt2LcOGDWPs2LFERGlxbNy4EYBRo0aVFsOeykw2bdrE2rVrGTduXNnhSJIkSRJQ8FTeiPhKRCyPiGURsTAiBu9qG2+88QYjR44stSitFRHByJEjSx99liRJkqS2CitMI+Jg4FKgMTOPAgYA5+9mWz0ZWr/mvZQkSZLU1xQ9lXcg8IGIeAsYAqwruD9JktSHzF+0nNXrt5YdhqQ+ZPzo4cw5vaHsMIrVPBc2L+n9fusmwOR5vd9vDyhsxDQzXwSuBZ4HXgJezswHdj4vImZHRFNENLW0tBQVzm7bsmULN9xwwy5fd8YZZ7Bly5ZOz/n617/OQw89tLuhSZIkSVJNKGzENCLqgM8A44AtwN9HxIWZ+eO252XmAmABQGNjYxYVz+7aXpjOmDHjPfvffvttBg7s+Pbde++9Xbb9jW98Y4/jkySpL6v5URFJak+VjlqWqcjFjz4FPJeZLZn5FvBT4OMF9leIyy67jGeffZYTTzyRU089lalTpzJ9+nSOPPJIAD772c8yefJkGhoaWLBgwY7rxo4dy8aNG1mzZg319fVccsklNDQ0cNppp7Ft2zYAZs2axe23377j/CuuuIJJkyZx9NFHs3LlSgBaWlo49dRTaWho4OKLL+bQQw/dsUKwJEmSJNWCIp8xfR6YEhFDgG3AKUDTnjRYxHMqXc1xv+aaa1i2bBkPP/wwv/jFL/jc5z7HsmXLdnzdyk033cSIESPYtm0bH/nIRzjnnHMYOXLke9pYtWoVCxcu5MYbb2TGjBnccccdXHjhhe/ra9SoUTz11FPccMMNXHvttXzve9/jqquu4uSTT+byyy/n/vvv5/vf/36Pfn5JkiRJKluRz5g+AdwOPAX8qtLXgk4vqgLHHXfce74D9Prrr+fYY49lypQpvPDCC6xatep914wbN44JEyYAMHnyZNasWdNu22efffb7znn00Uc5//zWxYynTZtGXV1dD34aSZIkSSpfoavyZuYVwBU91V5feE5l6NChO7YffvhhHnroIR577DGGDBnCiSee2O53hO699947tgcMGLBjKm9H5w0YMIC33367hyOXJEmSpL6pyGdMa8KwYcN45ZVX2j328ssvU1dXx5AhQ1i5ciWPP/54j/d//PHHc9tttwHwwAMPsHnz5h7vQ5IkSZLKVPT3mFa9kSNHcvzxxzN16lQGDx7MwQcfvOPYtGnT+O53v0t9fT2HH344U6ZM6fH+r7jiCi644AJuueUWPvaxj3HAAQcwbNiwHu9HkiRJksoSmX3nG1oaGxuzqem96yOtWLGC+vr6kiL6o+0r4Y4aNapX+33zzTcZMGAAAwcO5LHHHmPOnDksWbJnX9bbV+6pJEmSpOp18803A63fNtIdEdGcmY3tHXPEtI97/vnnmTFjBu+++y577bUXN954Y9khSZIkSVKPsjDt4w477DCefvrpssOQJEmSpMK4+JEkSZIkqVQWppIkSZKkUlmYSpIkSZJKZWEqSZIkSSqVhWkP22effQBYt24d5557brvnnHjiiez8tTg7mzdvHq+//vqO92eccQZbtmzpuUAlSZIkqY+wMC3IQQcdxO23377b1+9cmN57773st99+PRGaJEmSJPUpFqZduOyyy/jOd76z4/2VV17JN7/5TU455RQmTZrE0Ucfzc9+9rP3XbdmzRqOOuooALZt28b5559PfX09Z511Ftu2bdtx3pw5c2hsbKShoYErrrgCgOuvv55169Zx0kkncdJJJwEwduxY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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_cv(cv, df)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example 2**" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "ExecuteTime": { "end_time": "2019-09-20T20:33:38.651965Z", "start_time": "2019-09-20T20:33:38.483371Z" } }, "outputs": [], "source": [ "cv = TimeGapSplit(date_serie=df['date'],\n", " train_duration=timedelta(days=10),\n", " valid_duration=timedelta(days=5),\n", " gap_duration=timedelta(days=1))" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "ExecuteTime": { "end_time": "2019-09-20T20:33:40.240054Z", "start_time": "2019-09-20T20:33:38.657666Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA7YAAAD4CAYAAADYQHoZAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nO3de7hV9Xng8e8bQKmI5nDxigrJOBHxwuUETY0Rk2iIUzUaL5jYiq1h6sQaM9M+o+k8YkzSsR1rHRsvxYQYbYK1Gg0+g9dGa0w05WAIQTEBkSho5ABeI5qg7/yxF2R7PDfgLPZZm+/nefZz1vrd1rvXj9vLb+3fjsxEkiRJkqSqek+jA5AkSZIkaWuY2EqSJEmSKs3EVpIkSZJUaSa2kiRJkqRKM7GVJEmSJFXawEYH0JdGjBiRo0ePbnQYnVq7di0Aw4cPb3AkkiRJkvROVchXFixYsCYzR3ZW11SJ7ejRo2lra2t0GJ264YYbAJg+fXpD45AkSZKkjqqQr0TEr7qq81FkSZIkSVKlmdhKkiRJkirNxFaSJEmSVGlN9Rnbzvzud79j5cqVvPHGGw2NY9y4cQAsWbKkoXFsrcGDBzNq1CgGDRrU6FAkSZIkCdgOEtuVK1cydOhQRo8eTUQ0LI41a9YAMGLEiIbFsLUyk7Vr17Jy5UrGjBnT6HAkSZIkCSjxUeSI2CciHoiIJyLi8Yj4QidtIiKuiohlEbEoIibW1Z0VEUuL11lbGscbb7zB8OHDG5rUNouIYPjw4Q1f/ZYkSZKkemWu2G4A/kdmPhYRQ4EFEXFfZj5R1+aTwP7F6zDgWuCwiBgGzARagSz6zs3MF7ckEJPavuO9lCRJktTflJbYZubzwPPF8asRsQTYG6hPbE8EbszMBB6NiPdGxJ7AFOC+zFwHEBH3AVOBOWXFK0lVde09j7P8hVcaHYakbeR9u+/CuZ8Y1+gwyrHgAnhxYaOj0NZoGQ+Trmx0FNoObZNdkSNiNDAB+EmHqr2BZ+vOVxZlXZV3NvaMiGiLiLb29va+CrnPvPTSS1xzzTWb3e+4447jpZde6rbNxRdfzP3337+loUmSJElSUyh986iI2Bm4DbggM/t8SSEzZwGzAFpbW7Ovx99aGxPb00477R3lGzZsYODArm//vHnzehz70ksv3er4JFVf067cSNr+uNInaQuVumIbEYOoJbXfyczvddJkFbBP3fmooqyr8sq58MILeeqpp5gyZQrHHHMMRx55JCeccAIHHnggAJ/61KeYNGkS48aNY9asWZv6jR49mjVr1rBixQrGjh3L5z73OcaNG8exxx7L+vXrAZg+fTq33nrrpvYzZ85k4sSJHHzwwTz55JMAtLe3c8wxxzBu3DjOOecc9ttvv007NEuSJElSMyhtxTZquwx9E1iSmVd00WwucF5E3Ext86iXM/P5iLgH+JuIaCnaHQtctLUxlfE5tJ4+53LZZZexePFiHnzwQX70ox/xmc98hsWLF2/6upzZs2czbNgw1q9fzwc/+EE+/elPM3z48HeMsXTpUubMmcP111/Paaedxm233caZZ575rmuNGDGCxx57jGuuuYbLL7+cb3zjG3z5y1/mox/9KBdddBF333033/zmN/v0/UuSJElSo5X5KPIRwB8DP4+IjbsAfAnYFyAzrwPmAccBy4DXgbOLunUR8RVgftHv0o0bSVXd5MmT3/EdsFdddRW33347AM8++yxLly59V2I7ZswYxo8fD8CkSZNYsWJFp2OffPLJm9p873u1BfKHH3540/hTp06lpaWl076SJEmSVFVl7or8MNDtd8MUuyF/vou62cDsvoypP3wObciQIZuOH3zwQe6//34eeeQRdtppJ6ZMmdLpd8TuuOOOm44HDBiw6VHkrtoNGDCADRs29HHkkiRJktQ/bZNdkbdnQ4cO5dVXX+207uWXX6alpYWddtqJJ598kkcffbTPr3/EEUdwyy23AHDvvffy4otb9FXAkiRJktRvlb4r8vZu+PDhHHHEERx55JEMHjyYvff+/bcWTZ06leuuu46xY8fygQ98gMMPP7zPrz9z5kzOOOMMbrrpJj70oQ+xxx57MHTo0D6/jiRJkiQ1StSeBm4Ora2t2dbW9o6yJUuWMHbs2AZF9HsbdyIeMWLENr3um2++yYABAxg4cCCPPPII5557LgsXbt0Xn/eXeypJkiSpb9xwww1A7ZtX+quIWJCZrZ3VuWLb5J555hlOO+003n77bXbYYQeuv/76RockSZIkSX3KxLbJ7b///vz0pz9tdBiSJEmSVBo3j5IkSZIkVZqJrSRJkiSp0kxsJUmSJEmVZmIrSZIkSao0E9t+Zueddwbgueee45RTTum0zZQpU+j4tUYdXXnllbz++uubzo877jheeumlvgtUkiRJkvoJE9t+aq+99uLWW2/d4v4dE9t58+bx3ve+ty9CkyRJkqR+xcS2ZBdeeCFXX331pvNLLrmEr371q3zsYx9j4sSJHHzwwXz/+99/V78VK1Zw0EEHAbB+/XqmTZvG2LFjOemkk1i/fv2mdueeey6tra2MGzeOmTNnAnDVVVfx3HPPcfTRR3P00UcDMHr0aNasWQPAFVdcwUEHHcRBBx3ElVdeuel6Y8eO5XOf+xzjxo3j2GOPfcd1JEmSJKm/2r6+x3bBBfDiwr4ds2U8TLqyy+rTTz+dCy64gNNPPx2AW265hXvuuYfzzz+fXXbZhTVr1nD44YdzwgknEBGdjnHttdey0047sWTJEhYtWsTEiRM31X3ta19j2LBhvPXWW3zsYx9j0aJFnH/++VxxxRU88MADjBgx4h1jLViwgG9961v85Cc/ITM57LDDOOqoo2hpaWHp0qXMmTOH66+/ntNOO43bbruNM888sw9ukiRJkiSVxxXbkk2YMIHVq1fz61//msWLF9PS0sIee+zBl770JQ455BA+/vGPs2rVKl544YUux3jooYc2JZiHHHIIhxxyyKa6W265hYkTJzJhwgQef/xxnnjiiW7jefjhhznppJMYMmQIO++8MyeffDI//OEPARgzZgzjx48HYNKkSaxYsWIr370kSZIklW/7WrHtZmW1TKeeeipz585l9erVnH766XznO9+hvb2dBQsWMGjQIEaPHs0bb7yx2eM+/fTTXH755cyfP5+WlhamT5++ReNstOOOO246HjBggI8iS5IkSaoEV2y3gdNPP5077riDO++8k1NPPZWXX36Z3XbbjUGDBvHAAw/wq1/9qtv+H/nIR/jud78LwOLFi1m0aBEAr7zyCkOGDGHXXXflhRde4K677trUZ+jQobz66qvvGuvII4/kjjvu4PXXX+c3v/kNt99+O0ceeWQfvltJkiRJ2rZKW7GNiNnAHwGrM/OgTur/CvhsXRxjgZGZuS4iVgCvAm8BGzKztaw4t4Vx48bx2muvseeee7Lnnnvy2c9+luOPP56DDz6Y1tZWDjjggG77n3vuuZx99tmMHTuWsWPHMmnSJAAOPfRQJkyYwAEHHMA+++zDEUccsanPjBkzmDp1KnvttRcPPPDApvKJEycyffp0Jk+eDMA555zDhAkTfOxY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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_cv(cv, df)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example 3**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "window='expanding' is the closest to the sklearn implementation" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "cv = TimeGapSplit(date_serie=df['date'],\n", " train_duration=timedelta(days=10),\n", " valid_duration=timedelta(days=2),\n", " gap_duration=timedelta(days=1),\n", " window='expanding')" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_cv(cv, df)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example 4**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If train_duration is not passed the training duration is the maximum without overlapping validation folds" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "cv = TimeGapSplit(date_serie=df['date'],\n", " train_duration=None,\n", " valid_duration=timedelta(days=3),\n", " gap_duration=timedelta(days=2),\n", " n_splits=3)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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qquu4s0339y0f9xxx/HKK6/0XqCSJEmS1EdY2PZRe+65J7fddtsWz29f2M6bN49ddtmlN0KTJEmSpD7FwrZkF110Eddcc82m/UsvvZSvfe1rfOITn2DixIkcfPDBfP/733/fvBUrVnDQQQcBsH79eqZNm8bYsWM56aSTWL9+/aZx5513Hs3NzYwbN46ZM2cCcPXVV/PCCy9w9NFHc/TRRwMwevRo1qxZA8CVV17JQQcdxEEHHcRVV1216Xxjx47l85//POPGjePYY499z3kkSZIkqa/qX99ju+BCeHlh7x6zaTxMuqrT7jPOOIMLL7yQM844A4Bbb72V++67jwsuuICddtqJNWvWcPjhh3PCCScQER0e47rrrmOHHXZgyZIlLFq0iIkTJ27q+/rXv86wYcN45513+MQnPsGiRYu44IILuPLKK3nooYcYMWLEe461YMECvv3tb/OTn/yEzOSwww7jqKOOoqmpiaVLlzJnzhxuuOEGTj/9dG6//XbOOuusXrhIkiRJklQe79iWbMKECaxevZpf//rXLF68mKamJnbffXe+/OUvc8ghh/DJT36SVatW8dJLL3V6jEceeWRTgXnIIYdwyCGHbOq79dZbmThxIhMmTODJJ5/kqaee6jKeRx99lJNOOokhQ4aw4447cvLJJ/PDH/4QgDFjxjB+/HgAJk2axIoVK7by3UuSJElS+frXHdsu7qyW6bTTTmPu3LmsXr2aM844g+9+97u0trayYMECBg0axOjRo3nrrbc2+7jPPvssV1xxBfPnz6epqYnp06dv0XE22n777TdtDxgwwEeRJUmSJFWCd2y3gTPOOIO77rqLu+++m9NOO41XX32VXXfdlUGDBvHQQw/xq1/9qsv5H/vYx/je974HwOLFi1m0aBEAr732GkOGDGHnnXfmpZde4p577tk0Z+jQobz++uvvO9aRRx7JXXfdxZtvvslvfvMb7rzzTo488shefLeSJEmStG2Vdsc2ImYDfwSszsyDOuj/K+BzNXGMBUZm5rqIWAG8DrwDbMjM5rLi3BbGjRvHG2+8wR577MEee+zB5z73OY4//ngOPvhgmpubOeCAA7qcf95553HOOecwduxYxo4dy6RJkwA49NBDmTBhAgcccAB77703RxxxxKY5M2bMYOrUqey555489NBDm9onTpzI9OnTmTx5MgDnnnsuEyZM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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_cv(cv, df)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example 5**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If train and valid duration would lead to unwanted amounts of splits n_splits can set a maximal amount of splits" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "cv = TimeGapSplit(date_serie=df['date'],\n", " train_duration=timedelta(days=10),\n", " valid_duration=timedelta(days=2),\n", " gap_duration=timedelta(days=1),\n", " n_splits=4)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "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yiv5yle+sm39y1/+Ml/4whc45ZRTmDx5Msceeyz33XffdsetWLGCCRMmALB582YuuOACxo8fz1lnncXmzZu3tZs5cyZtbW20trZyzTXXAHDDDTewatUqTj75ZE4++WQAWlpaWLNmDQDXX389EyZMYMKECcyaNWtbf+PHj+fjH/84ra2tnHbaaW/oR5IkSZIGsub7HNgFV8C6hX17zhETYcqsHnd/5CMf4YorruCTn/wkAPfddx8PPfQQl19+Ofvvvz9r1qxh6tSpTJ8+nYjo9hw333wzw4YNY+nSpSxatIjJkydv2/fFL36Rgw46iNdee41TTjmFRYsWcfnll3P99dczb948Ro0a9YZzLViwgK997Ws89thjZCbvfOc7ee9738uIESNYtmwZd999N7feeivnn38+9957LxdddFEfXCRJkiRJqpcjsH1g0qRJvPDCC6xatYrFixdzwAEHMGbMGD772c9y3HHH8f73v5/nnnuO1atX93iOn/zkJ9sKyeOOO47jjjtu27577rmHyZMnM2nSJJYsWcKTTz7ZazwPP/wwZ511Fvvuuy/77bcfZ599Nj/96U8BGDduHBMnTgRgypQprFixYg/fvSRJkiT1j+Ybge1lpLRO5513HnPmzOHpp5/mzDPP5Bvf+Abt7e0sWLCAIUOG0NLSwssvv7zL5/31r3/Nddddx+OPP86IESOYMWPGbp1nq3322Wfb8qBBg7yFWJIkSVIxHIHtIx/5yEf41re+xQMPPMD06dPZsGEDb3nLWxgyZAjz5s3jN7/5Ta/Hv+c97+Gb3/wmAIsXL2bRokUAbNy4kX333ZcDDjiA1atX8/3vf3/bMcOHD2fTpk3bnevd73433/ve93jppZf43e9+x3e/+13e/e539+G7lSRJkqT+13wjsA3S2trKpk2bOPjggxkzZgwf/ehH+fCHP8yxxx5LW1sbRx99dK/Hz5w5k0suuYTx48czfvx4pkyZAsDxxx/PpEmTOProoznssMM48cQTtx1z2WWXMW3aNA455BDmzZu3bfvkyZOZMWMGJ5xwAgCXXnopkyZN8nZhSZIkSUWLzGx0DLukra0tu34+6tKlSxk/fnyDInqjrbMAd51YqUQD6bpKkiRJ2jN33HEHADNmzGhoHDsSEQsys627fd5CLEmSJEkqggWsJEmSJKkITVPAlnYr9EDn9ZQkSZI0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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_cv(cv, df)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "ExecuteTime": { "end_time": "2019-09-20T20:33:40.733122Z", "start_time": "2019-09-20T20:33:40.244626Z" } }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Start dateEnd datePeriodUnique daysnbr samples
(0, train)2018-01-012018-01-109 days1010
(0, valid)2018-01-122018-01-131 days22
(1, train)2018-01-062018-01-159 days1010
(1, valid)2018-01-172018-01-181 days22
(2, train)2018-01-102018-01-199 days1010
(2, valid)2018-01-212018-01-221 days22
(3, train)2018-01-152018-01-249 days1010
(3, valid)2018-01-262018-01-271 days22
\n", "
" ], "text/plain": [ " Start date End date Period Unique days nbr samples\n", "(0, train) 2018-01-01 2018-01-10 9 days 10 10\n", "(0, valid) 2018-01-12 2018-01-13 1 days 2 2\n", "(1, train) 2018-01-06 2018-01-15 9 days 10 10\n", "(1, valid) 2018-01-17 2018-01-18 1 days 2 2\n", "(2, train) 2018-01-10 2018-01-19 9 days 10 10\n", "(2, valid) 2018-01-21 2018-01-22 1 days 2 2\n", "(3, train) 2018-01-15 2018-01-24 9 days 10 10\n", "(3, valid) 2018-01-26 2018-01-27 1 days 2 2" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cv.summary(df)" ] } ], "metadata": { "kernelspec": { "display_name": "Python (sklego)", "language": "python", "name": "sklego" }, "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.7.7" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 2 }