python tsfresh特征中文详解(更新中)

版权声明:本文为博主原创文章,转载请注明出处。 个人博客地址:https://xindoo.me https://blog.csdn.net/xindoo/article/details/79177378

  tsfresh是开源的提取时序数据特征的python包,能够提取出超过64种特征,堪称提取时序特征的瑞士军刀。最近有需求,所以一直在看,目前还没有中文文档, 有些特征含义还是很难懂的,我把我已经看懂的一部分放这,没看懂的我只写了标题,待我看懂我添加注解。

tsfresh.feature_extraction.feature_calculators.abs_energy(x)

时间序列的平方和

E = i = 1 , . . . , n x i 2

参数:x(pandas.Series) 需要计算特征的时间序列
返回值:特征值
返回值类型:float
函数类型:简单

tsfresh.feature_extraction.feature_calculators.absolute_sum_of_changes(x)

返回序列x的连续变化的绝对值之和

i = 1 , . . . , n 1 | x i + 1 x i |

参数:x(pandas.Series) 需要计算特征的时间序列
返回值:特征值
返回值类型:float
函数类型:简单

tsfresh.feature_extraction.feature_calculators.agg_autocorrelation(x, param)

计算聚合函数f_agg(例如方差或者均值)处理后的自相关性,在一定程度可以衡量数据的周期性质, l 表示滞后值,如果某个 l 计算出的值比较大,表示改时序数据具有 l 周期性质。

1 n 1 i = 1 , . . . , n 1 ( n l ) σ 2 t = 1 n l ( X t μ ) ( X t 1 μ )

n是时间序列 X i 的长度, σ 2 是方差, μ 表示均值
参数:x(pandas.Series) 需要计算特征的时间序列
返回值:特征值
返回值类型:float
函数类型:简单

tsfresh.feature_extraction.feature_calculators.agg_linear_trend(x, param)

对时序分块聚合后(max, min, mean, meidan),然后聚合后的值做线性回归,算出 pvalue(),rvalue(相关系数), intercept(截距), slope(斜率), stderr(拟合的标准差)
Parameters: x (pandas.Series) – the time series to calculate the feature of
param (list) – contains dictionaries {“attr”: x, “chunk_len”: l, “f_agg”: f} with x, f an string and l an int
Returns: the different feature values
Return type: pandas.Series

tsfresh.feature_extraction.feature_calculators.approximate_entropy(x, m, r)

近似熵,用来衡量一个时间序列的周期性、不可预测性和波动性

tsfresh.feature_extraction.feature_calculators.ar_coefficient(x, param)

自回归模型系数,

tsfresh.feature_extraction.feature_calculators.augmented_dickey_fuller(x, param)

tsfresh.feature_extraction.feature_calculators.autocorrelation(x, lag)

滞后lag的自相关系数

1 ( n l ) σ 2 t = 1 n l ( X t μ ) ( X t + l μ )

tsfresh.feature_extraction.feature_calculators.binned_entropy(x, max_bins)

把整个序列按值均分成max_bins个桶,然后把每个值放进相应的桶中,然后求熵。

k = 0 m i n ( m a x _ b i n s , l e n ( x ) ) p k l o g ( p k ) 1 ( p k > 0 )

p k 表示落在第k个桶中的数占总体的比例。
这个特征是为了衡量样本值分布的均匀度。
参数:x(pandas.Series) 需要计算特征的时间序列
   max_bins (int) 桶的数量
返回值:特征值
返回值类型:float
函数类型:简单

tsfresh.feature_extraction.feature_calculators.c3(x, lag)

1 n 2 l a g i = 0 n 2 l a g x i + 2 l a g 2 x i + l a g x i

等同于
E [ L 2 ( X ) 2 L ( X ) X ]

衡量时序数据的非线性性

tsfresh.feature_extraction.feature_calculators.change_quantiles(x, ql, qh, isabs, f_agg)

先用ql和qh两个分位数在x中确定出一个区间,然后在这个区间里计算时序数据的均值、绝对值、连续变化值。

Parameters:
x (pandas.Series) – 时序数据
ql (float) – 分位数的下限
qh (float) – 分位数的上线
isabs (bool) – 使用使用绝对值
f_agg (str, name of a numpy function (e.g. mean, var, std, median)) – numpy自带的聚合函数(均值,方差,标准差,中位数)

tsfresh.feature_extraction.feature_calculators.cid_ce(x, normalize)

用来评估时间序列的复杂度,越复杂的序列有越多的谷峰。

i = 0 n 2 l a g ( x i x i + 1 ) 2

tsfresh.feature_extraction.feature_calculators.count_above_mean(x)

大于均值的数的个数

tsfresh.feature_extraction.feature_calculators.count_below_mean(x)

小于均值的数的个数

tsfresh.feature_extraction.feature_calculators.cwt_coefficients(x, param)

2 3 a π 1 4 ( 1 x 2 a 2 ) e x p ( x 2 2 a 2 )

tsfresh.feature_extraction.feature_calculators.energy_ratio_by_chunks(x, param)

tsfresh.feature_extraction.feature_calculators.fft_aggregated(x, param)

tsfresh.feature_extraction.feature_calculators.fft_coefficient(x, param)

tsfresh.feature_extraction.feature_calculators.first_location_of_maximum(x)

最大值第一次出现的位置

tsfresh.feature_extraction.feature_calculators.first_location_of_minimum(x)

