Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Zero-truncated Poisson regression
Форум врачей-аспирантов > Разделы форума > Медицинская статистика
Страницы: 1, 2
ИНО
Цитата(comisora @ 20.11.2022 - 23:53) *
Я не вижу причин отказываться от hurdle-модели даже когда мало нулей, но изначально их быть не должно. Такая составная модель, как мне представляется, может справиться с процессом отбраковки (1 или 0), а далее Пуассоном с усечённым нулём моделировать оставшиеся данные.


Пожалуйста, проиллюстрируйте примером. А то я сосем не понимаю, что вы имеете в виду.

Цитата
Я пока не придумал как адаптировать Ваш код для доказательства/опровержения утверждения, что Ваш генератор и rpospois() даёт одно и тоже.


Это просто:

Цитата
# генерация синтетических данных:
lambda<-seq(0.01, 2, 0.01)
x<-rep(NA, 200)
y<-rep(NA, 200)
for(i in 1:200){
lambda_i<-lambda[i]
x[i]<-mean(rpospois(1000, lambda_i))
sim<-rpois(1000000, lambda_i)
sim<-sim[sim>0]
y[i]<-mean(sample(sim, size=1000))
}

plot(x, y)
abline(0, 1, col="red")


Здесь x - выдача rpospois(), а y - моего генератора. Фактически он делает ровно то же, но способом, который в более явном виде имитирует реальный процесс порождения "позитивнопуассоновских" данных. Конечно, полного соответствия не будет, т. к. у меня датчик псевдослучайных чисел работает в двух разных функциях и я не знаю как в такой ситуации корректно задать одинаковое семя обоим генераторам. Но и полученной диаграммы вполне достаточно для осознания их эквивалентности. Поскольку мы имеем дело с однопараметрическим распределением, достаточно оценки одного параметра, но для пущей убедительности можно проделать то же самое с любой другой, скажем заменить mean() на sd() - картина не изменится.


Цитата
Пока только демонстрирую разницу между rpospois() и rpois() с невозможностью арифметическими операциями свести одно распределение к другому. Даже если мы возьмём и создадим последовательность Пуассона без нулей, то она не всё равно не совпадёт при большом количестве наблюдений и lambda менее 10. Дальнейшее увеличение lambda приводит к расхождению рядов генерации.


Это изначально понятно. Именно поэтому я и удивляюсь: почему оценивая через сдвинутое пуассоновское распределение данные, сгенерированные усеченным пуассоновским распределением (т. е. как бы некорректно) я получаю практические те же оценки (а то и чуть более точные), как если бы действовал по феншую, выбрав заведомо верную спецификацию модели. Это действительно странно.
Диагностик
Цитата(ИНО @ 21.11.2022 - 15:42) *
я и удивляюсь: почему оценивая через сдвинутое пуассоновское распределение данные, сгенерированные усеченным пуассоновским распределением (т. е. как бы некорректно) я получаю практические те же оценки (а то и чуть более точные)...Это действительно странно.
Для какого лямбда?
ИНО
Для любого в интервале от 0,001 до 2 (на больших не проверял, ибо неинтересно).
ИНО
Итак, переходим к собственно регрессии. Пока что пусть будет один бинарный предиктор. В этот раз для генерации данных взяты лямбды, похожие на оцененные в одной из моих реальных задач, и объем выборки того же порядка. В этот раз мы будем сравнивать модели на 1000 разных реализаций распределений с одними и теми же параметрами. Для разнообразия вместо MAE взята MSE, но и с MAE картина ровно та же - модели практически не различаются по точности прогнозов. Традиционно под номером 1 идет моя оригинальная шифт-модель, под номером 2 - ZTP, под номером 3 - обычная пуассоновская

Код
pr1<-rep(1, 50)
pr2<-rep(2, 50)
pr<-as.factor(c(pr1, pr2))

