Version 3.11.4
This is a CRAN release also. This release is focused on improving the plotting functions for marssMLE, marssResiduals and marssPredict objects. The website links also needed to be updated to the new GitHub organization home for MARSS (and the other ATSA material): atsa-es.
ENHANCEMENTS
- Added a variety of new plots to
autoplot.marssMLEandplot.marssMLE: all types of residuals with all possible standardizations versus time, plus ACF and QQPlots for the same, and all possible fitted y and x plots. Cleaned-up the plots in various ways (e.g. missing CIs). Added notes (that can be turned off) to the bottom of theautoplotplots to explain what the plot is and guide the user to the more standard plots. - Revamped residuals plots made by
autoplot.marssMLE()andplot.marssMLE()to allow a full range of residuals plots but to only show a subset for a specific set of residuals diagnostics plots by default. - Created
autoplot.marssResiduals()andplot.marssResiduals()formarssResidualsobjects. Simplifies standard residuals plots. This needs to be separate fromplot.marssMLE()(i.e. cannot be called fromplot.marssMLE) since it is designed to plot whatever happens to be in themarssResidualsobject passed toplot.marssResiduals().plot.marssMLE()runsresiduals()to create a specific set of residuals diagnostics plots. - Improved
autoplot.marssPredict()with better titles and notes below the plots. Removedpi.intas an argument forautoplot.marssPredict()andplot.marssPredict()as this was extraneous. The PI/CI info is pulled in from themarssPredictobject. - Added utility function
match.arg.exact()which does exact argument matching. The base Rmatch.arg()usespmatch()and does partial matching. This is a problem for many functions where"xtt1"is different than"xtt". This function implements exact matching. - Added row and column names to the output from
coef.marssMLE()whentype="matrix". - Added more text to help file for
MARSSresiduals()to explain variance and correlation for standardized residuals. - Added
var.ytt1andvar.Eytt1to the output fromMARSShatyt()whenonly.kem=FALSE. This is for convenience for the plot functions. - Added
str_to_sentenceutility function for the notes inautoplot.marssMLE()plots. - Added
interval.typeto the marssPredict objects otherwise the type of interval in the object (prediction or confidence) cannot be known. - Removed the loess lines from the residuals plots.
BUGS
plot.predictMARSS()was not showing the forecasts and the state predictions whenh=0was garbling the CIs and PIs when a shortnewdatawas passed in (short = shorter than original data).autoplot.marssPredict()was not using the time info from ts object, so x-axis was showing 1, 2, 3 etc instead of the years, for example.MARSS.dfa()used ifform="dfa"allowed Z to be passed in. This form is a helper function that forms a default DFA model with a user specified number of trends (m). If the user needs a custom Z, they should not useform="dfa"but use the defaultMARSS()(form="marxss").MARSS.dfa()was changed to not allow Z to be passed into the model argument.coef.marssMLE()was not properly showing a time-varying A or U whentype="matrix",form="marss"and D or C estimated.plot.marssMLE()was not resettingpar()when done thus affecting users plot environment.residuals.marssMLE()value column for states was wrong when there were more than one state becausec($.x[2:TT], NA)was used. Changed to not offsetting either.xor.fittedcolumns and instead added clarification to the documentation forresiduals.marssMLE(). Thevaluecolumn was used for examples in help file forresiduals.marssMLE()and for the coefficient of determination reported byglance.marssMLE().MARSS()was not setting convergence to an error code when Kalman filter function throws and error before model is fit.
DOCUMENTATION
- Fixed some references to
MARSSsettings(). This was replaced withpkg_globalsin the package environment via.onLoad(). - More clean-up of the equations. Just being more consistent about using
\eqn{}when R, Q etc refer to the matrices in the MARSS equation versus code. residuals_marssMLE.Rdhad a few typos. Main one was thatnamecolumn was called.typecolumn.- Fixed a typo in
Residuals.Rnw. LaTeX definition forVtt1was not working. Also fixed a couple misspellings inEMDerivation.Rnw. - Did a thorough re-read of the User Guide and did a lot of clean-up.