Задать вопрос
@historydev
long long long long long .... int

Как посчитать серьёзность отклонения числа от набора других чисел?

x = 22;
others = [27, 43, 17, 5];


Прочитал про среднеквадратичное отклонение, не уверен что это то что мне нужно, но реализовал так:

function deviationFromOthers(data, x) {
  const others = data.filter(v => v !== x);

  const mean = others.reduce((s, v) => s + v, 0) / others.length;

  const variance = others.reduce((s, v) => {
    const d = v - mean;
    return s + d * d;
  }, 0) / others.length;

  const std = Math.sqrt(variance);

  return {
    delta: x - mean,
    z: (x - mean) / std
  };
}

console.log(deviationFromOthers([27, 43, 17, 5], 22)); // {delta: -1, z: -0.07179581586177382}


-0.071 это много или мало, или вообще ничего не значит на таком незначительном наборе данных?
  • Вопрос задан
  • 231 просмотр
Подписаться 2 Простой 10 комментариев
Помогут разобраться в теме Все курсы
  • Нетология
    Data Scientist: расширенный курс
    13 месяцев
    Далее
  • Академия Eduson
    Аналитик данных: тариф Базовый
    6 месяцев
    Далее
  • Skillbox
    Data Scientist с нуля до Junior
    9 месяцев
    Далее
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Для начала математически определить, что такое "серьёзность" отклонения. Это зависит не от чисел, а от той модели, которая лежит в их основе. В вашем случае, например, я вообще не вижу никакого отклонения, поскольку 22 явно попадает в диапазон возможных значений 5...43.
Скорее всего, у вас проблема XY и вы ищете решение не той задачи.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Maksim_64
@Maksim_64
ML Engineer
Ну считаешь ты в итоге z-score (на сколько стандартных отклонений ты выше или ниже среднего). Для z -статистики минимум 30 наблюдений должно быть, плюс нормальное распределение должно быть.

Обрати внимание на свой вопрос и то что ты считаешь. Если бы было достаточно, наблюдений, то такой z-score был бы статистически не значимым.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы