Correçoes nas expressoes matematicas.

parent b0efaa30
......@@ -7,25 +7,25 @@
#' @details A função de log-verossimilhança da Poisson Generalizada, na
#' parametrização de modelo de regressão é:
#'
#' \deqn{ll(\lambda,\alpha,y) = y (\log(\lambda) - \log(1 +
#' \alpha\lambda)) + (y - 1) \log(1 + \alpha y) -
#' \lambda\left\(\frac{1 + \alpha y}{1 + \alpha\lambda}\right\) -
#' \log(y!).
#' }
#'
#' \eqn{\alpha} é o parâmetro de dispersão e \eqn{\lambda > 0} é a
#' média \eqn{E(Y) = \lambda} e \eqn{y = 0,1,ldots} é vetor
#' \deqn{\ell(\lambda,\alpha,y) =
#' y (\log(\lambda) - \log(1 + \alpha\lambda)) +
#' (y - 1) \log(1 + \alpha y) -
#' \lambda\left(\frac{1 + \alpha y}{1 + \alpha\lambda}\right) -
#' \log(y!), }
#'
#' em que \eqn{\alpha} é o parâmetro de dispersão e \eqn{\lambda > 0} é
#' a média \eqn{E(Y) = \lambda} e \eqn{y = 0,1,ldots} é vetor
#' observado da variável de contagem. Nessa parametrização,
#' \eqn{V(Y) = \lambda (1 + \alpha\lambda)^2}. A Poisson
#' Generalizada em a Poisson como caso particular quando $\alpha =
#' 0$.
#' Generalizada em a Poisson como caso particular quando \eqn{\alpha
#' = 0}.
#'
#' Para o modelo de regressão, um preditor linear é ligado à média pela
#' função de ligação log, \eqn{\log(\lambda) = X\beta}, tal como é
#' para o modelo Poisson com link log.
#'
#' O espaço paramétrico de \eqn{\alpha} não limitado para o lado direito
#' do zero (\eqn{alpha} positivo) mas para o lado esquerdo
#' do zero (\eqn{\alpha} positivo) mas para o lado esquerdo
#' (\eqn{\alpha} negativo) o limite inferior é dependente do
#' parâmetro \eqn{\lambda} e dos valores observados de
#' \eqn{y}. Valores não finitos podem ser retornados durante a
......@@ -41,7 +41,7 @@
#' @param X A matriz de delineamento correspondente ao modelo linear
#' ligado à média pela função de ligação log. A matriz do modelo
#' pode ser construída com a função
#' \code{link[stats]{model.matrix}}.
#' \code{\link[stats]{model.matrix}}.
#' @param offset Um vetor, de mesmo comprimento de \code{y}, com valores
#' que correspondem aos offsets (ou exposição) para cada valor
#' observado. Se \code{NULL}, é usado 1 como offset.
......@@ -106,19 +106,18 @@ llpgnz <- function(params, y, X, offset = NULL) {
#' com distribuição Poisson Generalizada na parametrização
#' \eqn{\lambda-\alpha}:
#'
#' \deqn{
#' p(y,\lambda,\alpha) =
#' \left\(\frac{\lambda}{1+\alpha\lambda}\right\)^{y}
#' \,\frac{(1+\alpha y)^{y-1}}{y!}
#' \exp\left\{-\lambda\left(
#' \frac{1+\alpha y}{1+\alpha\lambda}\right)\right\},
#' \deqn{p(y,\lambda,\alpha) =
#' \left(\frac{\lambda}{1+\alpha\lambda}\right)^{y}
#' \,\frac{(1+\alpha y)^{y-1}}{y!}
#' \exp\left\{-\lambda\left(
#' \frac{1+\alpha y}{1+\alpha\lambda}\right)\right\},
#' }
#'
#' em que \eqn{\lambda > 0} é a média da variável aleatória e
#' \eqn{\alpha} é o parâmetro de dispersão, sendo que \eqn{V(Y) =
#' \lambda (1 + \alpha\lambda)^2}. O espaço paramétrico de
#' \eqn{\alpha} depende de \eqn{\lambda} e \eqn{y} pois
#' \eqn{1+\alpha\lambda > 0} e {1+\alpha y > 0}.
#' \eqn{1+\alpha\lambda > 0} e \eqn{1+\alpha y > 0}.
#' @param y Valor da variável de contagem.
#' @param lambda Valor do parâmetro \eqn{\lambda} que é a média da
#' distribuição .
......@@ -215,6 +214,7 @@ dpgnz <- function(y, lambda, alpha) {
#'
#' plot(profile(n0, which = "alpha"))
#'
#' @importFrom stats glm.fit model.frame model.matrix model.offset model.response poisson
pgnz <- function(formula, data, start = NULL, ...) {
frame <- model.frame(formula, data)
terms <- attr(frame, "terms")
......
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/pgnz.R
\name{dpgnz}
\alias{dpgnz}
\title{Probabilidades do Modelo Poisson Generalizado}
\usage{
dpgnz(y, lambda, alpha)
}
\arguments{
\item{y}{Valor da variável de contagem.}
\item{lambda}{Valor do parâmetro \eqn{\lambda} que é a média da
distribuição .}
\item{alpha}{Valor do parâmetro \eqn{\alpha} que é o parâmetro de
dispersão.}
}
\value{
Retorna uma probabilidade, ou seja \eqn{\Pr(Y = y | \lambda,
\alpha) = p(y, \lambda, \alpha)}.
}
\description{
Calcula as probabilidades para uma variável aleatória
com distribuição Poisson Generalizada na parametrização
\eqn{\lambda-\alpha}:
\deqn{p(y,\lambda,\alpha) =
\left(\frac{\lambda}{1+\alpha\lambda}\right)^{y}
\,\frac{(1+\alpha y)^{y-1}}{y!}
\exp\left\{-\lambda\left(
\frac{1+\alpha y}{1+\alpha\lambda}\right)\right\},
}
em que \eqn{\lambda > 0} é a média da variável aleatória e
\eqn{\alpha} é o parâmetro de dispersão, sendo que \eqn{V(Y) =
\lambda (1 + \alpha\lambda)^2}. O espaço paramétrico de
\eqn{\alpha} depende de \eqn{\lambda} e \eqn{y} pois
\eqn{1+\alpha\lambda > 0} e \eqn{1+\alpha y > 0}.
}
\examples{
dpois(5, lambda = 5)
dpgnz(5, lambda = 5, alpha = 0)
probs <- data.frame(y = 0:30)
within(probs, {
py0 <- dpois(y, lambda = 15)
py1 <- dpgnz(y, lambda = 15, alpha = 0)
py2 <- dpgnz(y, lambda = 15, alpha = 1/30)
py3 <- dpgnz(y, lambda = 15, alpha = -1/30)
plot(py0 ~ y, type = "h",
ylim = c(0, max(c(py0, py2, py3))),
ylab = expression(Pr(Y == y)))
points(y + 0.1, py1, type = "h", col = 2)
points(y - 0.3, py2, type = "h", col = 3)
points(y + 0.3, py3, type = "h", col = 4)
legend("topleft", bty = "n",
col = c(1:4), lty = 1,
legend = expression(
Poisson(lambda == 15),
PG(lambda == 15, alpha == 0),
PG(lambda == 15, alpha == 1/30),
PG(lambda == 15, alpha == -1/30)))
})
}
\author{
Walmes Zeviani, \email{walmes@ufpr.br}
}
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/pgnz.R
\name{llpgnz}
\alias{llpgnz}
\title{Log-Verossimilhança do Modelo Poisson Generalizada}
\usage{
llpgnz(params, y, X, offset = NULL)
}
\arguments{
\item{params}{Um vetor de (estimativas dos) parâmetros do modelo de
regressão. O primeiro elemento desse vetor é o parâmetro de
dispersão do modelo e os restantes são parâmetros de
locação. Essa função retorna o negativo da log-verossimilhança
pois foi construída para ser usada na \code{\link[bbmle]{mle2}}.}
\item{y}{Um vetor com variável dependente do modelo, resposta do tipo
contagem.}
\item{X}{A matriz de delineamento correspondente ao modelo linear
ligado à média pela função de ligação log. A matriz do modelo
pode ser construída com a função
\code{\link[stats]{model.matrix}}.}
\item{offset}{Um vetor, de mesmo comprimento de \code{y}, com valores
que correspondem aos offsets (ou exposição) para cada valor
observado. Se \code{NULL}, é usado 1 como offset.}
}
\value{
O negativo da log-verossimilhança do modelo Poisson
Generalizado para os parâmetros e dados informados.
}
\description{
Calcula a log-verossimilhança de um modelo de regressão
para a média com distribuição Poisson Generalizada para a
resposta de contagem (y).
}
\details{
A função de log-verossimilhança da Poisson Generalizada, na
parametrização de modelo de regressão é:
\deqn{\ell(\lambda,\alpha,y) =
y (\log(\lambda) - \log(1 + \alpha\lambda)) +
(y - 1) \log(1 + \alpha y) -
\lambda\left(\frac{1 + \alpha y}{1 + \alpha\lambda}\right) -
\log(y!), }
em que \eqn{\alpha} é o parâmetro de dispersão e \eqn{\lambda > 0} é
a média \eqn{E(Y) = \lambda} e \eqn{y = 0,1,ldots} é vetor
observado da variável de contagem. Nessa parametrização,
\eqn{V(Y) = \lambda (1 + \alpha\lambda)^2}. A Poisson
Generalizada em a Poisson como caso particular quando \eqn{\alpha
= 0}.
Para o modelo de regressão, um preditor linear é ligado à média pela
função de ligação log, \eqn{\log(\lambda) = X\beta}, tal como é
para o modelo Poisson com link log.
O espaço paramétrico de \eqn{\alpha} não limitado para o lado direito
do zero (\eqn{\alpha} positivo) mas para o lado esquerdo
(\eqn{\alpha} negativo) o limite inferior é dependente do
parâmetro \eqn{\lambda} e dos valores observados de
\eqn{y}. Valores não finitos podem ser retornados durante a
estimação quando \eqn{1 + \alpha\lambda} ou \eqn{1 + \alpha y}
não forem maiores que zero.
}
\examples{
set.seed(123)
y <- rpois(10, lambda = 5)
# Log-verossimilhança pela Poisson.
sum(dpois(y, lambda = 5, log = TRUE))
# Log-verossimilhança pela PGNZ usando alpha = 0
llpgnz(params = c(0, log(5)), y = y, X = cbind(y * 0 + 1))
set.seed(121)
y <- rpois(100, lambda = exp(1))
X <- cbind(0 * y + 1)
grid <- expand.grid(alpha = seq(-0.1, 0.4, by = 0.01),
lambda = seq(0.1, 2.1, by = 0.025))
grid$ll <- apply(grid, MARGIN = 1,
FUN = function(vec) {
llpgnz(params = vec, y = y, X = X, offset = NULL)
})
library(latticeExtra)
levelplot(ll ~ alpha + lambda, data = grid) +
layer(panel.abline(v = 0, h = 1, lty = 2))
}
\author{
Walmes Zeviani, \email{walmes@ufpr.br}
}
\seealso{
\code{\link[bbmle]{mle2}}.
}
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/pgnz.R
\name{pgnz}
\alias{pgnz}
\title{Ajuste do Modelo Poisson Generalizado}
\usage{
pgnz(formula, data, start = NULL, ...)
}
\arguments{
\item{formula}{Um objeto da classe \code{\link{formula}}. Se
necessária a inclusão de \emph{offset} deve-se indicá-lo como
\code{\link{offset}}.}
\item{data}{Um objeto de classe \code{data.frame} que contém as
variáveis descritas na \code{formula}.}
\item{start}{Um vetor com os valores iniciais para os parâmetros do
modelo necessários para o início do procedimento de estimação. Se
\code{NULL} as estimativas de um modelo log-linear Poisson, com
\eqn{\alpha = 0}, são utilizadas como valores iniciais, pois uma
chamada da \code{\link[stats]{glm.fit}} é feita internamente para
obtê-los. O parâmetro \eqn{\alpha} deve ser o primeiro elemento
do vetor. Os restantes devem estar na correspondente às colunas
da matriz gerada pelo argumento \code{formula}.}
\item{...}{Argumentos opcionais do framework de maximização numérica
\code{\link[bbmle]{mle2}}.}
}
\value{
Um objeto de classe \code{mle2}, retornado da função de
\code{\link[bbmle]{mle2}}, usada para estimação por máxima
verossimilhança de modelos.
}
\description{
Estima os parâmetros de um modelo Poisson Generalizado
pela otimização da função de log-verossimilhança definida em
\code{\link{llpgnz}}. A sintaxe assemelha-se com a função
\code{\link[stats]{glm}} (Generalized Linear Models).
}
\examples{
library(bbmle)
str(soja)
soja <- soja[-74, ]
m0 <- pgnz(nvag ~ bloc + umid * factor(K), data = soja)
m1 <- pgnz(nvag ~ bloc + umid + factor(K), data = soja)
anova(m0, m1)
summary(m1)
plot(profile(m1, which = "alpha"))
abline(v = 0, lty = 2, col = 2)
str(capdesfo)
n0 <- pgnz(ncap ~ est * (des + I(des^2)), data = capdesfo)
n1 <- pgnz(ncap ~ est + (des + I(des^2)), data = capdesfo)
anova(n0, n1)
summary(n0)
plot(profile(n0, which = "alpha"))
}
\author{
Walmes Zeviani, \email{walmes@ufpr.br}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment