#if defined(_MSC_VER) && (_MSC_VER >= 1700) //msvc12.0 Boost.Serialization warning #pragma warning(disable:4512) #endif #include #include #include #include #include #include #include using namespace std; using namespace faif; using namespace faif::timeseries; int main() { const double TAB[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 40.0, 50.0, 60.0, 100.0 }; const int TAB_SIZE = sizeof(TAB) / sizeof(TAB[0]); std::vector v(TAB, TAB + TAB_SIZE); /** two sections: <0.0, 31.25) and <31.25, 100) */ Discretizer s = createKMeansSections(v.begin(), v.end(), 2 ) ; ostringstream oss; boost::archive::text_oarchive oa(oss); oa << s; Discretizer s2; std::istringstream iss(oss.str()); boost::archive::text_iarchive ia(iss); ia >> s2; std::cout << (s2.discretize(0.0) == 0 ) << (s2.discretize(31.0) == 0 ) << (s2.discretize(32.0) == 1 ) << (s2.discretize(200.0) == 1 ) << std::endl; return 0; }