TestPoisReg<-function(pr)
{
resp1<-rpospois(50, 0.6)
resp2<-rpospois(50, 1.35)
resp<-c(resp1, resp2)
df<-data.frame(pr, resp)
df$modresp<-df$resp-1
mod1<-glm(modresp~pr, data=df, family="poisson")
prediction1<-predict(mod1, type="response")+1
MSE1<-mean((prediction1-df$resp)^2)
mod2<-vglm(resp~pr, data=df, family="pospoisson")
prediction2<-predict(mod2, type="response")
MSE2<-mean((prediction2-df$resp)^2)
mod3<-glm(resp~pr, data=df, family="poisson")
prediction3<-predict(mod3, type="response")
MSE3<-mean((prediction1-df$resp)^2)
return(c(MSE1, MSE2, MSE3))
}
x<-replicate(1000,  TestPoisReg(pr=pr))
MSE1<-x[1,]
MSE2<-x[2,]
MSE3<-x[3,]

boxplot(MSE1, MSE2, MSE3)
ИНО
А вот в p разница существенная:

Код
pr1<-rep(1, 50)
pr2<-rep(2, 50)
pr<-as.factor(c(pr1, pr2))

TestPoisReg2<-function(pr)
{
resp1<-rpospois(50, 0.6)
resp2<-rpospois(50, 1.35)
resp<-c(resp1, resp2)
df<-data.frame(pr, resp)
df$modresp<-df$resp-1
mod1<-glm(modresp~pr, data=df, family="poisson")
prediction1<-predict(mod1, type="response")+1
p1<-coef(summary(mod1))[2,4]
mod2<-vglm(resp~pr, data=df, family="pospoisson")
p2<-coef(summary(mod2))[2,4]
mod3<-glm(resp~pr, data=df, family="poisson")
p3<-coef(summary(mod3))[2,4]
return(c(p1, p2, p3))
}
x<-replicate(1000,  TestPoisReg2(pr=pr))
p1<-x[1,]
p2<-x[2,]
p3<-x[3,]

boxplot(p1, p2, p3)


Ну, третью модель (обычный Пуассон) можно отправлять сразу в мусорное ведро, потому что она пытается предсказать нули, которых нет, построенные по ней ДИ будут невозможными, соответственно и p тоже должно быть неправильное. А вот как сделать выбор между ?1 и ?2, понять какая из них больше врет в данном случае, я покамест не сообразил. Буду благодарен за подсказку. И все ж странно, почему при таких серьезных различиях в объясняющей составляющей (которая была ожидаема), в составляющей прогностической все три модели оказались практически одинаковыми.
ИНО
За отсутствием альтернативных предложений решил попробовать ответить на последний поставленный мною вопрос самостоятельно, а именно при помощи моего оригинального метода, предложенного здесь: http://forum.disser.ru/index.php?showtopic...ost&p=27378

Теорема имени меня smile.gif : чем ближе распределение p-значений какого-либо статистического критерия при справедливости нулевой гипотезы к равномерному, тем ближе номинальный уровень значbмости к реальному. При этом смещение моды распределения влево от значения 0,5 сигнализирует о завышенной ошибке первого рода, а вправо - о завышенной ошибке второго рода. Доказывает (или опровергает) пусть $100 - у него голова большая он шибко умный smile.gif

Исследуем при помощи предложенного метода три вышеупомянутые модели:

Код
pr1<-rep(1, 50)
pr2<-rep(2, 50)
pr<-as.factor(c(pr1, pr2))

TestPoisReg2<-function(pr)
{
resp1<-rpospois(50, 1)
resp2<-rpospois(50, 1)
resp<-c(resp1, resp2)
df<-data.frame(pr, resp)
df$modresp<-df$resp-1
mod1<-glm(modresp~pr, data=df, family="poisson")
prediction1<-predict(mod1, type="response")+1
p1<-coef(summary(mod1))[2,4]
mod2<-vglm(resp~pr, data=df, family="pospoisson")
p2<-coef(summary(mod2))[2,4]
mod3<-glm(resp~pr, data=df, family="poisson")
p3<-coef(summary(mod3))[2,4]
return(c(p1, p2, p3))
}
x<-replicate(1000,  TestPoisReg2(pr=pr))
p1<-x[1,]
p2<-x[2,]
p3<-x[3,]

