У меня есть база данных событий (то есть переменная дат) и связанных ковариат.
События генерируются нестационарным пуассоновским процессом с параметром, являющимся неизвестной (но, возможно, линейной) функцией некоторых ковариат.
Я думаю, что пакет NHPoisson существует только для этой цели; но после 15 часов безуспешных исследований мне все еще далеко не узнать, как им пользоваться.
Черт возьми, я даже пытался читать обе упомянутые книги: Coles, S. (2001). Введение в статистическое моделирование экстремальных значений. Springer. Казелла Г. и Бергер Р.Л. (2002). Статистические выводы. Brooks / Cole.
Один единственный пример в документации к fitPP.fun, кажется, не подходит под мои настройки; У меня нет экстремальных ценностей! У меня просто голые события.
Может ли кто-нибудь помочь мне с простым примером подгонки пуассоновского процесса к параметру с одной ковариатой и предположением, что ? Я заинтересован в оценке и \ alpha . Я предоставляю набор данных из двух столбцов с временами событий (скажем, измеренными в секундах после некоторого произвольного времени t_0 ) и другой столбец со значениями ковариат X ?
источник
Ответы:
Подгонка стационарного пуассоновского процесса
Прежде всего важно понять, какой тип входных данных нужен NHPoisson.
Прежде всего, NHPoisson нужен список показателей моментов событий. Если мы записываем интервал времени и количество событий в интервале времени, то мы должны перевести его в один столбец дат, возможно, «размывая» даты за интервал, в который они записаны.
Для простоты я предполагаю, что мы используем время, измеренное в секундах, и что «секунда» является естественной единицей .λ
Давайте смоделируем данные для простого стационарного пуассоновского процесса, который имеет событие в минуту:λ = 1
Это
simNHP.fun
делает симуляцию. Мы используем для полученияaux$posNH
переменную с индексами моментов срабатывания имитируемого события. Мы можем видеть, что у нас примерно 60 * 24 = 1440 событий, проверяя `length (aux $ posNH).Теперь давайте перепроектируем с помощью :λ
fitPP.fun
Поскольку функция принимает только индексы событий, ей также необходимо определить количество возможных индексов. И это очень запутанная часть , потому что в истинном пуассоновском процессе возможно иметь бесконечное число возможных событий (если только ). Но с точки зрения нам нужно выбрать достаточно малую единицу времени. Мы выбираем его настолько маленьким, что можем принять максимум одно событие за единицу времени.λ > 0
fitPP
Итак, что мы делаем на самом деле, так это то, что мы приближаем процесс Пуассона с гранулярной последовательностью биномиальных событий, каждое событие охватывает ровно одну единицу времени, по аналогии с механизмом, в котором распределение Пуассона можно рассматривать как предел биномиального распределения в законе. редких событий .
Как только мы это поймем, остальное станет намного проще (по крайней мере, для меня).
Для того, чтобы получить приближение нашего мне нужно взять показатель подогнанной параметра , . И вот приходит еще одна важная часть информации, которая отсутствует в руководстве : с мы вписываемся в логарифм от Х , а не Л себя.λ λ λ
beta
exp(coef(out)[1])
NHPoisson
Фиттинг нестационарного пуассоновского процесса
NHPoisson
подходит для следующей модели:Теперь давайте подготовим нестационарный пуассоновский процесс.
Точно так же, как и раньше,
aux$posNH
мы получим индексы событий, но на этот раз мы заметим, что интенсивность событий экспоненциально уменьшается со временем. И скорость этого уменьшения - это параметр, который мы хотим оценить.Важно отметить, что мы должны ставить
all.seconds
как ковариату, а неlambdas
. Возведение в степень / логарифмизация выполняется внутриfitPP.fun
. Кстати, кроме прогнозируемых значений, функция по умолчанию составляет два графика.Последняя часть - это функция швейцарского ножа для проверки модели
globalval.fun
.Помимо прочего, функция делит время на интервалы, каждая из которых имеет
lint
длительность выборки, поэтому можно создавать грубые графики, которые сравнивают прогнозируемую интенсивность с наблюдаемой интенсивностью.источник