R-CMD-check codecov CodeFactor Dependencies

r-universe CRAN Version CRAN checks CRAN Downloads

Project Status: Active – The project has reached a stable, usable state and is being actively developed.



Base R ships with a lot of functionality useful for time series, in particular in the stats package. However, these features are not adapted to most archaeological time series. These are indeed defined for a given calendar era, they can involve dates very far in the past and the sampling of the observation time is (in most cases) not constant.

aion provides a system of classes and methods to represent and work with such time-series. Dates are represented as rata die (Reingold and Dershowitz 2018), i.e. the number of days since 01-01-01 (Gregorian), with negative values for earlier dates. This allows to represent dates independently of any calendar: it makes calculations and comparisons easier.

Once a time series is created with aion, any calendar can be used for printing or plotting data (defaults to Gregorian Common Era; see vignette("aion")).

aion does not provide tools for temporal modeling. Instead, it offers a simple API that can be used by other specialized packages.

To cite aion in publications use:

  Frerebeau N, Roe J (2023). _aion: Archaeological Time Series_.
  Université Bordeaux Montaigne, Pessac, France.
  doi:10.5281/zenodo.8032278 <>,
  R package version 1.0.2, <>.

Une entrée BibTeX pour les utilisateurs LaTeX est

    author = {Nicolas Frerebeau and Joe Roe},
    title = {{aion: Archaeological Time Series}},
    year = {2023},
    organization = {Université Bordeaux Montaigne},
    address = {Pessac, France},
    note = {R package version 1.0.2},
    url = {},
    doi = {10.5281/zenodo.8032278},

This package is a part of the tesselle project


You can install the released version of aion from CRAN with:


And the development version from GitHub with:

# install.packages("remotes")


## Load package
## Set seed for reproductibility

## Create 6 time-series of 50 observations
## Sampled every two years starting from 2000 BP
X <- series(
  object = matrix(rnorm(300), nrow = 50, ncol = 6),
  time = seq(from = 2000, by = -2, length.out = 50),
  calendar = calendar("BP")

## Plot
plot(X) # Default calendar


Please note that the aion project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.


Reingold, Edward M., and Nachum Dershowitz. 2018. Calendrical Calculations: The Ultimate Edition. 4th ed. Cambridge University Press.