处理Excel表不等长时间序列用tsfresh提取时序特征

我原本的时间序列格式是excel表记录的,每一行是一条时间序列,时间序列不等长。

要把excel表数据读取出来之后转换成extract_features需要的格式。

1.读取excel表数据

python 复制代码
import pandas as pd
import numpy as np
from tsfresh import extract_features
mdata = pd.read_excel('文件位置',header = None)
"读取出来的dataframe中每一行是一个时间序列,不满足要求,要进行行列转置"
transposed = mdata.transpose()

2.把dataframe数据格式转换成extract_features需要的格式

python 复制代码
def convert_to_extract_df(dataframe:pd.DataFrame):
    """把dataframe格式转变为extract_features需要的格式"""
    covert_df = pd.DataFrame(columns=['value', 'id'])
    for _col, col_series in dataframe.iteritems():
        col_ser = col_series.dropna()#把nan值去掉
        _col_df = pd.DataFrame(data=[col_ser.values]).T
        _col_df.columns = ['value']
        _col_df['id'] = _col
        covert_df = pd.concat([covert_df, _col_df], axis=0, ignore_index=True)
    covert_df['value'] = covert_df['value'].astype("float")
    return covert_df

3.接下来就可以直接调用extract_features函数了。

python 复制代码
cdf = convert_to_extract_df(transposed)
ext_feature = extract_features(cdf, column_id="id")
相关推荐
牛大兵几秒前
播放网络摄像头视频支持ONVIF/RTSP
网络·python·音视频
m0_4954964117 分钟前
SQL中如何获取前N个最大值并排除自己_利用窗口函数限制
jvm·数据库·python
m0_7406532217 分钟前
mysql如何提取日期中的年份_使用year函数从日期中截取
jvm·数据库·python
运气好好的27 分钟前
mysql数据库日志文件过大如何清理_定期备份与重置日志文件
jvm·数据库·python
ATMQuant33 分钟前
量化策略开发01:我让AI全权做交易决策 - 从提示词设计到决策执行
python·量化交易·vnpy·ai策略
站大爷IP33 分钟前
如何在 Python 中使用 colorama 库来给输出添加颜色
python
迷藏4941 小时前
# 发散创新:用Locust实现高并发场景下的精准压力测试与性能调优实战在现代微服务架构中,**接口稳定性与响应速度**已成为衡量
java·python·微服务·架构·压力测试
2401_831419441 小时前
如何防止MongoDB副本集被误初始化_副本集名称(replSetName)锁定
jvm·数据库·python
财经资讯数据_灵砚智能1 小时前
基于全球经济类多源新闻的NLP情感分析与数据可视化(日间)2026年4月28日
人工智能·python·信息可视化·自然语言处理·ai编程