hist(p1)
abline(v=0.5, col="red")

hist(p2)
abline(v=0.5, col="red")

hist(p3)
abline(v=0.5, col="red")


Ожидаемо у модели ?3 (обычный Пуассон) с достигаемым уровнем значимости для эффекта предиктора все плохо - он сильно завышен. В этот раз, когда предиктор является мусорным, оно даже хорошо, однако и для по-настоящему влиятельного предиктора он тоже будет завышен, что уже совсем нехорошо. Так что использовать обычную регрессию Пуассона для данных с отсутствующими нулями с целью оценки влияния независимых переменных однозначно недопустимо (хотя с задачей прогноза в такой ситуации она вполне справляется, что весьма странно, но все результаты моделирования покамест говорят именно об этом). А вот с моделями ?1 (моя шифтонутая) и ?2 (ZTP) все не так однозначно: в зависимости от n и лямбда, задаваемых генератору, распределение p красивее то у одной, то у другой из них, но разница всегда небольшая. В случае, представленном на прикрепленных гистограммах лидирует расово правильная усеченная модель, а моя дает малость заниженное p, но в некоторых иных, мною смоделированных, напротив, моя модель имеет почти идеальное распределение, а расово правильная демонстрирует признаки небольшого завышения. Может поэкспериментировать самостоятельно.
100$
Поциент скоро без упоминания меня и в сортире управиться толком не сможет.
Пока же своими словесными фекалиями он предпочитает загаживать форум.
Але, трехбуквенный, совсем сбрендил?
ИНО
Лучше работать над проблемой, пусть даже не всегда идя верным путем (это неизбежно в любом исследовании), чем высокомерно отпускать умозрительные экспердные мнения, даже ни разу не трудившийся проверить проверить их верность (и убедиться в ошибочности) при помощи свободного распространяемого ПО.

Почему Вы упомянуты? Так Вы тут единственный (оставшийся), кто полагает (ИМХО необоснованно), что в совершенстве понимает теорию математической статистики. Так что можете считать это обращение знаком особого уважения к вашему интеллекту. Но нет, так нет.

И, раз уж начали к никам придираться (распоследний аргумент в любой интернет-дискуссии), на свой посмотрите. Это что, тариф за час вашего умственного труда? Лучше быть трехбуквенным, чем ценником lol.gif



Игорь
Врачи-аспиранты, для которых создан форум, ознакомившись с показанными выше результатами исследований, могут составить впечатление о непостижимости темы для медика или биолога. Сугубо личное мнение, просто такие исследования не нужно обсуждать здесь. А нужно [в рассматриваемом случае] представлять совет в виде:
1. Есть данные, являющиеся результатами практических измерений в эксперименте.
2. Смотрим, какая статистическая модель (модели) подходит (подходят) для их описания (с точностью до коэффициентов).
3. Идентифицируем модель - вычисляем оптимальные значения коэффициентов, при необходимости значимость параметров, включенных в модель.
4. Проверяем соответствие модели экспериментальным данным. Часто применяется критерий AIC. Если подходит несколько моделей, выбираем лучшую.
5. Используем построенную модель для прогнозирования и в публикациях. Всё красиво, все довольны.

Есть еще одна идея. Ранее, когда компании-разработчики статистического программного обеспечения (ПО) рассылали демонстрационные материалы (диски, брошюры) по почте, получил от StaXact очень интересные картонные карточки формата меньше A4 (наверное, B5) с голубой каемкой. На лицевой стороне карточки была описана проблема - реальный случай из медицинской практики, включая ссылки. На оборотной стороне - результаты статистического исследования с интерпретацией результатов. Идея понравилась - найди пример и сделай так же.

Ведь смысл научного медико-билогического исследования не в развитии математико-статистических методов, а во всестороннем анализе объектов исследования, развитии методик исследований и корректном применении в качестве инструментов готовых математических алгоритмов и ПО, как и приборов, оборудования. Если хотим разрабатывать математические алгоритмы, кодировать ПО и создавать приборы - для обсуждения этого есть другие соответствующие площадки.

