tweedie.profile(formula, p.vec, smooth=FALSE, do.plot=FALSE, do.ci=smooth,
eps=1/6, method="series", conf.level=0.95,
phi.method=ifelse(method == "saddlepoint", "saddlepoint", "mle"))
response $\sim$ predictors
.
For details,
see the documentation for lm
,
p
values for consideration.
The values must all be larger than one
(if the response variable has exact zeros,
the values must all be between one and two).
See the DETAILS section below for further details.TRUE
,
a spline is fitted to the data to smooth the profile likelihood plot.
If FALSE
(the default),
no smoothing is used
(and the function is quicker).
Note that p.vec
must contain at leaTRUE
,
a plot of the profile likelihood is produce.
If FALSE
(the default),
no plot is produced.TRUE
,
the nominal 100*conf.level
is computed.
If FALSE
,
the confidence interval is not computed.
By default,
do.ci
is the same value as smooth
,
since a confidence interval weps=1/6
(as suggested by Nelder and Pregibon, 1987).
Note that eps
is ignored unless the
method="saddlepoint"
as it makes no sense."series"
(the default),
"inversion"
,
"interpolation"
or
"saddlepoint"
.
If there are any troubles using this function,
often a change of method will conf.level=0.95
.phi
,
one of
"saddlepoint"
or
"mle"
.
A maximum likelihood estimate is used unless
method="saddlepoint"
,
when the saddlepoint approximation method is used.
Note that using
y
and x
(such that plot(x,y)
(partially)
recreates the profile likelihood plot);
ht
(the height of the nominal confidence interval);
L
(the estimate of the (log-) likelihood at each given value of p
);
p
(the p
-values used);
p.max
(the estimate of the mle of p
);
L.max
(the estimate of the (log-) likelihood at p.max
);
phi
(the estimate of phi
at p.max
);
ci
(the lower and upper limits of the confidence interval for p
);
method
(the method used).p.vec
,
the function computes an estimate of phi
and then computes the value of the log-likelihood for these parameters.
The plot of the log-likelihood against p.vec
allows the maximum likelihood value of p
to be found.
Once the value of p
is found,
the distribution within the class of Tweedie distribution is identified.Jorgensen, B. (1987). Exponential dispersion models. Journal of the Royal Statistical Society, B, 49, 127--162.
Jorgensen, B. (1997). Theory of Dispersion Models. Chapman and Hall, London.
Nelder, J. A. and Pregibon, D. (1987). An extended quasi-likelihood function. Biometrika 74(2), 221--232.
Tweedie, M. C. K. (1984). An index which distinguishes between some important exponential families. Statistics: Applications and New Directions. Proceedings of the Indian Statistical Institute Golden Jubilee International Conference (Eds. J. K. Ghosh and J. Roy), pp. 579-604. Calcutta: Indian Statistical Institute.
dtweedie
dtweedie.saddle
library(statmod) # Needed to use tweedie.profile
# Generate some fictitious data
test.data <- rgamma(n=200, scale=1, shape=1)
# The gamma is a Tweedie distribution with power=2;
# let's see if the profile plot shows this
out <- tweedie.profile( test.data ~1, p.vec=seq(1.7, 2.3, length=10),
do.plot=TRUE, method="interpolation", smooth=TRUE, do.ci=TRUE)
# And plot the points to see how the smooth went
points( out$p, out$L)
Run the code above in your browser using DataLab