void make_test_predict(bool async) { auto estimator = train_estimator(); estimator->predicted_quantiles(mkcol({0.5, 0.9})); const auto X = get_X(); const auto threads = async ? 3 : 1; const auto y_resp = estimator->predict(X, threads); assert_equal(X.n_rows, y_resp.n_rows, SPOT); assert_equal(2u, y_resp.n_cols, SPOT); auto y_exp = matrix_t(X.n_rows, 2u); for (std::size_t i=0; i<X.n_rows; ++i) { y_exp.row(i) = mkrow({5.5, 7.5}); } assert_equal_containers(y_exp, y_resp, SPOT); }
void mkrows(struct dlx *solver) { int r, c, d; int nextnode = 0; int colnums[4]; for (r = 1; r <= 9; r++) { for (c = 1; c <= 9; c++) { for (d = 1; d <= 9; d++) { colnums[0] = P(r, c); colnums[1] = R(r, d); colnums[2] = C(c, d); colnums[3] = B(BOX(r, c), d); mkrow(solver, colnums, nextnode); nextnode += 4; } } } }