You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用tsfel重复调用特征提取方法报错:DataFrame无time_series_features_extractor属性

解决tsfel库调用时'DataFrame' object has no attribute 'time_series_features_extractor'错误

问题场景

在Google Colab中使用pandas和tsfel做时序特征提取时,第一次调用tsfel.time_series_features_extractor能成功运行,但第二次调用同方法时,抛出错误:'DataFrame' object has no attribute 'time_series_features_extractor'。

错误根源

你在第一次调用方法后,把返回的DataFrame结果赋值给了和库名同名的变量tsfel,直接覆盖了原本的tsfel库引用。第二次调用时,tsfel已经是一个DataFrame对象,而非tsfel库,自然找不到库的time_series_features_extractor方法。

修复方案

方案1:修改结果变量名(推荐)

把存储特征提取结果的变量名改成和库名不同的名称,避免覆盖库引用:

import pandas as pd
import tsfel

# 获取统计域特征配置
cfg=tsfel.get_features_by_domain('statistical')

# 从现有DataFrame复制两列生成新DataFrame
t_time_wlk=df_WlkFull[['t_start','t_end']].copy()

# 将结果变量名改为tsfel_features,不再覆盖tsfel库
tsfel_features = tsfel.time_series_features_extractor(cfg, t_time_wlk)
tsfel_features

# 再次调用库方法,正常执行
sub_XYZ=tsfel.time_series_features_extractor(cfg,df_sub_WLKFULL)
sub_XYZ

方案2:重新导入库(不推荐)

如果不想修改变量名,可以在第二次调用前重新导入tsfel库,覆盖被污染的变量:

# 首次调用后,tsfel已被覆盖为DataFrame
tsfel = tsfel.time_series_features_extractor(cfg, t_time_wlk)

# 重新导入库,恢复tsfel的库引用
import tsfel

# 再次调用方法即可正常运行
sub_XYZ=tsfel.time_series_features_extractor(cfg,df_sub_WLKFULL)
sub_XYZ

内容的提问来源于stack exchange,提问作者Ayy Lmao

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 16:24:59