Package: carbondate 1.1.0.9000

carbondate: Calibration and Summarisation of Radiocarbon Dates

Performs Bayesian non-parametric calibration of multiple related radiocarbon determinations, and summarises the calendar age information to plot their joint calendar age density (see Heaton (2022) <doi:10.1111/rssc.12599>). Also models the occurrence of radiocarbon samples as a variable-rate (inhomogeneous) Poisson process, plotting the posterior estimate for the occurrence rate of the samples over calendar time, and providing information about potential change points (see Heaton, Al-assam & Bard (2025) <doi:10.1016/j.jas.2025.106237>).

Authors:Timothy J Heaton [aut, cre, cph], Sara Al-assam [aut, cph]

carbondate_1.1.0.9000.tar.gz
carbondate_1.1.0.9000.zip(r-4.7-x86_64)carbondate_1.1.0.9000.zip(r-4.7-arm64)carbondate_1.1.0.9000.zip(r-4.6-x86_64)carbondate_1.1.0.9000.zip(r-4.6-arm64)carbondate_1.1.0.9000.zip(r-4.5-x86_64)
carbondate_1.1.0.9000.tgz(r-4.6-x86_64)carbondate_1.1.0.9000.tgz(r-4.6-arm64)carbondate_1.1.0.9000.tgz(r-4.5-x86_64)carbondate_1.1.0.9000.tgz(r-4.5-arm64)
carbondate_1.1.0.9000.tar.gz(r-4.7-arm64)carbondate_1.1.0.9000.tar.gz(r-4.7-x86_64)carbondate_1.1.0.9000.tar.gz(r-4.6-arm64)carbondate_1.1.0.9000.tar.gz(r-4.6-x86_64)
carbondate_1.1.0.9000.tgz(r-4.6-emscripten)
manual.pdf |manual.html✨
DESCRIPTION |NEWS
card.svg |card.png
carbondate/json (API)

