Import MCMC Samples

A. Philippe, M.-A. Vibet and N. Frerebeau

2024-03-04

This vignette uses data available through the ArchaeoData package which is available in a separate repository. ArchaeoData provides MCMC outputs from ChronoModel, OxCal and BCal.

## Install data package
install.packages("ArchaeoData", repos = "https://archaeostat.r-universe.dev")
## Load package
library(ArchaeoPhases)

1 ChronoModel

Two different files are generated by ChronoModel: Chain_all_Events.csv that contains the MCMC samples of each event created in the modeling, and Chain_all_Phases.csv that contains all the MCMC samples of the minimum and the maximum of each group of dates if at least one group is created.

## Read events from ChronoModel
output_events <- system.file("chronomodel/ksarakil/Chain_all_Events.csv",
                             package = "ArchaeoData")
chrono_events <- read_chronomodel_events(output_events)

## Plot events
plot(chrono_events)
plot of chunk read-chronomodel-events

plot of chunk read-chronomodel-events

## Read phases from ChronoModel
output_phases <- system.file("chronomodel/ksarakil/Chain_all_Phases.csv",
                             package = "ArchaeoData")
chrono_phases <- read_chronomodel_phases(output_phases)

## Plot phases
plot(chrono_phases)
plot of chunk read-chronomodel-phases

plot of chunk read-chronomodel-phases

2 Oxcal

Oxcal generates a CSV file containing the MCMC samples of all parameters (dates, start and end of phases).

## Read OxCal MCMC samples
output_oxcal <- system.file("oxcal/ksarakil/MCMC_Sample.csv",
                            package = "ArchaeoData")
oxcal_mcmc <- read_oxcal(output_oxcal)

## Plot events
plot(oxcal_mcmc)
plot of chunk read-oxcal

plot of chunk read-oxcal

The phase boundaries cannot be extracted automatically from Oxcal output. Use as_phases() to get the phase boundaries:

## Get phases boundaries from OxCal
oxcal_phases <- as_phases(oxcal_mcmc,
                          start = c(2, 5, 19, 24),
                          stop = c(4, 18, 23, 26),
                          names = c("IUP", "Ahmarian", "UP", "EPI"))

## Plot phase boundaries
plot(oxcal_phases)
plot of chunk oxcal-phases

plot of chunk oxcal-phases

3 BCal

BCal generates a CSV file containing the MCMC samples of all parameters (dates, start and end of groups).

## Read BCal MCMC samples
output_bcal <- system.file("bcal/fishpond.csv", package = "ArchaeoData")
bcal_mcmc <- read_bcal(output_bcal)

The group boundaries cannot be extracted automatically from BCal output. Use as_phases() to get the group boundaries:

## Get groups boundaries from BCal
bcal_phases <- as_phases(
  bcal_mcmc,
  start = c(6, 9),
  stop = c(1, 7),
  names = c("Layer II", "Layer III")
)

## Plot group boundaries
plot(bcal_phases)
plot of chunk bcal-phases

plot of chunk bcal-phases