Не нужно пугать аспирантов.
Диагностик
Цитата(ИНО @ 21.11.2022 - 17:00) *
Для любого в интервале от 0,001 до 2 (на больших не проверял, ибо неинтересно).

Распределения близки, можно выбирать любое. На графиках теоретические вероятности.

Нажмите для просмотра прикрепленного файла
ИНО
Диагностик, при других лямбдах разница будет заметнее. См. первую ссылку из этого поста comisora: http://forum.disser.ru/index.php?s=&sh...ost&p=27854

Здесь не обсуждается отличия в форме между сдвинутым и усеченным распределениями Пуассона, оно самоочевидно. Обсуждается разница в работоспособности (настаиваю на этом термине) регрессионных моделей, основанных на том и другом. Результаты моделирования (если я не напутал чего, но покамест никто не поправил) свидетельствуют, что в задачах оценивания разница может быть существенной, а вот в задачах прогноза ее практически нет (более того, можно использовать даже обычную модель Пуассона). Последнее странно, и я все ж надеюсь, что напортачил в коде, ибо иначе придется таки уверовать в "непостижимость темы для биолога".

Игорь, ИМХО Ваш совет "не исследовать" звучит странно. Эдак, слепо следуя рекомендациям всяких там гуру (не будем называть ники) можно таких дел наворотить, что ой. Все ж считаю, что любой исследователь должен понимать хотя бы на начальном уровне суть каждого метода сбора и обработки данных, который он применяет. Обратное чревато неверными выводами, что в сфере медицинских исследований особенно опасно. И если аспирант - настолько нежная и чувствительная личность, что прочтение этой темы может его напугать, то занят он явно не своим делом. Такому лучше попробовать реализовать себя в искусствах, а не в науке (да, я в курсе, что медицина - отчасти тоже искусство, но это уж точно искусство не для пугливых, речь об иных). Из тонких экзальтированных особ получаются отличные поэты, художники и композиторы, но никак не ученые.

Что же касается биологов, в особенности экологов, то их роль в развитии современной прикладной статистики трудно переоценить. Созданные ими методы (нередко для решения одной конкретной специфической задачи, с которой не справились ранее существующие) зачастую в последствие оказываются намного более полезными и универсальными в практическом применении, чем всякие там равномерно наиболее мощные сферокони, заботливо выращиваемые теоретиками от статистики.
Диагностик
Цитата(ИНО @ 24.11.2022 - 16:55) *
Обсуждается разница в работоспособности (настаиваю на этом термине) регрессионных моделей, основанных на том и другом. Результаты моделирования (если я не напутал чего, но покамест никто не поправил) свидетельствуют, что в задачах оценивания разница может быть существенной,
Обе будут работать. Нужно проверять на фактическом статматериале.
Диагностик
Цитата(ИНО @ 24.11.2022 - 16:55) *
Игорь, ИМХО Ваш совет "не исследовать" звучит странно.
Я бы вас поддержал, если бы ваши личные неуклюжие попытки исследования не выглядели так не профессионально.
Цитата(ИНО)
В случае, представленном на прикрепленных гистограммах лидирует расово правильная усеченная модель
Предлогаю остановиться на этом.
ИНО
Остановиться в развитии - весьма плохое предложение.

