New {shorts} Package and Two New Pre-Prints

I have recently updated the {shorts}package to the version 2.0.0, which is now available at CRAN. If you have been using previous version of {shorts}package, please note that with version 2.0.0 you will lose compatibility and will need to rewrite some code. Here are the changes were done:

This is NEW version of the shorts package INCOMPATIBLE with the previous due to drastic changes in functions. Here are the changes utilized:

  1. Removed the mixed-effects function due to their small usage in practice.
  2. In predict_ functions, time_correction and distance_correction are no longer used since, due to novel estimation models, it is hard to neatly implement them into functions. Now the predict_ functions predict on a scale where sprint starts at t=0 and d=0, rather than on the original (data) scale. This will also remove the confusion for the user.
  3. In predict_ functions, the user now uses MSS and MAC parameters
  4. Changed the non-linear regression estimation function from stats::nls() to minpack.lm::nlsLM() in model_ functions. This is done to avoid “singular gradient” error and inability of the stats::nls() to estimate when there are zero residuals. Please make note that now when you use … in model_ function, it will be forwarded to minpack.lm::nlsLM(). If you have been using control = stats::nls.control(warnOnly = TRUE) to avoid stats::nls() to throw error when fitting when there are zero residuals, now you can remove it. If needed use control = minpack.lm::nls.lm.control() instead.
  5. Added create_timing_gates_splits() function to generate timing gates splits
  6. For modeling timing gates, the following functions are now available: model_timing_gates(), model_timing_gates_TC(), model_timing_gates_FD(), and model_timing_gates_FD_TC(). All other functions have been removed
  7. For modeling radar gun data, there is now only one function model_radar_gun() which also estimates the time correction (TC) parameter.
  8. Function model_radar_gun() feature n-folds *cross-validation*, as opposed to model_timing_gates() family of functions, which features leave-one-out cross-validation (LOOCV) due to small number of observations. Using the CV parameter, set n-fold cross-validations for the model_radar_gun() function.
  9. Renamed the element LOOCV in the shorts_model object to CV to reflect above changes in model_radar_gun() function
  10. Removed vignettes. I am working on a better pre-print as well as one peer-reviewed simulation paper and will reference those instead

With all these changes and clean up, I have rewritten the “user-manual” which is published as a pre-print at SportRxiv (also available at Researchgate) and accepted for publication in International Journal of Strength and Conditioning (IJSC).


The Github repository page provides another short and sweet intro to the {shorts} package.

I have also just submitted a new pre-print at SportRxiv (also available at Researchgate) which feature simulation study of the estimation effects of the three models.


I am currently in the process of collecting the data to validate two new estimation models using the {shorts} package using real athletes. Will keep you posted here regarding the process. I am hoping to finish the damn Ph.D. next year 😉

Related Articles

Published Paper on Bias in Sprint Modeling

I am happy to announce that my pre-print paper “Bias in estimated short sprint profiles using timing gates due to the flying start” has been published in Computer Methods in Biomechanics and Biomedical Engineering. This publication is my last requirement for publishing and defending my Ph.D. thesis. Hopefully, finishing everything during the first half of this year.


Your email address will not be published. Required fields are marked *

Cancel Membership

Please note that your subscription and membership will be canceled within 24h once we receive your request.