Отрицательная биноминальная регрессия вручную - PullRequest
0 голосов
/ 10 декабря 2018

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

Как мне получить матрицу бета-значений и p-значений, и мне не нужно записывать каждую бета-экспликацию.

Для пуассоновской регрессии мне это удалось, как показано в приведенном ниже коде:

daten<-warpbreaks
LogLike <- function(y,x, par) {
  beta <- par
  lambda <- exp(beta%*%t(x))
  LL <- -sum(dpois(y, lambda, log = TRUE))
  return(LL)
}


PoisMod<-function(formula, data){
  form <- formula(formula)
  model <- model.frame(formula, data = data)
  x <- model.matrix(formula,data = data)
  y <- model.response(model)
  par <- rep(0,ncol(x))
  erg <- list(optim(par=par,fn=LogLike,x=x,y=y)$par)
  return(erg)
}

PoisMod(breaks~wool+tension, as.data.frame(daten))
glm(breaks~wool+tension, family = "poisson", data = as.data.frame(daten))

В случае отрицательного бинома, как написать эту часть

daten<-warpbreaks
    LogLike <- function(y,x, par) {
      beta <- par
      lambda <- exp(beta%*%t(x))
      LL <- -sum(dpois(y, lambda, log = TRUE))
      return(LL)
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...