Super Imposition by Translation and Rotation Growth Curve Analysis

Functions for fitting and plotting SITAR (Super Imposition by Translation And Rotation) growth curve models. SITAR is a shape-invariant model with a regression B-spline mean curve and subject-specific random effects on both the measurement and age scales. The model was first described by Lindstrom (1995) and developed as the SITAR method by Cole et al (2010) .

Growth curve analysis


Changes in Version 1.1.1

o trim (new) option in plot.sitar to remove unsightly long lines from plots.

o For trim to work, mplot now allows rows with missing data.

o apv_se (new) bootstraps standard errors for peak velocity (pv) and age at pv.

o getPeakTrough now uses xy.coords and returns NA if no turning points.

o Fix several bugs in plot.sitar, involving subset with predict, dashed line for velocity, and axis 4 etc.

o BREAKING CHANGE - options 'dv' with subset in plot.sitar now work as they should, showing mean curves for the subset selected.

o predict.sitar improved so individual velocity curves (option V) now plot correctly when y and/or t are transformed.

o Fix bugs in xyadj improving the defaults for y and id, and making abc a data frame and adding missing columns.

o msMaxIter default in nlmeControl doubled to 100.

o getData.sitar now based on getData.nlme not getData.lme.

o LMS2z now requires 'measure' to be character, changing example accordingly. Also the specification of the sex argument has been improved and extended.

Changes in Version 1.1.0

o plot.sitar now allows data output for plotting in ggplot2 etc.

o plot.sitar now applies apv to multiple curves (options D and V).

o Fix bug in plot.sitar with options dv.

o Add vignette Fitting models in SITAR.

o Add berkeley dataset.

o cLMS and zLMS now return a matrix if z or x are matrices.

o LMS2z now returns a matrix if y is a matrix.

o Fix bug in z2cent for 11th, 12th and 13th centiles.

o pdLMS (new) plots density function(s) of Box-Cox transformed variable(s).

o mplot now omits rows with missing data.

o predict.sitar now recognises special case of .x and .id in newdata.

Changes in Version 1.0.10

o getPeakTrough (new) identifies peaks and troughs of a curve (used to improve code for age at peak velocity - replaces makess).

o AICadj and BICadj now adjust for subset, and code improved.

o dfpower (new) tabulates BIC/AIC for SITAR models by degrees of freedom and/or xy power transformations.

o getL (new) extracts the power transform of a variable in an expression.

o dfset (new) identifies optimal degrees of freedom for a natural spline curve.

o Improve label handling in plot.sitar.

o Fix bug in update.sitar with df and xoffset.

o Fix bug in predict.sitar when b.formula = ~covariate - 1.

o Fix bug in predict.sitar with abc.

o Constrain df to be >1 in sitar.

o Fix bug in sitar with make.names.

Changes in Version 1.0.9

o Fix bug in sitar with subset.

o Improve ifun call, code and documentation, adding verbose arg and returning varname as attribute.

o Reorder args in xyadj.

o Fix bug in y2plot with par(mar).

o Add lag, differences, sort and keepNA to diffid args.

o Fix bug in predict.sitar concerning id in newdata.

o Improve handling of ... args in plot.sitar with D and V options.

Changes in Version 1.0.8

o timegap (new) indexes equally spaced ages, to simplify binning age into age groups.

o Use dynGet instead of get in BICadj.

o Improve handling of y2 axis in y2plot.

o Fix bug in plot.sitar introduced in 1.0.7.

Changes in Version 1.0.7

o Add github URL to DESCRIPTION.

o Documentation and NAMESPACE now generated by Roxygen2, and S3 methods no longer visible.

o Extend ifun to handle cospi, sinpi and tanpi, and improve documentation.

o Extend predict.sitar to handle deriv 2 (acceleration).

o Extend sitar to allow functions in a.formula, b.formula and c.formula. Improve documentation for this case.

o Fix bug in sitar where the start vector is the wrong length.

o Fix bug in predict.sitar involving default value of yfun argument.

o Fix bug in predict.sitar for when a.formula, b.formula and c.formula involve a single variable.

Changes in Version 1.0.6

o Tidied up code in predict.sitar and xyadj, altering the defaults for abc, xfun and yfun. The asList argument in predict.nlme and level == 0:1 now work correctly.

o Fixed a bug in predict.sitar involving covariates in newdata (Costanza Pizzi). Factors in newdata are now represented as = rather than = [01] as before.

o Fixed a bug in plot.sitar involving subset with options d and v (Costanza Pizzi).

o Fixed a bug in plot.sitar involving subset with options D and V.

Changes in Version 1.0.5

o xoffset and bstart rationalised in sitar and update.sitar. Now xoffset defaults to mean(x) and bstart defaults to xoffset, leading to greater stability in model fitting. This is a more complete solution to issue 2 in 1.0.4. Note that models fitted in previous versions need to be refitted.

Changes in Version 1.0.4

o update.sitar code updated and simplfied.

o in sitar and update.sitar the offset for knots and bounds changed from bstart to mean(x) (suggestion of Jeroen Sichien).

o LMS2z loses data argument.

o LMS2z, cLMS and zLMS now return a vector or a matrix.

o predict.sitar and plot.sitar now create function fitnlme on the fly when it's missing.

o sitar handling for weights commented out.

o ifun bugs fixed and code simplified.

o man pages updated.

Changes in Version 1.0.3

o The heights database had age at menarche added.

o In plot.sitar ifun was used to automatically back-transform transformations of x and/or y in the sitar model.

o ifun (new) inverts an expression defining a data transformation.

o xyadj (new) adjusts x and y variables for SITAR random effects.

o predict.sitar was extended with a deriv argument to give predicted velocity.

o getCovariate and anova methods for sitar were added.

o In plot.sitar new options D and V provide spline curves of individual distance and velocity curves.

o In sitar and plot.sitar bugs were fixed and code simplified by use of predict.sitar, xyadj and ifun.

Changes in Version 1.0.2

o In DESCRIPTION the title and description were corrected, and Suggests was changed to Imports.

o In NAMESPACE lines.sitar and print.summary.sitar were added to S3 methods and splines was added to import (both previously omitted in error).

o predict, getVarCov and getData methods for sitar were added.

o The sitar command was rewritten to save the function fitnlme, for use with predict. As a result the hidden file .fitnlme is no longer created.

o The plot.sitar command now uses predict to control the number of points when drawing spline curves, and any covariate values default to zero.

o LMSfit was added.

o lms2z was renamed LMS2z for consistency.

o The changes in 1.0.1 to the graphical options xaxsd and yaxsd to deal with log scales were corrected.

o The man files were updated.

Changes in Version 1.0.1

o The environment for reading the call in sitar, plot.sitar and lines.sitar was corrected.

o The graphical options xaxsd and yaxsd were extended to deal with log scales.

Changes in Version 1.0

o First CRAN release of package "sitar" for growth curve analysis.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.1.1 by Tim Cole, a month ago

Browse source code at

Authors: Tim Cole [aut, cre]

Documentation:   PDF Manual  

GPL (>= 2) license

Imports dplyr, glue, purrr, quantreg, rlang, rsample, stats, tibble, tidyr

Depends on nlme, splines

Suggests knitr, rmarkdown

Imported by MonoInc.

See at CRAN