# wdtw_python **Repository Path**: hailoong/wdtw_python ## Basic Information - **Project Name**: wdtw_python - **Description**: Cython 加速的加权动态时间规整 (WDTW) - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-16 - **Last Updated**: 2025-09-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # WDTW for Python WDTW (Weighted Dynamic Time Warping) 是一个用于计算两个时间序列之间相似性的算法。这个项目提供了一个Python接口,用于高效地计算加权动态时间规整距离。 ## 特性 - 提供高效的WDTW算法实现。 - 支持自定义权重向量和Sakoe-Ham band限制。 - 可用于时间序列分析、模式识别等领域。 ## 安装 要安装这个模块,你需要先确保已经安装了`Cython`和`numpy`。可以通过以下命令安装依赖: ```bash pip install cython numpy ``` 然后,克隆仓库并进入目录: ```bash git clone https://gitee.com/hailoong/wdtw_python.git cd wdtw_python ``` 最后,运行安装命令: ```bash python setup.py install ``` 或者,编译扩展模块: ```bash python setup.py build_ext --inplace ``` ## 使用方法 以下是如何使用WDTW模块的基本示例: ```python import numpy as np from wdtw_python import wdtw_c # 创建两个时间序列 x = np.array([1, 2, 3, 4, 5], dtype=np.float64) y = np.array([1, 2, 2, 2, 3, 4, 5], dtype=np.float64) # 创建权重向量 weight_vec = np.array([1, 2, 2, 2, 1, 1, 1], dtype=np.float64) # 计算WDTW距离 distance = wdtw_c(x, y, weight_vec, sakoe_band=100000, alpha=1.0) print("WDTW Distance:", distance) ``` ## 函数参数说明 - `x`: 第一个时间序列数组。 - `y`: 第二个时间序列数组。 - `weight_vec`: 权重向量,用于调整不同点之间的权重,需要和y的长度相同。 - `sakoe_band`: Sakoe-Ham band的宽度限制,用于限制对齐路径。 - `alpha`: 调整权重的参数。 ## 贡献 欢迎贡献代码或报告问题。请在GitHub上提交Pull Request或Issue。 ## 许可证 该项目使用MIT License。详情请查看仓库中的LICENSE文件。