diff --git a/.gitignore b/.gitignore
index 6086febed5da716cef892ef7c929890b528dba3c..06fbc631df1311a43d3c44f9ae899aa423d5ecb0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,7 +14,6 @@ playground.R
 **/figure/*
 *.nav
 *.snm
-*.tex
 
 ## Core latex/pdflatex auxiliary files:
 *.aux
diff --git a/inst/slides/Padrao_curso.tex b/inst/slides/Padrao_curso.tex
new file mode 100644
index 0000000000000000000000000000000000000000..88eff0dabd326cfe0afac6eb8f8a3b5ae876addd
--- /dev/null
+++ b/inst/slides/Padrao_curso.tex
@@ -0,0 +1,1245 @@
+\documentclass[10pt, aspectratio=169]{beamer}
+
+\usepackage[brazil]{babel}
+\usepackage[utf8]{inputenc}
+\usepackage{multicol}
+\usepackage{tikz}
+
+
+
+%% ======================================================================
+%% Cores para links
+\definecolor{url}{HTML}{000080}
+\definecolor{run}{HTML}{4A0082}
+\hypersetup{colorlinks, allcolors=., urlcolor=url, runcolor=run}
+
+\setbeamercolor{bibliography entry author}{fg=black}
+
+
+%% ======================================================================
+%% Tema e cores do documento
+\usetheme{CambridgeUS}
+\setbeamertemplate{itemize items}[triangle]
+\setbeamertemplate{navigation symbols}{}
+
+\setbeamertemplate{frametitle}{
+  \nointerlineskip
+  \begin{beamercolorbox}[sep=0.3cm, ht=1.8em,
+    wd=\paperwidth]{frametitle}
+    \vbox{}\vskip-2ex%
+    \strut\hspace*{3ex}\Large\bfseries\insertframetitle\strut
+    \vskip-0.8ex%
+  \end{beamercolorbox}
+}
+
+%% Slides em geral
+\setbeamercolor{frametitle}{bg=white, fg=teal}
+\setbeamercolor{structure}{fg=teal}
+\setbeamercolor{palette primary}{bg=gray!30, fg=teal}
+\setbeamercolor{palette tertiary}{bg=teal, fg=white}
+\setbeamercolor{footlinecolor}{fg=white,bg=teal}
+\setbeamercolor{caption name}{fg=teal}
+
+%% Slide Inicial
+\setbeamertemplate{title page}[default]
+\setbeamercolor{title}{fg=teal}
+\setbeamercolor{author}{fg=black!70}
+\setbeamercolor{institute}{fg=black!70}
+\setbeamercolor{date}{fg=black!70}
+\setbeamerfont{title}{series=\bfseries, size=\Large}
+
+%% ======================================================================
+%% Definição do cabeçalho e rodapé
+\setbeamerfont{headline}{size=\fontsize{6}{5}\selectfont}
+\setbeamertemplate{headline}{\bfseries
+  \leavevmode%
+  \hbox{%
+    \begin{beamercolorbox}[wd=.5\paperwidth, ht=2.2ex, dp=1ex, right, 
+      rightskip=1em]{section in head/foot}
+      \hspace*{2ex}\insertsectionhead
+    \end{beamercolorbox}%
+    \begin{beamercolorbox}[wd=.5\paperwidth, ht=2.2ex, dp=1ex, left,
+      leftskip=1em]{subsection in head/foot}
+      \insertsubsectionhead\hspace*{2ex}
+    \end{beamercolorbox}}
+  \vskip0pt
+}
+
+\setbeamerfont{footline}{size=\fontsize{6}{5}\selectfont}
+\makeatletter
+\setbeamertemplate{footline}{\ttfamily\bfseries
+  \leavevmode%
+  \hbox{%
+    \begin{beamercolorbox}[wd=.35\paperwidth, ht=2.4ex, dp=1ex, right, 
+      rightskip=1em]{footlinecolor}
+      \insertshortauthor%
+    \end{beamercolorbox}%
+    \begin{beamercolorbox}[wd=.55\paperwidth, ht=2.4ex, dp=1ex, left,
+      leftskip=1em]{footlinecolor}
+      \hfill\insertshorttitle%
+    \end{beamercolorbox}%
+    \begin{beamercolorbox}[wd=.1\paperwidth, ht=2.4ex, dp=1ex, left,
+      leftskip=1em]{footlinecolor}
+      Slide \insertframenumber
+    \end{beamercolorbox}}
+  \vskip0pt
+}
+\makeatother
+
+%% ======================================================================
+%% Layout do tableofcontents
+\setbeamertemplate{section in toc}{
+  {\color{teal} \bfseries\inserttocsectionnumber.}~
+  {\leftskip=0.5em\color{black}\inserttocsection\par}
+}
+
+\setbeamertemplate{subsection in toc}{
+  {\color{teal!80} 
+  \bfseries\inserttocsectionnumber.\inserttocsubsectionnumber}~
+  \leftskip=2em{\color{black}\inserttocsubsection\par}
+}
+
+%% ======================================================================
+%% Formatando slides para seções e subseções
+\AtBeginSection[]{
+  \begin{frame}[c, allowframebreaks]
+    \begin{center}
+      \textcolor{teal}{\thesection} \\ \vspace{0.3cm}
+      \parbox{0.6\textwidth}{
+        \centering \textcolor{teal}{\LARGE \bf \insertsection}}\\
+    \end{center}
+  \end{frame}
+}
+
+\AtBeginSubsection{
+  \begin{frame}[c, allowframebreaks]
+    \begin{center}
+      \textcolor{teal}{\thesection.\thesubsection} \\ \vspace{0.3cm}
+      \parbox{0.6\textwidth}{
+        \centering \textcolor{teal!80}{\large \insertsection}\\
+        \centering \textcolor{teal}{\Large \bf \insertsubsection}}\\
+    \end{center}
+  \end{frame}
+}
+
+%% ======================================================================
+%% Metadados do documento
+\title{Modelos de Regressão para Dados de Contagem com R}
+\author[Walmes Zeviani, Eduardo Jr \& Cesar Taconelli]{
+  Prof. Dr. Walmes M. Zeviani\\
+  Eduardo E. Ribeiro Jr\\ 
+  Prof. Dr. Cesar A. Taconelli
+}
+\institute[UFPR]{
+  Laboratório de Estatística e Geoinformação \\
+  Departamento de Estatística \\
+  Universidade Federal do Paraná}
+\date{\today \\[0.1cm] \url{edujrrib@gmail.com}}
+%\titlegraphic{\includegraphics[width=2cm]{images/MRDCr_logo}}
+
+%% ======================================================================
+
+\begin{document}
+
+
+% Titulo
+\title[\sc{MRCR}]{Modelos de Regressão para Dados de Contagens com o R}
+
+\author[Zeviani, W.M.; Ribeiro Jr, E.E.; Taconeli, C.A.]{Walmes Marques Zeviani, Eduardo Elias Ribeiro Junior, Cesar Augusto Taconeli}
+
+\institute{Universidade Federal do Paraná} % opcional
+\date{\today}
+
+\begin{frame}
+  \titlepage
+\end{frame}
+
+\renewcommand{\vec}[1]{\mathbf{#1}}
+
+
+
+%%%-----------------------------------------------------------------------------------------
+
+
+%%% Slide 2
+
+\begin{frame}\frametitle{Dados de contagens}
+Alguns exemplos de problemas envolvendo contagens:
+
+\vspace{0,2cm}
+\begin{itemize}
+\item Número de acidentes em uma rodovia por semana;
+\item Número de automóveis vendidos por dia;
+\item Número de gols marcados por times de futebol por partida;
+\item Número de falhas por metro de fio de cobre produzido;
+\item Número de colônias de bactérias por $0,01mm^{2}$ de uma dada cultura...
+\end{itemize}
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 3
+
+\begin{frame}\frametitle{Modelos probabilísticos para dados de contagens}
+
+\begin{itemize}
+    \item Modelos probabilísticos para variáveis aleatórias discretas, com suporte no conjunto de números inteiros não-negativos, são potenciais candidatos para a análise de dados de contagens.
+    
+\vspace{0.5cm}    
+    
+    \item Algumas alternativas: Distribuição Binomial, Poisson e generalizações; distribuições geradas por misturas, como a beta-binomial, binomial negativa; distribuições fundamentadas na modelagem do tempo entre eventos, como a Gamma-Count...
+    
+   
+\end{itemize}
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 4
+
+\begin{frame}\frametitle{Regressão para dados de contagens}
+
+\begin{itemize}
+
+\item Modelos de regressão são utilizados para modelar a distribuição de uma variável aleatória $Y$ condicional aos valores de um conjunto de variáveis explicativas $x_{1},x_{2},...,x_{p}$.
+
+\vspace{0,5cm}
+
+\item Métodos para inferência e modelos de regressão para dados de contagem estão bem
+aquém, em quantidade e diversidade, em relação ao verificado para dados contínuos.
+
+\vspace{0,5cm}
+
+\item A aplicação de modelos de regressão com erros normais na análise de contagens, embora frequente, em geral é desaconselhável.
+
+\end{itemize}
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 5
+
+\begin{frame}{Limitações do modelo de regressão com erros normais na análise de dados de contagens}
+    
+    \vspace{0,5cm}
+    
+    \begin{itemize}
+        \item O modelo linear com erros normais não considera a natureza discreta dos dados;
+        
+        \vspace{0,5cm}
+        
+        \item Associa probabilidade nula a qualquer possível contagem;
+        
+        \vspace{0,5cm}
+        
+        \item Admite probabilidades não nulas a valores negativos da variável;
+       
+    \end{itemize}
+    
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 6
+
+
+\begin{frame}{Limitações do modelo de regressão com erros normais na análise de dados de contagens}
+    
+    
+    \vspace{0,2cm}
+    
+    \begin{itemize}
+ 
+        \item O uso de transformações dificulta a interpretação dos resultados;
+        
+        \vspace{0,5cm}
+        
+        \item O uso da transformação logarítmica apresenta problemas para contagens iguais a zero;
+        
+        \vspace{0,5cm}
+        
+        \item Não se contempla a relação não constante entre variância e média, característica de  dados de contagens.
+        
+        
+    \end{itemize}
+    
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 7
+
+\begin{frame}{A distribuição de Poisson}
+    
+    \begin{itemize}
+        \item A distribuição de Poisson é a principal referência para a análise de dados de contagens.
+ \vspace{0,3cm}       
+        \item Função de probabilidades:
+
+        
+$$
+    P\left ( Y=k \right )=\frac{e^{-\mu}\mu^{k}}{k!},\hspace{5mm}k=0,1,2,...; \mu>0.
+$$
+ 
+   \vspace{0,2cm}    
+   
+       \item Se os eventos sob contagem  ocorrem independentemente e sujeitos a uma taxa constante $\lambda >0$, sob o modelo Poisson,  para um intervalo de exposição de tamanho $t$ tem-se: 
+  
+$$
+    P\left ( Y=k \right )=\frac{e^{-\lambda t}(\lambda t)^{k}}{k!},\hspace{5mm}k=0,1,2,....
+$$
+        \end{itemize}
+        
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 8
+
+\begin{frame}{Motivações para a distribuição de Poisson}
+    
+
+
+    \vspace{0,5cm}
+    
+    \begin{itemize}
+        \item Caso limite da distribuição binomial$(n, \pi)$ quando $n\rightarrow \infty$ e $\pi\rightarrow 0$, fixado $\mu=n\pi$, ou seja:
+
+$$
+     \underset{n \to \infty, \pi \to 0 }{lim}
+\left [ \begin{pmatrix}
+ n\\k 
+\end{pmatrix} \left ( \frac{\mu}{n} \right )^{k}\left ( 1-\frac{\mu}{n} \right )^{n-k}\right ]=\frac{e^{-\mu}\mu^{k}}{k!}.
+$$
+
+    \vspace{0,5cm}
+
+        \item Resultado do processo estocástico de Poisson, em que os eventos contados ocorrem \textbf{aleatoriamente} ao longo do tempo, espaço,...
+
+    \end{itemize}
+    
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 9
+
+\begin{frame}{Motivações para a distribuição de Poisson}
+
+\begin{itemize}
+    
+
+        \item Se o tempo decorrido entre sucessivos eventos é uma variável aleatória com distribuição exponencial de média $\mu=1/\lambda$, então o número de eventos ocorridos em um intervalo t de tempo tem distribuição de Poisson com média $\lambda t$.
+        
+         \vspace{0,3cm}
+         
+\begin{itemize}    
+        
+        \item A dualidade entre as distribuições Poisson e exponencial implica que a taxa de ocorrência do evento, definida por:
+        
+        
+\end{itemize}
+
+    
+$$
+    \epsilon =\lim_{\Delta t\rightarrow 0}\frac{P\left \{ \text{evento ocorrer em} \left ( t,t+\Delta t \right ) \right \}}{\Delta t},
+$$  
+
+     \vspace{0,3cm}
+     
+dado que o evento não ocorreu até o tempo $t$, \textbf{é constante} para todo $t>0$.
+
+        
+         \end{itemize}
+    
+\end{frame}   
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 10
+
+\begin{frame}{O processo de Poisson}
+    
+    O Processo de Poisson configura um processo de contagem em que $Y(t),t\geqslant 0$, representa o número de eventos que ocorrem até $t$, satisfazendo:
+    
+    \vspace{0,5cm}
+    
+    \begin{enumerate}
+        \item $Y(t)$ é inteiro e não negativo;
+        \item Para $s<t$, $Y(s)\leq Y(t)$;
+        \item $Y(t)-Y(s)$ é o número de eventos que ocorrem no intervalo $(s,t]$;
+        \item O processo é estacionário:
+        
+        $$
+            Y(t_{2}+s)-Y(t_{1}+s) \overset{i.d. }{\sim}Y(t_{2})-Y(t_{1}), \forall s>0
+       $$
+        
+        \item O processo tem incrementos independentes, ou seja, os números de eventos verificados em intervalos disjuntos são independentes.
+    \end{enumerate}
+
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+
+%%% Slide 14
+
+\begin{frame}{Diferentes padrões em processos de contagens}
+    
+\begin{figure}[h]
+    \includegraphics[scale=0.6]{images/processos14.pdf}
+    \caption{Ilustração de diferentes tipos de processos pontuais}
+    \label{Fig2}
+    \centering
+    
+\end{figure}
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 11
+
+\begin{frame}{Propriedades da distribuição de Poisson}
+
+Dentre as principais propriedades da distribuição de Poisson, tem-se:
+
+\vspace{0,3cm}
+
+\begin{itemize}
+
+    \item Média: $E(Y)=\mu = \lambda t$;
+    \vspace{0,5cm}
+    
+    \item Variância: $Var(Y)=\mu$ (equidispersão);
+    \vspace{0,5cm}
+    
+    \item Razão de probabilidades sucessivas: $\frac{P\left ( X=k \right )}{P\left ( X=k-1 \right )}=\frac{\mu}{k},$ gerando a relação de recorrência:
+    
+    $$
+        P(Y=k)k=P(Y=k-1)\mu;
+    $$
+    
+    \item Se $Y_{1},Y_{2},...,Y_{n}$ são v.a.s independentes com $Y_{i}\sim Poisson(\mu_{i})$, e $\sum\mu_{i}<\infty$, então $\sum Y_{i}\sim Poisson(\sum\mu_{i})$,
+    
+    \end{itemize}
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 13
+
+\begin{frame}{Ilustração}
+    
+    \begin{figure}[h]
+    \includegraphics[height=6cm,width=9cm]{images/graf1.pdf}
+    \caption{Distribuição de Poisson para diferentes valores de $\mu$}
+    \label{Fig1}
+    \centering
+    
+\end{figure}
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 15
+
+\begin{frame}{Regressão Poisson} 
+
+\begin{itemize}
+    \item O modelo de regressão Poisson (ou modelo log linear de Poisson) é o mais usado para a análise de dados de contagens.
+    
+    \vspace{0,5cm}
+    
+    \item A regressão Poisson baseia-se nos pressupostos inerentes ao processo e à distribuição de Poisson.
+    
+    \vspace{0,5cm}
+    
+    \item Caso tais pressupostos não sejam atendidos, a regressão Poisson ainda pode ser uma alternativa apropriada, desde que usada com os cuidados necessários.
+    
+\end{itemize}
+
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 16
+
+\begin{frame}{Regressão Poisson - Especificação do modelo} 
+
+\begin{itemize}
+    \item Sejam $Y_{1},Y_{2},...,Y_{n}$ variáveis aleatórias condicionalmente independentes, dado o vetor de covariáveis ${\vec{x_{i}}}'=(x_{i1},x_{i2},...,x_{ip}), i=1,2,...,n$. A regressão Poisson é definida pela distribuição de Poisson:
+
+
+$$
+   f(y_{i}|\boldsymbol{x_{i}})=\frac{e^{-\mu_{i}}(\mu_{i})^{y_{i}}}{y_{i}!},\hspace{5mm}y=0,1,2,...,
+$$
+
+\vspace{0,2cm}
+ 
+sendo as covariáveis inseridas ao modelo da seguinte forma:
+
+$$
+\ln(\mu _{i})=\boldsymbol{x_{i}'} \boldsymbol{\beta},
+$$
+
+\vspace{0,2cm}
+ 
+em que ${\boldsymbol{\beta }}$ é o vetor de parâmetros de regressão.
+ 
+
+\end{itemize}
+
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+
+%%% Slide 17
+
+\begin{frame}{Regressão Poisson - Propriedades} 
+
+
+\vspace{0,8cm}  
+    
+    \begin{itemize}
+        
+        \item $f(y_{i}|\boldsymbol{x_{i}})=\frac{\exp^{- \vec{{x_{i}}' \beta}}( \vec{{x_{i}}' \beta})^{y_{i}}}{y_{i}!},\hspace{5mm}y=0,1,2,...$
+
+  
+  \vspace{0,8cm}  
+
+        
+        \item $E\left [ y_{i}|\boldsymbol{x_{i}} \right ]= \mu_{i}=exp\left ( \boldsymbol{x'_{i}\beta} \right );$
+
+\vspace{0,8cm}  
+   
+        \item $Var\left [ y_{i}|\mathbf{x_{i}} \right ]= \mu_{i}=exp\left ( \boldsymbol{x'_{i}\beta} \right ).$
+    
+
+    
+    
+\end{itemize}
+
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 25
+
+\begin{frame}{Modelos Lineares Generalizados(MLG)} 
+
+\begin{itemize}
+
+\item A teoria dos modelos lineares generalizados se estende às variáveis aleatórias cujas funções (densidade) de probabilidades possa ser expressas na forma exponencial linear:
+
+  \vspace{0,5cm}  
+
+$$
+    f\left ( y;\theta,\phi \right) =exp\left \{ \frac{y\theta-b\left ( \theta \right )}{\phi}+c\left ( y;\phi \right ) \right \},
+$$
+  \vspace{0,5cm}  
+sendo $\theta=\theta(\mu)$ denominado \textit{parâmetro canônico} e $\phi$ o parâmetro de dispersão.
+
+  \vspace{0,5cm}  
+
+\item Casos particulares: Binomial, Poisson, Normal, Gama, Exponencial...
+
+\end{itemize}
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 26
+
+\begin{frame}{Modelos Lineares Generalizados} 
+\begin{itemize}
+
+\item Propriedades:
+
+$$
+    E[Y]=b'(\theta)=\frac{\partial b(\theta)}{\partial \theta};
+$$ 
+
+$$   
+    Var[Y]=\phi b''(\theta)=\phi\frac{\partial \mu}{\partial \theta}=\phi V(\mu)
+$$
+
+
+\item Para a Poisson:
+
+$$\theta = \log(\mu); \hspace{0.2cm} b(\theta)=\exp(\theta); \hspace{0.2cm} \phi=1; \hspace{0.2cm} V(\mu)=\mu.$$
+
+\end{itemize}
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 27
+
+\begin{frame}{Modelo Linear Generalizado} 
+
+\begin{itemize}
+
+
+ \item Definição do modelo:
+
+  \vspace{0,5cm}  
+  
+$$
+   g(\mu_{i})=\boldsymbol{x'_{i}\beta}=\beta_{0}+\beta_{1}x_{i1}+...+\beta_{p}x_{ip},
+$$
+
+  \vspace{0,5cm}  
+  
+sendo $g(\cdot)$ uma função real, monótona e diferenciável.
+
+  \vspace{0,5cm}  
+  
+\item Para a distribuição Poisson é usual considerar:
+
+$$
+   g(\mu_{i})= \log(\mu_i) = \boldsymbol{x'_{i}\beta}=\beta_{0}+\beta_{1}x_{i1}+...+\beta_{p}x_{ip}.
+$$
+
+\end{itemize}
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+
+\begin{frame}{Modelo Linear Generalizado} 
+
+\begin{itemize}
+
+
+\item Sejam $Y_{1},Y_{2},...,Y_{n}$ independentes, com distribuição expressa na forma exponencial linear. Temos a seguinte log-verossimilhança:
+
+$$
+    l(\boldsymbol{\beta })=\phi^{-1}\sum_{i=1}^{n}(y_{i}\theta_{i}-b(\theta_{i}))+\sum_{i=1}^{n}c(y_{i},\phi),
+$$
+
+sendo $\theta_i=q(\mu_i) \text{ e } g(\mu_i)=\eta_i=\beta_{0}+\beta_{1}x_{i1}+...+\beta_{p}x_{ip}.$
+
+
+\item Função escore:
+
+$$
+   S(\beta_j)=\phi^{-1}\sum_{i=1}^{n}\frac{y_{i}-\mu_{i}}{V(\mu_{i})} \frac{\partial \mu_{i}}{\partial \eta_{i}}x_{ij}, \hspace{0,3cm} j=0,1,2,...,p.
+$$
+
+
+
+
+\end{itemize}
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 29
+
+\begin{frame}{Modelo Linear Generalizado} 
+
+\begin{itemize}
+
+
+\item A estimação via máxima verossimilhança de $\boldsymbol{\beta}$ se dá pela solução do sistema de equações $S_j=S(\beta_j)=0$, $j=0,1,2,...,p$.
+
+  \vspace{0,5cm}  
+
+
+\item Matriz de informação esperada (informação de Fisher):
+
+$$
+I(\boldsymbol{\beta})=-E
+\begin{bmatrix}
+\frac{\partial l^{2}(\boldsymbol{\beta , y})}{\partial \beta_{0}^{2}  } &
+\frac{\partial l^{2}(\boldsymbol{\beta , y})}{\partial \beta_{0} \partial \beta_{1}  } &
+\cdots  &  
+\frac{\partial l^{2}(\boldsymbol{\beta , y})}{\partial \beta_{0} \partial \beta_{p}  }\\ 
+\frac{\partial l^{2}(\boldsymbol{\beta , y})}{\partial \beta_{0} \partial \beta_{1}  } &  
+\frac{\partial l^{2}(\boldsymbol{\beta , y})}{\partial \beta_{1}^{2}  } &
+\cdots  &
+\frac{\partial l^{2}(\boldsymbol{\beta , y})}{\partial \beta_{1} \partial \beta_{p}  }
+ \\ 
+\vdots & \vdots & \ddots & \vdots \\ 
+\frac{\partial l^{2}(\boldsymbol{\beta , y})}{\partial \beta_{0} \partial \beta_{p}  } &
+\frac{\partial l^{2}(\boldsymbol{\beta , y})}{\partial \beta_{1} \partial \beta_{p}  }  &
+\cdots  & 
+\frac{\partial l^{2}(\boldsymbol{\beta , y})}{\partial \beta_{p}^{2}  }
+\end{bmatrix}
+$$
+
+\end{itemize}
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 30
+
+\begin{frame}{Modelo Linear Generalizado}
+
+\begin{itemize}
+
+     \item O termo característico da matriz informação esperada, $I_{jk}$, é dado por:
+     
+     $$
+         I_{jk}=\phi^{-1} \sum_{i=1}^{n}\omega_{i}x_{ij}x_{ik},
+     $$
+
+sendo 
+
+$$
+    \omega_{i}=V(\mu_{i})\left ( \frac{\partial \mu_{i}}{\partial \eta_{i}} \right )^{2}.
+$$
+
+     \item Matricialmente:
+     
+$$
+      \boldsymbol{I}=   \boldsymbol{I}(\boldsymbol{\beta})=\phi^{-1}\boldsymbol{X'WX},
+$$
+\end{itemize}
+
+sendo $\boldsymbol{X}$ a matriz do modelo e $\boldsymbol{W}$ a matriz diagonal com elementos $\{\omega_{1}, \omega_{2}, ..., \omega_{n}\}$.
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 31
+
+\begin{frame}{Modelo Linear Generalizado} 
+
+\begin{itemize}
+
+\item Estimação dos parâmetros: algoritmo escore de Fiher (processo iterativo):
+
+  \vspace{0,5cm}
+
+$$
+    \boldsymbol{\beta}^{(m+1)}=\boldsymbol{\beta}^{(m)}+(\boldsymbol{I}^{(m)})^{-1}\boldsymbol{S^{(m)}},
+$$
+
+  \vspace{0,5cm}
+
+sendo $\boldsymbol{S^{(m)}}$ e $\boldsymbol{I}^{(m)}$ o vetor escore e a matriz informação avaliados no passo $m$.
+
+  \vspace{0,5cm}
+  
+\item Substituindo $\boldsymbol{S^{(m)}}$ e $\boldsymbol{I}^{(m)}$ pelas correspondentes expressões para um modelo linear generalizado, temos:
+
+$$
+    \boldsymbol{\beta}^{(m+1)}=(\boldsymbol{X'WX})^{-1}\boldsymbol{X'W^{(m)}z^{(m)}}
+$$
+
+
+\end{itemize}
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 32
+
+\begin{frame}{Modelo Linear Generalizado} 
+
+\begin{itemize}
+
+\item Como resultado temos um processo iterativo de mínimos quadrados ponderados, em que $\boldsymbol{W}^{(m)}$ é a matriz de pesos, atualizados a cada passo do processo, e
+
+$$
+    \boldsymbol{z}^{(m+1)}=\boldsymbol{\eta}^{(m)}+\boldsymbol{G}^{(m)}\boldsymbol{(y-\mu^{(m)})},
+$$
+
+é a variável dependente ajustada, sendo $\boldsymbol{G}$ a matriz diagonal com elementos $\{d\eta_{1}/d\mu_{1},
+d\eta_{2}/d\mu_{2},...,d\eta_{n}/d\mu_{n}\}.$
+
+\item Assintoticamente,
+
+$$
+    \boldsymbol{\hat{\beta}}\overset{a}{\sim} N_{p+1}\left ( \boldsymbol{\beta}, \boldsymbol{I^{-1}\left ( \boldsymbol{\beta} \right )} \right ),
+$$
+
+com $\boldsymbol{I^{-1}(\boldsymbol{\beta})}=Var(\boldsymbol{\hat{\beta}})=\phi (\boldsymbol{X'WX})^{-1}$. 
+
+
+\end{itemize}
+
+\end{frame}
+
+
+
+%%%-----------------------------------------------------------------------------------------
+
+
+
+%%% Slide 18
+
+\begin{frame}{Regressão Poisson} 
+
+Para a regressão Poisson:
+
+\vspace{0.5cm}
+
+\begin{itemize} 
+
+\item $l(\boldsymbol{\beta})=\sum_{i=1}^{n} \{ y_{i}\boldsymbol{x_{i}'\beta}-\exp{(\boldsymbol{x_{i}'\beta}}\}-\ln{y_{i}!});$
+
+\vspace{0.5cm}
+
+\item $\boldsymbol{S}(\boldsymbol{\beta})=\frac{\partial l(\boldsymbol{\beta};\boldsymbol{y})}{\partial \boldsymbol{\beta}}=
+              \sum_{i=1}^{n}(y_{i}-\exp(\boldsymbol{x_{i}'\beta}))\boldsymbol{x_{i}};$       
+\vspace{0.5cm}
+  
+\item $
+\boldsymbol{I({\beta})} = \sum_{i=1}^n \mu_i \boldsymbol{x_i x'_i}  = \exp{(\boldsymbol{x'_i \beta})\boldsymbol{x_i x'_i}}; 
+$
+  
+\vspace{0.5cm}
+  
+\item  $
+\boldsymbol{\hat{\beta}} \sim N \left ( \boldsymbol{\beta}, \left [ \sum_{i=1}^n \mu_i \boldsymbol{x_i x'_i} \right ]^{-1} \right ). 
+$ 
+       
+\end{itemize}
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+
+%%% Slide 34
+
+\begin{frame}{Modelo Linear Generalizado} 
+
+Propriedades adicionais dos modelos lineares generalizados:
+
+\begin{itemize}
+
+\item Os EMV's são consistentes ainda que a distribuição especificada seja incorreta, mas desde que a média condicional de $Y$ seja declarada corretamente;
+
+\item Os erros padrões, intervalos de confiança e testes de hipóteses, no entanto, ficam comprometidos;
+
+\item O ajuste de um MLG, no entanto, requer apenas a especificação:
+
+\begin{itemize}
+\item Da esperança de $Y$ condicional às covariáveis, mediante especificação do preditor linear e da função de ligação;
+
+\item Da variância condicional, mediante especificação da função de variância $V(\mu)$, possível inclusão do parâmetro de dispersão $(\phi)$, ou sua estimação por métodos robustos.
+
+\end{itemize}
+
+\end{itemize}
+
+\end{frame}
+
+
+
+%%%-----------------------------------------------------------------------------------------
+
+
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 39
+
+\begin{frame}{Modelo Linear Generalizado - Quase-Verossimilhança} 
+
+\begin{itemize}
+
+\item Considere a variável aleatória $Y$ com média $\mu$ e variância $\phi V(\mu)$. O método de quase-verossimilhança baseia-se na função quase-escore:
+
+$$ U(\mu) = \frac{y-\mu}{\phi V(\mu)}$$.
+
+\item Função de quase-verossimilhança:
+
+$$ Q\left ( \mu \right )=\int _y^\mu \frac{y-t}{\phi V(t)}dt $$.
+
+\end{itemize}
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 40
+
+\begin{frame}{Modelo Linear Generalizado - Quase-Verossimilhança} 
+
+\begin{itemize}
+
+\item Propriedades:
+
+\vspace{0.5cm}
+
+\begin{itemize}
+
+\item $ E\left ( \frac{\partial Q(\mu)}{\partial \mu} \right ) = 0 $
+
+\vspace{0.5cm}
+
+\item $ E\left [ \left ( \frac{\partial Q(\mu)}{\partial \mu} \right )^2 \right ]=
+-E\left [ \frac{\partial^2Q(\mu)}{\partial \mu^2} \right ] $
+
+\end{itemize}
+
+\vspace{0.5cm}
+
+\item A depender da especificação dos momentos, as equações de estimação são idênticas às obtidas mediante especificação completa da verossimilhança. 
+
+
+\end{itemize}
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+
+
+%%% Slide 41
+
+\begin{frame}{Modelo Linear Generalizado - Quase-Verossimilhança} 
+
+\begin{itemize}
+
+
+\item Os estimadores dos parâmetros de um MLG via quase-verossimilhança, $(\boldsymbol{\hat{\beta}_{QL}})$ são obtidos pela solução das equações quase-escore: 
+
+
+$$U(\boldsymbol{\boldsymbol{\beta}})=U(\boldsymbol{\mu}({\boldsymbol{\beta}}))=\frac{\partial{Q(\boldsymbol{\beta)}}}{\partial{\boldsymbol{\beta}}}= \frac{1}{\phi}\boldsymbol{D'V^{-1}(y-\mu)},$$
+
+em que $\boldsymbol{D}=\partial{\boldsymbol{\mu}}/\partial{\boldsymbol{\beta}}=\boldsymbol{W^{1/2}V^{1/2}X}$, $\boldsymbol{V}=diag(V_1,V_2,...,V_n)$, $\boldsymbol{W}=diag(W_1,W_2,...,W_n)$, com $\omega_i=(\partial{\mu_i}/\partial{\eta_i})^2 /V_i$.
+
+
+\item Matriz de quase-informação:
+
+$$-E\left [ \frac{\partial^2Q(\mu)}{\partial \mu^2} \right ] = \frac{1}{\phi}\boldsymbol{D'V^{-1}D}$$
+
+
+\end{itemize}
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+
+
+%%% Slide 41
+
+\begin{frame}{Modelo Linear Generalizado - Quase-Verossimilhança} 
+
+\begin{itemize}
+
+
+\item O algoritmo de estimação baseia-se na solução das equações quase-escore. $U(\boldsymbol{\boldsymbol{\beta}})=\boldsymbol{0}$, resultando no algoritmo:
+
+\vspace{0.5cm}
+
+$$\boldsymbol{\beta} ^{(m+1)} = \boldsymbol{\beta} ^{(m)} +
+\boldsymbol{(D'^{(m)}V^{-1(m)}D^{(m)})^{-1}}
+\boldsymbol{D'^{(m)}V^{-1(m)}(y-\mu^{(m)}})  
+$$ 
+
+\vspace{0.5cm}
+
+\item Distribuição assintótica:
+
+\vspace{0.3cm}
+
+$$ \boldsymbol{\hat{\beta}_{QL}} \overset{a}{\sim} N(\boldsymbol{\beta}, \phi \boldsymbol{(D'V^{-1}D)}^{-1} )$$
+
+\end{itemize}
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+
+
+%%% Slide 41
+
+\begin{frame}{Modelo Linear Generalizado - Quase-Verossimilhança} 
+
+\begin{itemize}
+
+
+
+
+\item Adotando-se $V(\mu)=\mu$ temos as seguintes equações de estimação:
+
+
+
+$$U(\boldsymbol{\beta}) =\sum_{i=1}^{n}(y_{i}-exp(\boldsymbol{x'_{i}\beta}))\boldsymbol{x_{i}=0}.$$
+
+
+\vspace{0.5cm}
+
+\item As equações de estimação via quase-verossimilhança, neste caso, são idênticas às obtidas com base na verossimilhança da regressão Poisson.
+
+
+
+\end{itemize}
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+
+
+%%% Slide 41
+
+\begin{frame}{Modelo Linear Generalizado - Quase-Verossimilhança} 
+
+\begin{itemize}
+
+
+
+\item Como principais alternativas para definição de $V(\mu)$, podemos considerar proporcionalidade em relação a alguma potência de $\mu$, como $V(\mu) \text{ } \propto \text{ } \mu$; $V(\mu)\text{ } \propto \text{ } \mu^2$ e $V(\mu) \text{ } \propto \text{ } \mu^3$.
+
+\vspace{0.5cm}
+
+\item O parâmetro de dispersão, $\phi$, pode ser estimado usando o método de momentos, resultando em:
+
+\vspace{0.5cm}
+
+$$ \hat{\phi}=\frac{\sum_{i=1}^{n} (y_{i}-\hat{\mu}_{i})^{2}}{n-p}. $$
+
+
+\end{itemize}
+
+\end{frame}
+
+
+
+%%% Slide 43
+
+\begin{frame}{Modelo Linear Generalizado - Pseudo Máxima Verossimilhança} 
+
+\begin{itemize}
+
+
+
+\item Para se prevenir de possível especificação incorreta da variância, podemos estimar $Var(\boldsymbol{\hat{\beta}})$ de forma robusta usando um estimador do tipo sanduíche.
+
+\vspace{0.5cm}
+
+\item Suponha que a média do modelo seja corretamente especificada, mas a função de variância escolhida $(\tilde{V})$ seja diferente da verdadeira $V$.
+
+\vspace{0.5cm}
+
+\item Nesse caso,  $ Var(\boldsymbol{\hat{\beta}}) \neq \phi \boldsymbol{(D'\tilde{V}^{-1}D)} ^{-1}$, uma vez que $\tilde{V} \neq \ V$. 
+
+\end{itemize}
+
+\end{frame}
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 44
+
+\begin{frame}{Modelo Linear Generalizado - Pseudo Máxima Verossimilhança} 
+
+\begin{itemize}
+
+
+\item Uma forma robusta de proceder a estimação de  $ Var(\boldsymbol{\hat{\beta}})$ é com base em:
+
+$$ Var_{Rb}(\boldsymbol{\hat{\beta}})=
+\boldsymbol{(D'\tilde{V}^{-1}D)} ^{-1}
+ \boldsymbol{(D'\tilde{V}^{-1}E\tilde{V}^{-1}D)}  
+\boldsymbol{(D'\tilde{V}^{-1}D)} ^{-1},$$
+
+em que 
+
+$$ \boldsymbol{E} = diag\{(y_1-\mu_1)^2,(y_2-\mu_2)^2,...,(y_n-\mu_n)^2\}$$
+
+\vspace{0.5cm}
+
+\item O estimador sanduíche é resultante da avaliação de $Var_{Rb}$ em $\boldsymbol{\hat{\beta}}$, sendo consistente mesmo quando  $\tilde{V} \neq\ V.$   
+
+\end{itemize}
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide45
+
+\begin{frame}{Modelo Linear Generalizado - Pseudo Máxima Verossimilhança} 
+
+\begin{itemize}
+
+\item Para a regressão Poisson:
+
+$$
+Var(\boldsymbol{\hat{\beta}_{PQL}})=\left [ \sum_{i=1}^{n} \boldsymbol{x_{i}x'_{i}}\mu_{i} \right ]^{-1}
+\sum_{i=1}^{n} \boldsymbol{x_{i}x'_{i}} \omega_{i} \left [ \sum_{i=1}^{n} \boldsymbol{x_{i}x'_{i}}\mu_{i} \right ]^{-1},
+$$
+
+com $\mu_{i}=exp({\boldsymbol{x'_{i}\beta}})$ e $\omega_{i}=Var(y_{i}|\boldsymbol{x_{i}})$.
+
+\vspace{0.5cm}
+
+\item Podemos considerar $\omega_i=V(\mu_i;\phi)$ ou, simplesmente, o estimador robusto, baseado em $\omega_i=(y_i-\mu_i)^2$.
+
+
+\end{itemize}
+
+\end{frame}
+
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 47
+
+\begin{frame}{Distribuição binomial negativa} 
+
+\begin{itemize}
+
+\item Função de probabilidades:
+
+$$
+P(Y=k)=\frac{\Gamma(\alpha+k)}{\Gamma(k+1)\Gamma(\alpha)}\left ( \frac{\mu}{\mu+\alpha} \right )^{k} \left( \frac{\alpha}{\mu+\alpha} \right )^{\alpha}, k=0,1,2,...; \alpha > 0, \mu>0
+$$
+
+\item Propriedades:
+
+$$
+E(Y)=\mu ; \quad Var(Y)= \mu+ \alpha^{-1} \mu^2
+$$
+
+\item Assim, para qualquer $\alpha>0$, temos $Var(Y)>\mu$.
+
+\item A distribuição binomial negativa tem como caso limite distribuição Poisson, quando $\alpha \rightarrow \infty$.
+
+
+\end{itemize}
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 48
+
+\begin{frame}{Distribuição binomial negativa} 
+
+\begin{itemize}
+
+\item Uma parametrização alternativa:
+
+\vspace{0.5cm}
+
+$$
+P(Y=k) = \left ( \begin{matrix}
+r+k-1\\ 
+r-1
+\end{matrix} \right ) (1-p)^rp^k, \hspace{0,5cm} k=0,1,2,...,
+$$
+
+\vspace{0.5cm}
+
+sendo $r=\alpha$ e $p=(\mu/\alpha)/(1+\mu/\alpha),$ com $0<p<1$ e $r>0$.  
+\vspace{0.5cm}
+
+\item Modelagem do número de "sucessos" até o r-ésimo "fracasso",
+configurando uma generalização da distribuição geométrica.
+
+\vspace{0.5cm}
+
+\item Modelagem de alguns tipos de processos pontuais envolvendo contágio.
+
+\end{itemize}
+
+\end{frame}
+
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 48
+
+\begin{frame}{Distribuição binomial negativa} 
+
+\begin{itemize}
+
+\item A principal motivação para a distribuição binomial negativa baseia-se num processo de contagem heterogêneo, em que $Y \sim Poisson( \mu \nu)$ e $\nu$ tem distribuição $Gama(\alpha, \beta):$
+
+$$
+g\left ( \nu;\alpha,\beta \right )=\frac{\beta^{\alpha}}{\Gamma\left ( \alpha \right )}\nu^{\alpha-1}e^{-\beta \nu},\quad \alpha, \beta, \nu>0,
+$$
+
+com $E(\nu)=\theta=\alpha /\beta$ e variância $Var(\nu)=\alpha /\beta^2.$
+
+
+\vspace{0.5cm}
+
+\item Como resultado, temos uma mistura Poisson-Gamma, resultando, marginalmente, na distribuição binomial negativa.
+
+
+\end{itemize}
+
+\end{frame}
+
+
+%%%-----------------------------------------------------------------------------------------
+
+
+%%% Slide 50
+
+\begin{frame}{Ilustração}
+    
+    \begin{figure}[h]
+    \includegraphics[height=5.5cm,width=9cm]{images/graf2.pdf}
+    \caption{Distribuição binomial para $\mu=2$ e diferentes valores de $\alpha}.
+    \label{Fig1}
+    \centering
+    
+\end{figure}
+\end{frame}
+
+
+
+%%%-----------------------------------------------------------------------------------------
+
+%%% Slide 51
+
+\begin{frame}{Distribuição binomial negativa} 
+
+\begin{itemize}
+
+\item O modelo de regressão com resposta binomial negativa pode ser especificado fazendo $\boldsymbol{\mu}=E(y|\boldsymbol{x})=exp(\boldsymbol{x'\beta}).$
+
+\vspace{0.5cm}
+
+\item Para valores fixados de $\alpha$, a distribuição binomial negativa fica expressa na forma da família exponencial linear, contemplada pela teoria de MLG.
+
+\vspace{0.5cm}
+
+\item A estimação dos parâmetros do modelo se dá numericamente, segundo um algoritmo em duas etapas, em que $\alpha$ e $\boldsymbol{\beta}$ são estimados condicionalmente até convergência.
+
+\end{itemize}
+
+\end{frame}
+
+\end{document}
\ No newline at end of file
diff --git a/vignettes/Ovelhas.Rmd b/vignettes/Ovelhas.Rmd
index d8b6cdd10dae2d696bc9d7d5f9d54f5685cf503e..0b6eb6375d930272f03b7361adb0e46a5aaaab1b 100644
--- a/vignettes/Ovelhas.Rmd
+++ b/vignettes/Ovelhas.Rmd
@@ -1,240 +1,241 @@
----
-title: "Análise de Contagens - Quase-Verossimilhança"
-author: >
-  Walmes M. Zeviani,
-  Eduardo E. Ribeiro Jr &
-  Cesar A. Taconeli
-vignette: >
-  %\VignetteIndexEntry{Análise de Contagens - Quase-Verossimilhança}
-  %\VignetteEngine{knitr::rmarkdown}
-  %\VignetteEncoding{UTF-8}
----
-
-```{r setup, include=FALSE}
-source("_setup.R")
-```
-
-Dados referentes a um experimento delineado em blocos, com o objetivo de 
-investigar o efeito de uma intervenção, por parte do cuidador, no 
-comportamento de ovelhas. 
-
-Para isso, foram considradas ovelhas de duas 
-linhagens distintas (pouco ou muito reativas), submetidas a dois tipos 
-diferentes de intervenção (observação ou observação + intervenção).
-
-A variável resposta aqui considerada é o número de mudanças na postura
-corporal do animal ao longo do período de observação.
-
-
-```{r, echo = FALSE, include=FALSE}
-##### Carregamento e tratamento inicial dos dados
-dados <- read.csv2('Dadoscomp.csv',sep=',')
-dados$tratamento <- factor(dados$tratamento)
-levels(dados$tratamento) <- c('Observ', 'Observ + Interv')
-dados$linhagem <- factor(dados$linhagem)
-levels(dados$linhagem) <- c('Pouco reativo', 'Muito reativo')
-dados2 <- dados[1:38,c(1:5,30:53)]
-dados3 <- dados[1:38,30:53] ### Somente as mudanças de postura durante a intervenção.
-r1 <- rowSums(dados3[,1:3])-1
-table(r1)
-r2 <- rowSums(dados3[,4:6])-1
-table(r2)
-r4 <- rowSums(dados3[,12:16])-1
-table(r4)
-d2 <- rowSums(dados[1:38,57:59])-1
-table(d2)
-
-datapost1 <- data.frame(r1, dados2[ ,c('tratamento', 'linhagem')])
-names(datapost1)[1] <- 'Nposturas'
-datapost2 <- data.frame(r2, dados2[ ,c('tratamento', 'linhagem')])
-names(datapost2)[1] <- 'Nposturas'
-datapost4 <- data.frame(r4, dados2[ ,c('tratamento', 'linhagem')])
-names(datapost4)[1] <- 'Nposturas'
-
-##### Pacotes requeridos
-require('lmtest')
-require('boot')
-require('car')
-require('RColorBrewer')
-require('sandwich')
-require('hnp')
-```
-
-
-### Verificação do conteúdo e a estrutura dos dados.
-
-```{r}
-str(datapost4)
-summary(datapost4)
-```
-
-
-
-### Análise descritiva
-
-```{r}
-tab <- data.frame(with(datapost4, table(tratamento, Nposturas)))
-
-myColours <- brewer.pal(2,"Blues")
-
-my.settings <- list(
-  superpose.polygon=list(col=myColours[2:5], border="transparent"),
-  strip.background=list(col=myColours[6]),
-  strip.border=list(col="black")
-)
-
-bwplot(Nposturas ~ linhagem | tratamento,
-         data=datapost4, 
-         main="Mudanças de postura vs tratamento e linhagem", 
-         xlab="Linhagem", ylab="Frequência")
-
-### Variância e média amostrais por tratamento e linhagem.
-
-mdp <- aggregate(Nposturas ~ tratamento:linhagem, datapost4, function(x) c(mean = mean(x), var = var(x)))
-mdp
-
-```
-
-
-### Regressão poisson com estimação por máxima verossimilhança.
-
-```{r}
-ajusteps <- glm(Nposturas ~ tratamento + linhagem, data=datapost4, family=poisson)
-summary(ajusteps)
-
-exp(coef(ajusteps)[2])
-### Estima-se que a frequência média de variação de postura no grupo com intervenção seja aproximadamente
-### a metade em relação ao grupo sem intervenção.
-
-##### Estimação do parâmetro de dispersão. 
-X2 <- sum(resid(ajusteps,type='pearson')**2)
-phichap <- X2/ajusteps$df.residual
-phichap
-```
-
-### Diagnóstico do ajuste (gráficos).
-
-```{r}
-##### Diagnóstico do modelo - gráficos padrão do R.
-par(mfrow=c(2,2))
-plot(ajusteps, pch = 20, cex = 1.25)
-```
-
-```{r, echo = FALSE}
-envelope=function(modelo){
-  dados=na.omit(modelo$data)
-  nsim=100
-  n=modelo$df.null+1
-  r1=sort(rstandard(modelo,type='deviance'))
-  m1=matrix(0,nrow=n,ncol=nsim)
-  a2=simulate(modelo,nsim=nsim)
-  
-  for (i in 1:nsim){
-    dados$y=a2[,i]
-    aj=update(modelo,y~.,data=dados)
-    m1[,i]=sort(rstandard(aj,type='deviance'))}
-  
-  li=apply(m1,1,quantile,0.025)
-  m=apply(m1,1,quantile,0.5)
-  ls=apply(m1,1,quantile,0.975)
-  
-  quantis=qnorm((1:n-0.5)/n)
-  
-  plot(rep(quantis,2),c(li,ls),type='n',xlab='Percentil da N(0,1)',ylab='Resíduos')
-  title('Gráfico Normal de Probabilidades')
-  lines(quantis,li,type='l')
-  lines(quantis,m,type='l',lty=2)
-  lines(quantis,ls,type='l')
-  points(quantis,r1,pch=16,cex=0.75)
-}
-
-```
-
-```{r}
-##### Gráfico quantil-quantil com envelopes simulados.
-par(mfrow=c(1,1))
-envelope(ajusteps)
-```
-
-
-### Ajustando modelos por quase-verossimilhança.
-
-```{r}
-
-### Modelo quasi poisson (V(mu) = mu).
-ajuste12 <- glm(r4 ~ tratamento+linhagem, data=datapost4, family = 'quasipoisson')
-summary(ajuste12)
-
-### Forma alternativa de declarar o Modelo quase-poisson (V(mu) = mu).
-ajuste13 <- glm(r4 ~ tratamento+linhagem, data=datapost4, family = quasi(variance = 'mu', link='log'))
-summary(ajuste13)
-
-### Modelo de quase-verossimilhança (V(mu) = mu^2).
-ajuste14 <- glm(r4 ~ tratamento+linhagem, data=datapost4, family = quasi(variance = 'mu^2', link='log'))
-summary(ajuste14)
-
-### Gráficos de diagnóstico para o modelo de quase-verossimilhança.
-par(mfrow = c(2,2))
-plot(ajuste14, pch = 20, cex = 1.25)
-
-### Gráficos quantil-quantil para os resíduos dos modelos Poisson e de Quase-Verossimilhança.
-par(mfrow=c(1,2))
-qqnorm(resid(ajusteps,type='deviance'), pch = 20, main = 'Poisson', las = 1)
-qqline(resid(ajusteps,type='deviance'))
-qqnorm(resid(ajuste14,type='deviance'), pch = 20, main = 'QL', las = 1)
-qqline(resid(ajuste14,type='deviance'))
-```
-
-
-### Usando estimação robusta e bootstrap.
-
-```{r}
-
-estrb <- coeftest(ajusteps, vcov=sandwich) ### Estimador sanduíche
-estrb
-
-### Usando bootstrap (R=999 simulações)
-ajusteboot <- Boot(ajusteps)
-plot(ajusteboot, index = 2) ### Distribuição bootstrap para o efeito de intervenção.
-summary(ajusteboot)
-
-
-```
-
-
-### Apanhado geral dos resultados.
-
-```{r}
-
-erroz <- rbind(summary(ajusteps)$coefficients[2,2:3], summary(ajuste13)$coefficients[2,2:3], 
-               summary(ajuste14)$coefficients[2,2:3], estrb[2,2:3], c(summary(ajusteboot)[2,4],
-               mean(ajusteboot$t[,2]/summary(ajusteboot)[2,4])))
-
-ics <- rbind(confint.default(ajusteps)[2,],confint.default(ajuste13)[2,], confint.default(ajuste14)[2,], 
-estrb[2,1] + c(-1.96,1.96) * estrb[2,2], mean(ajusteboot$t[,2])+c(-1.96,1.96)*summary(ajusteboot)[2,4]) 
-
-quadres <- cbind(erroz, ics)
-
-rownames(quadres) <- c('Poisson', 'Quasi(mu)', 'Quasi(mu^2)', 'Robusto (sanduiche)', 'Bootstrap')
-
-### Quadro resumo para as estimativas produzidas pelos quatro modelos.
-kable(quadres, format = "markdown", caption = "Comparativo dos modelos ajustados")
-
-### Vamos avaliar o efeito das observações com maiores resíduos nos achados do modelo
-dadosexclud <- datapost4[-c(8,18,28),]
-ajusteexclud <- glm(Nposturas ~ tratamento+linhagem, data=dadosexclud, family = quasi(variance = 'mu', link='log'))
-
-### Estimativas produzidas pelo modelo quasipoisson com e sem as três observações.
-
-c1 <- compareCoefs(ajuste13, ajusteexclud, print = FALSE)
-colnames(c1) <- c('Est. com outliers','E.P. com outliers','Est. sem outliers','E.P. sem outliers')
-kable(c1)
-
-### Efeito da intervenção desconsiderando as três observações.
-exp(coef(ajusteexclud)[2])
-
-### O efeito de intervenção aumenta, e torna-se mais significativo, mediante exclusão dos outliers.
-
-```` 
-
-
+---
+title: "Análise de Contagens - Quase-Verossimilhança"
+author: >
+  Walmes M. Zeviani,
+  Eduardo E. Ribeiro Jr &
+  Cesar A. Taconeli
+vignette: >
+  %\VignetteIndexEntry{Análise de Contagens - Quase-Verossimilhança}
+  %\VignetteEngine{knitr::rmarkdown}
+  %\VignetteEncoding{UTF-8}
+---
+
+```{r setup, include=FALSE}
+source("_setup.R")
+```
+
+Dados referentes a um experimento delineado em blocos, com o objetivo de 
+investigar o efeito de uma intervenção, por parte do cuidador, no 
+comportamento de ovelhas. 
+
+Para isso, foram considradas ovelhas de duas 
+linhagens distintas (pouco ou muito reativas), submetidas a dois tipos 
+diferentes de intervenção (observação ou observação + intervenção).
+
+A variável resposta aqui considerada é o número de mudanças na postura
+corporal do animal ao longo do período de observação.
+
+
+```{r, echo = FALSE, include=FALSE}
+##### Carregamento e tratamento inicial dos dados
+setwd("~/Desktop")
+dados <- read.csv('Dadoscomp.csv',sep=',')
+dados$tratamento <- factor(dados$tratamento)
+levels(dados$tratamento) <- c('Observ', 'Observ + Interv')
+dados$linhagem <- factor(dados$linhagem)
+levels(dados$linhagem) <- c('Pouco reativo', 'Muito reativo')
+dados2 <- dados[1:38,c(1:5,30:53)]
+dados3 <- dados[1:38,30:53] ### Somente as mudanças de postura durante a intervenção.
+r1 <- rowSums(dados3[,1:3])-1
+table(r1)
+r2 <- rowSums(dados3[,4:6])-1
+table(r2)
+r4 <- rowSums(dados3[,12:16])-1
+table(r4)
+d2 <- rowSums(dados[1:38,57:59])-1
+table(d2)
+
+datapost1 <- data.frame(r1, dados2[ ,c('tratamento', 'linhagem')])
+names(datapost1)[1] <- 'Nposturas'
+datapost2 <- data.frame(r2, dados2[ ,c('tratamento', 'linhagem')])
+names(datapost2)[1] <- 'Nposturas'
+datapost4 <- data.frame(r4, dados2[ ,c('tratamento', 'linhagem')])
+names(datapost4)[1] <- 'Nposturas'
+
+##### Pacotes requeridos
+require('lmtest')
+require('boot')
+require('car')
+require('RColorBrewer')
+require('sandwich')
+require('hnp')
+```
+
+
+### Verificação do conteúdo e a estrutura dos dados.
+
+```{r}
+str(datapost4)
+summary(datapost4)
+```
+
+
+
+### Análise descritiva
+
+```{r}
+tab <- data.frame(with(datapost4, table(tratamento, Nposturas)))
+
+myColours <- brewer.pal(2,"Blues")
+
+my.settings <- list(
+  superpose.polygon=list(col=myColours[2:5], border="transparent"),
+  strip.background=list(col=myColours[6]),
+  strip.border=list(col="black")
+)
+
+bwplot(Nposturas ~ linhagem | tratamento,
+         data=datapost4, 
+         main="Mudanças de postura vs tratamento e linhagem", 
+         xlab="Linhagem", ylab="Frequência")
+
+### Variância e média amostrais por tratamento e linhagem.
+
+mdp <- aggregate(Nposturas ~ tratamento:linhagem, datapost4, function(x) c(mean = mean(x), var = var(x)))
+mdp
+
+```
+
+
+### Regressão poisson com estimação por máxima verossimilhança.
+
+```{r}
+ajusteps <- glm(Nposturas ~ tratamento + linhagem, data=datapost4, family=poisson)
+summary(ajusteps)
+
+exp(coef(ajusteps)[2])
+### Estima-se que a frequência média de variação de postura no grupo com intervenção seja aproximadamente
+### a metade em relação ao grupo sem intervenção.
+
+##### Estimação do parâmetro de dispersão. 
+X2 <- sum(resid(ajusteps,type='pearson')**2)
+phichap <- X2/ajusteps$df.residual
+phichap
+```
+
+### Diagnóstico do ajuste (gráficos).
+
+```{r}
+##### Diagnóstico do modelo - gráficos padrão do R.
+par(mfrow=c(2,2))
+plot(ajusteps, pch = 20, cex = 1.25)
+```
+
+```{r, echo = FALSE}
+envelope=function(modelo){
+  dados=na.omit(modelo$data)
+  nsim=100
+  n=modelo$df.null+1
+  r1=sort(rstandard(modelo,type='deviance'))
+  m1=matrix(0,nrow=n,ncol=nsim)
+  a2=simulate(modelo,nsim=nsim)
+  
+  for (i in 1:nsim){
+    dados$y=a2[,i]
+    aj=update(modelo,y~.,data=dados)
+    m1[,i]=sort(rstandard(aj,type='deviance'))}
+  
+  li=apply(m1,1,quantile,0.025)
+  m=apply(m1,1,quantile,0.5)
+  ls=apply(m1,1,quantile,0.975)
+  
+  quantis=qnorm((1:n-0.5)/n)
+  
+  plot(rep(quantis,2),c(li,ls),type='n',xlab='Percentil da N(0,1)',ylab='Resíduos')
+  title('Gráfico Normal de Probabilidades')
+  lines(quantis,li,type='l')
+  lines(quantis,m,type='l',lty=2)
+  lines(quantis,ls,type='l')
+  points(quantis,r1,pch=16,cex=0.75)
+}
+
+```
+
+```{r}
+##### Gráfico quantil-quantil com envelopes simulados.
+par(mfrow=c(1,1))
+envelope(ajusteps)
+```
+
+
+### Ajustando modelos por quase-verossimilhança.
+
+```{r}
+
+### Modelo quasi poisson (V(mu) = mu).
+ajuste12 <- glm(r4 ~ tratamento+linhagem, data=datapost4, family = 'quasipoisson')
+summary(ajuste12)
+
+### Forma alternativa de declarar o Modelo quase-poisson (V(mu) = mu).
+ajuste13 <- glm(r4 ~ tratamento+linhagem, data=datapost4, family = quasi(variance = 'mu', link='log'))
+summary(ajuste13)
+
+### Modelo de quase-verossimilhança (V(mu) = mu^2).
+ajuste14 <- glm(r4 ~ tratamento+linhagem, data=datapost4, family = quasi(variance = 'mu^2', link='log'))
+summary(ajuste14)
+
+### Gráficos de diagnóstico para o modelo de quase-verossimilhança.
+par(mfrow = c(2,2))
+plot(ajuste14, pch = 20, cex = 1.25)
+
+### Gráficos quantil-quantil para os resíduos dos modelos Poisson e de Quase-Verossimilhança.
+par(mfrow=c(1,2))
+qqnorm(resid(ajusteps,type='deviance'), pch = 20, main = 'Poisson', las = 1)
+qqline(resid(ajusteps,type='deviance'))
+qqnorm(resid(ajuste14,type='deviance'), pch = 20, main = 'QL', las = 1)
+qqline(resid(ajuste14,type='deviance'))
+```
+
+
+### Usando estimação robusta e bootstrap.
+
+```{r}
+
+estrb <- coeftest(ajusteps, vcov=sandwich) ### Estimador sanduíche
+estrb
+
+### Usando bootstrap (R=999 simulações)
+ajusteboot <- Boot(ajusteps)
+plot(ajusteboot, index = 2) ### Distribuição bootstrap para o efeito de intervenção.
+summary(ajusteboot)
+
+
+```
+
+
+### Resumo geral dos resultados.
+
+```{r}
+
+erroz <- rbind(summary(ajusteps)$coefficients[2,2:3], summary(ajuste13)$coefficients[2,2:3], 
+               summary(ajuste14)$coefficients[2,2:3], estrb[2,2:3], c(summary(ajusteboot)[2,4],
+               mean(ajusteboot$t[,2]/summary(ajusteboot)[2,4])))
+
+ics <- rbind(confint.default(ajusteps)[2,],confint.default(ajuste13)[2,], confint.default(ajuste14)[2,], 
+estrb[2,1] + c(-1.96,1.96) * estrb[2,2], mean(ajusteboot$t[,2])+c(-1.96,1.96)*summary(ajusteboot)[2,4]) 
+
+quadres <- cbind(erroz, ics)
+
+rownames(quadres) <- c('Poisson', 'Quasi(mu)', 'Quasi(mu^2)', 'Robusto (sanduiche)', 'Bootstrap')
+
+### Quadro resumo para as estimativas produzidas pelos quatro modelos.
+kable(quadres, format = "markdown", caption = "Comparativo dos modelos ajustados")
+
+### Vamos avaliar o efeito das observações com maiores resíduos nos achados do modelo
+dadosexclud <- datapost4[-c(8,18,28),]
+ajusteexclud <- glm(Nposturas ~ tratamento+linhagem, data=dadosexclud, family = quasi(variance = 'mu', link='log'))
+
+### Estimativas produzidas pelo modelo quasipoisson com e sem as três observações.
+
+c1 <- compareCoefs(ajuste13, ajusteexclud, print = FALSE)
+colnames(c1) <- c('Est. com outliers','E.P. com outliers','Est. sem outliers','E.P. sem outliers')
+kable(c1)
+
+### Efeito da intervenção desconsiderando as três observações.
+exp(coef(ajusteexclud)[2])
+
+### O efeito de intervenção aumenta, e torna-se mais significativo, mediante exclusão dos outliers.
+
+```` 
+
+
diff --git a/vignettes/Sinistros.Rmd b/vignettes/Sinistros.Rmd
index c6ec8708cbc379c47a1f9c87844116c8d07ec4da..cb5d19510a0242d75ba261bee3e6ddcbd4be2e27 100644
--- a/vignettes/Sinistros.Rmd
+++ b/vignettes/Sinistros.Rmd
@@ -1,352 +1,352 @@
----
-title: "Análise de Contagens - Poisson e Binomial Negativa"
-author: >
-  Walmes M. Zeviani,
-  Eduardo E. Ribeiro Jr &
-  Cesar A. Taconeli
-vignette: >
-  %\VignetteIndexEntry{Análise de Contagens - Poisson e Binomial Negativa}
-  %\VignetteEngine{knitr::rmarkdown}
-  %\VignetteEncoding{UTF-8}
----
-
-```{r setup, include=FALSE}
-source("_setup.R")
-```
-
-
-Dados referentes ao número de sinistros registrados por 16483 clientes de
-uma seguradora de automóveis ao longo de um ano, contemplando as 
-seguintes variáveis:
-
-* **Sinistros**: Número de sinistros registrados;
-* **Exposicao**: Período de cobertura do cliente durante o ano sob análise;
-* **Tipo**: Tipo de veículo (hatch, monobloco, picape, sedan, wagon e suv);
-* **Idade**: Idade do cliente (em anos);
-* **Sexo**: M para masculino e F para feminino;
-* **Civil**: Estado civil (Solteiro, Casado, Divorciado e Viuvo);
-* **Valor**: Valor do veículo segurado (em reais).
-
-
-
-```{r, echo = FALSE, include=FALSE}
-
-require(lattice)
-require(hnp)
-require(MASS)
-require(effects)
-
-# setwd("C:/Users/CCE/Dropbox/Backup Parana/Parana/Curso - dados discretos")
-dados <- read.csv2('Baseauto2.csv', header=TRUE, sep=',')
-
-options(scipen = 3) ### Era zero.
-
-##### Preparando os dados.
-names(dados) <- c('Bonus','Tipo','Estado','Idade','Sexo','Civil','Valor','Exposicao','Sinistros')
-dados <- dados[,c('Tipo','Idade','Sexo','Civil','Valor','Exposicao','Sinistros')]
-levels(dados$Tipo) <- c('outros','outros','outros','outros','hatch','outros','mono','picape','picape','picape','sedan','wagon','suv')
-dados <- dados[-which(dados$Tipo=='outros'),]
-dados$Tipo <- factor(dados$Tipo)
-dados <- dados[which(dados$Valor != 0),]
-dados$Civil <- relevel(dados$Civil, ref = 'Solteiro')
-dados$lexpo <- log(dados$Exposicao)
-dados$Valor <- dados$Valor/1000
-
-```
-
-### Verificação do conteúdo e a estrutura dos dados.
-
-```{r}
-head(dados, 10) ### Dez primeiras linhas da base.
-str(dados)
-```
-
-### Análise descritiva da distribuição do número de sinistros. 
-
-```{r}
-table(dados$Sinistros) ### Distribuição do números de sinistros.
-taxageral <- sum(dados$Sinistros)/sum(dados$Exposicao); taxageral ### Taxa de sinistros na amostra.
-
-tab <- aggregate(cbind(Exposicao, Sinistros) ~ Sexo, data = dados, sum)
-taxa <- with(tab, Sinistros/Exposicao)
-tab <- cbind(tab, taxa); tab ### Distribuição do número de sinistros por sexo.
-
-dados$idadecat <- cut(dados$Idade, breaks=c(18,30,60, 92), include.lowest = T)
-tab <- aggregate(cbind(Exposicao, Sinistros) ~ idadecat, data = dados, sum)
-taxa <- with(tab, Sinistros/Exposicao)
-tab <- cbind(tab, taxa); tab ### Distribuição do número de sinistros por sexo.
-
-tabidsex <- aggregate(cbind(Exposicao, Sinistros) ~ Sexo + idadecat, data = dados, sum)
-Taxaidsex <- with(tabidsex, Sinistros/Exposicao)
-tabidsex <- cbind(tabidsex, Taxaidsex); tabidsex ### Distribuição do número de sinistros por idade e sexo.
-
-tab <- aggregate(cbind(Exposicao, Sinistros) ~ Tipo, data = dados, sum)
-taxa <- with(tab, Sinistros/Exposicao)
-tab <- cbind(tab, taxa); tab ### Distribuição do número de sinistros por tipo de veículo.
-
-tab <- aggregate(cbind(Exposicao, Sinistros) ~ Civil, data = dados, sum)
-taxa <- with(tab, Sinistros/Exposicao)
-tab <- cbind(tab, taxa); tab ### Distribuição do número de sinistros por estado civil.
-
-dados$valorcat <- cut(dados$Valor, breaks=quantile(dados$Valor), include.lowest = T)
-tab <- aggregate(cbind(Exposicao, Sinistros) ~ valorcat, data = dados, sum)
-taxa <- with(tab, Sinistros/Exposicao)
-tab <- cbind(tab, taxa); tab ### Distribuição do número de sinistros por valor do veículo.
-```
-
-## Regressão usando o modelo log-linear poisson.
-
-```{r}
-dados <- na.omit(dados)
-ajusteps <- glm(Sinistros ~ Tipo+Sexo+Idade+I(Idade**2)+Valor+Civil+offset(log(Exposicao)), data = dados, family=poisson)
-summary(ajusteps)
-
-##### Estimação do parâmetro de dispersão. 
-
-exp(coef(ajusteps))
-
-X2 <- sum(resid(ajusteps,type='pearson')**2)
-phichap <- X2/ajusteps$df.residual
-phichap ### Indicador de superdispersão.
-```
-
-### Diagnóstico do ajuste (gráficos).
-
-```{r}
-##### Diagnóstico do modelo - gráficos.
-par(mfrow=c(2,2))
-plot(ajusteps)
-
-
-par(mfrow=c(1,1))
-envelope=function(modelo){
-  dados=na.omit(modelo$data)
-  nsim=100
-  n=modelo$df.null+1
-  r1=sort(rstandard(modelo,type='deviance'))
-  m1=matrix(0,nrow=n,ncol=nsim)
-  a2=simulate(modelo,nsim=nsim)
-  
-  for (i in 1:nsim){
-    dados$y=a2[,i]
-    aj=update(modelo,y~.,data=dados)
-    m1[,i]=sort(rstandard(aj,type='deviance'))}
-  
-  li=apply(m1,1,quantile,0.025)
-  m=apply(m1,1,quantile,0.5)
-  ls=apply(m1,1,quantile,0.975)
-  
-  quantis=qnorm((1:n-0.5)/n)
-  
-  plot(rep(quantis,2),c(li,ls),type='n',xlab='Percentil da N(0,1)',ylab='Resíduos')
-  title('Gráfico Normal de Probabilidades')
-  lines(quantis,li,type='l')
-  lines(quantis,m,type='l',lty=2)
-  lines(quantis,ls,type='l')
-  points(quantis,r1,pch=16,cex=0.75)
-}
-
-envelope(ajusteps)
-
-```
-
-
-### Re-ajuste do modelo associando um parâmetro ao termo offset (log-exposicao)
-
-```{r}
-ajusteps2 <- glm(Sinistros ~ Tipo + Sexo + Idade +I(Idade**2) + Valor + Civil+log(Exposicao), data = dados, family=poisson)
-summary(ajusteps2)
-anova(ajusteps, ajusteps2, test = 'Chisq')
-```
-
-
-### Regressão usando a distribuição binomial negativa.
-
-```{r}
-ajustenb2 <- glm.nb(Sinistros ~ Tipo+Sexo+Idade+I(Idade**2)+Valor+Civil+log(Exposicao),data= dados)
-summary(ajustenb2) 
-
-### Verificando possibilidade de excluir estado civil e tipo de veículo do modelo.
-ajustenb3 <- update(ajustenb2, ~.-(Civil+Tipo))
-anova(ajustenb2, ajustenb3)
-
-## Estimação do parâmetro de dispersão
-X2 <- sum(resid(ajustenb3,type='pearson')**2) 
-phichap <- X2/ajustenb3$df.residual 
-phichap 
-```
-
-
-### Diagnóstico do ajuste (gráficos).
-
-```{r}
-##### Diagnóstico do modelo - gráficos.
-par(mfrow=c(2,2))
-plot(ajustenb3)
-```
-
-
-```{r, echo = FALSE}
-dadosnb3 <- dados[,c('Sexo','Idade','Valor','Exposicao','Sinistros')]
-
-par(mfrow=c(1,1))
-envelope=function(modelo){
-  dados=na.omit(dadosnb3)
-  nsim=100
-  n=modelo$df.null+1
-  r1=sort(rstandard(modelo,type='deviance'))
-  m1=matrix(0,nrow=n,ncol=nsim)
-  a2=simulate(modelo,nsim=nsim)
-  
-  for (i in 1:nsim){
-    dados$y=a2[,i]
-    aj=update(modelo,y~.,data=dados)
-    m1[,i]=sort(rstandard(aj,type='deviance'))}
-  
-  li=apply(m1,1,quantile,0.025)
-  m=apply(m1,1,quantile,0.5)
-  ls=apply(m1,1,quantile,0.975)
-  
-  quantis=qnorm((1:n-0.5)/n)
-  
-  plot(rep(quantis,2),c(li,ls),type='n',xlab='Percentil da N(0,1)',ylab='Resíduos')
-  title('Gráfico Normal de Probabilidades')
-  lines(quantis,li,type='l')
-  lines(quantis,m,type='l',lty=2)
-  lines(quantis,ls,type='l')
-  points(quantis,r1,pch=16,cex=0.75)
-}
-```
-
-
-```{r}
-par(mfrow=c(1,1))
-envelope(ajustenb3)
-```
-
-
-
-### Explorando os efeitos das covariáveis. Estimativas pontuais e ICs (95%)
-
-```{r}
-intervalos <- confint(ajustenb3)
-estimat <- cbind(ajustenb3$coefficients, intervalos)
-colnames(estimat)[1] <- 'Estimativa pontual'
-
-### Quadro de estimativas
-round(estimat, 5)
-```
-
-
-### Gráficos de efeitos
-
-```{r}
-
-dados$lexpo <- log(dados$Exposicao)
-ajustenb3 <- glm.nb(Sinistros ~ Sexo+Idade+I(Idade**2)+Valor+lexpo,data= dados)
-
-efeitos <- allEffects(ajustenb3, given.values=c(lexpo=0))
-
-trellis.par.set(list(axis.text = list(cex = 1.2))) 
-
-plot(efeitos[[2]], type='response',main=list(
-    label="Taxa de sinistros vs. Idade",
-    cex=1.5),
-    xlab=list(
-        label="Idade (anos)",
-        cex=1.5),
-    ylab=list(
-        label="Taxa de sinistros",
-        cex=1.5))
-
-plot(efeitos[[1]], type='response',main=list(
-    label="Taxa de sinistros vs. Sexo",
-    cex=1.5),
-    xlab=list(
-        label="Sexo",
-        cex=1.5),
-    ylab=list(
-        label="Taxa de  sinistros",
-        cex=1.5))
-
-plot(efeitos[[4]], type='response',main=list(
-    label="Taxa de sinistros vs. Valor do automóvel",
-    cex=1.5),
-    xlab=list(
-        label="Valor (x1000 reais)",
-        cex=1.5),
-    ylab=list(
-        label="Taxa de sinistros",
-        cex=1.5))
-
-```
-
-
-
-
-```{r, echo = FALSE}
-
-## Frequências ajustadas pelas duas distribuições, com e sem covariaveis.
-
-### Poisson sem ajuste de covariáveis.
-n <- nrow(dados)
-mediasin <- mean(dados$Sinistros)
-freqps <- round(n*dpois(0:10,mediasin))
-
-
-### Poisson com covariaveis
-pred1 <- predict(ajusteps,type='response')
-intervalo <- 0:10
-matprob <- matrix(0, nrow=nrow(dados), ncol=length(intervalo))
-probpois <- function(interv, taxa)
-    dpois(intervalo,taxa)
-for(i in 1:nrow(dados))
-    matprob[i,] <- probpois(interv = intervalo, taxa = pred1[i])
-pbarra <- colMeans(matprob)
-freqpsaj <- round(n*pbarra)
-
-
-
-### Binomial negativa sem covariaveis.
-ajustenb <- glm.nb(Sinistros ~ 1,data=dados)
-
-media <- exp(coefficients(ajustenb))
-shape <- ajustenb$theta
-freqbn <- round(n*dnbinom(0:10, mu = media, size = shape)); freqbn
-
-
-### Binomial negativa com covariaveis
-pred2 <- predict(ajustenb3,type='response')
-
-intervalo <- 0:10
-matprob <- matrix(0,nrow=nrow(dados),ncol=length(intervalo))
-probnb <- function(interv, media, shape)
-    dnbinom(intervalo, mu = media, size = shape)
-for(i in 1:nrow(dados))
-    matprob[i,] <- probnb(interv = intervalo, media = pred2[i], shape = ajustenb3$theta)
-pbarra <- colMeans(matprob)
-frebnaj <- round(n*pbarra)
-ams <- c(table(dados$Sinistros), rep(0,5))
-matfreq <- rbind(ams, freqps, freqpsaj, freqbn, frebnaj)
-colnames(matfreq) <- 0:10
-rownames(matfreq) <- c('Amostra', 'Poisson não ajustada por covariáveis', 'Poisson ajustada por covariáveis', 
-                       'BN não ajustada por covariáveis', 'BN ajustada por covariáveis')
-```
-
-
-### Frequências amostrais e frequências ajustadas pelas distribuições Poisson e Binomial Negativa (sem e com inclusão de covariáveis)
-
-```{r, results = 'markup'}
-kable(matfreq, format = "markdown", caption = "Frequências amostrais e freuências ajustadas para o número de sinistros")
-```
-
-
-
-
-
-
-
-
-
-
-
+---
+title: "Análise de Contagens - Poisson e Binomial Negativa"
+author: >
+  Walmes M. Zeviani,
+  Eduardo E. Ribeiro Jr &
+  Cesar A. Taconeli
+vignette: >
+  %\VignetteIndexEntry{Análise de Contagens - Poisson e Binomial Negativa}
+  %\VignetteEngine{knitr::rmarkdown}
+  %\VignetteEncoding{UTF-8}
+---
+
+```{r setup, include=FALSE}
+source("_setup.R")
+```
+
+
+Dados referentes ao número de sinistros registrados por 16483 clientes de
+uma seguradora de automóveis ao longo de um ano, contemplando as 
+seguintes variáveis:
+
+* **Sinistros**: Número de sinistros registrados;
+* **Exposicao**: Período de cobertura do cliente durante o ano sob análise;
+* **Tipo**: Tipo de veículo (hatch, monobloco, picape, sedan, wagon e suv);
+* **Idade**: Idade do cliente (em anos);
+* **Sexo**: M para masculino e F para feminino;
+* **Civil**: Estado civil (Solteiro, Casado, Divorciado e Viuvo);
+* **Valor**: Valor do veículo segurado (em reais).
+
+
+
+```{r, echo = FALSE, include=FALSE}
+
+require(lattice)
+require(hnp)
+require(MASS)
+require(effects)
+
+setwd("~/Desktop")
+dados <- read.csv('Baseauto2.csv', header=TRUE, sep=',', dec = ',')
+
+options(scipen = 3) ### Era zero.
+
+##### Preparando os dados.
+names(dados) <- c('Bonus','Tipo','Estado','Idade','Sexo','Civil','Valor','Exposicao','Sinistros')
+dados <- dados[,c('Tipo','Idade','Sexo','Civil','Valor','Exposicao','Sinistros')]
+levels(dados$Tipo) <- c('outros','outros','outros','outros','hatch','outros','mono','picape','picape','picape','sedan','wagon','suv')
+dados <- dados[-which(dados$Tipo=='outros'),]
+dados$Tipo <- factor(dados$Tipo)
+dados <- dados[which(dados$Valor != 0),]
+dados$Civil <- relevel(dados$Civil, ref = 'Solteiro')
+dados$lexpo <- log(dados$Exposicao)
+dados$Valor <- dados$Valor/1000
+
+```
+
+### Verificação do conteúdo e a estrutura dos dados.
+
+```{r}
+head(dados, 10) ### Dez primeiras linhas da base.
+str(dados)
+```
+
+### Análise descritiva da distribuição do número de sinistros. 
+
+```{r}
+table(dados$Sinistros) ### Distribuição do números de sinistros.
+taxageral <- sum(dados$Sinistros)/sum(dados$Exposicao); taxageral ### Taxa de sinistros na amostra.
+
+tab <- aggregate(cbind(Exposicao, Sinistros) ~ Sexo, data = dados, sum)
+taxa <- with(tab, Sinistros/Exposicao)
+tab <- cbind(tab, taxa); tab ### Distribuição do número de sinistros por sexo.
+
+dados$idadecat <- cut(dados$Idade, breaks=c(18,30,60, 92), include.lowest = T)
+tab <- aggregate(cbind(Exposicao, Sinistros) ~ idadecat, data = dados, sum)
+taxa <- with(tab, Sinistros/Exposicao)
+tab <- cbind(tab, taxa); tab ### Distribuição do número de sinistros por sexo.
+
+tabidsex <- aggregate(cbind(Exposicao, Sinistros) ~ Sexo + idadecat, data = dados, sum)
+Taxaidsex <- with(tabidsex, Sinistros/Exposicao)
+tabidsex <- cbind(tabidsex, Taxaidsex); tabidsex ### Distribuição do número de sinistros por idade e sexo.
+
+tab <- aggregate(cbind(Exposicao, Sinistros) ~ Tipo, data = dados, sum)
+taxa <- with(tab, Sinistros/Exposicao)
+tab <- cbind(tab, taxa); tab ### Distribuição do número de sinistros por tipo de veículo.
+
+tab <- aggregate(cbind(Exposicao, Sinistros) ~ Civil, data = dados, sum)
+taxa <- with(tab, Sinistros/Exposicao)
+tab <- cbind(tab, taxa); tab ### Distribuição do número de sinistros por estado civil.
+
+dados$valorcat <- cut(dados$Valor, breaks=quantile(dados$Valor), include.lowest = T)
+tab <- aggregate(cbind(Exposicao, Sinistros) ~ valorcat, data = dados, sum)
+taxa <- with(tab, Sinistros/Exposicao)
+tab <- cbind(tab, taxa); tab ### Distribuição do número de sinistros por valor do veículo.
+```
+
+## Regressão usando o modelo log-linear poisson.
+
+```{r}
+dados <- na.omit(dados)
+ajusteps <- glm(Sinistros ~ Tipo+Sexo+Idade+I(Idade**2)+Valor+Civil+offset(log(Exposicao)), data = dados, family=poisson)
+summary(ajusteps)
+
+##### Estimação do parâmetro de dispersão. 
+
+exp(coef(ajusteps))
+
+X2 <- sum(resid(ajusteps,type='pearson')**2)
+phichap <- X2/ajusteps$df.residual
+phichap ### Indicador de superdispersão.
+```
+
+### Diagnóstico do ajuste (gráficos).
+
+```{r}
+##### Diagnóstico do modelo - gráficos.
+par(mfrow=c(2,2))
+plot(ajusteps)
+
+
+par(mfrow=c(1,1))
+envelope=function(modelo){
+  dados=na.omit(modelo$data)
+  nsim=100
+  n=modelo$df.null+1
+  r1=sort(rstandard(modelo,type='deviance'))
+  m1=matrix(0,nrow=n,ncol=nsim)
+  a2=simulate(modelo,nsim=nsim)
+  
+  for (i in 1:nsim){
+    dados$y=a2[,i]
+    aj=update(modelo,y~.,data=dados)
+    m1[,i]=sort(rstandard(aj,type='deviance'))}
+  
+  li=apply(m1,1,quantile,0.025)
+  m=apply(m1,1,quantile,0.5)
+  ls=apply(m1,1,quantile,0.975)
+  
+  quantis=qnorm((1:n-0.5)/n)
+  
+  plot(rep(quantis,2),c(li,ls),type='n',xlab='Percentil da N(0,1)',ylab='Resíduos')
+  title('Gráfico Normal de Probabilidades')
+  lines(quantis,li,type='l')
+  lines(quantis,m,type='l',lty=2)
+  lines(quantis,ls,type='l')
+  points(quantis,r1,pch=16,cex=0.75)
+}
+
+envelope(ajusteps)
+
+```
+
+
+### Re-ajuste do modelo associando um parâmetro ao termo offset (log-exposicao)
+
+```{r}
+ajusteps2 <- glm(Sinistros ~ Tipo + Sexo + Idade +I(Idade**2) + Valor + Civil+log(Exposicao), data = dados, family=poisson)
+summary(ajusteps2)
+anova(ajusteps, ajusteps2, test = 'Chisq')
+```
+
+
+## Regressão usando a distribuição binomial negativa.
+
+```{r}
+ajustenb2 <- glm.nb(Sinistros ~ Tipo+Sexo+Idade+I(Idade**2)+Valor+Civil+log(Exposicao),data= dados)
+summary(ajustenb2) 
+
+### Verificando possibilidade de excluir estado civil e tipo de veículo do modelo.
+ajustenb3 <- update(ajustenb2, ~.-(Civil+Tipo))
+anova(ajustenb2, ajustenb3)
+
+## Estimação do parâmetro de dispersão
+X2 <- sum(resid(ajustenb3,type='pearson')**2) 
+phichap <- X2/ajustenb3$df.residual 
+phichap 
+```
+
+
+### Diagnóstico do ajuste (gráficos).
+
+```{r}
+##### Diagnóstico do modelo - gráficos.
+par(mfrow=c(2,2))
+plot(ajustenb3)
+```
+
+
+```{r, echo = FALSE}
+dadosnb3 <- dados[,c('Sexo','Idade','Valor','Exposicao','Sinistros')]
+
+par(mfrow=c(1,1))
+envelope=function(modelo){
+  dados=na.omit(dadosnb3)
+  nsim=100
+  n=modelo$df.null+1
+  r1=sort(rstandard(modelo,type='deviance'))
+  m1=matrix(0,nrow=n,ncol=nsim)
+  a2=simulate(modelo,nsim=nsim)
+  
+  for (i in 1:nsim){
+    dados$y=a2[,i]
+    aj=update(modelo,y~.,data=dados)
+    m1[,i]=sort(rstandard(aj,type='deviance'))}
+  
+  li=apply(m1,1,quantile,0.025)
+  m=apply(m1,1,quantile,0.5)
+  ls=apply(m1,1,quantile,0.975)
+  
+  quantis=qnorm((1:n-0.5)/n)
+  
+  plot(rep(quantis,2),c(li,ls),type='n',xlab='Percentil da N(0,1)',ylab='Resíduos')
+  title('Gráfico Normal de Probabilidades')
+  lines(quantis,li,type='l')
+  lines(quantis,m,type='l',lty=2)
+  lines(quantis,ls,type='l')
+  points(quantis,r1,pch=16,cex=0.75)
+}
+```
+
+
+```{r}
+par(mfrow=c(1,1))
+envelope(ajustenb3)
+```
+
+
+
+### Explorando os efeitos das covariáveis. Estimativas pontuais e ICs (95%)
+
+```{r}
+intervalos <- confint(ajustenb3)
+estimat <- cbind(ajustenb3$coefficients, intervalos)
+colnames(estimat)[1] <- 'Estimativa pontual'
+
+### Quadro de estimativas
+round(estimat, 5)
+```
+
+
+### Gráficos de efeitos
+
+```{r}
+
+dados$lexpo <- log(dados$Exposicao)
+ajustenb3 <- glm.nb(Sinistros ~ Sexo+Idade+I(Idade**2)+Valor+lexpo,data= dados)
+
+efeitos <- allEffects(ajustenb3, given.values=c(lexpo=0))
+
+trellis.par.set(list(axis.text = list(cex = 1.2))) 
+
+plot(efeitos[[2]], type='response',main=list(
+    label="Taxa de sinistros vs. Idade",
+    cex=1.5),
+    xlab=list(
+        label="Idade (anos)",
+        cex=1.5),
+    ylab=list(
+        label="Taxa de sinistros",
+        cex=1.5))
+
+plot(efeitos[[1]], type='response',main=list(
+    label="Taxa de sinistros vs. Sexo",
+    cex=1.5),
+    xlab=list(
+        label="Sexo",
+        cex=1.5),
+    ylab=list(
+        label="Taxa de  sinistros",
+        cex=1.5))
+
+plot(efeitos[[4]], type='response',main=list(
+    label="Taxa de sinistros vs. Valor do automóvel",
+    cex=1.5),
+    xlab=list(
+        label="Valor (x1000 reais)",
+        cex=1.5),
+    ylab=list(
+        label="Taxa de sinistros",
+        cex=1.5))
+
+```
+
+
+
+
+```{r, echo = FALSE}
+
+## Frequências ajustadas pelas duas distribuições, com e sem covariaveis.
+
+### Poisson sem ajuste de covariáveis.
+n <- nrow(dados)
+mediasin <- mean(dados$Sinistros)
+freqps <- round(n*dpois(0:10,mediasin))
+
+
+### Poisson com covariaveis
+pred1 <- predict(ajusteps,type='response')
+intervalo <- 0:10
+matprob <- matrix(0, nrow=nrow(dados), ncol=length(intervalo))
+probpois <- function(interv, taxa)
+    dpois(intervalo,taxa)
+for(i in 1:nrow(dados))
+    matprob[i,] <- probpois(interv = intervalo, taxa = pred1[i])
+pbarra <- colMeans(matprob)
+freqpsaj <- round(n*pbarra)
+
+
+
+### Binomial negativa sem covariaveis.
+ajustenb <- glm.nb(Sinistros ~ 1,data=dados)
+
+media <- exp(coefficients(ajustenb))
+shape <- ajustenb$theta
+freqbn <- round(n*dnbinom(0:10, mu = media, size = shape)); freqbn
+
+
+### Binomial negativa com covariaveis
+pred2 <- predict(ajustenb3,type='response')
+
+intervalo <- 0:10
+matprob <- matrix(0,nrow=nrow(dados),ncol=length(intervalo))
+probnb <- function(interv, media, shape)
+    dnbinom(intervalo, mu = media, size = shape)
+for(i in 1:nrow(dados))
+    matprob[i,] <- probnb(interv = intervalo, media = pred2[i], shape = ajustenb3$theta)
+pbarra <- colMeans(matprob)
+frebnaj <- round(n*pbarra)
+ams <- c(table(dados$Sinistros), rep(0,5))
+matfreq <- rbind(ams, freqps, freqpsaj, freqbn, frebnaj)
+colnames(matfreq) <- 0:10
+rownames(matfreq) <- c('Amostra', 'Poisson não ajustada por covariáveis', 'Poisson ajustada por covariáveis', 
+                       'BN não ajustada por covariáveis', 'BN ajustada por covariáveis')
+```
+
+
+## Comparação dos ajustes
+
+```{r, results = 'markup'}
+kable(matfreq, format = "markdown", caption = "Frequências amostrais e freuências ajustadas para o número de sinistros")
+```
+
+
+
+
+
+
+
+
+
+
+