采样率不规则时如何根据时间创建窗口?

问题描述 投票:0回答:0

Μy 数据集由时间序列组成,这些时间序列是来自传感器(加速度计、陀螺仪、磁力计)的测量值。我需要创建窗口以提取特征并创建特征向量。问题是采样率不规则。 例如,传感器可能会停止记录 1 分钟,然后再次继续。我想基于时间戳创建

2 seeconds
窗口,但只针对连续的秒数。我的数据集示例:

**Timestamp                x         y         z**

2022-12-25 08:55:31  1.106326 -1.667923  0.352001
2022-12-25 08:55:31  0.659319 -0.369386  0.559248
2022-12-25 08:55:31  0.462288 -0.747311 -0.049593
2022-12-25 08:55:31  0.792116 -1.437709  0.702323
2022-12-25 08:55:31  0.880261 -0.185562  1.129537
2022-12-25 08:55:32 -0.042303  0.474306  0.762134
2022-12-25 08:55:32 -0.097722  0.413519  0.693540
2022-12-25 08:55:32 -0.084058  0.441366  0.955718
2022-12-25 08:55:32 -0.119469  0.261690  1.096841
2022-12-25 08:55:32 -0.107756  0.319304  1.090497
2022-12-25 08:55:32 -0.091866  0.373503  1.034103
2022-12-25 08:56:59  0.341448  0.085186  1.297256
2022-12-25 08:56:59  0.426420  0.233355  1.137589
2022-12-25 08:56:59  0.313631  0.165005  0.920337
2022-12-25 08:56:59  0.461801 -0.005398  1.346575
2022-12-25 08:57:00  1.150247 -0.665053  0.202337

我还需要在间隙点将数据帧拆分为两个数据帧(例如,当有一分半钟没有记录时)。

到目前为止,我已经将数据帧拆分为多个数据帧,每个数据帧都包含相同秒数的记录。这是我的代码:

def create_windows(df):
  grouped = df.groupby('Seconds')
  dfs = [grouped.get_group(x) for x in grouped.groups]
  ls = []
  for i in range(len(dfs)-1):
    a = pd.concat([dfs[i], dfs[i+1]], axis=0)
    ls.append(a)

我的成绩是:

**Seconds                   x       y         z**       

2022-12-25 08:55:24  1.000126 -1.102270  0.227957
2022-12-25 08:55:24  0.872452 -0.747067 -0.476837
2022-12-25 08:55:24  0.734745 -0.864248 -0.090860
2022-12-25 08:55:24  1.083604 -1.301008  0.451095
2022-12-25 08:55:25  0.459849 -1.184315  0.344436
2022-12-25 08:55:25 -0.028884 -0.918935  0.478209
2022-12-25 08:55:25  0.355386 -0.998021 -0.362340
        
                    
**Seconds                 x         y          z **                         
2022-12-25 08:55:25  0.938607 -0.928207  0.069052
2022-12-25 08:55:25  1.156865 -0.720959  0.349072
2022-12-25 08:55:25  0.931287 -1.360330  0.592462
2022-12-25 08:55:25  0.362462 -0.977769  0.517280
2022-12-25 08:55:26  1.638277 -1.305400  0.142283
2022-12-25 08:55:26  0.679326 -0.734867 -0.002257
2022-12-25 08:55:26  0.738405 -0.601064 -0.321806

python timestamp feature-extraction
© www.soinside.com 2019 - 2024. All rights reserved.