Код Middle Деревья и ансамбли обновлено

Лучший порог по Джини

Условие

Один числовой признак xs и бинарные метки ys (0/1). Напишите best_split(xs, ys): найдите порог t (середину между соседними различными отсортированными значениями), минимизирующий взвешенную нечистоту Джини детей (левые x ≤ t). Верните [t, impurity], impurity округлите до 4 знаков. При равенстве берите меньший порог. Если различных значений меньше двух, верните None.

Примеры

best_split([1, 2, 3, 4], [0, 0, 1, 1]) // [2.5, 0]
best_split([5, 5, 5], [0, 1, 0]) // null
best_split([1, 2, 3, 4, 5, 6], [0, 0, 1, 0, 1, 1]) // [2.5, 0.25]

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.

Термины по теме