{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Users/mchrist/Documents/Research/tsfresh/venv/lib/python2.7/site-packages/statsmodels/compat/pandas.py:56: FutureWarning: The pandas.core.datetools module is deprecated and will be removed in a future version. Please use the pandas.tseries module instead.\n",
      "  from pandas.core import datetools\n"
     ]
    }
   ],
   "source": [
    "from tsfresh.feature_extraction import extract_features\n",
    "from tsfresh.feature_extraction.settings import ComprehensiveFCParameters, MinimalFCParameters, EfficientFCParameters\n",
    "from tsfresh.feature_extraction.settings import from_columns\n",
    "\n",
    "import numpy as np\n",
    "import pandas as pd"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "This notebooks illustrates the `\"fc_parameters\"` or `\"kind_to_fc_parameters\"` dictionaries.\n",
    "\n",
    "For a detailed explanation, see also http://tsfresh.readthedocs.io/en/latest/text/feature_extraction_settings.html"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Construct a time series container"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "We construct the time series container that includes two sensor time series, _\"temperature\"_ and _\"pressure\"_, for two devices _\"a\"_ and _\"b\"_"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>pressure</th>\n",
       "      <th>temperature</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>a</td>\n",
       "      <td>-1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>a</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>b</td>\n",
       "      <td>-1</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>b</td>\n",
       "      <td>7</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  id  pressure  temperature\n",
       "0  a        -1            1\n",
       "1  a         2            2\n",
       "2  b        -1            3\n",
       "3  b         7            1"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = pd.DataFrame({\"id\": [\"a\", \"a\", \"b\", \"b\"], \"temperature\": [1,2,3,1], \"pressure\": [-1, 2, -1, 7]})\n",
    "df"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## The default_fc_parameters"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Which features are calculated by tsfresh is controlled by a dictionary that contains a mapping from feature calculator names to their parameters. \n",
    "This dictionary is called `fc_parameters`. It maps feature calculator names (=keys) to parameters (=values). As keys, always the same names as in the tsfresh.feature_extraction.feature_calculators module are used.\n",
    "\n",
    "In the following we load an exemplary dictionary"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'length': None,\n",
       " 'maximum': None,\n",
       " 'mean': None,\n",
       " 'median': None,\n",
       " 'minimum': None,\n",
       " 'standard_deviation': None,\n",
       " 'sum_values': None,\n",
       " 'variance': None}"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "settings_minimal = MinimalFCParameters() # only a few basic features\n",
    "settings_minimal"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "This dictionary can passed to the extract method, resulting in a few basic time series beeing calculated:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Feature Extraction: 100%|██████████| 4/4 [00:00<00:00, 16336.14it/s]\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>variable</th>\n",
       "      <th>pressure__length</th>\n",
       "      <th>pressure__maximum</th>\n",
       "      <th>pressure__mean</th>\n",
       "      <th>pressure__median</th>\n",
       "      <th>pressure__minimum</th>\n",
       "      <th>pressure__standard_deviation</th>\n",
       "      <th>pressure__sum_values</th>\n",
       "      <th>pressure__variance</th>\n",
       "      <th>temperature__length</th>\n",
       "      <th>temperature__maximum</th>\n",
       "      <th>temperature__mean</th>\n",
       "      <th>temperature__median</th>\n",
       "      <th>temperature__minimum</th>\n",
       "      <th>temperature__standard_deviation</th>\n",
       "      <th>temperature__sum_values</th>\n",
       "      <th>temperature__variance</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>id</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>a</th>\n",
       "      <td>2.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.5</td>\n",
       "      <td>0.5</td>\n",
       "      <td>-1.0</td>\n",
       "      <td>1.5</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.25</td>\n",
       "      <td>2.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>1.5</td>\n",
       "      <td>1.5</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.5</td>\n",
       "      <td>3.0</td>\n",
       "      <td>0.25</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>b</th>\n",
       "      <td>2.0</td>\n",
       "      <td>7.0</td>\n",
       "      <td>3.0</td>\n",
       "      <td>3.0</td>\n",
       "      <td>-1.0</td>\n",
       "      <td>4.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>16.00</td>\n",
       "      <td>2.0</td>\n",
       "      <td>3.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>4.0</td>\n",
       "      <td>1.00</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "variable  pressure__length  pressure__maximum  pressure__mean  \\\n",
       "id                                                              \n",
       "a                      2.0                2.0             0.5   \n",
       "b                      2.0                7.0             3.0   \n",
       "\n",
       "variable  pressure__median  pressure__minimum  pressure__standard_deviation  \\\n",
       "id                                                                            \n",
       "a                      0.5               -1.0                           1.5   \n",
       "b                      3.0               -1.0                           4.0   \n",
       "\n",
       "variable  pressure__sum_values  pressure__variance  temperature__length  \\\n",
       "id                                                                        \n",
       "a                          1.0                2.25                  2.0   \n",
       "b                          6.0               16.00                  2.0   \n",
       "\n",
       "variable  temperature__maximum  temperature__mean  temperature__median  \\\n",
       "id                                                                       \n",
       "a                          2.0                1.5                  1.5   \n",
       "b                          3.0                2.0                  2.0   \n",
       "\n",
       "variable  temperature__minimum  temperature__standard_deviation  \\\n",
       "id                                                                \n",
       "a                          1.0                              0.5   \n",
       "b                          1.0                              1.0   \n",
       "\n",
       "variable  temperature__sum_values  temperature__variance  \n",
       "id                                                        \n",
       "a                             3.0                   0.25  \n",
       "b                             4.0                   1.00  "
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X_tsfresh = extract_features(df, column_id=\"id\", default_fc_parameters = settings_minimal)\n",
    "X_tsfresh.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "By using the settings_minimal as value of the default_fc_parameters parameter, those settings are used for all type of time series. In this case, the `settings_minimal` dictionary is used for both _\"temperature\"_ and _\"pressure\"_ time series."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Now, lets say we want to remove the length feature and prevent it from beeing calculated. We just delete it from the dictionary."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'maximum': None,\n",
       " 'mean': None,\n",
       " 'median': None,\n",
       " 'minimum': None,\n",
       " 'standard_deviation': None,\n",
       " 'sum_values': None,\n",
       " 'variance': None}"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "del settings_minimal[\"length\"]\n",
    "settings_minimal"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Now, if we extract features for this reduced dictionary, the length feature will not be calculated"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Feature Extraction: 100%|██████████| 4/4 [00:00<00:00, 1171.27it/s]\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>variable</th>\n",
       "      <th>pressure__maximum</th>\n",
       "      <th>pressure__mean</th>\n",
       "      <th>pressure__median</th>\n",
       "      <th>pressure__minimum</th>\n",
       "      <th>pressure__standard_deviation</th>\n",
       "      <th>pressure__sum_values</th>\n",
       "      <th>pressure__variance</th>\n",
       "      <th>temperature__maximum</th>\n",
       "      <th>temperature__mean</th>\n",
       "      <th>temperature__median</th>\n",
       "      <th>temperature__minimum</th>\n",
       "      <th>temperature__standard_deviation</th>\n",
       "      <th>temperature__sum_values</th>\n",
       "      <th>temperature__variance</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>id</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>a</th>\n",
       "      <td>2.0</td>\n",
       "      <td>0.5</td>\n",
       "      <td>0.5</td>\n",
       "      <td>-1.0</td>\n",
       "      <td>1.5</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.25</td>\n",
       "      <td>2.0</td>\n",
       "      <td>1.5</td>\n",
       "      <td>1.5</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.5</td>\n",
       "      <td>3.0</td>\n",
       "      <td>0.25</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>b</th>\n",
       "      <td>7.0</td>\n",
       "      <td>3.0</td>\n",
       "      <td>3.0</td>\n",
       "      <td>-1.0</td>\n",
       "      <td>4.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>16.00</td>\n",
       "      <td>3.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>4.0</td>\n",
       "      <td>1.00</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "variable  pressure__maximum  pressure__mean  pressure__median  \\\n",
       "id                                                              \n",
       "a                       2.0             0.5               0.5   \n",
       "b                       7.0             3.0               3.0   \n",
       "\n",
       "variable  pressure__minimum  pressure__standard_deviation  \\\n",
       "id                                                          \n",
       "a                      -1.0                           1.5   \n",
       "b                      -1.0                           4.0   \n",
       "\n",
       "variable  pressure__sum_values  pressure__variance  temperature__maximum  \\\n",
       "id                                                                         \n",
       "a                          1.0                2.25                   2.0   \n",
       "b                          6.0               16.00                   3.0   \n",
       "\n",
       "variable  temperature__mean  temperature__median  temperature__minimum  \\\n",
       "id                                                                       \n",
       "a                       1.5                  1.5                   1.0   \n",
       "b                       2.0                  2.0                   1.0   \n",
       "\n",
       "variable  temperature__standard_deviation  temperature__sum_values  \\\n",
       "id                                                                   \n",
       "a                                     0.5                      3.0   \n",
       "b                                     1.0                      4.0   \n",
       "\n",
       "variable  temperature__variance  \n",
       "id                               \n",
       "a                          0.25  \n",
       "b                          1.00  "
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X_tsfresh = extract_features(df, column_id=\"id\", default_fc_parameters = settings_minimal)\n",
    "X_tsfresh.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## The kind_to_fc_parameters"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "now, lets say we do not want to calculate the same features for both type of time series. Instead there should be different sets of features for each kind.\n",
    "\n",
    "To do that, we can use the `kind_to_fc_parameters` parameter, which lets us finely specifiy which `fc_parameters` we want to use for which kind of time series:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'pressure': {'length': None, 'sum_values': None}, 'temperature': {'minimum': None, 'maximum': None}}\n"
     ]
    }
   ],
   "source": [
    "fc_parameters_pressure = {\"length\": None, \n",
    "                          \"sum_values\": None}\n",
    "\n",
    "fc_parameters_temperature = {\"maximum\": None, \n",
    "                             \"minimum\": None}\n",
    "\n",
    "kind_to_fc_parameters = {\n",
    "    \"temperature\": fc_parameters_temperature,\n",
    "    \"pressure\": fc_parameters_pressure\n",
    "}\n",
    "\n",
    "print(kind_to_fc_parameters)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "So, in this case, for sensor _\"pressure\"_ both _\"max\"_ and _\"min\"_ are calculated. For the _\"temperature\"_ signal, the length and sum_values features are extracted instead."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Feature Extraction: 100%|██████████| 4/4 [00:00<00:00, 1473.37it/s]\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>variable</th>\n",
       "      <th>pressure__length</th>\n",
       "      <th>pressure__sum_values</th>\n",
       "      <th>temperature__maximum</th>\n",
       "      <th>temperature__minimum</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>id</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>a</th>\n",
       "      <td>2.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>1.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>b</th>\n",
       "      <td>2.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>3.0</td>\n",
       "      <td>1.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "variable  pressure__length  pressure__sum_values  temperature__maximum  \\\n",
       "id                                                                       \n",
       "a                      2.0                   1.0                   2.0   \n",
       "b                      2.0                   6.0                   3.0   \n",
       "\n",
       "variable  temperature__minimum  \n",
       "id                              \n",
       "a                          1.0  \n",
       "b                          1.0  "
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X_tsfresh = extract_features(df, column_id=\"id\", kind_to_fc_parameters = kind_to_fc_parameters)\n",
    "X_tsfresh.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "So, lets say we lost the kind_to_fc_parameters dictionary. Or we apply a feature selection algorithm to drop \n",
    "irrelevant feature columns, so our extraction settings contain irrelevant features. \n",
    "\n",
    "In both cases, we can use the provided \"from_columns\" method to infer the creating dictionary from \n",
    "the dataframe containing the features"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'pressure': {'length': None, 'sum_values': None},\n",
       " 'temperature': {'maximum': None, 'minimum': None}}"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "recovered_settings = from_columns(X_tsfresh)\n",
    "recovered_settings"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Lets drop a column to show that the inferred settings dictionary really changes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>variable</th>\n",
       "      <th>pressure__sum_values</th>\n",
       "      <th>temperature__maximum</th>\n",
       "      <th>temperature__minimum</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>id</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>a</th>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>1.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>b</th>\n",
       "      <td>6.0</td>\n",
       "      <td>3.0</td>\n",
       "      <td>1.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "variable  pressure__sum_values  temperature__maximum  temperature__minimum\n",
       "id                                                                        \n",
       "a                          1.0                   2.0                   1.0\n",
       "b                          6.0                   3.0                   1.0"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X_tsfresh.iloc[:, 1:]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'pressure': {'sum_values': None},\n",
       " 'temperature': {'maximum': None, 'minimum': None}}"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "recovered_settings = from_columns(X_tsfresh.iloc[:, 1:])\n",
    "recovered_settings"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## More complex dictionaries"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "We provide custom fc_parameters dictionaries with greater sets of features.\n",
    "\n",
    "The `EfficientFCParameters` contain features and parameters that should be calculated quite fastly:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true,
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'abs_energy': None,\n",
       " 'absolute_sum_of_changes': None,\n",
       " 'agg_autocorrelation': [{'f_agg': 'mean'},\n",
       "  {'f_agg': 'median'},\n",
       "  {'f_agg': 'var'}],\n",
       " 'agg_linear_trend': [{'attr': 'rvalue', 'chunk_len': 5, 'f_agg': 'max'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 5, 'f_agg': 'min'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 5, 'f_agg': 'mean'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 5, 'f_agg': 'var'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 10, 'f_agg': 'max'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 10, 'f_agg': 'min'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 10, 'f_agg': 'mean'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 10, 'f_agg': 'var'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 50, 'f_agg': 'max'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 50, 'f_agg': 'min'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 50, 'f_agg': 'mean'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 50, 'f_agg': 'var'},\n",
       "  {'attr': 'intercept', 'chunk_len': 5, 'f_agg': 'max'},\n",
       "  {'attr': 'intercept', 'chunk_len': 5, 'f_agg': 'min'},\n",
       "  {'attr': 'intercept', 'chunk_len': 5, 'f_agg': 'mean'},\n",
       "  {'attr': 'intercept', 'chunk_len': 5, 'f_agg': 'var'},\n",
       "  {'attr': 'intercept', 'chunk_len': 10, 'f_agg': 'max'},\n",
       "  {'attr': 'intercept', 'chunk_len': 10, 'f_agg': 'min'},\n",
       "  {'attr': 'intercept', 'chunk_len': 10, 'f_agg': 'mean'},\n",
       "  {'attr': 'intercept', 'chunk_len': 10, 'f_agg': 'var'},\n",
       "  {'attr': 'intercept', 'chunk_len': 50, 'f_agg': 'max'},\n",
       "  {'attr': 'intercept', 'chunk_len': 50, 'f_agg': 'min'},\n",
       "  {'attr': 'intercept', 'chunk_len': 50, 'f_agg': 'mean'},\n",
       "  {'attr': 'intercept', 'chunk_len': 50, 'f_agg': 'var'},\n",
       "  {'attr': 'slope', 'chunk_len': 5, 'f_agg': 'max'},\n",
       "  {'attr': 'slope', 'chunk_len': 5, 'f_agg': 'min'},\n",
       "  {'attr': 'slope', 'chunk_len': 5, 'f_agg': 'mean'},\n",
       "  {'attr': 'slope', 'chunk_len': 5, 'f_agg': 'var'},\n",
       "  {'attr': 'slope', 'chunk_len': 10, 'f_agg': 'max'},\n",
       "  {'attr': 'slope', 'chunk_len': 10, 'f_agg': 'min'},\n",
       "  {'attr': 'slope', 'chunk_len': 10, 'f_agg': 'mean'},\n",
       "  {'attr': 'slope', 'chunk_len': 10, 'f_agg': 'var'},\n",
       "  {'attr': 'slope', 'chunk_len': 50, 'f_agg': 'max'},\n",
       "  {'attr': 'slope', 'chunk_len': 50, 'f_agg': 'min'},\n",
       "  {'attr': 'slope', 'chunk_len': 50, 'f_agg': 'mean'},\n",
       "  {'attr': 'slope', 'chunk_len': 50, 'f_agg': 'var'},\n",
       "  {'attr': 'stderr', 'chunk_len': 5, 'f_agg': 'max'},\n",
       "  {'attr': 'stderr', 'chunk_len': 5, 'f_agg': 'min'},\n",
       "  {'attr': 'stderr', 'chunk_len': 5, 'f_agg': 'mean'},\n",
       "  {'attr': 'stderr', 'chunk_len': 5, 'f_agg': 'var'},\n",
       "  {'attr': 'stderr', 'chunk_len': 10, 'f_agg': 'max'},\n",
       "  {'attr': 'stderr', 'chunk_len': 10, 'f_agg': 'min'},\n",
       "  {'attr': 'stderr', 'chunk_len': 10, 'f_agg': 'mean'},\n",
       "  {'attr': 'stderr', 'chunk_len': 10, 'f_agg': 'var'},\n",
       "  {'attr': 'stderr', 'chunk_len': 50, 'f_agg': 'max'},\n",
       "  {'attr': 'stderr', 'chunk_len': 50, 'f_agg': 'min'},\n",
       "  {'attr': 'stderr', 'chunk_len': 50, 'f_agg': 'mean'},\n",
       "  {'attr': 'stderr', 'chunk_len': 50, 'f_agg': 'var'}],\n",
       " 'ar_coefficient': [{'coeff': 0, 'k': 10},\n",
       "  {'coeff': 1, 'k': 10},\n",
       "  {'coeff': 2, 'k': 10},\n",
       "  {'coeff': 3, 'k': 10},\n",
       "  {'coeff': 4, 'k': 10}],\n",
       " 'augmented_dickey_fuller': [{'attr': 'teststat'},\n",
       "  {'attr': 'pvalue'},\n",
       "  {'attr': 'usedlag'}],\n",
       " 'autocorrelation': [{'lag': 0},\n",
       "  {'lag': 1},\n",
       "  {'lag': 2},\n",
       "  {'lag': 3},\n",
       "  {'lag': 4},\n",
       "  {'lag': 5},\n",
       "  {'lag': 6},\n",
       "  {'lag': 7},\n",
       "  {'lag': 8},\n",
       "  {'lag': 9}],\n",
       " 'binned_entropy': [{'max_bins': 10}],\n",
       " 'c3': [{'lag': 1}, {'lag': 2}, {'lag': 3}],\n",
       " 'change_quantiles': [{'f_agg': 'mean', 'isabs': False, 'qh': 0.2, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.2, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.2, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.2, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.4, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.4, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.4, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.4, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.6, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.6, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.6, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.6, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.8, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.8, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.8, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.8, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 1.0, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 1.0, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 1.0, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 1.0, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.2, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.2, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.2, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.2, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.4, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.4, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.4, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.4, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.6, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.6, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.6, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.6, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.8, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.8, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.8, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.8, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 1.0, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 1.0, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 1.0, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 1.0, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.2, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.2, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.2, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.2, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.4, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.4, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.4, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.4, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.6, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.6, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.6, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.6, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.8, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.8, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.8, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.8, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 1.0, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 1.0, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 1.0, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 1.0, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.2, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.2, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.2, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.2, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.4, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.4, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.4, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.4, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.6, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.6, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.6, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.6, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.8, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.8, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.8, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.8, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 1.0, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 1.0, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 1.0, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 1.0, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.2, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.2, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.2, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.2, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.4, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.4, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.4, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.4, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.6, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.6, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.6, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.6, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.8, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.8, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.8, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.8, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 1.0, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 1.0, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 1.0, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 1.0, 'ql': 0.8}],\n",
       " 'count_above_mean': None,\n",
       " 'count_below_mean': None,\n",
       " 'cwt_coefficients': [{'coeff': 0, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 0, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 0, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 0, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 1, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 1, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 1, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 1, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 2, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 2, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 2, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 2, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 3, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 3, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 3, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 3, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 4, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 4, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 4, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 4, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 5, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 5, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 5, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 5, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 6, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 6, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 6, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 6, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 7, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 7, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 7, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 7, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 8, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 8, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 8, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 8, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 9, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 9, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 9, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 9, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 10, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 10, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 10, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 10, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 11, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 11, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 11, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 11, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 12, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 12, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 12, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 12, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 13, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 13, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 13, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 13, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 14, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 14, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 14, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 14, 'w': 20, 'widths': (2, 5, 10, 20)}],\n",
       " 'fft_coefficient': [{'attr': 'real', 'coeff': 0},\n",
       "  {'attr': 'real', 'coeff': 1},\n",
       "  {'attr': 'real', 'coeff': 2},\n",
       "  {'attr': 'real', 'coeff': 3},\n",
       "  {'attr': 'real', 'coeff': 4},\n",
       "  {'attr': 'real', 'coeff': 5},\n",
       "  {'attr': 'real', 'coeff': 6},\n",
       "  {'attr': 'real', 'coeff': 7},\n",
       "  {'attr': 'real', 'coeff': 8},\n",
       "  {'attr': 'real', 'coeff': 9},\n",
       "  {'attr': 'real', 'coeff': 10},\n",
       "  {'attr': 'real', 'coeff': 11},\n",
       "  {'attr': 'real', 'coeff': 12},\n",
       "  {'attr': 'real', 'coeff': 13},\n",
       "  {'attr': 'real', 'coeff': 14},\n",
       "  {'attr': 'real', 'coeff': 15},\n",
       "  {'attr': 'real', 'coeff': 16},\n",
       "  {'attr': 'real', 'coeff': 17},\n",
       "  {'attr': 'real', 'coeff': 18},\n",
       "  {'attr': 'real', 'coeff': 19},\n",
       "  {'attr': 'real', 'coeff': 20},\n",
       "  {'attr': 'real', 'coeff': 21},\n",
       "  {'attr': 'real', 'coeff': 22},\n",
       "  {'attr': 'real', 'coeff': 23},\n",
       "  {'attr': 'real', 'coeff': 24},\n",
       "  {'attr': 'real', 'coeff': 25},\n",
       "  {'attr': 'real', 'coeff': 26},\n",
       "  {'attr': 'real', 'coeff': 27},\n",
       "  {'attr': 'real', 'coeff': 28},\n",
       "  {'attr': 'real', 'coeff': 29},\n",
       "  {'attr': 'real', 'coeff': 30},\n",
       "  {'attr': 'real', 'coeff': 31},\n",
       "  {'attr': 'real', 'coeff': 32},\n",
       "  {'attr': 'real', 'coeff': 33},\n",
       "  {'attr': 'real', 'coeff': 34},\n",
       "  {'attr': 'real', 'coeff': 35},\n",
       "  {'attr': 'real', 'coeff': 36},\n",
       "  {'attr': 'real', 'coeff': 37},\n",
       "  {'attr': 'real', 'coeff': 38},\n",
       "  {'attr': 'real', 'coeff': 39},\n",
       "  {'attr': 'real', 'coeff': 40},\n",
       "  {'attr': 'real', 'coeff': 41},\n",
       "  {'attr': 'real', 'coeff': 42},\n",
       "  {'attr': 'real', 'coeff': 43},\n",
       "  {'attr': 'real', 'coeff': 44},\n",
       "  {'attr': 'real', 'coeff': 45},\n",
       "  {'attr': 'real', 'coeff': 46},\n",
       "  {'attr': 'real', 'coeff': 47},\n",
       "  {'attr': 'real', 'coeff': 48},\n",
       "  {'attr': 'real', 'coeff': 49},\n",
       "  {'attr': 'real', 'coeff': 50},\n",
       "  {'attr': 'real', 'coeff': 51},\n",
       "  {'attr': 'real', 'coeff': 52},\n",
       "  {'attr': 'real', 'coeff': 53},\n",
       "  {'attr': 'real', 'coeff': 54},\n",
       "  {'attr': 'real', 'coeff': 55},\n",
       "  {'attr': 'real', 'coeff': 56},\n",
       "  {'attr': 'real', 'coeff': 57},\n",
       "  {'attr': 'real', 'coeff': 58},\n",
       "  {'attr': 'real', 'coeff': 59},\n",
       "  {'attr': 'real', 'coeff': 60},\n",
       "  {'attr': 'real', 'coeff': 61},\n",
       "  {'attr': 'real', 'coeff': 62},\n",
       "  {'attr': 'real', 'coeff': 63},\n",
       "  {'attr': 'real', 'coeff': 64},\n",
       "  {'attr': 'real', 'coeff': 65},\n",
       "  {'attr': 'real', 'coeff': 66},\n",
       "  {'attr': 'real', 'coeff': 67},\n",
       "  {'attr': 'real', 'coeff': 68},\n",
       "  {'attr': 'real', 'coeff': 69},\n",
       "  {'attr': 'real', 'coeff': 70},\n",
       "  {'attr': 'real', 'coeff': 71},\n",
       "  {'attr': 'real', 'coeff': 72},\n",
       "  {'attr': 'real', 'coeff': 73},\n",
       "  {'attr': 'real', 'coeff': 74},\n",
       "  {'attr': 'real', 'coeff': 75},\n",
       "  {'attr': 'real', 'coeff': 76},\n",
       "  {'attr': 'real', 'coeff': 77},\n",
       "  {'attr': 'real', 'coeff': 78},\n",
       "  {'attr': 'real', 'coeff': 79},\n",
       "  {'attr': 'real', 'coeff': 80},\n",
       "  {'attr': 'real', 'coeff': 81},\n",
       "  {'attr': 'real', 'coeff': 82},\n",
       "  {'attr': 'real', 'coeff': 83},\n",
       "  {'attr': 'real', 'coeff': 84},\n",
       "  {'attr': 'real', 'coeff': 85},\n",
       "  {'attr': 'real', 'coeff': 86},\n",
       "  {'attr': 'real', 'coeff': 87},\n",
       "  {'attr': 'real', 'coeff': 88},\n",
       "  {'attr': 'real', 'coeff': 89},\n",
       "  {'attr': 'real', 'coeff': 90},\n",
       "  {'attr': 'real', 'coeff': 91},\n",
       "  {'attr': 'real', 'coeff': 92},\n",
       "  {'attr': 'real', 'coeff': 93},\n",
       "  {'attr': 'real', 'coeff': 94},\n",
       "  {'attr': 'real', 'coeff': 95},\n",
       "  {'attr': 'real', 'coeff': 96},\n",
       "  {'attr': 'real', 'coeff': 97},\n",
       "  {'attr': 'real', 'coeff': 98},\n",
       "  {'attr': 'real', 'coeff': 99},\n",
       "  {'attr': 'imag', 'coeff': 0},\n",
       "  {'attr': 'imag', 'coeff': 1},\n",
       "  {'attr': 'imag', 'coeff': 2},\n",
       "  {'attr': 'imag', 'coeff': 3},\n",
       "  {'attr': 'imag', 'coeff': 4},\n",
       "  {'attr': 'imag', 'coeff': 5},\n",
       "  {'attr': 'imag', 'coeff': 6},\n",
       "  {'attr': 'imag', 'coeff': 7},\n",
       "  {'attr': 'imag', 'coeff': 8},\n",
       "  {'attr': 'imag', 'coeff': 9},\n",
       "  {'attr': 'imag', 'coeff': 10},\n",
       "  {'attr': 'imag', 'coeff': 11},\n",
       "  {'attr': 'imag', 'coeff': 12},\n",
       "  {'attr': 'imag', 'coeff': 13},\n",
       "  {'attr': 'imag', 'coeff': 14},\n",
       "  {'attr': 'imag', 'coeff': 15},\n",
       "  {'attr': 'imag', 'coeff': 16},\n",
       "  {'attr': 'imag', 'coeff': 17},\n",
       "  {'attr': 'imag', 'coeff': 18},\n",
       "  {'attr': 'imag', 'coeff': 19},\n",
       "  {'attr': 'imag', 'coeff': 20},\n",
       "  {'attr': 'imag', 'coeff': 21},\n",
       "  {'attr': 'imag', 'coeff': 22},\n",
       "  {'attr': 'imag', 'coeff': 23},\n",
       "  {'attr': 'imag', 'coeff': 24},\n",
       "  {'attr': 'imag', 'coeff': 25},\n",
       "  {'attr': 'imag', 'coeff': 26},\n",
       "  {'attr': 'imag', 'coeff': 27},\n",
       "  {'attr': 'imag', 'coeff': 28},\n",
       "  {'attr': 'imag', 'coeff': 29},\n",
       "  {'attr': 'imag', 'coeff': 30},\n",
       "  {'attr': 'imag', 'coeff': 31},\n",
       "  {'attr': 'imag', 'coeff': 32},\n",
       "  {'attr': 'imag', 'coeff': 33},\n",
       "  {'attr': 'imag', 'coeff': 34},\n",
       "  {'attr': 'imag', 'coeff': 35},\n",
       "  {'attr': 'imag', 'coeff': 36},\n",
       "  {'attr': 'imag', 'coeff': 37},\n",
       "  {'attr': 'imag', 'coeff': 38},\n",
       "  {'attr': 'imag', 'coeff': 39},\n",
       "  {'attr': 'imag', 'coeff': 40},\n",
       "  {'attr': 'imag', 'coeff': 41},\n",
       "  {'attr': 'imag', 'coeff': 42},\n",
       "  {'attr': 'imag', 'coeff': 43},\n",
       "  {'attr': 'imag', 'coeff': 44},\n",
       "  {'attr': 'imag', 'coeff': 45},\n",
       "  {'attr': 'imag', 'coeff': 46},\n",
       "  {'attr': 'imag', 'coeff': 47},\n",
       "  {'attr': 'imag', 'coeff': 48},\n",
       "  {'attr': 'imag', 'coeff': 49},\n",
       "  {'attr': 'imag', 'coeff': 50},\n",
       "  {'attr': 'imag', 'coeff': 51},\n",
       "  {'attr': 'imag', 'coeff': 52},\n",
       "  {'attr': 'imag', 'coeff': 53},\n",
       "  {'attr': 'imag', 'coeff': 54},\n",
       "  {'attr': 'imag', 'coeff': 55},\n",
       "  {'attr': 'imag', 'coeff': 56},\n",
       "  {'attr': 'imag', 'coeff': 57},\n",
       "  {'attr': 'imag', 'coeff': 58},\n",
       "  {'attr': 'imag', 'coeff': 59},\n",
       "  {'attr': 'imag', 'coeff': 60},\n",
       "  {'attr': 'imag', 'coeff': 61},\n",
       "  {'attr': 'imag', 'coeff': 62},\n",
       "  {'attr': 'imag', 'coeff': 63},\n",
       "  {'attr': 'imag', 'coeff': 64},\n",
       "  {'attr': 'imag', 'coeff': 65},\n",
       "  {'attr': 'imag', 'coeff': 66},\n",
       "  {'attr': 'imag', 'coeff': 67},\n",
       "  {'attr': 'imag', 'coeff': 68},\n",
       "  {'attr': 'imag', 'coeff': 69},\n",
       "  {'attr': 'imag', 'coeff': 70},\n",
       "  {'attr': 'imag', 'coeff': 71},\n",
       "  {'attr': 'imag', 'coeff': 72},\n",
       "  {'attr': 'imag', 'coeff': 73},\n",
       "  {'attr': 'imag', 'coeff': 74},\n",
       "  {'attr': 'imag', 'coeff': 75},\n",
       "  {'attr': 'imag', 'coeff': 76},\n",
       "  {'attr': 'imag', 'coeff': 77},\n",
       "  {'attr': 'imag', 'coeff': 78},\n",
       "  {'attr': 'imag', 'coeff': 79},\n",
       "  {'attr': 'imag', 'coeff': 80},\n",
       "  {'attr': 'imag', 'coeff': 81},\n",
       "  {'attr': 'imag', 'coeff': 82},\n",
       "  {'attr': 'imag', 'coeff': 83},\n",
       "  {'attr': 'imag', 'coeff': 84},\n",
       "  {'attr': 'imag', 'coeff': 85},\n",
       "  {'attr': 'imag', 'coeff': 86},\n",
       "  {'attr': 'imag', 'coeff': 87},\n",
       "  {'attr': 'imag', 'coeff': 88},\n",
       "  {'attr': 'imag', 'coeff': 89},\n",
       "  {'attr': 'imag', 'coeff': 90},\n",
       "  {'attr': 'imag', 'coeff': 91},\n",
       "  {'attr': 'imag', 'coeff': 92},\n",
       "  {'attr': 'imag', 'coeff': 93},\n",
       "  {'attr': 'imag', 'coeff': 94},\n",
       "  {'attr': 'imag', 'coeff': 95},\n",
       "  {'attr': 'imag', 'coeff': 96},\n",
       "  {'attr': 'imag', 'coeff': 97},\n",
       "  {'attr': 'imag', 'coeff': 98},\n",
       "  {'attr': 'imag', 'coeff': 99}],\n",
       " 'first_location_of_maximum': None,\n",
       " 'first_location_of_minimum': None,\n",
       " 'friedrich_coefficients': [{'coeff': 0, 'm': 3, 'r': 30},\n",
       "  {'coeff': 1, 'm': 3, 'r': 30},\n",
       "  {'coeff': 2, 'm': 3, 'r': 30},\n",
       "  {'coeff': 3, 'm': 3, 'r': 30}],\n",
       " 'has_duplicate': None,\n",
       " 'has_duplicate_max': None,\n",
       " 'has_duplicate_min': None,\n",
       " 'index_mass_quantile': [{'q': 0.1},\n",
       "  {'q': 0.2},\n",
       "  {'q': 0.3},\n",
       "  {'q': 0.4},\n",
       "  {'q': 0.6},\n",
       "  {'q': 0.7},\n",
       "  {'q': 0.8},\n",
       "  {'q': 0.9}],\n",
       " 'kurtosis': None,\n",
       " 'large_standard_deviation': [{'r': 0.05},\n",
       "  {'r': 0.1},\n",
       "  {'r': 0.15000000000000002},\n",
       "  {'r': 0.2},\n",
       "  {'r': 0.25},\n",
       "  {'r': 0.30000000000000004},\n",
       "  {'r': 0.35000000000000003},\n",
       "  {'r': 0.4},\n",
       "  {'r': 0.45},\n",
       "  {'r': 0.5},\n",
       "  {'r': 0.55},\n",
       "  {'r': 0.6000000000000001},\n",
       "  {'r': 0.65},\n",
       "  {'r': 0.7000000000000001},\n",
       "  {'r': 0.75},\n",
       "  {'r': 0.8},\n",
       "  {'r': 0.8500000000000001},\n",
       "  {'r': 0.9},\n",
       "  {'r': 0.9500000000000001}],\n",
       " 'last_location_of_maximum': None,\n",
       " 'last_location_of_minimum': None,\n",
       " 'length': None,\n",
       " 'linear_trend': [{'attr': 'pvalue'},\n",
       "  {'attr': 'rvalue'},\n",
       "  {'attr': 'intercept'},\n",
       "  {'attr': 'slope'},\n",
       "  {'attr': 'stderr'}],\n",
       " 'longest_strike_above_mean': None,\n",
       " 'longest_strike_below_mean': None,\n",
       " 'max_langevin_fixed_point': [{'m': 3, 'r': 30}],\n",
       " 'maximum': None,\n",
       " 'mean': None,\n",
       " 'mean_abs_change': None,\n",
       " 'mean_change': None,\n",
       " 'mean_second_derivate_central': None,\n",
       " 'median': None,\n",
       " 'minimum': None,\n",
       " 'number_crossing_m': [{'m': 0}, {'m': -1}, {'m': 1}],\n",
       " 'number_cwt_peaks': [{'n': 1}, {'n': 5}],\n",
       " 'number_peaks': [{'n': 1}, {'n': 3}, {'n': 5}, {'n': 10}, {'n': 50}],\n",
       " 'percentage_of_reoccurring_datapoints_to_all_datapoints': None,\n",
       " 'percentage_of_reoccurring_values_to_all_values': None,\n",
       " 'quantile': [{'q': 0.1},\n",
       "  {'q': 0.2},\n",
       "  {'q': 0.3},\n",
       "  {'q': 0.4},\n",
       "  {'q': 0.6},\n",
       "  {'q': 0.7},\n",
       "  {'q': 0.8},\n",
       "  {'q': 0.9}],\n",
       " 'range_count': [{'max': 1, 'min': -1}],\n",
       " 'ratio_value_number_to_time_series_length': None,\n",
       " 'skewness': None,\n",
       " 'spkt_welch_density': [{'coeff': 2}, {'coeff': 5}, {'coeff': 8}],\n",
       " 'standard_deviation': None,\n",
       " 'sum_of_reoccurring_data_points': None,\n",
       " 'sum_of_reoccurring_values': None,\n",
       " 'sum_values': None,\n",
       " 'symmetry_looking': [{'r': 0.0},\n",
       "  {'r': 0.05},\n",
       "  {'r': 0.1},\n",
       "  {'r': 0.15000000000000002},\n",
       "  {'r': 0.2},\n",
       "  {'r': 0.25},\n",
       "  {'r': 0.30000000000000004},\n",
       "  {'r': 0.35000000000000003},\n",
       "  {'r': 0.4},\n",
       "  {'r': 0.45},\n",
       "  {'r': 0.5},\n",
       "  {'r': 0.55},\n",
       "  {'r': 0.6000000000000001},\n",
       "  {'r': 0.65},\n",
       "  {'r': 0.7000000000000001},\n",
       "  {'r': 0.75},\n",
       "  {'r': 0.8},\n",
       "  {'r': 0.8500000000000001},\n",
       "  {'r': 0.9},\n",
       "  {'r': 0.9500000000000001}],\n",
       " 'time_reversal_asymmetry_statistic': [{'lag': 1}, {'lag': 2}, {'lag': 3}],\n",
       " 'value_count': [{'value': 0},\n",
       "  {'value': 1},\n",
       "  {'value': nan},\n",
       "  {'value': inf},\n",
       "  {'value': -inf}],\n",
       " 'variance': None,\n",
       " 'variance_larger_than_standard_deviation': None}"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "settings_efficient = EfficientFCParameters()\n",
    "settings_efficient"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "The `ComprehensiveFCParameters` are the biggest set of features. It will take the longest to calculate"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'abs_energy': None,\n",
       " 'absolute_sum_of_changes': None,\n",
       " 'agg_autocorrelation': [{'f_agg': 'mean'},\n",
       "  {'f_agg': 'median'},\n",
       "  {'f_agg': 'var'}],\n",
       " 'agg_linear_trend': [{'attr': 'rvalue', 'chunk_len': 5, 'f_agg': 'max'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 5, 'f_agg': 'min'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 5, 'f_agg': 'mean'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 5, 'f_agg': 'var'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 10, 'f_agg': 'max'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 10, 'f_agg': 'min'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 10, 'f_agg': 'mean'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 10, 'f_agg': 'var'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 50, 'f_agg': 'max'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 50, 'f_agg': 'min'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 50, 'f_agg': 'mean'},\n",
       "  {'attr': 'rvalue', 'chunk_len': 50, 'f_agg': 'var'},\n",
       "  {'attr': 'intercept', 'chunk_len': 5, 'f_agg': 'max'},\n",
       "  {'attr': 'intercept', 'chunk_len': 5, 'f_agg': 'min'},\n",
       "  {'attr': 'intercept', 'chunk_len': 5, 'f_agg': 'mean'},\n",
       "  {'attr': 'intercept', 'chunk_len': 5, 'f_agg': 'var'},\n",
       "  {'attr': 'intercept', 'chunk_len': 10, 'f_agg': 'max'},\n",
       "  {'attr': 'intercept', 'chunk_len': 10, 'f_agg': 'min'},\n",
       "  {'attr': 'intercept', 'chunk_len': 10, 'f_agg': 'mean'},\n",
       "  {'attr': 'intercept', 'chunk_len': 10, 'f_agg': 'var'},\n",
       "  {'attr': 'intercept', 'chunk_len': 50, 'f_agg': 'max'},\n",
       "  {'attr': 'intercept', 'chunk_len': 50, 'f_agg': 'min'},\n",
       "  {'attr': 'intercept', 'chunk_len': 50, 'f_agg': 'mean'},\n",
       "  {'attr': 'intercept', 'chunk_len': 50, 'f_agg': 'var'},\n",
       "  {'attr': 'slope', 'chunk_len': 5, 'f_agg': 'max'},\n",
       "  {'attr': 'slope', 'chunk_len': 5, 'f_agg': 'min'},\n",
       "  {'attr': 'slope', 'chunk_len': 5, 'f_agg': 'mean'},\n",
       "  {'attr': 'slope', 'chunk_len': 5, 'f_agg': 'var'},\n",
       "  {'attr': 'slope', 'chunk_len': 10, 'f_agg': 'max'},\n",
       "  {'attr': 'slope', 'chunk_len': 10, 'f_agg': 'min'},\n",
       "  {'attr': 'slope', 'chunk_len': 10, 'f_agg': 'mean'},\n",
       "  {'attr': 'slope', 'chunk_len': 10, 'f_agg': 'var'},\n",
       "  {'attr': 'slope', 'chunk_len': 50, 'f_agg': 'max'},\n",
       "  {'attr': 'slope', 'chunk_len': 50, 'f_agg': 'min'},\n",
       "  {'attr': 'slope', 'chunk_len': 50, 'f_agg': 'mean'},\n",
       "  {'attr': 'slope', 'chunk_len': 50, 'f_agg': 'var'},\n",
       "  {'attr': 'stderr', 'chunk_len': 5, 'f_agg': 'max'},\n",
       "  {'attr': 'stderr', 'chunk_len': 5, 'f_agg': 'min'},\n",
       "  {'attr': 'stderr', 'chunk_len': 5, 'f_agg': 'mean'},\n",
       "  {'attr': 'stderr', 'chunk_len': 5, 'f_agg': 'var'},\n",
       "  {'attr': 'stderr', 'chunk_len': 10, 'f_agg': 'max'},\n",
       "  {'attr': 'stderr', 'chunk_len': 10, 'f_agg': 'min'},\n",
       "  {'attr': 'stderr', 'chunk_len': 10, 'f_agg': 'mean'},\n",
       "  {'attr': 'stderr', 'chunk_len': 10, 'f_agg': 'var'},\n",
       "  {'attr': 'stderr', 'chunk_len': 50, 'f_agg': 'max'},\n",
       "  {'attr': 'stderr', 'chunk_len': 50, 'f_agg': 'min'},\n",
       "  {'attr': 'stderr', 'chunk_len': 50, 'f_agg': 'mean'},\n",
       "  {'attr': 'stderr', 'chunk_len': 50, 'f_agg': 'var'}],\n",
       " 'approximate_entropy': [{'m': 2, 'r': 0.1},\n",
       "  {'m': 2, 'r': 0.3},\n",
       "  {'m': 2, 'r': 0.5},\n",
       "  {'m': 2, 'r': 0.7},\n",
       "  {'m': 2, 'r': 0.9}],\n",
       " 'ar_coefficient': [{'coeff': 0, 'k': 10},\n",
       "  {'coeff': 1, 'k': 10},\n",
       "  {'coeff': 2, 'k': 10},\n",
       "  {'coeff': 3, 'k': 10},\n",
       "  {'coeff': 4, 'k': 10}],\n",
       " 'augmented_dickey_fuller': [{'attr': 'teststat'},\n",
       "  {'attr': 'pvalue'},\n",
       "  {'attr': 'usedlag'}],\n",
       " 'autocorrelation': [{'lag': 0},\n",
       "  {'lag': 1},\n",
       "  {'lag': 2},\n",
       "  {'lag': 3},\n",
       "  {'lag': 4},\n",
       "  {'lag': 5},\n",
       "  {'lag': 6},\n",
       "  {'lag': 7},\n",
       "  {'lag': 8},\n",
       "  {'lag': 9}],\n",
       " 'binned_entropy': [{'max_bins': 10}],\n",
       " 'c3': [{'lag': 1}, {'lag': 2}, {'lag': 3}],\n",
       " 'change_quantiles': [{'f_agg': 'mean', 'isabs': False, 'qh': 0.2, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.2, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.2, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.2, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.4, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.4, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.4, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.4, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.6, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.6, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.6, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.6, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.8, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.8, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.8, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.8, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 1.0, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 1.0, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 1.0, 'ql': 0.0},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 1.0, 'ql': 0.0},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.2, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.2, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.2, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.2, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.4, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.4, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.4, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.4, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.6, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.6, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.6, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.6, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.8, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.8, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.8, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.8, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 1.0, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 1.0, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 1.0, 'ql': 0.2},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 1.0, 'ql': 0.2},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.2, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.2, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.2, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.2, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.4, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.4, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.4, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.4, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.6, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.6, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.6, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.6, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.8, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.8, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.8, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.8, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 1.0, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 1.0, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 1.0, 'ql': 0.4},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 1.0, 'ql': 0.4},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.2, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.2, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.2, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.2, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.4, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.4, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.4, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.4, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.6, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.6, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.6, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.6, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.8, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.8, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.8, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.8, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 1.0, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 1.0, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 1.0, 'ql': 0.6},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 1.0, 'ql': 0.6},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.2, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.2, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.2, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.2, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.4, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.4, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.4, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.4, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.6, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.6, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.6, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.6, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 0.8, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 0.8, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 0.8, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 0.8, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': False, 'qh': 1.0, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': False, 'qh': 1.0, 'ql': 0.8},\n",
       "  {'f_agg': 'mean', 'isabs': True, 'qh': 1.0, 'ql': 0.8},\n",
       "  {'f_agg': 'var', 'isabs': True, 'qh': 1.0, 'ql': 0.8}],\n",
       " 'count_above_mean': None,\n",
       " 'count_below_mean': None,\n",
       " 'cwt_coefficients': [{'coeff': 0, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 0, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 0, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 0, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 1, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 1, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 1, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 1, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 2, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 2, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 2, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 2, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 3, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 3, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 3, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 3, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 4, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 4, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 4, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 4, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 5, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 5, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 5, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 5, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 6, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 6, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 6, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 6, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 7, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 7, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 7, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 7, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 8, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 8, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 8, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 8, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 9, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 9, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 9, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 9, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 10, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 10, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 10, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 10, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 11, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 11, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 11, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 11, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 12, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 12, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 12, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 12, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 13, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 13, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 13, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 13, 'w': 20, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 14, 'w': 2, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 14, 'w': 5, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 14, 'w': 10, 'widths': (2, 5, 10, 20)},\n",
       "  {'coeff': 14, 'w': 20, 'widths': (2, 5, 10, 20)}],\n",
       " 'fft_coefficient': [{'attr': 'real', 'coeff': 0},\n",
       "  {'attr': 'real', 'coeff': 1},\n",
       "  {'attr': 'real', 'coeff': 2},\n",
       "  {'attr': 'real', 'coeff': 3},\n",
       "  {'attr': 'real', 'coeff': 4},\n",
       "  {'attr': 'real', 'coeff': 5},\n",
       "  {'attr': 'real', 'coeff': 6},\n",
       "  {'attr': 'real', 'coeff': 7},\n",
       "  {'attr': 'real', 'coeff': 8},\n",
       "  {'attr': 'real', 'coeff': 9},\n",
       "  {'attr': 'real', 'coeff': 10},\n",
       "  {'attr': 'real', 'coeff': 11},\n",
       "  {'attr': 'real', 'coeff': 12},\n",
       "  {'attr': 'real', 'coeff': 13},\n",
       "  {'attr': 'real', 'coeff': 14},\n",
       "  {'attr': 'real', 'coeff': 15},\n",
       "  {'attr': 'real', 'coeff': 16},\n",
       "  {'attr': 'real', 'coeff': 17},\n",
       "  {'attr': 'real', 'coeff': 18},\n",
       "  {'attr': 'real', 'coeff': 19},\n",
       "  {'attr': 'real', 'coeff': 20},\n",
       "  {'attr': 'real', 'coeff': 21},\n",
       "  {'attr': 'real', 'coeff': 22},\n",
       "  {'attr': 'real', 'coeff': 23},\n",
       "  {'attr': 'real', 'coeff': 24},\n",
       "  {'attr': 'real', 'coeff': 25},\n",
       "  {'attr': 'real', 'coeff': 26},\n",
       "  {'attr': 'real', 'coeff': 27},\n",
       "  {'attr': 'real', 'coeff': 28},\n",
       "  {'attr': 'real', 'coeff': 29},\n",
       "  {'attr': 'real', 'coeff': 30},\n",
       "  {'attr': 'real', 'coeff': 31},\n",
       "  {'attr': 'real', 'coeff': 32},\n",
       "  {'attr': 'real', 'coeff': 33},\n",
       "  {'attr': 'real', 'coeff': 34},\n",
       "  {'attr': 'real', 'coeff': 35},\n",
       "  {'attr': 'real', 'coeff': 36},\n",
       "  {'attr': 'real', 'coeff': 37},\n",
       "  {'attr': 'real', 'coeff': 38},\n",
       "  {'attr': 'real', 'coeff': 39},\n",
       "  {'attr': 'real', 'coeff': 40},\n",
       "  {'attr': 'real', 'coeff': 41},\n",
       "  {'attr': 'real', 'coeff': 42},\n",
       "  {'attr': 'real', 'coeff': 43},\n",
       "  {'attr': 'real', 'coeff': 44},\n",
       "  {'attr': 'real', 'coeff': 45},\n",
       "  {'attr': 'real', 'coeff': 46},\n",
       "  {'attr': 'real', 'coeff': 47},\n",
       "  {'attr': 'real', 'coeff': 48},\n",
       "  {'attr': 'real', 'coeff': 49},\n",
       "  {'attr': 'real', 'coeff': 50},\n",
       "  {'attr': 'real', 'coeff': 51},\n",
       "  {'attr': 'real', 'coeff': 52},\n",
       "  {'attr': 'real', 'coeff': 53},\n",
       "  {'attr': 'real', 'coeff': 54},\n",
       "  {'attr': 'real', 'coeff': 55},\n",
       "  {'attr': 'real', 'coeff': 56},\n",
       "  {'attr': 'real', 'coeff': 57},\n",
       "  {'attr': 'real', 'coeff': 58},\n",
       "  {'attr': 'real', 'coeff': 59},\n",
       "  {'attr': 'real', 'coeff': 60},\n",
       "  {'attr': 'real', 'coeff': 61},\n",
       "  {'attr': 'real', 'coeff': 62},\n",
       "  {'attr': 'real', 'coeff': 63},\n",
       "  {'attr': 'real', 'coeff': 64},\n",
       "  {'attr': 'real', 'coeff': 65},\n",
       "  {'attr': 'real', 'coeff': 66},\n",
       "  {'attr': 'real', 'coeff': 67},\n",
       "  {'attr': 'real', 'coeff': 68},\n",
       "  {'attr': 'real', 'coeff': 69},\n",
       "  {'attr': 'real', 'coeff': 70},\n",
       "  {'attr': 'real', 'coeff': 71},\n",
       "  {'attr': 'real', 'coeff': 72},\n",
       "  {'attr': 'real', 'coeff': 73},\n",
       "  {'attr': 'real', 'coeff': 74},\n",
       "  {'attr': 'real', 'coeff': 75},\n",
       "  {'attr': 'real', 'coeff': 76},\n",
       "  {'attr': 'real', 'coeff': 77},\n",
       "  {'attr': 'real', 'coeff': 78},\n",
       "  {'attr': 'real', 'coeff': 79},\n",
       "  {'attr': 'real', 'coeff': 80},\n",
       "  {'attr': 'real', 'coeff': 81},\n",
       "  {'attr': 'real', 'coeff': 82},\n",
       "  {'attr': 'real', 'coeff': 83},\n",
       "  {'attr': 'real', 'coeff': 84},\n",
       "  {'attr': 'real', 'coeff': 85},\n",
       "  {'attr': 'real', 'coeff': 86},\n",
       "  {'attr': 'real', 'coeff': 87},\n",
       "  {'attr': 'real', 'coeff': 88},\n",
       "  {'attr': 'real', 'coeff': 89},\n",
       "  {'attr': 'real', 'coeff': 90},\n",
       "  {'attr': 'real', 'coeff': 91},\n",
       "  {'attr': 'real', 'coeff': 92},\n",
       "  {'attr': 'real', 'coeff': 93},\n",
       "  {'attr': 'real', 'coeff': 94},\n",
       "  {'attr': 'real', 'coeff': 95},\n",
       "  {'attr': 'real', 'coeff': 96},\n",
       "  {'attr': 'real', 'coeff': 97},\n",
       "  {'attr': 'real', 'coeff': 98},\n",
       "  {'attr': 'real', 'coeff': 99},\n",
       "  {'attr': 'imag', 'coeff': 0},\n",
       "  {'attr': 'imag', 'coeff': 1},\n",
       "  {'attr': 'imag', 'coeff': 2},\n",
       "  {'attr': 'imag', 'coeff': 3},\n",
       "  {'attr': 'imag', 'coeff': 4},\n",
       "  {'attr': 'imag', 'coeff': 5},\n",
       "  {'attr': 'imag', 'coeff': 6},\n",
       "  {'attr': 'imag', 'coeff': 7},\n",
       "  {'attr': 'imag', 'coeff': 8},\n",
       "  {'attr': 'imag', 'coeff': 9},\n",
       "  {'attr': 'imag', 'coeff': 10},\n",
       "  {'attr': 'imag', 'coeff': 11},\n",
       "  {'attr': 'imag', 'coeff': 12},\n",
       "  {'attr': 'imag', 'coeff': 13},\n",
       "  {'attr': 'imag', 'coeff': 14},\n",
       "  {'attr': 'imag', 'coeff': 15},\n",
       "  {'attr': 'imag', 'coeff': 16},\n",
       "  {'attr': 'imag', 'coeff': 17},\n",
       "  {'attr': 'imag', 'coeff': 18},\n",
       "  {'attr': 'imag', 'coeff': 19},\n",
       "  {'attr': 'imag', 'coeff': 20},\n",
       "  {'attr': 'imag', 'coeff': 21},\n",
       "  {'attr': 'imag', 'coeff': 22},\n",
       "  {'attr': 'imag', 'coeff': 23},\n",
       "  {'attr': 'imag', 'coeff': 24},\n",
       "  {'attr': 'imag', 'coeff': 25},\n",
       "  {'attr': 'imag', 'coeff': 26},\n",
       "  {'attr': 'imag', 'coeff': 27},\n",
       "  {'attr': 'imag', 'coeff': 28},\n",
       "  {'attr': 'imag', 'coeff': 29},\n",
       "  {'attr': 'imag', 'coeff': 30},\n",
       "  {'attr': 'imag', 'coeff': 31},\n",
       "  {'attr': 'imag', 'coeff': 32},\n",
       "  {'attr': 'imag', 'coeff': 33},\n",
       "  {'attr': 'imag', 'coeff': 34},\n",
       "  {'attr': 'imag', 'coeff': 35},\n",
       "  {'attr': 'imag', 'coeff': 36},\n",
       "  {'attr': 'imag', 'coeff': 37},\n",
       "  {'attr': 'imag', 'coeff': 38},\n",
       "  {'attr': 'imag', 'coeff': 39},\n",
       "  {'attr': 'imag', 'coeff': 40},\n",
       "  {'attr': 'imag', 'coeff': 41},\n",
       "  {'attr': 'imag', 'coeff': 42},\n",
       "  {'attr': 'imag', 'coeff': 43},\n",
       "  {'attr': 'imag', 'coeff': 44},\n",
       "  {'attr': 'imag', 'coeff': 45},\n",
       "  {'attr': 'imag', 'coeff': 46},\n",
       "  {'attr': 'imag', 'coeff': 47},\n",
       "  {'attr': 'imag', 'coeff': 48},\n",
       "  {'attr': 'imag', 'coeff': 49},\n",
       "  {'attr': 'imag', 'coeff': 50},\n",
       "  {'attr': 'imag', 'coeff': 51},\n",
       "  {'attr': 'imag', 'coeff': 52},\n",
       "  {'attr': 'imag', 'coeff': 53},\n",
       "  {'attr': 'imag', 'coeff': 54},\n",
       "  {'attr': 'imag', 'coeff': 55},\n",
       "  {'attr': 'imag', 'coeff': 56},\n",
       "  {'attr': 'imag', 'coeff': 57},\n",
       "  {'attr': 'imag', 'coeff': 58},\n",
       "  {'attr': 'imag', 'coeff': 59},\n",
       "  {'attr': 'imag', 'coeff': 60},\n",
       "  {'attr': 'imag', 'coeff': 61},\n",
       "  {'attr': 'imag', 'coeff': 62},\n",
       "  {'attr': 'imag', 'coeff': 63},\n",
       "  {'attr': 'imag', 'coeff': 64},\n",
       "  {'attr': 'imag', 'coeff': 65},\n",
       "  {'attr': 'imag', 'coeff': 66},\n",
       "  {'attr': 'imag', 'coeff': 67},\n",
       "  {'attr': 'imag', 'coeff': 68},\n",
       "  {'attr': 'imag', 'coeff': 69},\n",
       "  {'attr': 'imag', 'coeff': 70},\n",
       "  {'attr': 'imag', 'coeff': 71},\n",
       "  {'attr': 'imag', 'coeff': 72},\n",
       "  {'attr': 'imag', 'coeff': 73},\n",
       "  {'attr': 'imag', 'coeff': 74},\n",
       "  {'attr': 'imag', 'coeff': 75},\n",
       "  {'attr': 'imag', 'coeff': 76},\n",
       "  {'attr': 'imag', 'coeff': 77},\n",
       "  {'attr': 'imag', 'coeff': 78},\n",
       "  {'attr': 'imag', 'coeff': 79},\n",
       "  {'attr': 'imag', 'coeff': 80},\n",
       "  {'attr': 'imag', 'coeff': 81},\n",
       "  {'attr': 'imag', 'coeff': 82},\n",
       "  {'attr': 'imag', 'coeff': 83},\n",
       "  {'attr': 'imag', 'coeff': 84},\n",
       "  {'attr': 'imag', 'coeff': 85},\n",
       "  {'attr': 'imag', 'coeff': 86},\n",
       "  {'attr': 'imag', 'coeff': 87},\n",
       "  {'attr': 'imag', 'coeff': 88},\n",
       "  {'attr': 'imag', 'coeff': 89},\n",
       "  {'attr': 'imag', 'coeff': 90},\n",
       "  {'attr': 'imag', 'coeff': 91},\n",
       "  {'attr': 'imag', 'coeff': 92},\n",
       "  {'attr': 'imag', 'coeff': 93},\n",
       "  {'attr': 'imag', 'coeff': 94},\n",
       "  {'attr': 'imag', 'coeff': 95},\n",
       "  {'attr': 'imag', 'coeff': 96},\n",
       "  {'attr': 'imag', 'coeff': 97},\n",
       "  {'attr': 'imag', 'coeff': 98},\n",
       "  {'attr': 'imag', 'coeff': 99}],\n",
       " 'first_location_of_maximum': None,\n",
       " 'first_location_of_minimum': None,\n",
       " 'friedrich_coefficients': [{'coeff': 0, 'm': 3, 'r': 30},\n",
       "  {'coeff': 1, 'm': 3, 'r': 30},\n",
       "  {'coeff': 2, 'm': 3, 'r': 30},\n",
       "  {'coeff': 3, 'm': 3, 'r': 30}],\n",
       " 'has_duplicate': None,\n",
       " 'has_duplicate_max': None,\n",
       " 'has_duplicate_min': None,\n",
       " 'index_mass_quantile': [{'q': 0.1},\n",
       "  {'q': 0.2},\n",
       "  {'q': 0.3},\n",
       "  {'q': 0.4},\n",
       "  {'q': 0.6},\n",
       "  {'q': 0.7},\n",
       "  {'q': 0.8},\n",
       "  {'q': 0.9}],\n",
       " 'kurtosis': None,\n",
       " 'large_standard_deviation': [{'r': 0.05},\n",
       "  {'r': 0.1},\n",
       "  {'r': 0.15000000000000002},\n",
       "  {'r': 0.2},\n",
       "  {'r': 0.25},\n",
       "  {'r': 0.30000000000000004},\n",
       "  {'r': 0.35000000000000003},\n",
       "  {'r': 0.4},\n",
       "  {'r': 0.45},\n",
       "  {'r': 0.5},\n",
       "  {'r': 0.55},\n",
       "  {'r': 0.6000000000000001},\n",
       "  {'r': 0.65},\n",
       "  {'r': 0.7000000000000001},\n",
       "  {'r': 0.75},\n",
       "  {'r': 0.8},\n",
       "  {'r': 0.8500000000000001},\n",
       "  {'r': 0.9},\n",
       "  {'r': 0.9500000000000001}],\n",
       " 'last_location_of_maximum': None,\n",
       " 'last_location_of_minimum': None,\n",
       " 'length': None,\n",
       " 'linear_trend': [{'attr': 'pvalue'},\n",
       "  {'attr': 'rvalue'},\n",
       "  {'attr': 'intercept'},\n",
       "  {'attr': 'slope'},\n",
       "  {'attr': 'stderr'}],\n",
       " 'longest_strike_above_mean': None,\n",
       " 'longest_strike_below_mean': None,\n",
       " 'max_langevin_fixed_point': [{'m': 3, 'r': 30}],\n",
       " 'maximum': None,\n",
       " 'mean': None,\n",
       " 'mean_abs_change': None,\n",
       " 'mean_change': None,\n",
       " 'mean_second_derivate_central': None,\n",
       " 'median': None,\n",
       " 'minimum': None,\n",
       " 'number_crossing_m': [{'m': 0}, {'m': -1}, {'m': 1}],\n",
       " 'number_cwt_peaks': [{'n': 1}, {'n': 5}],\n",
       " 'number_peaks': [{'n': 1}, {'n': 3}, {'n': 5}, {'n': 10}, {'n': 50}],\n",
       " 'percentage_of_reoccurring_datapoints_to_all_datapoints': None,\n",
       " 'percentage_of_reoccurring_values_to_all_values': None,\n",
       " 'quantile': [{'q': 0.1},\n",
       "  {'q': 0.2},\n",
       "  {'q': 0.3},\n",
       "  {'q': 0.4},\n",
       "  {'q': 0.6},\n",
       "  {'q': 0.7},\n",
       "  {'q': 0.8},\n",
       "  {'q': 0.9}],\n",
       " 'range_count': [{'max': 1, 'min': -1}],\n",
       " 'ratio_value_number_to_time_series_length': None,\n",
       " 'sample_entropy': None,\n",
       " 'skewness': None,\n",
       " 'spkt_welch_density': [{'coeff': 2}, {'coeff': 5}, {'coeff': 8}],\n",
       " 'standard_deviation': None,\n",
       " 'sum_of_reoccurring_data_points': None,\n",
       " 'sum_of_reoccurring_values': None,\n",
       " 'sum_values': None,\n",
       " 'symmetry_looking': [{'r': 0.0},\n",
       "  {'r': 0.05},\n",
       "  {'r': 0.1},\n",
       "  {'r': 0.15000000000000002},\n",
       "  {'r': 0.2},\n",
       "  {'r': 0.25},\n",
       "  {'r': 0.30000000000000004},\n",
       "  {'r': 0.35000000000000003},\n",
       "  {'r': 0.4},\n",
       "  {'r': 0.45},\n",
       "  {'r': 0.5},\n",
       "  {'r': 0.55},\n",
       "  {'r': 0.6000000000000001},\n",
       "  {'r': 0.65},\n",
       "  {'r': 0.7000000000000001},\n",
       "  {'r': 0.75},\n",
       "  {'r': 0.8},\n",
       "  {'r': 0.8500000000000001},\n",
       "  {'r': 0.9},\n",
       "  {'r': 0.9500000000000001}],\n",
       " 'time_reversal_asymmetry_statistic': [{'lag': 1}, {'lag': 2}, {'lag': 3}],\n",
       " 'value_count': [{'value': 0},\n",
       "  {'value': 1},\n",
       "  {'value': nan},\n",
       "  {'value': inf},\n",
       "  {'value': -inf}],\n",
       " 'variance': None,\n",
       " 'variance_larger_than_standard_deviation': None}"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "settings_comprehensive = ComprehensiveFCParameters()\n",
    "settings_comprehensive"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "You see those parameters as values in the fc_paramter dictionary? Those are the parameters of the feature extraction methods.\n",
    "\n",
    "In detail, the value in a fc_parameters dicitonary can contain a list of dictionaries. Every dictionary in that list is one feature.\n",
    "\n",
    "So, for example"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[{'r': 0.05},\n",
       " {'r': 0.1},\n",
       " {'r': 0.15000000000000002},\n",
       " {'r': 0.2},\n",
       " {'r': 0.25},\n",
       " {'r': 0.30000000000000004},\n",
       " {'r': 0.35000000000000003},\n",
       " {'r': 0.4},\n",
       " {'r': 0.45},\n",
       " {'r': 0.5},\n",
       " {'r': 0.55},\n",
       " {'r': 0.6000000000000001},\n",
       " {'r': 0.65},\n",
       " {'r': 0.7000000000000001},\n",
       " {'r': 0.75},\n",
       " {'r': 0.8},\n",
       " {'r': 0.8500000000000001},\n",
       " {'r': 0.9},\n",
       " {'r': 0.9500000000000001}]"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "settings_comprehensive['large_standard_deviation']"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "would trigger the calculation of 20 different 'large_standard_deviation' features, one for r=0.05, for n=0.10 up to r=0.95.  Lets just take them and extract some features"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'large_standard_deviation': [{'r': 0.05},\n",
       "  {'r': 0.1},\n",
       "  {'r': 0.15000000000000002},\n",
       "  {'r': 0.2},\n",
       "  {'r': 0.25},\n",
       "  {'r': 0.30000000000000004},\n",
       "  {'r': 0.35000000000000003},\n",
       "  {'r': 0.4},\n",
       "  {'r': 0.45},\n",
       "  {'r': 0.5},\n",
       "  {'r': 0.55},\n",
       "  {'r': 0.6000000000000001},\n",
       "  {'r': 0.65},\n",
       "  {'r': 0.7000000000000001},\n",
       "  {'r': 0.75},\n",
       "  {'r': 0.8},\n",
       "  {'r': 0.8500000000000001},\n",
       "  {'r': 0.9},\n",
       "  {'r': 0.9500000000000001}]}"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "settings_value_count = {'large_standard_deviation': settings_comprehensive['large_standard_deviation']}\n",
    "settings_value_count"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Feature Extraction: 100%|██████████| 4/4 [00:00<00:00, 772.36it/s]\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>variable</th>\n",
       "      <th>pressure__large_standard_deviation__r_0.05</th>\n",
       "      <th>pressure__large_standard_deviation__r_0.1</th>\n",
       "      <th>pressure__large_standard_deviation__r_0.15</th>\n",
       "      <th>pressure__large_standard_deviation__r_0.2</th>\n",
       "      <th>pressure__large_standard_deviation__r_0.25</th>\n",
       "      <th>pressure__large_standard_deviation__r_0.3</th>\n",
       "      <th>pressure__large_standard_deviation__r_0.35</th>\n",
       "      <th>pressure__large_standard_deviation__r_0.4</th>\n",
       "      <th>pressure__large_standard_deviation__r_0.45</th>\n",
       "      <th>pressure__large_standard_deviation__r_0.5</th>\n",
       "      <th>...</th>\n",
       "      <th>temperature__large_standard_deviation__r_0.5</th>\n",
       "      <th>temperature__large_standard_deviation__r_0.55</th>\n",
       "      <th>temperature__large_standard_deviation__r_0.6</th>\n",
       "      <th>temperature__large_standard_deviation__r_0.65</th>\n",
       "      <th>temperature__large_standard_deviation__r_0.7</th>\n",
       "      <th>temperature__large_standard_deviation__r_0.75</th>\n",
       "      <th>temperature__large_standard_deviation__r_0.8</th>\n",
       "      <th>temperature__large_standard_deviation__r_0.85</th>\n",
       "      <th>temperature__large_standard_deviation__r_0.9</th>\n",
       "      <th>temperature__large_standard_deviation__r_0.95</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>id</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>a</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>b</th>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>...</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>2 rows × 38 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "variable  pressure__large_standard_deviation__r_0.05  \\\n",
       "id                                                     \n",
       "a                                                1.0   \n",
       "b                                                1.0   \n",
       "\n",
       "variable  pressure__large_standard_deviation__r_0.1  \\\n",
       "id                                                    \n",
       "a                                               1.0   \n",
       "b                                               1.0   \n",
       "\n",
       "variable  pressure__large_standard_deviation__r_0.15  \\\n",
       "id                                                     \n",
       "a                                                1.0   \n",
       "b                                                1.0   \n",
       "\n",
       "variable  pressure__large_standard_deviation__r_0.2  \\\n",
       "id                                                    \n",
       "a                                               1.0   \n",
       "b                                               1.0   \n",
       "\n",
       "variable  pressure__large_standard_deviation__r_0.25  \\\n",
       "id                                                     \n",
       "a                                                1.0   \n",
       "b                                                1.0   \n",
       "\n",
       "variable  pressure__large_standard_deviation__r_0.3  \\\n",
       "id                                                    \n",
       "a                                               1.0   \n",
       "b                                               1.0   \n",
       "\n",
       "variable  pressure__large_standard_deviation__r_0.35  \\\n",
       "id                                                     \n",
       "a                                                1.0   \n",
       "b                                                1.0   \n",
       "\n",
       "variable  pressure__large_standard_deviation__r_0.4  \\\n",
       "id                                                    \n",
       "a                                               1.0   \n",
       "b                                               1.0   \n",
       "\n",
       "variable  pressure__large_standard_deviation__r_0.45  \\\n",
       "id                                                     \n",
       "a                                                1.0   \n",
       "b                                                1.0   \n",
       "\n",
       "variable  pressure__large_standard_deviation__r_0.5  \\\n",
       "id                                                    \n",
       "a                                               0.0   \n",
       "b                                               0.0   \n",
       "\n",
       "variable                      ...                        \\\n",
       "id                            ...                         \n",
       "a                             ...                         \n",
       "b                             ...                         \n",
       "\n",
       "variable  temperature__large_standard_deviation__r_0.5  \\\n",
       "id                                                       \n",
       "a                                                  0.0   \n",
       "b                                                  0.0   \n",
       "\n",
       "variable  temperature__large_standard_deviation__r_0.55  \\\n",
       "id                                                        \n",
       "a                                                   0.0   \n",
       "b                                                   0.0   \n",
       "\n",
       "variable  temperature__large_standard_deviation__r_0.6  \\\n",
       "id                                                       \n",
       "a                                                  0.0   \n",
       "b                                                  0.0   \n",
       "\n",
       "variable  temperature__large_standard_deviation__r_0.65  \\\n",
       "id                                                        \n",
       "a                                                   0.0   \n",
       "b                                                   0.0   \n",
       "\n",
       "variable  temperature__large_standard_deviation__r_0.7  \\\n",
       "id                                                       \n",
       "a                                                  0.0   \n",
       "b                                                  0.0   \n",
       "\n",
       "variable  temperature__large_standard_deviation__r_0.75  \\\n",
       "id                                                        \n",
       "a                                                   0.0   \n",
       "b                                                   0.0   \n",
       "\n",
       "variable  temperature__large_standard_deviation__r_0.8  \\\n",
       "id                                                       \n",
       "a                                                  0.0   \n",
       "b                                                  0.0   \n",
       "\n",
       "variable  temperature__large_standard_deviation__r_0.85  \\\n",
       "id                                                        \n",
       "a                                                   0.0   \n",
       "b                                                   0.0   \n",
       "\n",
       "variable  temperature__large_standard_deviation__r_0.9  \\\n",
       "id                                                       \n",
       "a                                                  0.0   \n",
       "b                                                  0.0   \n",
       "\n",
       "variable  temperature__large_standard_deviation__r_0.95  \n",
       "id                                                       \n",
       "a                                                   0.0  \n",
       "b                                                   0.0  \n",
       "\n",
       "[2 rows x 38 columns]"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X_tsfresh = extract_features(df, column_id=\"id\", default_fc_parameters=settings_value_count)\n",
    "X_tsfresh.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "The nice thing is, we actually contain the parameters in the feature name, so it is possible to reconstruct \n",
    "how the feature was calculated."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'pressure': {'large_standard_deviation': [{'r': 0.05},\n",
       "   {'r': 0.1},\n",
       "   {'r': 0.15},\n",
       "   {'r': 0.2},\n",
       "   {'r': 0.25},\n",
       "   {'r': 0.3},\n",
       "   {'r': 0.35},\n",
       "   {'r': 0.4},\n",
       "   {'r': 0.45},\n",
       "   {'r': 0.5},\n",
       "   {'r': 0.55},\n",
       "   {'r': 0.6},\n",
       "   {'r': 0.65},\n",
       "   {'r': 0.7},\n",
       "   {'r': 0.75},\n",
       "   {'r': 0.8},\n",
       "   {'r': 0.85},\n",
       "   {'r': 0.9},\n",
       "   {'r': 0.95}]},\n",
       " 'temperature': {'large_standard_deviation': [{'r': 0.05},\n",
       "   {'r': 0.1},\n",
       "   {'r': 0.15},\n",
       "   {'r': 0.2},\n",
       "   {'r': 0.25},\n",
       "   {'r': 0.3},\n",
       "   {'r': 0.35},\n",
       "   {'r': 0.4},\n",
       "   {'r': 0.45},\n",
       "   {'r': 0.5},\n",
       "   {'r': 0.55},\n",
       "   {'r': 0.6},\n",
       "   {'r': 0.65},\n",
       "   {'r': 0.7},\n",
       "   {'r': 0.75},\n",
       "   {'r': 0.8},\n",
       "   {'r': 0.85},\n",
       "   {'r': 0.9},\n",
       "   {'r': 0.95}]}}"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from_columns(X_tsfresh)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "This means that you should never change a column name. Otherwise the information how it was calculated can get lost."
   ]
  }
 ],
 "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.11"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}