我有这样的时间序列:
timestamp
2019-05-31 16:30:00 94.400000
2019-05-31 16:35:00 92.533333
2019-05-31 16:40:00 93.900000
2019-05-31 16:45:00 93.400000
2019-05-31 16:50:00 93.166667
...
我想使用 Adtk 执行无监督异常检测。我每五分钟对历史系列进行一次重新采样,但我不断遇到同样的错误。
temperatura27 = temperatura27.resample('5T').mean().dropna()
from adtk.detector import SeasonalAD
seasonal_ad = SeasonalAD()
anomalies = seasonal_ad.fit_detect(temperatura27)
plot(temperatura27, anomaly=anomalies, anomaly_color="red", anomaly_tag="marker")
RuntimeError: Series does not follow any known frequency (e.g. second, minute, hour, day, week, month, year, etc.
你应该仔细查看你的数据,也许有一些遗漏点。例如,如果存在离散性为 1 分钟的数据,而时间为"15:23"的点掉出,则只会得到此错误: "系列不遵循任何已知频率(例如秒、分钟、小时、天、周、月、年等。">
2020-10-16 15:21:00,5.9357
2020-10-16 15:22:00,3.8873
2020-10-16 15:24:00,5.313
2020-10-16 15:25:00,5.5147
从 vovi 停止的地方获取;
如果数据缺少行,则重新采样可能会有所帮助。
对于最新版本的 adtk;
s_train = s_train.resample("15m").sum()
如果使用旧版本的 adtk(在其最新版本中,adtk 重采样被放弃以支持熊猫的重采样(,adtk 具有重采样方法;
from adtk.data import resample
s_train = resample(s_train, dT="15 min")