Как предсказать новые данные со смещением в нулевой раздутой отрицательной биномиальной модели - PullRequest
0 голосов
/ 25 апреля 2020

Я работаю со взвешенными данными обследования, которые являются как слишком разбросанными, так и нулевыми. Моя переменная ответа - это количество поездок, совершаемых человеком за неделю. Физические лица имеют разный вес в зависимости от вида транспорта. См. Данные ниже:

df <- data.frame(
  trips = c(1,2,3,4,5,6,7,8,9,10),
  weights = c(1.02, 1.11, 1.00, 1.35, 1.22, 1.15, 1.07, 1.00, 1.25, 1.60),
  gender = c("M", "M", "M", "M", "M", "F", "F", "F", "F", "F"),
  age = c("0-15", "16+", "0-15", "16+", "0-15", "16+","0-15", "16+", "0-15", "16+"))

df <- mutate(df, weighted_trips = trips*weights)

trips weights gender  age       weighted_trips
1      1    1.02      M 0-15           1.02
2      2    1.11      M  16+           2.22
3      3    1.00      M 0-15           3.00
4      4    1.35      M  16+           5.40
5      5    1.22      M 0-15           6.10
6      6    1.15      F  16+           6.90
7      7    1.07      F 0-15           7.49
8      8    1.00      F  16+           8.00
9      9    1.25      F 0-15          11.25
10    10    1.60      F  16+          16.00

Все мои ковариаты являются категориальными переменными.

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

После некоторого исследования - кажется, что смещение здесь - то, к чему я должен стремиться. то есть

zeroinfl(trips ~ gender + age + offset(log(weighted_trips)), data = df, dist = "negbin")

Но как теперь я могу использовать функцию predict для прогнозирования новых значений, если у меня нет весов для новых данных?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...