Диагностик, что позволено Юпитеру, не позволено быку. Если 100$, несмотря излишнюю обидчивость и воинственность в отстаивании собственных ошибочных суждений (как было здесь наглядно доказано для тех, кто понимает), все еще заслуживает того, чтобы быть услышанным, поскольку его знания о теории математической статистики достаточно высоки (значительно выше моих, хотя и ниже того непогрешимого уровня, который он сам сам назначил), то Вы - обычный дилетант с поверхностными знаниями, от которого я не припомню хотя бы одного глубокомысленного и полезного поста (хотя я зарегистрирован на данном форуме и недавно, но почитываю его уж давненько). Поэтому уж кому-кому, а не Вам судить об уровне моих исследований. Если мои выводы ошибочны, что я вполне допускаю (и едва ли не в этом посте об этом напоминаю!), то укажите на конкретные ошибки (причем не высокими философствованиями о свойствах случайных величин, понять которые способны не только лишь все), а конкретными строчками кода. Моя проблема проста: данные моделирования противоречат теории. Принимая в качестве постулата справедливость теории, я прошу элементарного: укажите мои ошибки в моделировании. 100$ указал (на мой самописный генератор усеченного распределения Пуассона), но попал пальцем в небо, поскольку проверка показала, что этот генератор не хуже расово правильного вгамовского (хоть и медленнее). Уверен, было б у него иное объяснение, уже б давно гарцевал тут на лихом коне, подняв его на знамя. Но вместо этого тихонько отсиживается в сторонке, лишь изредка высыпая порцию оскорблений в адрес моей личности. Это есть не что иное как примитивнейшая из уловок ведения дискуссии, применение которой оппонентом однозначно сигнализирует о том, что аргументы по существу у него закончились. Так что если он не сумеет напрячь свою гениальность и таки родить состоятельное объяснение обсуждаемого феномена, остается лишь констатировать его фиаско. А куда уж Вам с вашими привычными сентенциями капитана Очевидность? Оттого ваши обвинения пусты и смехотворны. Я всегда стараюсь не переходить на личности в научной дискуссии, но, ежели оппонент сделал это первым, то сам виноват - что посеял, то и пожнет.

Вообще, к глубочайшему сожалению, приходится констатировать, что единственный оставшийся активный пользователь данной ветки, который действительно стремится от чистого сердца давать полезные советы, при этом проводя громадную работу с литературой, это comisora. За что ему нижайший поклон. Прочие, увы, либо перестали посещать форум, либо забронзовели. Ддаже те, кто не имел ни малейшего основания для этого, типа Вас, Диагностик.
Диагностик
Цитата(ИНО @ 25.11.2022 - 16:38) *
объяснение обсуждаемого феномена
Какого феномена?
100$
Цитата(Диагностик @ 25.11.2022 - 06:38) *
Я бы вас поддержал, если бы ваши личные неуклюжие попытки исследования не выглядели так не профессионально.


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

P.S. А ведь я предупреждал, что два юзера типа "Диагностик" для этого форума многовато. Так сказать "Боливару не снести двоих"...
Диагностик
Цитата
Профессор на семинаре замечает, что один из студентов не совсем трезв. Говорит ему:
- Так, студент, вы пьяны! Немедленно покиньте семинар!
- Да что вы, профессор?! Я совершенно трезв!
- Ах, трезв?! Тогда напишите мне формулу вычисления лапласиана в тороидальных координатах.
Студент выходит к доске и пишет длинную-длинную формулу. Профессор долго сверяется со справочником и убеждается, что всё написано правильно.
- Ну что ж, я впечатлён! Я эту формулу и на трезвую-то голову не помню.
Студент: "Так на трезвую и я не помню!"
100$
Дык аб том и речь, Диагностик, что, судя по вашим однобайтовым репликам в одну строчку с претензией на солидность (познавательная ценность которых - по ту сторону нуля) вам до анекдотического студента хоть в каком виде - все одно далековато...
Душевное вам спасибо, что в очередной раз это подтвердили.

Диагностик
Цитата(100$ @ 25.11.2022 - 18:35) *
P.S. А ведь я предупреждал, что два юзера типа "Диагностик" для этого форума многовато.

Но не прислушались. Вот теперь и полюбуйтесь к чему это привело, прозорливый вы наш.
Цитата(100$ @ 25.11.2022 - 18:35) *
А ведь я предупреждал
100$
Цитата(Диагностик @ 25.11.2022 - 14:31) *
Но не прислушались. Вот теперь и полюбуйтесь к чему это привело, прозорливый вы наш.


Привело это к тому, что уже два юзера считают ваше присутствие в этой теме незаслуженным комплементом.
Для вас это уже статистика.

