是否可以使用 pandas 来创建用户定义频率高于 1Hz 的日期范围?

Is it possible to use pandas to create a range of dates with a user-defined frequency higher than 1Hz?

我想使用 pandas 为采样率高达 2400Hz 的地球物理时间序列创建日期范围。我读到了 pandas date_range 方法 here

假设我有一个包含 15 个样本的 data ndarray。如果我处理的是 1Hz 采样率,我会指定 freq='s':

import pandas as pd

[...]

dates=pd.date_range("2014-10-07 05:12:49",periods=data.shape[0], freq='s')

这会 return:

DatetimeIndex(['2014-10-07 05:12:49', '2014-10-07 05:12:50', '2014-10-07 05:12:51', '2014-10-07 05:12:52', '2014-10-07 05:12:53', '2014-10-07 05:12:54', '2014-10-07 05:12:55', '2014-10-07 05:12:56', '2014-10-07 05:12:57', '2014-10-07 05:12:58', '2014-10-07 05:12:59', '2014-10-07 05:13:00', '2014-10-07 05:13:01', '2014-10-07 05:13:02', '2014-10-07 05:13:03'], dtype='datetime64[ns]', freq='S')

但是通过更高的、用户定义的采样率呢?

任何帮助将不胜感激!谢谢!

根据你的数据有多大,你可以自己构建。这将创建具有 1 毫秒差异跨越 1 秒的时间戳列表。

t = [pd.Timestamp('2014-10-07') + pd.Timedelta(x, 'ms') for x in range(1000)]

你可以修改初始时间戳,包括hours/minutes/seconds我明明用了'2014-10-07'

如果你想修改频率,那么你可以添加倍数来创建不同的周期(66.67 ms ~ 15Hz)

 pd.Timedelta(66.67*x, 'ms')