R 中基于 DTWCLUST 形状的聚类分析:NA/NaN/Inf 在外部函数调用中尽管有完整的数据集

DTWCLUST Shape Based Cluster Analysis in R: NA/NaN/Inf in Foreign Function Call Despite Complete Dataset

我们目前正在尝试 运行 基于 dtwclust 包的形状,并且 运行 正在解决以下问题: 对于我们数据的某些子集,会收到此错误消息:

Error in stats::hclust(stats::as.dist(distmat), method, members = dots$members) : NA/NaN/Inf in foreign function call (arg 11)

起初,我们认为我们的数据框中可能缺少数据。 但是,我们测试了 NA、NaN、Inf 和数据类型(数字),结果一切正常。

更奇怪的是 - 它似乎在将数据子集化为大约 1.5k 行大小的块时起作用。其他变量工作得很好。

我们找不到任何一致的模式,并且似乎没有更接近解决方案 - 非常感谢您的专业知识和帮助。

为使错误可重现,请查找附件中的代码和完整数据集。

代码:

require(dtwclust)
hc_anger_sbd_k10 <- tsclust(anger, type = "h", k = 10L, preproc = zscore, seed = 100, distance = "sbd", centroid = shape_extraction, control = hierarchical_control(method="average"))

数据: Dropbox Link To Data

非常感谢和亲切的问候

您有空系列,即所有值为零的系列。 例如 anger[1949,]。 根据SBD的定义,这样的数列和其他数列之间的距离是无限的。

您可能需要使用 anger[rowSums(anger) != 0,].

之类的方法删除它们