P.S. Все ж таки наш милейший топикстартер назначил меня дураком с оговорками, а вас - безоговорочно.
Диагностик
Цитата(ИНО @ 25.11.2022 - 16:38) *
Вообще, к глубочайшему сожалению, приходится констатировать, что единственный оставшийся активный пользователь данной ветки, который действительно стремится от чистого сердца давать полезные советы, при этом проводя громадную работу с литературой, это comisora. За что ему нижайший поклон.
После первого его сообщения я также его поблагодарил в ЛС и сообщил, что его информация должна снять вашу проблему.
100$
Цитата(ИНО @ 25.11.2022 - 11:38) *
Уверен, было б у него иное объяснение, уже б давно гарцевал тут на лихом коне, подняв его на знамя. Но вместо этого тихонько отсиживается в сторонке, лишь изредка высыпая порцию оскорблений в адрес моей личности. Это есть не что иное как примитивнейшая из уловок ведения дискуссии, применение которой оппонентом однозначно сигнализирует о том, что аргументы по существу у него закончились. Так что если он не сумеет напрячь свою гениальность и таки родить состоятельное объяснение обсуждаемого феномена, остается лишь констатировать его фиаско.


Товарищ! Добрее надо быть: вам рано еще здесь кого-либо понукать.
Так что не нукай: не запрягал.

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

Диагностик
Цитата(ИНО @ 24.11.2022 - 16:55) *
что в задачах оценивания разница может быть существенной, а вот в задачах прогноза ее практически нет (более того, можно использовать даже обычную модель Пуассона). Последнее странно,
А что вы понимаете под
Цитата(ИНО @ 24.11.2022 - 16:55) *
...задачах прогноза..

Диагностик
Цитата(ИНО @ 25.11.2022 - 16:38) *
Моя проблема проста: данные моделирования противоречат теории.
Вы можете это предметно показать? Какие гипотезы и на каком уровне вами проверялись?
ИНО
Специально два дня не читал эту тему (хотя видел, что новые ответы в ней есть) в наивной надежде, что за это время напишут хоть что-то умное. Увы, надежда не оправдалась: написанное в мое отсутствие оказалось еще более жестяной жестью, чем до того. За сим не вижу никакой пользы в дальнейшем вникании в ваши разборки в стиле "Горца" за честь остаться последним оставшимся единственно правильным гуру. Тем более, что они весьма унылы: ни тебе фехтования на мечах, ни аргументированной научной дискуссии, ни строчки кода, а одно только пустословное хамство. Если б я жаждал беседы подобного "научного уровня", сходил бы вечерком к ближайшей наливайке: несмотря на все ваши старания, тамошних завсегдатаев в этом специфическом, с позволения сказать, искусстве аргументации вам ни в жизнь не переплюнуть. Жив буду - вернусь. Когда-нибудь. Постарайтесь к тому моменту не сжить друг друга со свету с форума. Не хотелось бы, чтобы к моему возвращению на ветке остался только один Макклауд - тогда она станет совсем уж печальной и бесполезной.
100$
Цитата(ИНО @ 27.11.2022 - 16:37) *
Специально два дня не читал эту тему (хотя видел, что новые ответы в ней есть) в наивной надежде, что за это время напишут хоть что-то умное. Увы, надежда не оправдалась: написанное в мое отсутствие оказалось еще более жестяной жестью, чем до того. За сим не вижу никакой пользы в дальнейшем вникании в ваши разборки в стиле "Горца" за честь остаться последним оставшимся единственно правильным гуру. Тем более, что они весьма унылы: ни тебе фехтования на мечах, ни аргументированной научной дискуссии, ни строчки кода, а одно только пустословное хамство. Если б я жаждал беседы подобного "научного уровня", сходил бы вечерком к ближайшей наливайке: несмотря на все ваши старания, тамошних завсегдатаев в этом специфическом, с позволения сказать, искусстве аргументации вам ни в жизнь не переплюнуть. Жив буду - вернусь. Когда-нибудь. Постарайтесь к тому моменту не сжить друг друга со свету с форума. Не хотелось бы, чтобы к моему возвращению на ветке остался только один Макклауд - тогда она станет совсем уж печальной и бесполезной.


