【发布时间】:2020-10-12 23:53:54
【问题描述】:
我正在寻找一种有效的分位数算法,该算法允许样本值随着时间的变化而“更新”或替换。
假设我有项目 1-n 的值。我想把这些放到一个分位数算法中,可以有效地存储它们。但是,在将来的某个时候,item-i 的值会增加。我想删除 item-i 的原始值并将其替换为更新后的值。具体用例适用于样本值随时间递增的流系统。
我见过的最接近这种情况的是t-Digest data structure。它有效地存储样本值。它唯一缺少的是删除和替换样本值的能力。
我还查看了Apache Quantiles Datasketch - 它遇到了同样的问题 - 无法移除和替换样本。
编辑:多考虑这一点,不一定需要删除旧值并插入增量值。如果存在只能更新值的约束,则可能有一种方法可以更轻松地重新计算内部状态。
【问题讨论】:
标签: java statistics data-science quantile