時間序列資料特征提取TsFresh–入門簡介
簡介
tsfresh用于從時間序列中提取特征,本篇主要介紹時間序列時間特征的拓展和過濾,編程環境jupyter notebook
原始碼和資料地址
鏈接:https://pan.baidu.com/s/1VjHgdcIx9WY3VigHMkBCKw
提取碼:gqs1
TsFresh安裝
pip install tsfresh
代碼部分說明
資料下載
from tsfresh.examples.robot_execution_failures import download_robot_execution_failures, load_robot_execution_failures
download_robot_execution_failures()
timeseries, y = load_robot_execution_failures()
資料展示
timeseries.describe()

y.head()

從檔案讀取資料
import pandas as pd
import numpy as np
timeseries_csv = pd.read_csv('load_robot_execution_failures_timeseries.csv')
timeseries_csv.describe()

y_csv = pd.read_csv('load_robot_execution_failures_y.csv',usecols = ['index','value'])
y_csv= pd.Series(np.array(y_csv['value']).tolist(),index =np.array(y_csv['index']).tolist())
y_csv.head()

特征拓展
1、默認引數
from tsfresh.feature_extraction import extract_features
extracted_features_0 = extract_features(timeseries, column_id="id", column_sort="time")
extracted_features_0.shape

2、ComprehensiveFCParameters引數
from tsfresh.feature_extraction import extract_features, ComprehensiveFCParameters
settings = ComprehensiveFCParameters()
extracted_features_1 = extract_features(timeseries, column_id="id", column_sort="time",default_fc_parameters=settings)
extracted_features_1.shape

3、EfficientFCParameters引數
from tsfresh.feature_extraction import extract_features, EfficientFCParameters
settings = EfficientFCParameters()
extracted_features_2 = extract_features(timeseries, column_id="id", column_sort="time",default_fc_parameters=settings)
extracted_features_2.shape

4、MinimalFCParameters引數
from tsfresh.feature_extraction import extract_features, MinimalFCParameters
settings = MinimalFCParameters()
extracted_features_3 = extract_features(timeseries, column_id="id", column_sort="time",default_fc_parameters=settings)
extracted_features_3.shape

特征過濾
1、默認引數
from tsfresh import select_features
from tsfresh.utilities.dataframe_functions import impute
impute(extracted_features_0)
features_filtered_0 = select_features(extracted_features_0, y) #特征選擇
features_filtered_0.shape

2、ComprehensiveFCParameters引數
from tsfresh import select_features
from tsfresh.utilities.dataframe_functions import impute
impute(extracted_features_1)
features_filtered_1 = select_features(extracted_features_1, y) #特征選擇
features_filtered_1.shape

3、EfficientFCParameters引數
from tsfresh import select_features
from tsfresh.utilities.dataframe_functions import impute
impute(extracted_features_2)
features_filtered_2 = select_features(extracted_features_2, y) #特征選擇
features_filtered_2.shape

4、MinimalFCParameters引數
from tsfresh import select_features
from tsfresh.utilities.dataframe_functions import impute
impute(extracted_features_3)
features_filtered_3 = select_features(extracted_features_3, y) #特征選擇
features_filtered_3.shape

特征拓展和過濾同時進行
1、默認引數
from tsfresh import extract_relevant_features
features_filtered_direct_0 = extract_relevant_features(timeseries,y, column_id="id", column_sort="time")
features_filtered_direct_0.shape

2、ComprehensiveFCParameters引數
from tsfresh.feature_extraction import ComprehensiveFCParameters
from tsfresh import extract_relevant_features
settings = ComprehensiveFCParameters()
features_filtered_direct_1 = extract_relevant_features(timeseries,y, column_id="id", column_sort="time",default_fc_parameters=settings)
features_filtered_direct_1.shape

3、EfficientFCParameters引數
from tsfresh.feature_extraction import EfficientFCParameters
from tsfresh import extract_relevant_features
settings = EfficientFCParameters()
features_filtered_direct_2 = extract_relevant_features(timeseries,y, column_id="id", column_sort="time",default_fc_parameters=settings)
features_filtered_direct_2.shape

4、MinimalFCParameters引數
from tsfresh.feature_extraction import MinimalFCParameters
from tsfresh import extract_relevant_features
settings = MinimalFCParameters()
features_filtered_direct_3 = extract_relevant_features(timeseries,y, column_id="id", column_sort="time",default_fc_parameters=settings)
features_filtered_direct_3.shape

結論
通過拓展+濾波,和直接一次性濾波效果一致,
參考
【1】 tsfresh官網
【2】 tsfresh GitHub
【3】時序資料處理工具-時間序列資料特征提取TsFresh
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/80502.html
標籤:其他
