R: Internal representation of an 'ergm' network model

ergm_model {ergm} | R Documentation

## Internal representation of an `ergm` network model

### Description

These methods are generally not called directly by users, but may be employed by other depending packages. `ergm_model` constructs it from a formula. Each term is initialized via the `InitErgmTerm` functions to create a `ergm_model` object.

### Usage

    ergm_model(
      formula,
      nw = NULL,
      silent = FALSE,
      ...,
      term.options = list(),
      extra.aux = list(),
      env = globalenv(),
      offset.decorate = TRUE
    )

    ## S3 method for class 'ergm_model'
    c(...)

    as.ergm_model(x, ...)

    ## S3 method for class 'ergm_model'
    as.ergm_model(x, ...)

    ## S3 method for class 'formula'
    as.ergm_model(x, ...)

    ## S3 method for class 'ergm_model'
    is.curved(object, ...)

    ## S3 method for class 'ergm_model'
    is.dyad.independent(object, ...)

    ## S3 method for class 'ergm_model'
    nparam(object, canonical = FALSE, offset = NA, byterm = FALSE, ...)

    ## S3 method for class 'ergm_model'
    param_names(object, canonical = FALSE, offset = NA, ...)

### Arguments

`formula` | An `ergm()` formula of the form `network ~ model.term(s)` or `~ model.term(s)`.
`nw` | The network of interest, optionally instrumented with `ergm_preprocess_response()` to have a response attribute specification; if passed, the LHS of `formula` is ignored. This is the recommended usage.
`silent` | logical, whether to print the warning messages from the initialization of each model term.
`...` | additional parameters for model formulation
`term.options` | A list of additional arguments to be passed to term initializers. See `? term.options`.
`extra.aux` | a list of auxiliary request formulas required elsewhere; if named, the resulting `slots.extra.aux` will also be named.
`env` | a throwaway argument needed to prevent conflicts with some usages of `ergm_model`. The initialization environment is always taken from the `formula`.
`offset.decorate` | logical; whether offset coefficient and parameter names should be enclosed in `"offset()"`.
`x` | object to be converted to an `ergm_model`.
`object` | An `ergm_model` object.
`canonical` | Whether the canonical (eta) parameters or the curved (theta) parameters are used.
`offset` | If `NA` (the default), all model terms are counted; if `TRUE`, only offset terms are counted; and if `FALSE`, offset terms are skipped.
`byterm` | Whether to return a vector of the numbers of coefficients for each term.

### Value

`ergm_model` returns an `ergm_model` object as a list containing:

`terms` | a list of terms and 'term components' initialized by the appropriate `InitErgmTerm.X` function.
`etamap` | the theta -> eta mapping as a list returned from <ergm.etamap>

### Methods (by generic)

- `c`: A method for concatenating terms of two or more initialized models.

- `is.curved`: Tests whether the model is curved.

- `is.dyad.independent`: Tests whether the model is dyad-independent.

- `nparam`: Number of parameters of the model.

- `param_names`: Parameter names of the model.

### Note

This API is not to be considered fixed and may change between versions. However, an effort will be made to ensure that the methods of this class remain stable.

Earlier versions also had an optional `response=` parameter that, if not `NULL`, switched to valued mode and used the edge attribute named in `response=` as the response. This is no longer used; instead, the response is to be set on `nw` via `ergm_preprocess_response(nw, response)`.

### See Also

`summary.ergm_model()`, `ergm_preprocess_response()`

[Package ergm version 4.2.2 Index]