Skip to contents

Chronological Apportioning

Usage

apportion(object, ...)

# S4 method for class 'data.frame'
apportion(
  object,
  s0,
  s1,
  t0,
  t1,
  from = min(s0),
  to = max(s1),
  step = 25,
  method = c("uniform", "truncated"),
  z = 2,
  progress = getOption("kairos.progress")
)

# S4 method for class 'matrix'
apportion(
  object,
  s0,
  s1,
  t0,
  t1,
  from = min(s0),
  to = max(s1),
  step = 25,
  method = c("uniform", "truncated"),
  z = 2,
  progress = getOption("kairos.progress")
)

Arguments

object

A \(m \times p\) numeric matrix or data.frame of count data (absolute frequencies giving the number of individuals for each category, i.e. a contingency table). A data.frame will be coerced to a numeric matrix via data.matrix().

...

Currently not used.

s0

A length-\(m\) numeric vector giving the site beginning dates expressed in CE years (BCE years must be given as negative numbers).

s1

A length-\(m\) numeric vector giving the site end dates expressed in CE years (BCE years must be given as negative numbers).

t0

A length-\(p\) numeric vector giving the type beginning dates expressed in CE years (BCE years must be given as negative numbers).

t1

A length-\(p\) numeric vector giving the type end dates expressed in CE years (BCE years must be given as negative numbers).

from

A length-one numeric vector giving the beginning of the period of interest (in years CE).

to

A length-one numeric vector giving the end of the period of interest (in years CE).

step

A length-one integer vector giving the step size, i.e. the width of each time step for apportioning (in years CE; defaults to \(25\)).

method

A character string specifying the distribution to be used (type popularity curve). It must be one of "uniform" (uniform distribution) or "truncated" (truncated standard normal distribution). Any unambiguous substring can be given.

z

An integer value giving the lower and upper truncation points (defaults to \(2\)). Only used if method is "truncated".

progress

A logical scalar: should a progress bar be displayed?

Value

A CountApportion object.

References

Roberts, J. M., Mills, B. J., Clark, J. J., Haas, W. R., Huntley, D. L. & Trowbridge, M. A. (2012). A Method for Chronological Apportioning of Ceramic Assemblages. Journal of Archaeological Science, 39(5): 1513-20. doi:10.1016/j.jas.2011.12.022 .

See also

Other chronological analysis: fit()

Author

N. Frerebeau

Examples

## Replication of Roberts et al. 2012
bayless <- matrix(data = c(4, 333, 11, 11, 13, 1605, 252, 9, 48), nrow = 1)
rownames(bayless) <- c("Bayless")
colnames(bayless) <- c("CWW", "CBW", "LMGRW", "LTB", "MMS",
                       "PBW", "RRW", "SCBW", "TBBW")

## Set ware start and end dates
start <- c(550, 800, 1200, 1150, 1275, 200, 1275, 1200, 750)
end <- c(1325, 1400, 1450, 1300, 1400, 1450, 1450, 1450, 1300)

## Apportion ceramic assemblage under flat/uniform distribution
app <- apportion(bayless, s0 = 1200, s1 = 1350, t0 = start, t1 = end,
                 step = 50, method = "uniform")
as.data.frame(app)
#>    start  end    site  type      count
#> 1   1200 1250 Bayless   CWW   1.600000
#> 2   1250 1300 Bayless   CWW   1.600000
#> 3   1300 1350 Bayless   CWW   0.800000
#> 4   1200 1250 Bayless   CBW 111.000000
#> 5   1250 1300 Bayless   CBW 111.000000
#> 6   1300 1350 Bayless   CBW 111.000000
#> 7   1200 1250 Bayless LMGRW   3.666667
#> 8   1250 1300 Bayless LMGRW   3.666667
#> 9   1300 1350 Bayless LMGRW   3.666667
#> 10  1200 1250 Bayless   LTB   5.500000
#> 11  1250 1300 Bayless   LTB   5.500000
#> 12  1300 1350 Bayless   LTB   0.000000
#> 13  1200 1250 Bayless   MMS   0.000000
#> 14  1250 1300 Bayless   MMS   4.333333
#> 15  1300 1350 Bayless   MMS   8.666667
#> 16  1200 1250 Bayless   PBW 535.000000
#> 17  1250 1300 Bayless   PBW 535.000000
#> 18  1300 1350 Bayless   PBW 535.000000
#> 19  1200 1250 Bayless   RRW   0.000000
#> 20  1250 1300 Bayless   RRW  84.000000
#> 21  1300 1350 Bayless   RRW 168.000000
#> 22  1200 1250 Bayless  SCBW   3.000000
#> 23  1250 1300 Bayless  SCBW   3.000000
#> 24  1300 1350 Bayless  SCBW   3.000000
#> 25  1200 1250 Bayless  TBBW  24.000000
#> 26  1250 1300 Bayless  TBBW  24.000000
#> 27  1300 1350 Bayless  TBBW   0.000000

## Apportion ceramic assemblage under truncated standard normal distribution
app <- apportion(bayless, s0 = 1200, s1 = 1350, t0 = start, t1 = end,
                 step = 50, method = "truncated", z = 2)
as.data.frame(app)
#>    start  end    site  type       count
#> 1   1200 1250 Bayless   CWW   2.1144606
#> 2   1250 1300 Bayless   CWW   1.3977515
#> 3   1300 1350 Bayless   CWW   0.4877879
#> 4   1200 1250 Bayless   CBW 152.6501312
#> 5   1250 1300 Bayless   CBW 109.7148199
#> 6   1300 1350 Bayless   CBW  70.6350489
#> 7   1200 1250 Bayless LMGRW   1.6051217
#> 8   1250 1300 Bayless LMGRW   3.9903710
#> 9   1300 1350 Bayless LMGRW   5.4045073
#> 10  1200 1250 Bayless   LTB   7.5130860
#> 11  1250 1300 Bayless   LTB   3.4869140
#> 12  1300 1350 Bayless   LTB   0.0000000
#> 13  1200 1250 Bayless   MMS   0.0000000
#> 14  1250 1300 Bayless   MMS   1.8969620
#> 15  1300 1350 Bayless   MMS  11.1030380
#> 16  1200 1250 Bayless   PBW 658.8079870
#> 17  1250 1300 Bayless   PBW 530.2218866
#> 18  1300 1350 Bayless   PBW 415.9701264
#> 19  1200 1250 Bayless   RRW   0.0000000
#> 20  1250 1300 Bayless   RRW  37.1740322
#> 21  1300 1350 Bayless   RRW 214.8259678
#> 22  1200 1250 Bayless  SCBW   1.3132814
#> 23  1250 1300 Bayless  SCBW   3.2648490
#> 24  1300 1350 Bayless  SCBW   4.4218696
#> 25  1200 1250 Bayless  TBBW  30.8655718
#> 26  1250 1300 Bayless  TBBW  17.1344282
#> 27  1300 1350 Bayless  TBBW   0.0000000