最小值第一次出现的位置

tsfresh.feature_extraction.feature_calculators.friedrich_coefficients(x, param)

tsfresh.feature_extraction.feature_calculators.has_duplicate(x)

有没有重复值

tsfresh.feature_extraction.feature_calculators.has_duplicate_max(x

最大值有没有重复

tsfresh.feature_extraction.feature_calculators.has_duplicate_min(x)

最小值有没有重复

tsfresh.feature_extraction.feature_calculators.index_mass_quantile(x, param)

tsfresh.feature_extraction.feature_calculators.kurtosis(x)

tsfresh.feature_extraction.feature_calculators.large_standard_deviation(x, r)

标准差是否大于r乘以最大值减最小值

s t d ( x ) > r ( m a x ( X ) m i n ( X ) )

tsfresh.feature_extraction.feature_calculators.last_location_of_maximum(x)

最大值最后出现的位置

tsfresh.feature_extraction.feature_calculators.last_location_of_minimum(x)

最小值最后出现的位置

tsfresh.feature_extraction.feature_calculators.length(x)

x的长度

tsfresh.feature_extraction.feature_calculators.linear_trend(x, param)

tsfresh.feature_extraction.feature_calculators.longest_strike_above_mean(x)

大于均值的最长连续子序列长度

tsfresh.feature_extraction.feature_calculators.longest_strike_below_mean(x)

小于均值的最长连续子序列长度

tsfresh.feature_extraction.feature_calculators.max_langevin_fixed_point(x, r, m)

tsfresh.feature_extraction.feature_calculators.maximum(x)

最大值

tsfresh.feature_extraction.feature_calculators.mean(x)

均值

tsfresh.feature_extraction.feature_calculators.mean_abs_change(x)

连续变化值绝对值的均值

1 n i = 1 , , n 1 | x i + 1 x i |

tsfresh.feature_extraction.feature_calculators.mean_change(x)

连续变化值的均值

1 n i = 1 , , n 1 x i + 1 x i

tsfresh.feature_extraction.feature_calculators.mean_second_derivative_central(x)

1 n i = 1 , , n 1 1 2 ( x i + 2 2 x i + 1 + x i )

tsfresh.feature_extraction.feature_calculators.median(x)

中位数

tsfresh.feature_extraction.feature_calculators.minimum(x)

最小值

tsfresh.feature_extraction.feature_calculators.number_crossing_m(x, m)

tsfresh.feature_extraction.feature_calculators.number_cwt_peaks(x, n)

tsfresh.feature_extraction.feature_calculators.number_peaks(x, n)

峰值个数

tsfresh.feature_extraction.feature_calculators.partial_autocorrelation(x, param)

α k = C o v ( x t , x t k | x t 1 , , x t k + 1 ) V a r ( x t | x t 1 , , x t k + 1 ) V a r ( x t k | x t 1 , , x t k + 1 )

tsfresh.feature_extraction.feature_calculators.percentage_of_reoccurring_datapoints_to_all_datapoints(x)

len(different values occurring more than once) / len(different values)
出现超过1次的值的个数/总的取值的个数(重复值只算一个)

tsfresh.feature_extraction.feature_calculators.percentage_of_reoccurring_values_to_all_values(x)

出现超过1次的值的个数/总个数

tsfresh.feature_extraction.feature_calculators.quantile(x, q)

返回x中q的分位数,q% 小于分位数。

tsfresh.feature_extraction.feature_calculators.range_count(x, min, max)

x中在min和max之间的数的个数

tsfresh.feature_extraction.feature_calculators.ratio_beyond_r_sigma(x, r)

取值大于r倍标准差的比例

tsfresh.feature_extraction.feature_calculators.ratio_value_number_to_time_series_length(x)

把 x unique后的长度除以x原始长度 len(set(x))/len(x)

tsfresh.feature_extraction.feature_calculators.sample_entropy(x)

tsfresh.feature_extraction.feature_calculators.set_property(key, value)

tsfresh.feature_extraction.feature_calculators.skewness(x)

tsfresh.feature_extraction.feature_calculators.spkt_welch_density(x, param)

tsfresh.feature_extraction.feature_calculators.standard_deviation(x)

标准差

tsfresh.feature_extraction.feature_calculators.sum_of_reoccurring_data_points(x)

出现过多次的点的个数

tsfresh.feature_extraction.feature_calculators.sum_of_reoccurring_values(x)

出现过多次的值的和

tsfresh.feature_extraction.feature_calculators.sum_values(x)

所有值的和

tsfresh.feature_extraction.feature_calculators.symmetry_looking(x, param)

| m e a n ( X ) m e d i a n ( X ) | < r ( m a x ( X ) m i n ( X ) )

tsfresh.feature_extraction.feature_calculators.time_reversal_asymmetry_statistic(x, lag)

1 n 2 l a g i = 0 n 2 l a g x i + 2 l a g 2 x i + l a g x i + l a g x i 2

相当于
E [ L 2 ( X ) 2 L ( X ) L ( X ) X 2 ]

tsfresh.feature_extraction.feature_calculators.value_count(x, value)

x中值等于value的计数

tsfresh.feature_extraction.feature_calculators.variance(x)

方差

tsfresh.feature_extraction.feature_calculators.variance_larger_than_standard_deviation(x)

方差是否大于标准差

猜你喜欢

转载自blog.csdn.net/xindoo/article/details/79177378
今日推荐