处理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")
相关推荐
SL_staff6 小时前
当规则引擎开始‘懂业务’:JVS-Rules金融风控四大原生能力拆解
java·python·全栈
蚰蜒螟7 小时前
从内核启动到 Java NIO:一次 socket accept 的源码串联之旅
java·python·nio
高洁018 小时前
AI赋能产业升级与中美未来经济赛道博弈
人工智能·python·深度学习·机器学习·transformer
夜晚回家8 小时前
Python 原始字符串详解 | r 前缀到底让什么不再转义
开发语言·python
用户019027581618 小时前
如何用 Python 计算 EMV 简易波动指标?
python
第25小时记录8 小时前
[2026] Linux安装教程
运维·python
前端 贾公子10 小时前
LangGraph == 图的状态(State)管理 (中)
开发语言·数据库·python
the局外人10 小时前
FastAPI中jwt的基本使用与实践
后端·python·fastapi
mklpo14710 小时前
为不支持sse4.2命令集的老旧设备制作Win11 26H2系统镜像,2026-10-11。
运维·windows·python