我使用 ccf 函数来对齐两个向量。然后,我保留了具有最大相关系数的滞后值,然后对对齐的数据执行 dtw。我决定在我的向量 NA 值的开头或结尾添加,以保持相同长度的向量,这要归功于 ccf。
cv <- ccf(a,b, lag.max = 700)
sco <- cv$acf #cv$acf[,,1]
lag <- cv$lag #cv$lag[,,1]
res <- data.frame(sco,lag)
lag_max <- res[which.max(res$sco),]$lag
sco_max <- max(sco)
lag_max
sco_max
a1 <- rep(NA,abs(lag_max))
A_new <- append(a1, a)
A_new
b1 <- rep(NA,abs(lag_max))
B_new <- append(b,b1)
B_new
alignment <- dtw(a,b,keep=TRUE)
如果我执行最后一行代码,我会收到一条错误消息
No warping path exists that is allowed by costraints
这是因为我有 NA 值,而 DTW 不适用于这些值。
你们有谁知道我可以如何执行 DTW,感谢 ccf 的对齐配置文件?我应该用其他东西替换 NA 值吗,DTW 有没有办法与 NA 一起使用?