99 std::vector<std::vector<T>>
apply(
const std::vector<T>& data)
const override {
100 std::vector<std::vector<T>> result;
104 std::vector<T> current_chunk;
108 for (
const auto& value : data) {
110 current_chunk.push_back(value);
113 double new_mean = 0.0;
118 if (current_chunk.size() > 1) {
119 result.push_back(current_chunk);
120 current_chunk.clear();
121 current_chunk.push_back(value);
123 mean =
static_cast<double>(value);
127 mean =
static_cast<double>(value);
131 if (!current_chunk.empty()) {
132 result.push_back(current_chunk);