ergm (version 3.6.1)

logLik.ergm: A logLik method for ergm.

Description

A function to return the log-likelihood associated with an ergm fit, evaluating it if necessary. logLikNull computes, when possible (see Value), the log-probability of observing the observed, unconstrained dyads of the network observed under the null model.

Usage

"logLik"(object, add=FALSE, force.reeval=FALSE, eval.loglik=add || force.reeval, control=control.logLik.ergm(), ...)
logLikNull(object, ...)
"logLikNull"(object, control=control.logLik.ergm(), ...)

Arguments

object
An ergm fit, returned by ergm.
add
Logical: If TRUE, instead of returning the log-likelihood, return object with log-likelihood value set.
force.reeval
Logical: If TRUE, reestimate the log-likelihood even if object already has an estiamte.
eval.loglik
Logical: If TRUE, evaluate the log-likelihood if not set on object.
control
A list of control parameters for algorithm tuning. Constructed using control.logLik.ergm.
...
Other arguments to the likelihood functions.

Value

The form of the output of logLik.ergm depends on add: add=FALSE (the default), a logLik object. If add=TRUE (the default), an ergm object with the log-likelihood set.logLikNull returns an object of type logLik if it is able to compute the null model probability, and NA otherwise.As of version 3.1, all likelihoods for which logLikNull is not implemented are computed relative to the reference measure. (I.e., a null model, with no terms, is defined to have likelihood of 0, and all other models are defined relative to that.)

Details

If the log-likelihood was not computed for object, produces an error unless eval.loglik=TRUE

References

Hunter, D. R. and Handcock, M. S. (2006) Inference in curved exponential family models for networks, Journal of Computational and Graphical Statistics.

See Also

logLik, ergm.bridge.llr, ergm.bridge.dindstart.llk

Examples

Run this code
# See help(ergm) for a description of this model. The likelihood will
# not be evaluated.
data(florentine)
## Not run: 
# # The default maximum number of iterations is currently 20. We'll only
# # use 2 here for speed's sake.
# gest <- ergm(flomarriage ~ kstar(1:2) + absdiff("wealth") + triangle, eval.loglik=FALSE)
# 
# gest <- ergm(flomarriage ~ kstar(1:2) + absdiff("wealth") + triangle, eval.loglik=FALSE,
#              control=control.ergm(MCMLE.maxit=2))
# # Log-likelihood is not evaluated, so no deviance, AIC, or BIC:
# summary(gest)
# # Evaluate the log-likelihood and attach it to the object.
# 
# # The default number of bridges is currently 20. We'll only use 3 here
# # for speed's sake.
# gest.logLik <- logLik(gest, add=TRUE)
# 
# gest.logLik <- logLik(gest, add=TRUE, control=control.logLik.ergm(nsteps=3))
# # Deviances, AIC, and BIC are now shown:
# summary(gest.logLik)
# # Null model likelihood can also be evaluated, but not for all constraints:
# logLikNull(gest) # == network.dyadcount(flomarriage)*log(1/2)
# ## End(Not run)

Run the code above in your browser using DataLab