FAQ
tsfresh 支持不同长度的时序数据吗?
是的,它支持不同长度的时序数据。然而,一些特征计算器可能要求时序数据的最小长度。如果将较短的时序数据传递给计算器,这些特征将返回 NaN。
是否可以从滚动/移位的时间序列中提取特征?
是的,
tsfresh.dataframe_functions.roll_time_series()
函数允许您方便地从您的数据中创建一个滚动时间序列数据框。您只需将数据转换为 tsfresh 数据格式 支持的格式之一。然后,tsfresh.dataframe_functions.roll_time_series()
将返回一个包含滚动时间序列的 DataFrame,您可以将其传递给 tsfresh。您可以在这里找到更多详细信息:滚动/时间序列预测。如何在Windows上使用tsfresh?
我们推荐使用 Anaconda。安装后,打开 Anaconda 提示符,创建一个环境并设置 tsfresh(请注意,我们使用多进程处理,这可能会 有问题):
conda create -n ENV_NAME python=VERSION conda install -n ENV_NAME pip requests numpy pandas scipy statsmodels patsy scikit-learn tqdm activate ENV_NAME pip install tsfreshtsfresh 支持时间序列中的不同采样率吗?
是的!tsfresh 中的特征计算器不关心采样频率。你需要使用第二种输入格式,即堆叠的 DataFrame(参见 数据格式)
tsfresh 支持不规则间隔的时间序列吗?
是的,但要小心。正如其名称所示,``column_sort``(即时间戳)参数仅用于排序观察结果。除了排序之外,tsfresh 在计算中不使用时间戳。虽然许多特征不需要时间戳(或仅需要它来排序),但其他特征会假设观察结果在时间上是均匀分布的(例如,每两个观察之间间隔一秒)。由于 tsfresh 忽略了时间间隔,因此在选择与高度不规则的时间序列一起使用的特征时应谨慎。
即使只是提取 :class:`tsfresh.feature_extraction.settings.EfficientFCParameters`,tsfresh 运行时间也很长。有什么进一步的方法可以加快处理速度吗?
如果你正在使用并行化(默认选项),你可能需要检查你是否过度分配了可用的CPU核心。查看 notes-for-efficient-parallelization-label 以了解消除这一问题的步骤,这可以显著加快处理速度。