本次task3特征工程的主要内容是学习tsfresh包的使用,tsfresh包主要用于大批量时间序列数据的处理。通过extract_features这个方法可以自动提取很多基于时间序列的特征,包括
1.abs_energy(x),返回时序数据的绝对能量(平方和)
2.absolute_sum_of_changes(x),返回序列x的连续变化的绝对值之和
3.agg_autocorrelation(x, param)
返回时序数据的各阶差分值之间的聚合(方差、均值)统计特征
计算聚合函数f_agg(例如方差或者均值)处理后的自相关性,在一定程度可以衡量数据的周期性质, l表示滞后值,如果某个 l计算出的值比较大,表示改时序数据具有l周期性质。
4.agg_linear_trend(x, param)
返回时序数据的分块聚合后的线性回归(基于OLS)
对时序分块聚合后(max, min, mean, meidan),然后聚合后的值做线性回归,算出 pvalue(),rvalue(相关系数), intercept(截距), slope(斜率), stderr(拟合的标准差)
5.binned_entropy(x, max_bins)
把整个序列按值均分成max_bins个桶,然后把每个值放进相应的桶中,然后求熵。pk
表示落在第k个桶中的数占总体的比例。
这个特征是为了衡量样本值分布的均匀度。
等等。
在提取出特征后,还可以利用tsfresh中的select_features方法选出和因变量相关的特征。