【发布时间】:2017-08-07 13:10:39
【问题描述】:
在 Python 上工作,我需要将日期时间值数组转换为采样时间,因为我想将时间序列的相应时间视为采样时间 [0..T]。
[2013/11/09 14:29:54.660, 2013/11/09 14:29:54.680, ... T] where T> 1000。所以我有一个 >1000 个日期时间值的数组,非常大
我想出了以下代码:
tiempos= [datetime.strptime(x,"%Y/%m/%d %H:%M:%S.%f") for x in csvTimeColum]
sampletime= [(t- tiempos[0]).microseconds/1000 for t in tiempos]
这段代码似乎运行良好,但我在信号中有批量 1000 个样本:
[0,20,...,980,0,20,...,980,0,20,...,980,...]
所以,我得到的信号不是一个连续的。我如何正确地进行这种转换以保持连续信号?有人知道如何解决这个问题吗?
【问题讨论】:
-
您的代码对我来说看起来不错。问题是什么?您需要分享更多数据!
-
@AntonvBR 查看最后一个数组,以及生成的采样时间。它一遍又一遍地从0开始。因此,当您使用新的采样时间数组绘制信号时,情况会一团糟。我正在检查 pandas 库,但我不知道该怎么做
-
哦,这是因为微秒重置
-
@fran_jo:你想要什么时间起点?显然您尝试了时间序列的起源,但您不喜欢它。你为什么不直接取一个任意的日期(日期时间)来转换成相同的?
-
@SergeBallesta 我不认为我完全理解......我的数据的来源是数组的第一个值,这必须是采样时间 0。但我面临的问题是结果数组上的“循环”(X>1000 个样本数组中 0..980 的 1000 个样本批次)
标签: python time-series