createSTmodel {SpatioTemporal} | R Documentation

## Construct STmodel Object

### Description

Creates a `STmodel` object that can be for estimation and prediction. For details see the sub-functions linked under the relevant Arguments.

### Usage

    createSTmodel(STdata, LUR = NULL, ST = NULL, cov.beta = list(covf = "exp",
      nugget = FALSE), cov.nu = list(covf = "exp", nugget = TRUE, random.effect =
      FALSE), locations = list(coords = c("x", "y"), long.lat = NULL, coords.beta
      = NULL, coords.nu = NULL, others = NULL), strip = FALSE, scale = FALSE,
      scale.covars = NULL)

### Arguments

`STdata` | `STdata` object with observations, covariates, trends, etc; see `createSTdata` or `mesa.data.raw` for an example.
`LUR` | Specification of covariates for the beta-fields, see `processLUR`.
`ST` | Specification of spatio-temporal covariates, see `processST`.
`cov.beta, cov.nu` | Specification of the covariance functions, see `updateCovf`.
`locations` | Specification of the sites (both monitored and un-monitored), see `processLocation`.
`strip` | Should unobserved locations be dropped?
`scale` | Scale the covariates? If `TRUE` all non-factor covariates are scaled after the locations have been extracted but before constructing the covariate matrix for the beta-fields. (NOTE: If set to `TRUE` this scales the `LUR.all` elements to mean=0, sd=1).
`scale.covars` | list with elements `mean` and `sd` giving the mean and standard deviation to use when scaling the covariates. Computed from `STdata$covars` if not given.

### Details

The object holds observations, trends, geographic, and spatio-temporal covariates, as well as a number of precomputed fields that speed up log-likelihood evaluations. To improve performance the locations are also reorder so that observed locations come before unobserved.

### Value

A `STmodel` object, see `mesa.model` for an example.

### Author(s)

Johan Lindstrom

### See Also

Other STmodel methods: `MCMC.STmodel`, `c.STmodel`, `estimate.STmodel`, `estimateCV.STmodel`, `plot.STdata`, `predict.STmodel`, `print.STmodel`, `print.summary.STmodel`, `qqnorm.predCVSTmodel`, `scatterPlot.predCVSTmodel`, `simulate.STmodel`, `summary.STmodel`

Other STmodel functions: `createCV`, `createDataMatrix`, `dropObservations`, `estimateBetaFields`, `loglikeSTdim`, `loglikeST`, `predictNaive`, `processLUR`, `processLocation`, `updateCovf`, `updateTrend.STdata`

Other STdata functions: `c.STmodel`, `createDataMatrix`, `createSTdata`, `detrendSTdata`, `estimateBetaFields`, `removeSTcovarMean`, `updateTrend.STdata`

### Examples

    ##load the data
    data(mesa.data.raw)
    ##and create STdata-object
    mesa.data <- createSTdata(mesa.data.raw$obs, mesa.data.raw$X, n.basis=2,
                              SpatioTemporal=mesa.data.raw["lax.conc.1500"])

    ##define land-use covariates
    LUR <-  list(~log10.m.to.a1+s2000.pop.div.10000+km.to.coast,
                 ~km.to.coast, ~km.to.coast)
    ##and covariance model
    cov.beta <- list(covf="exp", nugget=FALSE)
    cov.nu <- list(covf="exp", nugget=TRUE, random.effect=FALSE)
    ##which locations to use
    locations <- list(coords=c("x","y"), long.lat=c("long","lat"), others="type")

    ##create object
    mesa.model <- createSTmodel(mesa.data, LUR=LUR, ST="lax.conc.1500",
                                cov.beta=cov.beta, cov.nu=cov.nu,
                                locations=locations)
    print(mesa.model)
    ##This is the same as data(mesa.model)

    ##lets try some alternatives:
    model.none <- createSTmodel(mesa.data, LUR=NULL, ST=NULL)
    print(model.none)

    ##Specify LUR:s using numbers
    names(mesa.data$covars)
    model.diff <- createSTmodel(mesa.data, LUR=list(c(7,10,11,12),11:12,11:12),
                                ST=1)
    print(model.diff)

    ##Same covariates for all temporal trends, calling by name
    ##but with different covariance models for each trend, and nugget that depends
    ##on monitor type
    model.same <- createSTmodel(mesa.data, LUR=c("log10.m.to.a1", "log10.m.to.road",
                                             "km.to.coast","s2000.pop.div.10000"),
                                ST="lax.conc.1500", cov.nu=list(nugget="type"),
                                cov.beta=list(covf=c("exp","exp2","iid"),
                                  nugget=c(FALSE, FALSE, TRUE)) )
    print(model.same)

[Package SpatioTemporal version 1.1.9.1 Index]