现在关闭的discussion演示了如何在python中使用rdtw包。这有点笨拙,但是rdtw包非常好,比当前可用的pythondtw实现更好。不幸的是,当Sakoe不能指定窗口时窗口大小". 似乎与参数的映射有问题。请注意,在使用rpy2时,参数中的“.”应该被替换为“\”。但按照这一惯例,这一论点并不是出于某种原因被使用的。在
import numpy as np
import rpy2.robjects.numpy2ri
from rpy2.robjects.packages import importr
rpy2.robjects.numpy2ri.activate()
# Set up our R namespaces
R = rpy2.robjects.r
DTW = importr('dtw')
# Generate our data
idx = np.linspace(0, 2*np.pi, 100)
template = np.cos(idx)
query = np.sin(idx) + np.array(R.runif(100))/10
# Calculate the alignment vector and corresponding distance
alignment = R.dtw(query, template, keep=True,window_type='sakoechiba',
window_size=5)
>>> RRuntimeError: Error in window.function(row(wm), col(wm), query.size= n, reference.size = m, :
argument "window.size" is missing, with no default
您可以看到错误状态“窗口大小”缺失,尽管rpy2格式中明确指定了“窗口大小”。在
回答我自己的问题,以防有人遇到同样的问题。问题是参数映射和R三点省略号“…”。这可以通过手动指定映射来解决。在
因此,在这个规范中,window_size参数的使用是正确的。在
^{pr2}$相关问题 更多 >
编程相关推荐