使用时间戳信息降采样数据



我有一个任意数据x和相关时间戳t的数组,它们对应于x中的数据(它们具有相同的长度N)。

我想将我的数据x降采样到更小的长度M < N,这样新数据在时间上的间隔大致相等(通过使用时间戳信息)。这将取代简单地通过取每n个数据点来抽取数据。使用最近的时间邻居是可以的。

scipy有一些重采样代码,但它实际上试图在数据点之间插入,我不能对我的数据这样做。numpy或scipy有这样的代码吗?

例如,假设我想根据对数时间对字母表中的字母进行下采样:

import string
import numpy as np
x = string.lowercase[::]
t = np.logspace(1, 10, num=26)
y = downsample(x, t, 8)

我建议使用pandas,特别是resample函数:

一种方便的正则时间序列数据的变频和重采样方法。

特别注意how参数

你可以把你的numpy数组转换成一个DataFrame:

import pandas as pd
YourPandasDF = pd.DataFrame(YourNumpyArray)

最新更新