{ "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 }