aorist | R Documentation |
Calculates a time series of unit-wise (e.g. year-wise) occurrence based on a start and end date. Dates BC(E) have to be given with negative sign.
aorist(x, from = "from", to = "to", split_vars = c(),
stepwidth = 1, stepstart = min(x[[from]], na.rm = T),
stepstop = max(x[[to]], na.rm = T), method = "number")
x |
Data.frame. |
from |
Character or Integer. Names or indizes of "from" column (start date) in x. |
to |
Character or Integer. Names or indizes of "to" column (end date) in x. |
split_vars |
Character Vector or Integer Vector. Names or indizes of columns by which the x should be split before time series creation. Can be a vector of multiple values. |
stepwidth |
Integer. Width of each time step in the resulting time series. Default = 1. Can not be changed if method = "period_correction". |
stepstart |
Integer. Start of the time window of interest. Default = |
stepstop |
Integer. End of the time window of interest. Default = |
method |
Character. Method switch to decide how the sum per timestep should be calculated.
|
Tibble (data.frame) with one row for each timestep and at least two columns:
date: Timestep.
sum: Calculated sum values per timestep.
... : Type variables if split_vars
was set.
According to Mischka (2004), Aoristic analysis 'is a method used in criminology to analyse crime incidents and determine probabilities for the contemporaneity of the incidents or, when applied to archaeology, for the contemporaneity of sites'.
The aoristic calculation distributes the probability of an event (the event has taken place at all = 1) to (time) sections of the total range within which the event may have taken place. The length of these periods can be arbitrarily chosen, for archaeological applications we set them at the annual level. This scaling can easily be brought to the desired scale by aggregation.
The aoristic sum is then the expected value for the number of events to be assumed within this period. This can be, for example, the expected number of settlements that have been included in the calculation as individual data with start and end date as parameters.
The calculation of the aoristic sum is based on exclusive time intervals in its original implementation (Radcliffe 2000). In archaeological applications, however, overlapping time intervals often result from different dating accuracy. For example, individual sites may only be categorized as part of the Neolithic, others may be narrowed down to the Middle Neolithic Ia. The structure of the overlapping time intervals can lead to biases of the aoristic sum (Hinz/Müller-Scheeßel forthcoming), which is corrected by the algorithm by weighting down multiple time periods.
ratcliffe_aoristic_2000aoristAAR
\insertRefmischka_aoristische_2004aoristAAR
\insertRefhinz_systematic_nodateaoristAAR
# creating test data
my_settlements <- data.frame(
start = c(-3800, -3750, -3500, -4000, -3800, -3800, -3550, -3750, -3800),
end = c(-3700, -3400, -3300, -3300, -3500, -3300, -3525, -3650, -3700),
type = c("hillfort", "hillfort", "hillfort", "hillfort", "hillfort",
"coastal settlement", "coastal settlement", "coastal settlement", "coastal settlement"),
size = c(">2ha", "<2ha", ">2ha", ">2ha", "<2ha", ">2ha", "<2ha", ">2ha", "<2ha")
)
# counting number of occurences
method_number_time_series <- aorist(
my_settlements,
from = "start", to = "end",
method = "number"
)
plot(method_number_time_series, type = "l")
# normalisation methods
method_weight_time_series <- aorist(
my_settlements,
from = "start", to = "end",
method = "weight"
)
method_period_correction_time_series <- aorist(
my_settlements,
from = "start", to = "end",
method = "period_correction"
)
plot(method_weight_time_series, type = "l", col = "blue", xlim = c(-4100, -3200))
lines(method_period_correction_time_series, type = "l", col = "red", lty = 2)
legend(
-4100, 0.05, legend = c("weight", "period_correction"),
col = c("blue", "red"), lty = 1:2, cex = 0.8
)
# splitting time series by additional variables
splitted_time_series <- aorist(
my_settlements,
from = "start", to = "end",
split_vars = c("type"),
method = "period_correction"
)
hamlets <- splitted_time_series[splitted_time_series$type == "coastal settlement", c(1,2)]
hillforts <- splitted_time_series[splitted_time_series$type == "hillfort", c(1,2)]
plot(hamlets, type = "l", col = "darkgreen", xlim = c(-4100, -3200))
lines(method_period_correction_time_series, type = "l", col = "orange", lty = 2)
legend(
-4100, 0.04, legend = c("hamlets", "hillforts"),
col = c("darkgreen", "orange"), lty = 1, cex = 0.8
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.