MCPcopy Create free account
hub / github.com/apache/arrow / m2

Method m2

cpp/src/arrow/compute/kernels/aggregate_var_std_internal.h:49–56  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

47 double mean() const { return static_cast<double>(sum) / count; }
48
49 double m2() const {
50 // calculate m2 = square_sum - sum * sum / count
51 // decompose `sum * sum / count` into integers and fractions
52 const int128_t sum_square = static_cast<int128_t>(sum) * sum;
53 const int128_t integers = sum_square / count;
54 const double fractions = static_cast<double>(sum_square % count) / count;
55 return static_cast<double>(square_sum - integers) - fractions;
56 }
57};
58
59enum class StatisticType { Var, Std, Skew, Kurtosis };

Callers 2

ConsumeMethod · 0.80
ConsumeIntegralMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected