| 240 | |
| 241 | template <typename T> |
| 242 | std::pair<double, double> MedianAbsoluteDeviation(std::vector<T>& elems) { |
| 243 | const double median = Median(elems); |
| 244 | std::vector<double> abs_deviations(elems.size()); |
| 245 | for (size_t i = 0; i < elems.size(); i++) { |
| 246 | abs_deviations[i] = std::abs(static_cast<double>(elems[i]) - median); |
| 247 | } |
| 248 | return {median, Median(abs_deviations)}; |
| 249 | } |
| 250 | |
| 251 | template <typename T> |
| 252 | std::pair<double, double> MedianAbsoluteDeviation(std::vector<T>&& elems) { |
no test coverage detected