forked from rmcelreath/rethinking
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- man pages for dbetabinom and dgampois - added rbetabinom function - bug fix: map detects linear models like "mu <- 0" now - map2stan gamma-Poisson template uses Stan's neg_binomial_2 distribution now (so less parameter transformation required) - postcheck displays beta-binomial like binomial now
- Loading branch information
Richard McElreath
committed
Dec 4, 2014
1 parent
fcfdfbe
commit 0f6fcc9
Showing
7 changed files
with
143 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,8 @@ | ||
Package: rethinking | ||
Type: Package | ||
Title: Statistical Rethinking book package | ||
Version: 1.45 | ||
Date: 2014-10-20 | ||
Version: 1.46 | ||
Date: 2014-11-3 | ||
Author: Richard McElreath | ||
Maintainer: Richard McElreath <[email protected]> | ||
Depends: | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
\name{dbetabinom} | ||
\alias{dbetabinom}\alias{rbetabinom} | ||
\title{Beta-binomial probability density} | ||
\description{ | ||
Functions for computing density and producing random samples from a beta-binomial probability distribution. | ||
} | ||
\usage{ | ||
dbetabinom( x , size , prob , theta , shape1 , shape2 , log=FALSE ) | ||
rbetabinom( n , size , prob , theta , shape2 , shape2 ) | ||
} | ||
%- maybe also 'usage' for other objects documented here. | ||
\arguments{ | ||
\item{x}{Integer values to compute probabilies of} | ||
\item{size}{Number of trials} | ||
\item{prob}{Average probability of beta distribution} | ||
\item{theta}{Dispersion of beta distribution} | ||
\item{shape1}{First shape parameter of beta distribution (alpha)} | ||
\item{shape2}{Second shape parameter of beta distribution (beta)} | ||
\item{log}{If \code{TRUE}, returns log-probability instead of probability} | ||
\item{n}{Number of random observations to sample} | ||
} | ||
\details{ | ||
These functions provide density and random number calculations for beta-binomial observations. The \code{dbetabinom} code is based on Ben Bolker's original code in the \code{emdbook} package. | ||
Either \code{prob} and \code{theta} OR \code{shape1} and \code{shape2} must be provided. The two parameterizations are related by shape1 = prob * theta, shape2 = (1-prob) * theta. | ||
The \code{rbetabinom} function generates random beta-binomial observations by using both \code{\link{rbeta}} and \code{\link{rbinom}}. It draws \code{n} values from a beta distribution. Then for each, it generates a random binomial observation. | ||
} | ||
\references{} | ||
\author{Richard McElreath} | ||
\seealso{} | ||
\examples{ | ||
data(reedfrogs) | ||
reedfrogs$pred_yes <- ifelse( reedfrogs$pred=="pred" , 1 , 0 ) | ||
# map model fit | ||
# note exp(log_theta) to constrain theta to positive reals | ||
m <- map( | ||
alist( | ||
surv ~ dbetabinom( density , p , exp(log_theta) ), | ||
logit(p) <- a + b*pred_yes, | ||
a ~ dnorm(0,10), | ||
b ~ dnorm(0,1), | ||
log_theta ~ dnorm(1,10) | ||
), | ||
data=reedfrogs ) | ||
# map2stan model fit | ||
# constraint on theta is passed via contraints list | ||
m.stan <- map2stan( | ||
alist( | ||
surv ~ dbetabinom( density , p , theta ), | ||
logit(p) <- a + b*pred_yes, | ||
a ~ dnorm(0,10), | ||
b ~ dnorm(0,1), | ||
theta ~ dcauchy(0,1) | ||
), | ||
data=reedfrogs, | ||
constraints=list(theta="lower=0") ) | ||
} | ||
% Add one or more standard keywords, see file 'KEYWORDS' in the | ||
% R documentation directory. | ||
\keyword{ } | ||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
\name{dgampois} | ||
\alias{dgampois}\alias{rgampois} | ||
\title{Gamma-Poisson probability density} | ||
\description{ | ||
Functions for computing density and producing random samples from a gamma-Poisson (negative-binomial) probability distribution. | ||
} | ||
\usage{ | ||
dgampois( x , mu , scale , log=FALSE ) | ||
rgampois( n , mu , scale ) | ||
} | ||
%- maybe also 'usage' for other objects documented here. | ||
\arguments{ | ||
\item{x}{Integer values to compute probabilies of} | ||
\item{mu}{Mean of gamma distribution} | ||
\item{scale}{Scale parameter of gamma distribution} | ||
\item{log}{If \code{TRUE}, returns log-probability instead of probability} | ||
\item{n}{Number of random observations to sample} | ||
} | ||
\details{ | ||
These functions provide density and random number calculations for gamma-Poisson observations. These functions use \code{dnbinom} and \code{rnbinom} internally, but convert the parameters from the \code{mu} and \code{scale} form. The \code{size} parameter of the negative-binomial is defined by \code{mu/scale}, and the \code{prob} parameter of the negative-binomial is the same as \code{1/(1+scale)}. | ||
} | ||
\references{} | ||
\author{Richard McElreath} | ||
\seealso{} | ||
\examples{ | ||
data(Hurricanes) | ||
|
||
# map model fit | ||
# note exp(log_scale) to constrain scale to positive reals | ||
m <- map( | ||
alist( | ||
deaths ~ dgampois( mu , exp(log_scale) ), | ||
log(mu) <- a + b*femininity, | ||
a ~ dnorm(0,100), | ||
b ~ dnorm(0,1), | ||
log_scale ~ dnorm(1,10) | ||
), | ||
data=Hurricanes ) | ||
|
||
# map2stan model fit | ||
# constraint on scale is passed via contraints list | ||
m.stan <- map2stan( | ||
alist( | ||
deaths ~ dgampois( mu , scale ), | ||
log(mu) <- a + b*femininity, | ||
a ~ dnorm(0,100), | ||
b ~ dnorm(0,1), | ||
scale ~ dcauchy(0,2) | ||
), | ||
data=Hurricanes, | ||
constraints=list(scale="lower=0"), | ||
start=list(scale=2) ) | ||
} | ||
% Add one or more standard keywords, see file 'KEYWORDS' in the | ||
% R documentation directory. | ||
\keyword{ } | ||
|