AUC {DescTools} | R Documentation |

## Area Under the Curve

### Description

Calculate the area under the curve with a naive algorithm and with a more elaborated spline approach. The curve must be given by vectors of xy-coordinates.

### Usage

```
AUC(x, y, from = min(x, na.rm = TRUE), to = max(x, na.rm = TRUE),
method = c("trapezoid", "step", "spline", "linear"),
absolutearea = FALSE, subdivisions = 100, na.rm = FALSE, ...)
```

### Arguments

`x` , `y` |
the xy-points of the curve |

`method` |
The type of interpolation. Can be |

`from` |
The value from where to start calculating the area under the curve. Defaults to the smallest x value. |

`to` |
The value from where to end the calculation of the area under the curve. Defaults to the greatest x value. |

`absolutearea` |
A logical value that determines if negative
areas should be added to the total area under the curve. By
default the auc function subtracts areas that have negative y
values. Set |

`subdivisions` |
an integer telling how many subdivisions should be used for integrate (for non-linear approximations). Ignored if |

`na.rm` |
logical, indicating whether |

`...` |
additional arguments passed on to approx (for linear approximations). In particular rule can be set to determine how values outside the range of x is handled. |

### Details

If method is set to `"trapezoid"`

then the curve is formed by connecting all points by a direct line (composite trapezoid rule). If `"step"`

is chosen then a stepwise connection of two points is used.

For linear interpolation the `AUC()`

function computes the area under the curve
using the composite trapezoid rule. For area under a spline interpolation,
`AUC()`

uses the splinefun function in combination with the integrate to
calculate a numerical integral.

The `AUC()`

function can handle unsorted time
values (by sorting x), missing observations, ties for the x values (by ignoring duplicates), and integrating over
part of the area or even outside the area.

### Value

Numeric value of the area under the curve.

### Author(s)

Andri Signorell <andri@signorell.net>, spline part by Claus Ekstrom <claus@rprimer.dk>

### See Also

### Examples

```
AUC(x=c(1,3), y=c(1,1))
AUC(x=c(1,2,3), y=c(1,2,4), method="trapezoid")
AUC(x=c(1,2,3), y=c(1,2,4), method="step")
plot(x=c(1,2,2.5), y=c(1,2,4), type="l", col="blue", ylim=c(0,4))
lines(x=c(1,2,2.5), y=c(1,2,4), type="s", col="red")
x <- seq(0, pi, length.out=200)
AUC(x=x, y=sin(x))
AUC(x=x, y=sin(x), method="spline")
```

*DescTools*version 0.99.54 Index]