Releases: USEPA/spmodel
Releases · USEPA/spmodel
spmodel v0.9.0
spmodel 0.9.0
Major Updates
- Added the
range_constrain
argument tosplm()
andspglm()
to constrain the range parameter to enhance numerical stability. The default forrange_constrain
isFALSE
, implying the range is not constrained. - Updated the
seal
data with additional polygons and a factor variable,stock
, with two levels (8
and10
) that indicates seal stock (i.e., seal type).
Minor Updates
- Changed diagonal tolerance threshold for
spglm()
andspgautor()
model objects. See this link for details. - Added the
"ie"
spatial covariance type tosplm()
andspglm()
models. Forsplm()
models,"ie"
is an alias for"none"
. Forspglm()
models,"none"
now fixes both thede
andie
covariance parameters at zero, while"ie"
fixes thede
covariance parameter at zero but allows theie
covariance parameter to vary. Thus,"none"
fromspmodel $\le$ v0.8.0
matches"ie"
fromspmodel
v0.9.0 and but is different from"none"
fromspmodel v0.9.0
. - Added the
na.action
argument topredict.spmodel()
functions to clarify that missing values innewdata
return an error. - Minor documentation updates.
Bug Fixes
- Fixed a bug that caused incorrect degrees of freedom for the likelihood ratio test (
anova(model1, model2)
) whenestmethod
is"ml"
for both models. - Fixed a bug that caused an error in
anova(object1, object2)
when the name ofobject1
had special characters (e.g.,$
).
spmodel v0.8.0
spmodel 0.8.0
Major Updates
- Added support for the
emmeans
R package for estimating marginal means ofsplm()
,spautor()
,spglm()
, andspgautor()
models. - Added a vignette to the
spmodel
website titled "Using emmeans to Estimate Marginal Means of spmodel Objects". - Added support for distance-based neighborhood definitions of
spautor()
andspgautor()
models via thecutoff
argument, required whendata
are ansf
object withPOINT
geometry andW
is not specified. - Added the
texas
data set, which contains voter turnout data from eligible voters in Texas, USA, during the 1980 Presidential election. - Added the
lake
andlake_preds
data sets, which contain data from the United States Environmental Protection Agency's National Lakes Assessment and LakeCat.
Minor Updates
- Changed the
type
argument inaugment()
forspglm()
andspgautor()
models totype.predict
to matchbroom::augment.glm()
. augment()
forspglm()
andspgautor()
models now returns fitted values on the link scale by default to matchbroom::augment.glm()
.- Added a
type.residuals
argument forspglm()
andspgautor()
models to matchbroom::augment.glm()
. - Updated
logLik()
to matchlm()
andglm()
behavior.logLik()
now returns a vector with classlogLik
and attributesnobs
anddf
. - Added support for using
AIC()
andBIC()
fromstats
and removedspmodel
-specificAIC()
andBIC()
methods. - Added support for
"terms"
prediction forsplm()
,spautor()
,spglm()
, andspgautor()
models. - Added
scale
anddf
arguments topredict()
forsplm()
andspautor()
models. - Add
dispersion
argument topredict()
forspglm()
andspgautor()
models. - Enhanced numeric stability of deviance and pseudo R-squared for
spglm()
orspgautor()
models whenfamily = "beta"
. - Added the
cov_type
argument tocovmatrix()
to return observed by observed, prediction by observed, observed by prediction, and prediction by prediction covariance matrices. - Added a
warning
argument toglances()
that determines whether relevant warnings should be displayed or not. - Added a warning message to
glances()
about interpreting likelihood-based statistics (e.g., AIC, AICc, BIC) when a one model hasestmethod = "ml"
and another model hasestmethod = "reml"
. - Added a warning message to
glances()
about interpreting likelihood-based statistics (e.g., AIC, AICc, BIC) when two models withestmethod = "reml"
have distinctformula
arguments. - Added a warning message to
glances()
about interpreting likelihood-based statistics (e.g., AIC, AICc, BIC) when two models have different sample sizes. - Added a warning message to
glances()
about interpreting likelihood-based statistics (e.g., AIC, AICc, BIC) when two models have different family supports (which can happen withspglm()
andspgautor()
models). - All data sets now have
tbl_df
andtbl
classes (i.e., are tibbles). - Added a
cloud
argument toesv()
to return a cloud semivariogram. esv()
output now hastbl_df
andtbl
classes (i.e., are tibbles) and anesv
class.- Added a
plot()
method foresv
objects. - Minor vignette updates.
- Minor documentation updates.
spmodel v0.7.0
spmodel 0.7.0
Minor Updates
- Added
AUROC()
functions to compute the area under the receiver operating characteristic (AUROC) curve forspglm()
andspgautor()
models whenfamily
is"binomial"
and the response is binary (i.e., represents a single success or failure). - Added a
BIC()
function to compute the Bayesian Information Criterion (BIC) forsplm()
,spautor()
,spglm()
, andspgautor()
models whenestmethod
is"reml"
(restricted maximum likelihood; the default) or"ml"
(maximum likelihood). - Added a
type
argument toloocv()
whencv_predict = TRUE
and usingspglm()
orspgautor()
models so that predictions may be obtained on the link or response scale. - Added a warning message when
data
is ansf
object and a geographic (i.e., degrees) coordinate system is used instead of a projected coordinate system. - Changed the default behavior of
local
inpredict.spmodel
so that it depends only on the observed data sample size. Now, when the observed data sample size exceeds 10,000local
is set toTRUE
by default. This change was made because prediction for big data depends almost exclusively on the observed data sample size, not the number of predictions desired. - Minor external data updates (for package testing).
- Minor vignette updates.
- Minor documentation updates.
- Minor error message updates.
Bug Fixes
- Fixed a bug that prohibited proper indexing when calling
predict()
with thelocal
method"distance"
on a model object fit with a random effect or partition factor.
spmodel v0.6.0
spmodel 0.6.0
Minor Updates
- Improved efficiency of handling random effects in big data models fit using
splm(..., local)
andspglm(..., local)
. - Changed
Matrix::rankMatrix(X, method = "tolNorm2")
toMatrix::rankMatrix(X, method = "qr")
when determining linear independence inX
, the design matrix of explanatory variables. - Replaced an error message with a warning message when
X
has perfect collinearities (i.e., is not full rank). If this warning message occurs, it is possible that a subsequent error occurs while model fitting resulting from a covariance matrix that is not positive definite (i.e., a covariance matrix that is singular or computationally singular). - Improved efficiency of
splm()
whenspcov_type
is"none"
and there are no random effects (#15). - Added a
range_positive
argument tospautor()
andspgautor()
that whenTRUE
(the new default), restricts the range parameter to be positive. WhenFALSE
(the prior default), the range parameter may be negative or positive. - Updated the initial parameter grid search for
spautor()
andspgautor()
to include range parameter values near the lower and upper boundaries. - Minor documentation updates
Bug Fixes
- Fixed a bug that yielded improper predictions when performing local prediction (specifying
local
in a call topredict(object, newdata, ...)
) when the model object (object
) was fit usingsplm(formula, ...)
orspglm(formula, ...)
andformula
contained at least one call topoly(..., raw = FALSE)
. - Fixed a bug that caused big data models fit using
splm(..., local)
andspglm(..., local)
to fail when a user-specified local index was passed tolocal
that was a factor variable and at least one factor level not was observed in the local index. - Fixed a bug that caused models fit using
splm(..., partition_factor)
andspglm(..., partition_factor)
to fail when the partition factor variable was a factor variable and at least one factor level was not observed in the data. - Fixed a bug in
spgautor()
that inflated the covariance matrix of the fixed effects (accessible viavcov()
). - Fixed a bug in
sp*(spcov_params, ...)
simulation functions that caused an error whenspcov_params
had class"car"
or"sar"
andW
was provided by the user.
spmodel v0.5.1
spmodel 0.5.1
Minor Updates
- Set a default value of
newdata_size = 1
whennewdata_size
was omitted while predictingtype = "response"
for binomial families. - Improved computational efficiency of
loocv(object)
whenobject
was created usingsplm()
orspglm()
,spcov_type
was"none"
, and there were no random effects specified viarandom
. - Changed the number of k-means iterations from 10 to 30 (when fitting models using the
local
argument tosplm()
orspglm()
). - Added bias and root-mean-squared-prediction error to
loocv(object)
. Whenobject
was created usingsplm()
orspautor()
,loocv(object)
added the squared correlation between the observed data and leave-one-out predictions, regarded as a prediction r-squared. - Improved prediction efficiency (using
predict()
oraugment()
) forsplm()
objects whenspcov_type
was"none"
and there were no random effects. - Minor error message updates.
Bug Fixes
- Fixed a bug that caused local prediction to fail when the fitted model used a partition factor (#13).
- Fixed a bug that caused significant increases in computational and memory demands when calling
loocv(object, local, ...)
ifobject
was created usingsplm(..., random)
orspglm(..., random)
(i.e., when random effects were specified via therandom
argument tosplm()
orspglm()
). - Fixed a bug that caused significant increases in computational and memory demands when calling
loocv(object, local, ...)
ifobject
was created usingsplm(..., partition_factor)
orspglm(..., partition_factor)
(i.e., when a partition factor was specified via thepartition_factor
argument tosplm()
orspglm()
).
spmodel v0.5.0
spmodel 0.5.0
Minor updates
- Predictions can now be made for prediction locations whose random effect levels are not present in the observed data
- When this occurs, the random-effect covariance between the observed data and these prediction locations is assumed to be zero.
- The default for
local = TRUE
insplm()
andspglm()
now uses thekmeans
assignment method with group sizes approximately equal to 100.- Previously, the
random
assignment method was used with group sizes approximately equal to 50.
- Previously, the
- The default for
local = TRUE
inpredict()
andaugment()
now uses 100 local neighbors.- Previously, 50 local neighbors were used.
- Moved the "A Detailed Guide to
spmodel
" and "Technical Details" vignettes to the package website. - Added a "Spatial Generalized Linear Models in
spmodel
" vignette to the package website. - Changed name of "An Overview of Basic Features in
spmodel
" vignette to "An Introduction tospmodel
" and changed output type from PDF to HTML. - Other minor vignette updates.
- Minor documentation updates.
Bug fixes
- Fixed a bug that occurred with prediction for success/failure binomial data (e.g., Bernoulli data) when
local
inpredict()
wasTRUE
. - Fixed a bug that could affect simulating data using
sprbinom()
when thesize
argument was different from1
. - Fixed a bug that could cause local prediction to fail when only one level of a random effect was present in the prediction site's local neighborhood.
- Fixed a bug that could cause an error when local estimation was used for the
"sv-wls"
estimation method. - Fixed a bug that caused undesirable behavior from
tidy()
whenconf.level
was less than zero or greater than one.
spmodel v0.4.0
spmodel 0.4.0
Major updates
- Added an
spglm()
function to fit spatial generalized linear models for point-referenced data (i.e., generalized geostatistical models).spglm()
syntax is very similar tosplm()
syntax.- Poisson, negative binomial, binomial, beta, gamma, and inverse Gaussian families are accommodated.
spglm()
fitted model objects use the same generics assplm()
fitted model objects.
- Added an
spgautor()
function to fit spatial generalized linear models for areal data (i.e., spatial generalized autoregressive models).spgautor()
syntax is very similar tospautor()
syntax.- Poisson, negative binomial, binomial, beta, gamma, and inverse Gaussian families are accommodated.
spgautor()
fitted model objects use the same generics asspautor()
fitted model objects.
Minor updates
- In
augment()
, made thelevel
andlocal
arguments explicit (rather than being passed topredict()
via...
). - Added
offset
support for relevant modeling functions. - Minor documentation updates.
- Minor vignette updates.
Bug fixes
- Fixed a bug in
spcov_params()
that yielded output with improper names when a named vector was used as an argument. - Fixed a bug in
spautor()
that did not properly coerceM
if given as a matrix (instead of a vector). - Fixed a bug in
esv()
that prevented coercion ofPOLYGON
geometries toPOINT
geometries ifdata
was ansf
object. - Fixed a bug in
esv()
that did not removeNA
values from the response. - Fixed a bug in
splm()
andspautor()
that caused an error when random effects or partition factors were ordered factors. - Fixed a bug in
spautor()
that prevented an error from occurring when a partition factor was not categorical or not a factor - Fixed a bug in
covmatrix(object, newdata)
that returned a matrix with improper dimensions whenspcov_type
was"none"
. - Fixed a bug in
predict()
that caused an error when at least one level of a fixed effect factor was not observed within a local neighborhood (when thelocal
method was"covariance"
or"distance")
. - Fixed a bug in
cooks.distance()
that used the Pearson residuals instead of the standarized residuals.
spmodel v0.3.0
spmodel 0.3.0
Minor updates
- Added the
varcomp
function to compare variance components. - Added an error message when there are
NA
values in predictors. - Added an error message when the design (model) matrix is not invertible (i.e., perfect collinearities are detected).
- Added support for plotting anisotropic level curves of equal correlation when the
which
argument toplot()
contains8
. - Renamed
residuals()
typeraw
toresponse
to matchstats::lm()
. - Changed class of
splm()
output to"splm"
from"spmod"
or"splm_list"
from"spmod_list"
. - Changed class of
spautor()
output to"spautor"
from"spmod"
or"spautor_list"
from"spautor_list"
. - Changed class of
splmRF()
output to"splmRF"
from"spmodRF"
or"splmRF_list"
from"spmodRF_list"
. - Changed class of
spautorRF()
output to"spautorRF"
from"spmodRF"
or"spautorRF_list"
from"spmodRF_list"
. - Methods corresponding to a generic function defined outside of
spmodel
are now all documented using
an.spmodel
suffix, making it easier to find documentation of a particular
spmodel
method for the generic function of interest. - Added an error when random effect grouping variables or partition factors are numeric.
- Added an error when random effect or partition factor levels in
newdata
are not also indata
. - Updated citation information.
Bug fixes
- Fixed a bug that produced irregular spacing in an error message for
spcov_initial()
. - Fixed a bug that prevented proper display of row names when calling
predict()
withinterval = "confidence"
. - Fixed a bug that sometimes caused miscalculations in model-fitting and prediction
when random effect or partition factor variables were improperly coerced to a different type. - Fixed bugs that sometimes caused miscalculations in certain model diagnostics.
- Fixed inconsistencies in several non-exported generic functions.
- Fixed a bug that prevented names from appearing with output from certain model diagnostics.
spmodel v0.2.0
spmodel 0.2.0
Minor updates
splm()
andspautor()
allow multiple models to be fit when thespcov_type
argument is a vector of length greater than one or thespcov_initial
argument is a list (with length greater than one) ofspcov_initial
objects.- The resulting object is a list with class
spmod_list
. Each element of the list holds a different model fit. glances()
is used on anspmod_list
object to glance at each model fit.predict()
is used on anspmod_list
object to predict at the locations innewdata
for each model fit.
- The resulting object is a list with class
- Added the
splmRF()
andspautorRF()
functions to fit random forest spatial residual models.- The resulting object has class
spmodRF
(one spatial covariance) orspmodRF_list
(multiple spatial covariances) - These objects are built for use with
predict()
to perform prediction.
- The resulting object has class
- Added the
covmatrix()
function to extract covariance matrices from anspmod
object fit usingsplm()
orspautor()
. - Minor vignette updates.
- Minor documentation updates.
Bug Fixes
- Fixed a bug that prevents display of spatial covariance type in summary of
spmod
objects. - Fixed a bug that prevented prediction of factor variables when all levels of all factor variables did not appear in
newdata
.
spmodel v0.1.1
spmodel 0.1.1
Minor updates
- Updated unit tests so that they are compatible with an upcoming version of
Matrix
.