处理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")
相关推荐
解救女汉子1 分钟前
Nginx如何配置phpMyAdmin访问_反向代理设置方法
jvm·数据库·python
格鸰爱童话4 分钟前
python使用milvus向量库
python·milvus
qq_206901395 分钟前
Navicat导出CSV文件数据为空如何解决_过滤条件与权限排查
jvm·数据库·python
m0_5887584811 分钟前
高效实现分组内跨行时间戳匹配:为每组生成布尔标记列 user_rejects
jvm·数据库·python
好运的阿财13 分钟前
OpenClaw工具拆解之 web_fetch+image_generate
前端·python·机器学习·ai·ai编程·openclaw·openclaw工具
qq_2069013919 分钟前
golang如何实现日志按级别过滤_golang日志按级别过滤实现教程.txt
jvm·数据库·python
无风听海19 分钟前
Python 哨兵值模式(Sentinel Value Pattern)深度解析
开发语言·python·sentinel
weixin_4585801221 分钟前
怎么通过Node.js监控MongoDB的慢查询_监听数据库事件或利用APM工具集成
jvm·数据库·python
weixin_4249993623 分钟前
php怎么实现API网关聚合_php如何将多个微服务接口合并响应
jvm·数据库·python
2401_8359568124 分钟前
SQL在JOIN场景下如何进行索引维护_覆盖索引构建与失效处理
jvm·数据库·python