Плотность событий во времени

Я работаю над заданием, где я должен вычислить плотность события. Предположим, что определенное событие происходит 5 раз в течение секунд, это будет означать, что оно будет иметь более высокую плотность, чем если бы оно произошло 5 раз в течение часов.

У меня есть время, когда происходит событие.

Сначала я думал о том, чтобы вычислить прошедшее время между каждыми двумя последовательными событиями, а затем поиграть со средним и средним значениями этих значений.

Моя проблема в том, что я не знаю, как точно представить это понятие плотности с помощью математики. Допустим, у меня есть 5 событий, происходящих очень близко друг к другу, затем длинный перерыв, а затем снова 5 событий, происходящих очень близко друг к другу. Я хотел бы представить это как высокую плотность. Как мне это сделать?

В последнем примере я понимаю, что мое среднее значение не будет действительно репрезентативным, но мое стандартное отклонение покажет это. Однако как мне получить одно значение плотности (скажем, от 0 до 1), с помощью которого я мог ранжировать разные события?

Спасибо за помощь!


person Valentin Calomme    schedule 06.01.2015    source источник
comment
Этот вопрос кажется не по теме, потому что он не о программировании.   -  person High Performance Mark    schedule 06.01.2015
comment
Я голосую за то, чтобы закрыть этот вопрос как не по теме, потому что он касается математики, а не программирования.   -  person Pang    schedule 11.04.2015


Ответы (2)


Я бы попробовал среднее гармоническое, которое представляет скорость, с которой происходят ваши события, на по-прежнему дает вам усредненное значение времени. Он определяется:

определение среднего гармонического

Я думаю, что его поведение близко к тому, что вы ожидаете, поскольку он измеряет то, что вы хотите, но не между 0 и 1 и с обратными тенденциями (маленькие значения означают плотность, большие значения означают разреженность). Давайте рассмотрим несколько ваших примеров:

  1. ~5 событий в час. Предположим для простоты, что между каждым событием есть 10 минут. Тогда у нас есть H = 6 /(6 * 1/10) = 10
  2. ~5 событий за 10 минут, затем ничего до конца часа (50 минут). Предположим, что все короткие интервалы составляют 2,5 минуты, тогда H = 6 / (5/2.5 + 1/50) = 6 * 50 / 101 = 2.97
  3. ~5 событий за 10 минут, но этот цикл перезапускается каждые полчаса, таким образом, у нас есть 20 минут в качестве последнего интервала вместо 50. Тогда мы получаем H = 6 / (5/2.5 + 1/20) = 6 * 20 / 41 = 2.92

Как вы можете видеть, эффект от более длинных и более редких значений в наборе уменьшается из-за того, что мы используем инверсию, таким образом, меньший вес поведению «между вспышками». Также вы можете сравнить поведение с той же «плотностью всплесков», но с разной частотой, и вы получите числа, которые близки, но порядок которых все еще отражает эту разницу.

person Cimbali    schedule 06.01.2015
comment
Большое спасибо за этот ответ. Кажется, это то, что я искал! - person Valentin Calomme; 07.01.2015

Чтобы плотность имела смысл, вам нужно определить 2 вещи:

  • диапазон, где вы смотрите на него,
  • и единица времени

После этого можно сказать, например, что с 12:00 до 12:10 плотность события была в среднем 10/мин.

Что имеет смысл в вашем случае, очевидно, зависит от ваших входных данных. Если ваше измерение длится 1 час и у вас есть миллионы записей, то, вероятно, лучше выбрать секунды или миллисекунды для единицы измерения. Если вы измеряете неделю и у вас есть несколько записей, лучше использовать день.

person fejese    schedule 06.01.2015