假设我有24行数据,这样每行代表一天中的一小时。我想要实现的是实现一种算法,该算法可以检测数据中的趋势并将其划分为2个块 - “好”块和“坏”块。例如,在附图中你可以看到第6行的好块开始和结束于第19行。第0行也有一个好的分数,但它不是一个块的一部分,所以算法应该知道如何处理这种情况。 我认为这是关于聚类但却找不到足以满足我们需求的简单方法。 期待任何建议。
答案 0 :(得分:1)
start = -1
Append a below-threshold value to the end of the data array x[]
For i from 1 to n:
If x[i] >= thresholdValue:
if start == -1:
start = i
Else:
If start != -1 and i - start >= thresholdLength:
ReportGoodBlock(start, i-1)
start = -1