# merge_RLum.Data.Curve

##### Merge function for RLum.Data.Curve S4 class objects

Function allows merging of RLum.Data.Curve objects in different ways

##### Usage

`merge_RLum.Data.Curve(object, merge.method = "mean", method.info)`

##### Arguments

- object
list of '>RLum.Data.Curve (

**required**): list of S4 objects of class`RLum.Curve`

.- merge.method
character (

**required**): method for combining of the objects, e.g.`'mean'`

,`'sum'`

, see details for further information and allowed methods. Note: Elements in slot info will be taken from the first curve in the list.- method.info
numeric (

*optional*): allows to specify how info elements of the input objects are combined, e.g.`1`

means that just the elements from the first object are kept,`2`

keeps only the info elements from the 2 object etc. If nothing is provided all elements are combined.

##### Details

This function simply allowing to merge '>RLum.Data.Curve objects without touching the objects itself. Merging is always applied on the 2nd colum of the data matrix of the object.

**Supported merge operations are '>RLum.Data.Curve**

`"sum"`

All count values will be summed up using the function rowSums.

`"mean"`

The mean over the count values is calculated using the function rowMeans.

`"median"`

The median over the count values is calculated using the function matrixStats::rowMedians.

`"sd"`

The standard deviation over the count values is calculated using the function matrixStats::rowSds.

`"var"`

The variance over the count values is calculated using the function matrixStats::rowVars.

`"min"`

The min values from the count values is chosen using the function matrixStats::rowMins.

`"max"`

The max values from the count values is chosen using the function matrixStats::rowMins.

`"append"`

Appends count values of all curves to one combined data curve. The channel width is automatically re-calculated, but requires a constant channel width of the original data.

`"-"`

The row sums of the last objects are subtracted from the first object.

`"*"`

The row sums of the last objects are mutliplied with the first object.

`"/"`

Values of the first object are divided by row sums of the last objects.

##### Value

##### Note

The information from the slot `recordType`

is taken from the first
'>RLum.Data.Curve object in the input list. The slot
'curveType' is filled with the name `merged`

.

##### S3-generic support

This function is fully operational via S3-generics:
`+`

, `-`

, `/`

, `*`

, `merge`

##### Function version

0.2.0 (2018-02-08 18:09:55)

##### How to cite

Kreutzer, S. (2018). merge_RLum.Data.Curve(): Merge function for RLum.Data.Curve S4 class objects. Function version 0.2.0. In: Kreutzer, S., Burow, C., Dietze, M., Fuchs, M.C., Schmidt, C., Fischer, M., Friedrich, J. (2018). Luminescence: Comprehensive Luminescence Dating Data Analysis. R package version 0.8.6. https://CRAN.R-project.org/package=Luminescence

##### See Also

merge_RLum, '>RLum.Data.Curve

##### Examples

```
# NOT RUN {
##load example data
data(ExampleData.XSYG, envir = environment())
##grep first and 3d TL curves
TL.curves <- get_RLum(OSL.SARMeasurement$Sequence.Object, recordType = "TL (UVVIS)")
TL.curve.1 <- TL.curves[[1]]
TL.curve.3 <- TL.curves[[3]]
##plot single curves
plot_RLum(TL.curve.1)
plot_RLum(TL.curve.3)
##subtract the 1st curve from the 2nd and plot
TL.curve.merged <- merge_RLum.Data.Curve(list(TL.curve.3, TL.curve.1), merge.method = "/")
plot_RLum(TL.curve.merged)
# }
```

*Documentation reproduced from package Luminescence, version 0.8.6, License: GPL-3*