私は最近、優れたライブラリboost :: accumulatorsを発見しました。統計を蓄積するコードの一部を置き換えるために使用したいと思います。私はドキュメントで見つけることができません2つのboost :: accumulator_setインスタンスを合計する
ことの一つは、オペレータのように、2つのアキュムレータセットを合計する機能です+ =
例:
using namespace boost::accumulators;
typedef accumulator_set<double, features<tag::variance> > AccumSet;
class Foo {
AccumSet acc;
public:
Foo& operator+=(const Foo& that) {
this->acc += that.acc; // error! no such operator
return *this;
}
double GetVariance() { return variance(acc); }
};
は、どのように私はこれが可能なAPIを使用して達成することができますか?ライブラリ内のすべてのタイプのアキュムレータ(テール用ではないかもしれません)に実装できるかどうかは分かりませんが、数、合計、平均、瞬間、共分散などの重要な事柄は確かにあります。
また、「これを返す」ことを忘れていますが、これは無関係ですが。 – Matt
@マット、ポイントの横にあるが、まだ修正する価値がある... – killogre