ppforest2 v0.1.0
Projection Pursuit Decision Trees and Random Forests
Loading...
Searching...
No Matches
NodeContextFixture.hpp
Go to the documentation of this file.
1#pragma once
2
5#include "stats/Stats.hpp"
6#include "utils/Types.hpp"
7
8#include <utility>
9
10namespace ppforest2::test {
11 namespace {
21 inline types::GroupIdVector median_split_ids(int n) {
23 int const mid = n / 2;
24 for (int i = 0; i < n; ++i) {
25 ids(i) = (i < mid) ? 0 : 1;
26 }
27 return ids;
28 }
29 }
30
68
70 : x(std::move(x_in))
71 , y_ids(std::move(ids_in))
72 , y_part(y_ids)
73 , y_vec(y_ids.cast<types::Outcome>())
74 , rng(0)
75 , ctx(x, y_part, y_vec, 0) {}
76
78 : x(std::move(x_in))
79 , y_ids(median_split_ids(static_cast<int>(y_vec_in.size())))
80 , y_part(y_ids)
81 , y_vec(std::move(y_vec_in))
82 , rng(0)
83 , ctx(x, y_part, y_vec, 0) {}
84
86 : x(std::move(x_in))
87 , y_ids()
88 , y_part(std::move(y_part_in))
89 , y_vec(std::move(y_vec_in))
90 , rng(0)
91 , ctx(x, y_part, y_vec, 0) {}
92
97 };
98}
Contiguous-block representation of grouped observations.
Definition GroupPartition.hpp:40
pcg32 RNG
Definition Stats.hpp:24
Definition MockStop.hpp:10
Core numeric type aliases for the ppforest2 library.
Definition Types.hpp:22
Eigen::Matrix< Feature, Eigen::Dynamic, Eigen::Dynamic > FeatureMatrix
Dynamic-size matrix of feature values.
Definition Types.hpp:33
Eigen::Matrix< Outcome, Eigen::Dynamic, 1 > OutcomeVector
Dynamic-size column vector of predictions.
Definition Types.hpp:42
Eigen::Matrix< GroupId, Eigen::Dynamic, 1 > GroupIdVector
Dynamic-size column vector of internal group labels.
Definition Types.hpp:39
Mutable context accumulating intermediate results during node training.
Definition NodeContext.hpp:20
NodeContextFixture(types::FeatureMatrix x_in, types::OutcomeVector y_vec_in)
Definition NodeContextFixture.hpp:77
types::FeatureMatrix x
Definition NodeContextFixture.hpp:62
types::OutcomeVector y_vec
Definition NodeContextFixture.hpp:65
NodeContext ctx
Definition NodeContextFixture.hpp:67
stats::GroupPartition y_part
Definition NodeContextFixture.hpp:64
NodeContextFixture(types::FeatureMatrix x_in, types::GroupIdVector ids_in)
Definition NodeContextFixture.hpp:69
NodeContextFixture(types::FeatureMatrix x_in, stats::GroupPartition y_part_in, types::OutcomeVector y_vec_in)
Definition NodeContextFixture.hpp:85
NodeContextFixture(NodeContextFixture &&)=delete
types::GroupIdVector y_ids
Definition NodeContextFixture.hpp:63
NodeContextFixture & operator=(NodeContextFixture &&)=delete
NodeContextFixture & operator=(NodeContextFixture const &)=delete
stats::RNG rng
Definition NodeContextFixture.hpp:66
NodeContextFixture(NodeContextFixture const &)=delete