处理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")
相关推荐
MORE_77几秒前
leecode100-买卖股票的最佳时期-贪心算法
python·算法·贪心算法
暮冬-  Gentle°17 分钟前
用Python制作一个文字冒险游戏
jvm·数据库·python
小小小米粒30 分钟前
[特殊字符] 正常部署 AI + 流式输出(Stream)[特殊字符] 为什么会 CPU 炸了?
开发语言·python
站大爷IP33 分钟前
Python异步编程:asyncio核心用法与避坑指南
python
m0_5879589540 分钟前
游戏与图形界面(GUI)
jvm·数据库·python
不剪发的Tony老师44 分钟前
Spyder:一款面向数据科学的Python集成开发环境
ide·python
众创岛1 小时前
python中enumerate的用法
开发语言·python
布史1 小时前
Prometheus Python Client 实操指南:从零实现自定义 Exporter
网络·python·prometheus
纤纡.2 小时前
矿物识别分类:8 种机器学习算法对比与实战(平均值填充数据集)
python·深度学习·算法·机器学习
2301_818419012 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python