python动态时钟代码_Python中的多维/多变量动态时间规整(DTW)库/代码

本文探讨了在Python中处理多变量时间序列数据的问题,特别是在寻找最佳匹配时。作者需要一个能够在同一时间点匹配三个数据点(X, Y, Z)的解决方案。多维DTW被确定为合适的工具,但在Python中直接找不到相应的库。通过rpy2包,作者成功地在Python中调用了R的dtw库进行多变量DTW计算,并提供了相关代码示例。" 137534533,142229,MicroPython源码解析:深入理解objint.c,"['C语言', '开发语言', 'micropython', 'python', '嵌入式硬件']
摘要由CSDN通过智能技术生成

我正在研究时间序列数据.可用数据是多变量的.因此,对于每个时间实例,有三个数据点可用.

格式:

| X | Y | Z |

因此,将实时生成上述格式的一个时间序列数据.我试图在另一个时间序列基础数据中找到这个实时生成的时间序列的良好匹配,该数据已经存储(其大小更大并且以不同的频率收集).如果我将标准DTW分别应用于每个系列(X,Y,Z),它们最终可能会在基础数据库中的不同点获得匹配,这是不利的.所以我需要在基础数据库中找到一个点,其中所有三个组件(X,Y,Z)匹配良好并且在同一点上.

我已经研究过这个问题,发现多维DTW是解决这个问题的完美解决方案.在R中,dtw包确实包含多维DTW,但我必须在Python中实现它. R-Python桥接包即“rpy2”在这里可能有所帮助,但我没有R的经验.我已经查看了Python中可用的DTW包,如mlpy,dtw但没有帮助.任何人都可以使用rpy2建议Python中的包使用相同的方法或使用多维DTW的代码.

提前致谢!

解决方法:

谢谢@lgautier我深入挖掘并发现在Python中使用rpy2实现多变量DTW.只是将模板和查询作为2D矩阵(如R中的矩阵)传递,将允许rpy2 dtw包执行多变量DTW.此外,如果您安装了R,则加载R dtw库和“?dtw”将可以访问库的文档以及库中可用的不同功能.

以供将来参考具有类似问题的其他用户:

R dtw包的官方文档:https://cran.r-project.org/web/packages/dtw/dtw.pdf

示例代码,为多变量DTW传递两个二维矩阵,open_begin和open_end参数启用子序列匹配:

import numpy as np

import rpy2.robjects.numpy2ri

rpy2.robjects.numpy2ri.activate()

from rpy2.robjects.packages import importr</

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值