Takes the output of simulatePopulation and aggregates it into centimetres by following a sediment accumulation rate produced by simulateAccumulationRate. It further samples it at given depth intervals. It intends to simulate a pseudo-realistic sedimentation of the pollen produced by the simulation, and to apply a pollen-sampling pattern to a virtual pollen core.
aggregateSimulation( simulation.output=NULL, accumulation.rate=NULL, sampling.intervals=1 )
| simulation.output | list, output of |
|---|---|
| accumulation.rate | dataframe, output of |
| sampling.intervals | integer, numeric vector, depth interval or intervals between consecutive samples in centimetres. If 1, all samples are returned, if 2, returned samples are separated by 1 cm. |
A list of dataframes with as many rows as virtual taxa were produced by simulatePopulation, and the following columns: column 1 is the original data, column 2 is the original data aggregated by the accumulation rate, columns 3 to n are the different sampling intervals defined by the user.
The function uses the values in the grouping column of the simulateAccumulationRate output to aggregate together (by computing the mean) as many samples as cases in grouping have the same identificator. Output samples are identified by the average age of the samples within the given centimetre.
#getting example data data(simulation) data(accumulationRate) #aggregating first simulation outcome sim.output.aggregated <- aggregateSimulation( simulation.output = simulation[1], accumulation.rate = accumulationRate, sampling.intervals = c(2,6)) #comparing simulations par(mfrow = c(3,1)) #notice the subsetting of the given column of the input list plot(sim.output.aggregated[[1,1]]$Time, sim.output.aggregated[[1,1]]$Pollen, type = "l", xlim = c(500, 1000), main = "Annual" ) plot(sim.output.aggregated[[1,2]]$Time, sim.output.aggregated[[1,2]]$Pollen, type = "l", xlim = c(500, 1000), main = "2cm" ) plot(sim.output.aggregated[[1,3]]$Time, sim.output.aggregated[[1,3]]$Pollen, type = "l", xlim = c(500, 1000), main = "6cm" )#> [1] 5000#> [1] 363#> [1] 182