データポイントの追加/削除を使用して、大量のデータサンプルセットの分位数を再計算するのではなく更新できる Java ライブラリはありますか? 私の推測では、効率的なアルゴリズムでは、更新に一定の時間がかかるはずです (既存のポイント数の関数ではありません)。
既知のアルゴリズムがリストされていますが、サンプル セットからポイントを削除する方法はありません。
- Colt Stream Quantiles : これには、一度追加されたデータを削除する方法がありません
- Apache Math Percentile : これは単に配列の分位数を計算するだけで、配列からデータを削除する方法はありません。
ここに問題の例があります: たとえば、一連の風車の任意ではあるが一定のパーセンタイル ファン速度を (風速の推定として) 計算したいとします。ファンの速度は、数ミリ秒ごとに非同期で更新されます。このライブラリを使用すると、中央値を再計算することなく、一度に 1 つの風車の風速を更新できます。