Я всего лишь (вежливо) указал Диагностику на недопустимость подобных речеваний в ваш адрес.
Диагностик (еще вежливее) указал на допустимость подобных словесных эскапад. Можно сказать, оставил за собой право.

Какие еще "фехтования на мечах"? Какие "научные дискуссии"? Какие "строчки кода"? Причем здесь старые галоши?
Ничего не понимаю.

Но ясно одно: ваша логика - того-с: демонстративно вам изменяет.
Вам надо поскорее сменить рюмочную.
В этой "наливайке" вам постоянно наливают что-то не то.

Диагностик
Топикстартёру мною лично был задан вопрос. Он его либо не понял, либо не услышал, либо проигнорировал ("Не сказать ещё хужей.")
100$
Тут вот еще какая штука выяснилась: на неотрицательном носителе k=1,2,3,... определено также логарифмическое распределение. Ссылка
Интересно, чтобы его сгенерировать, тоже надо у Пуассоновского распределения тупо нули отсечь?
Вот вопрос вопросов.
Диагностик
См. Генераторы дискретно распределенных случайных величин, Логарифмическое распределение. https://habr.com/ru/post/265321/
Игорь
Цитата(Диагностик @ 1.12.2022 - 02:51) *
См. Генераторы дискретно распределенных случайных величин, Логарифмическое распределение. https://habr.com/ru/post/265321/

Спасибо. Красивая библиотека на правильном языке программирования. Кодом, конечно, пользоваться не буду, но документацию посмотрю.
Игорь
Говорил выше, что библиотека примеров для исследователей - неплохая идея ...

Свежий корректный пример регрессии Пуассона https://nplus1.ru/news/2022/12/02/from-bike-to-transplant
100$
Я продолжу эту тему поиском ответа на основной вопрос ТС: "можно ли вычесть единицу из zero-truncated Poisson distribution и прогнать обычную регрессию Пуассона?".

Ссылка на то, что это вообще такое -ZTP вот

Под нумером [6] в перечне ссылок фигурирует страница с кодами/способами генерации ZTP distribution. Ссылка

Там рассмотрены два способа генерации - (A) и (B)

Способ (A) "Rejection sampling":

Код
n<-1000; T<-3.5
  Y<-rpois(n,T); Y0<-Y[Y>0]; r<-(n - length(Y0))

  while(r>0)
{ Y<-rpois(r,T); Y0<-c(Y0,Y[Y>0]); r<-(n - length(Y0)) }


ясно указывает на то, что "генерация выборки с отклонением" представляет собой не однократное усечение нулей, как доказывал ТС, а "итерационный" возобновляемый процесс многократного усечения, причем параметр r на каждой новой генерации/итерации зависит от количества нулей, отброшенных на предыдущей итерации.

Так я ответил на свой собственный вопрос о том, как же обеспечить заявленный объем выборки в 2000, если из нее выбросить ~1200 нулей.
А то ТС с ответом затруднился.

Способ генерации (B)

n<-1000 # desired size of sample
T<-3.5 # pre-truncation mean of Poisson
U<-runif(n) # the uniform sample
t = -log(1 - U*(1 - exp(-T))) # the "first" event-times
T1<-(T - t) # the set of (T-t)

X <- rpois(n,T1)+1 # the final truncated Poisson sample

явно указывает на то, что при вычитании единицы из ZTP получится выборка, каждый элемент которой сгенерирован с параметром T1=(T-t), что означает разную распределенность элементов такой выборки. Ergo считать ее выборкой независимых одинаково распределенных пуассоновских величин нет оснований. И она не описывается единым параметром распределения, который в регрессии выступает в качестве зависимой (моделируемой) переменной.
По-видимому, это и есть тот самый теоретический "запрет", превращающий ZTP в распределение - "мутант". Просто бессмыслица получится. Хотя на выборках объемом 10 это может и не бросаться в глаза.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.