2

我在使用 AnomalyDetection R 包的 AnomalyDetectionTs 函数时遇到问题:

在这篇文章之后:https ://blog.twitter.com/2015/introducing-practical-and-robust-anomaly-detection-in-a-time-series

devtools::install_github("twitter/AnomalyDetection")
library(AnomalyDetection)

ts_sample = data.frame(count(my_timestamp, 'timestamp'))

anomalies = AnomalyDetectionTs(ts_sample,
                               max_anoms=0.02,
                               direction='both',
                               only_last='day',
                               plot=TRUE,
                               title = 'Twitter CDMX')

产生这个:

Error in if (data_sigma == 0) break : 
  missing value where TRUE/FALSE needed

我使用与官方文档中相同的数据格式、相同的数据类型、相同的数据帧大小和相同的参数:

> str(raw_data)
'data.frame':   14398 obs. of  2 variables:
 $ timestamp: POSIXlt, format: "1980-09-25 14:01:00" "1980-09-25 14:02:00" "1980-09-25 14:03:00" ...
 $ count    : num  182 176 184 178 165 ...
> str(ts_sample)
'data.frame':   14398 obs. of  2 variables:
 $ timestamp: POSIXlt, format: "2015-12-10 16:15:00" "2016-01-18 22:58:00" "2016-07-29 05:41:00" ...
 $ freq     : num  11 4 1 6 1 5 3 5 4 5 ...
4

1 回答 1

0

问题是only_last='day'不正确,only_last需要设置为 T(rue) 或 F(alse)。

于 2016-10-06T17:46:31.120 回答