のヘッダーを含めていなかったものについては、次のkurtosis
とおりです。
#include <boost/accumulators/statistics/kurtosis.hpp>
したとしても、ストレートでは機能しないことがわかりますが、vector
おそらくやりたいことは、accumulator_set
およびその他のヘッダーも使用することです。
を使用した最小限の例を次にaccumulator_set
示します。これは、問題を解決する 2 つの方法を示しています。
#include <boost/math/distributions.hpp>
#include <boost/accumulators/accumulators.hpp>
#include <boost/accumulators/statistics/stats.hpp>
#include <boost/accumulators/statistics/mean.hpp>
#include <boost/accumulators/statistics/variance.hpp>
#include <boost/accumulators/statistics/kurtosis.hpp>
#include <iostream>
#include <vector>
using namespace boost::accumulators;
int main()
{
accumulator_set<double, stats<tag::mean, tag::kurtosis > > acc;
accumulator_set<double, stats<tag::mean, tag::kurtosis > > acc2;
acc(2) ;
acc(3) ;
acc(4) ;
std::cout << mean(acc) << " " << kurtosis(acc) << std::endl ;
std::vector<double> v1 ;
v1.push_back(2);
v1.push_back(3);
v1.push_back(4);
acc2 = std::for_each( v1.begin(), v1.end(), acc2 ) ;
std::cout << mean(acc2) << " " << kurtosis(acc2) << std::endl ;
}
Accumulators Framework
ユーザー ガイドへのリンクは次のとおりです。このガイドには、いくつかの良い例があります。
この前のスレッドは を使用する方法を見つけましたvector
が、まったく簡単ではなく、機能させることができませんでした。