# Install 'carbondate' in R:
install.packages('carbondate', repos = c('https://tjheaton.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/tjheaton/carbondate/issues

Pkgdown/docs site:https://tjheaton.github.io

Uses libs:
  • c++– GNU Standard C++ Library v3
Datasets:
  • alces - Example real-life data - Alces in Yukon and Alaska
  • armit - Example real-life data - Population Decline in Iron Age Ireland
  • bison - Example real-life data - Bison in Yukon and Alaska
  • buchanan - Example real-life data - Palaeo-Indian demography
  • cervus - Example real-life data - Cervus in Yukon and Alaska
  • equus - Example real-life data - Equus in Yukon and Alaska
  • human - Example real-life data - Humans in Yukon and Alaska
  • intcal04 - IntCal04 calibration curve
  • intcal09 - IntCal09 calibration curve
  • intcal13 - IntCal13 calibration curve
  • intcal20 - IntCal20 calibration curve
  • intcal98 - IntCal98 calibration curve
  • kerr - Example real-life data - Irish Rath
  • mammuthus - Example real-life data - Mammuthus in Yukon and Alaska
  • marine04 - Marine04 calibration curve
  • marine09 - Marine09 calibration curve
  • marine13 - Marine13 calibration curve
  • marine20 - Marine20 calibration curve
  • pp_uniform_phase - Example artificial data - Uniform Phase
  • pp_uniform_phase_marine - Example artificial marine data - Uniform Phase
  • pp_uniform_phase_mixed - Example artificial data requiring multiple calibration curves - Uniform Phase
  • shcal04 - SHCal04 calibration curve
  • shcal13 - SHCal13 calibration curve
  • shcal20 - SHCal20 calibration curve
  • two_normals - Example artificial data - Mixture of Normal Phases
  • two_normals_marine - Example artificial data - Mixture of Normal Phases Using Marine20 calibration curve

On CRAN:

Conda:

cpp

5.92 score 5 stars 42 scripts 283 downloads 24 exports 1 dependencies

Last updated from:03bcd2b5ad. Checks:15 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-arm64OK128
linux-devel-x86_64OK159
source / vignettesOK397
linux-release-arm64OK141
linux-release-x86_64OK145
macos-release-arm64OK216
macos-release-x86_64OK260
macos-oldrel-arm64OK232
macos-oldrel-x86_64OK240
windows-devel-arm64OK399
windows-devel-x86_64OK168
windows-release-arm64OK390
windows-release-x86_64OK122
windows-oldrel-x86_64OK129
wasm-releaseOK118

Exports:AddLinePlotAddShadingPlotAddTextPlotCalibrateSingleDeterminationFindPosteriorMeanRateFindPredictiveCalendarAgeDensityFindSummedProbabilityDistributionGenerateOxcalCodeInterpolateCalibrationCurvePlotCalendarAgeDensityIndividualSamplePlotConvergenceDataPlotGelmanRubinDiagnosticMultiChainPlotGelmanRubinDiagnosticSingleChainPlotNumberOfClustersPlotNumberOfInternalChangesPlotPosteriorChangePointsPlotPosteriorHeightsPlotPosteriorMeanRatePlotPredictiveCalendarAgeDensityPlotRateIndividualRealisationPolyaUrnBivarDirichletPPcalibratePPcalibrateMixedCurvesWalkerBivarDirichlet

Dependencies:cpp11

Calibrating and Summarising Marine 14C Samples
Calibrating Marine ^14^C Determinations with a $\Delta R$ | Calibrating a Single Marine ^14^C Sample | Non-parametric Calendar Age Summarisation from a Set of Marine ^14^C Samples | Worked Example - A Marine Mixture of Two Normals | Poisson process rate estimation from a set of marine ^14^C samples | Example - Uniform Phase Marine Data | Plotting the number of changepoints and their locations | References

Last update: 2026-07-23
Started: 2026-07-23

Calibrating and Summarising Mixed Sets of 14C Samples
Calibrating sets of ^14^C samples from mixed environments | Poisson process calibration | Example - Uniform Phase Mixed Data | Plotting the number of changepoints and their locations | Non-Parametric (DPMM) Summarisation - TBC | References

Last update: 2026-07-23
Started: 2026-07-23

Independent Single Sample Calibration
Introduction | Independent Calibration of Single ^14^C Samples | Implementing SH calibration | Implementing Marine calibration | Selecting the calendar age scale when plotting | Annotating the plots with text, lines and shading | References

Last update: 2026-07-23
Started: 2024-01-24

Introduction to carbondate
Introduction | Dates-as-Data -- Frequency of samples as a proxy for activity | Strengths and Weaknesses of Dates-as-Data | Data Requirements | Additional Data and Information | Calibration Curve | Example Data | Package User Guide | References

Last update: 2026-07-23
Started: 2024-01-17

Non-Parametric Calendar Age Summarisation
Rigorous non-parametric summarisation of multiple ^14^C samples | Model details | Estimation of the shared underlying density | Running the sampler | Obtaining the Summarised Calendar Age Information | Summarised Calendar Age Density Estimate | Number of Clusters | Posterior Calendar Age Estimates of Individual Samples | Changing the calendar age plotting scale | Annotating the summary density plots with text, lines and shading | When not to use this Bayesian non-parametric method | References

Last update: 2026-07-23
Started: 2024-01-17

Poisson Process Modelling and Summarisation
Introduction | Modelling Ideas | An Inhomogeneous Poisson process | Final Radiocarbon Model | A Worked Example - Two Changepoints in a Uniform Phase Model | Calculating and plotting the posterior estimate of the occurrence rate | Plotting the estimated number of changepoints | Plotting estimates of changepoint locations | Plotting estimates of occurrence rate | Plotting the posterior calendar age estimates of individual samples | Changing the calendar age plotting scale | Calculating the posterior estimate of the occurrence rate on a bespoke grid | Annotating the various summary plots with text, lines and shading | Additional Plotting Features | Calculating and plotting the posterior estimate of the occurrence rate over time conditioned on a specific number of changes | Plotting individual posterior MCMC realistions of the occurrence rate | References

Last update: 2026-07-23
Started: 2024-01-17

Why Not to Use SPDs
Summed Probability Distributions | The Problems with using SPDs | Illustration of why not to use SPDs | Fitting to a mixture of two normal distributions | An improvement using our library approaches | References

Last update: 2026-07-23
Started: 2024-01-24

Determining Convergence
Introduction | Examining the Gelman-Rubin convergence diagnostic | Examining the predictive distribution or posterior occurrence rate | Visually comparing multiple runs | Examining the Kullback--Leibler divergence (Bayesian non-parametrics only) | References

Last update: 2024-01-31
Started: 2023-06-15

Readme and manuals

Help Manual

Help pageTopics
Add Straight Lines to Various Summary PlotsAddLinePlot
Add Shading to Various Summary PlotsAddShadingPlot
Add Text Annotation to Various Summary PlotsAddTextPlot
Example real-life data - Alces in Yukon and Alaskaalces
Example real-life data - Population Decline in Iron Age Irelandarmit
Example real-life data - Bison in Yukon and Alaskabison
Example real-life data - Palaeo-Indian demographybuchanan
Calibrate a Single Radiocarbon DeterminationCalibrateSingleDetermination
Example real-life data - Cervus in Yukon and Alaskacervus
Example real-life data - Equus in Yukon and Alaskaequus
Find Posterior Mean Rate of Sample Occurrence for Poisson Process ModelFindPosteriorMeanRate
Find Predictive Estimate of Shared Calendar Age Density from Bayesian Non-Parametric DPMM OutputFindPredictiveCalendarAgeDensity
Find the summed probability distribution (SPD) for a set of radiocarbon observationsFindSummedProbabilityDistribution
Outputs code suitable for running in OxCal from a series of radiocarbon determinationsGenerateOxcalCode
Example real-life data - Humans in Yukon and Alaskahuman
IntCal04 calibration curveintcal04
IntCal09 calibration curveintcal09
IntCal13 calibration curveintcal13
IntCal20 calibration curveintcal20
IntCal98 calibration curveintcal98
Interpolate a calibration curve at a set of calendar agesInterpolateCalibrationCurve
Example real-life data - Irish Rathkerr
Example real-life data - Mammuthus in Yukon and Alaskamammuthus
Marine04 calibration curvemarine04
Marine09 calibration curvemarine09
Marine13 calibration curvemarine13
Marine20 calibration curvemarine20
Plot Posterior Calendar Age Estimate for an Individual Determination after Joint CalibrationPlotCalendarAgeDensityIndividualSample
Plot KL Divergence of Predictive Density to Assess Convergence of Bayesian Non-Parametric DPMM SamplerPlotConvergenceData
Plot Histogram of the Gelman-Rubin Convergence Diagnostic for Multiple Independent MCMC ChainsPlotGelmanRubinDiagnosticMultiChain
Plot Histogram of the Gelman-Rubin Convergence Diagnostic for a Single MCMC ChainPlotGelmanRubinDiagnosticSingleChain
Plot Number of Calendar Age Clusters Estimated in Bayesian Non-Parametric DPMM OutputPlotNumberOfClusters
Plot Number of Changepoints in Rate of Sample Occurrence for Poisson Process ModelPlotNumberOfInternalChanges
Plot Calendar Ages of Changes in Rate of Sample Occurrence for Poisson Process ModelPlotPosteriorChangePoints
Plot Heights of Segments in Rate of Sample Occurrence for Poisson Process ModelPlotPosteriorHeights
Plot Posterior Mean Rate of Sample Occurrence for Poisson Process ModelPlotPosteriorMeanRate
Plot Predictive Estimate of Shared Calendar Age Density from Bayesian Non-Parametric DPMM OutputPlotPredictiveCalendarAgeDensity
Plot Individual Realisations of Posterior Rate of Sample Occurrence for Poisson Process ModelPlotRateIndividualRealisation
Calibrate and Summarise Multiple Radiocarbon Samples via a Bayesian Non-Parametric DPMM (with Polya Urn Updating)PolyaUrnBivarDirichlet
Example artificial data - Uniform Phasepp_uniform_phase
Example artificial marine data - Uniform Phasepp_uniform_phase_marine
Example artificial data requiring multiple calibration curves - Uniform Phasepp_uniform_phase_mixed
Model Occurrence of Multiple Radiocarbon Samples as a Variable-Rate Poisson ProcessPPcalibrate
Model Occurrence of Multiple Radiocarbon Samples as a Variable-Rate Poisson Process when the Samples Come from a Variety of Environments and Multiple Calibration Curves are NeededPPcalibrateMixedCurves
SHCal04 calibration curveshcal04
SHCal13 calibration curveshcal13
SHCal20 calibration curveshcal20
Example artificial data - Mixture of Normal Phasestwo_normals
Example artificial data - Mixture of Normal Phases Using Marine20 calibration curvetwo_normals_marine
Calibrate and Summarise Multiple Radiocarbon Samples via a Bayesian Non-Parametric DPMM (with Walker Updating)WalkerBivarDirichlet