This function takes a vector of `x`

and `y`

values
and returns the x and/or y position of the centroid of mass of the
area under the curve

## Usage

```
centroid(
x,
y,
return,
xlim = NULL,
blank = 0,
subset = NULL,
na.rm = TRUE,
neg.rm = FALSE,
warn_xlim_out_of_range = TRUE,
warn_negative_y = TRUE
)
centroid_x(x, y, return = "x", ...)
centroid_y(x, y, return = "y", ...)
centroid_both(x, y, return = "both", ...)
```

## Arguments

- x
Numeric vector of x values

- y
Numeric vector of y values

- return
One of c("x", "y", "both"), determining whether the function will return the x value of the centroid, the y value of the centroid, or a vector containing x then y

- xlim
Vector, of length 2, delimiting the x range over which the centroid should be calculated (where NA can be provided for the area to be calculated from the start or to the end of the data)

- blank
Value to be subtracted from

`y`

values before calculating the centroid- subset
A vector of logical values indicating which x and y values should be included (TRUE) or excluded (FALSE).

- na.rm
a logical indicating whether missing values should be removed

- neg.rm
a logical indicating whether

`y`

values below zero should be treated as zeros. If`FALSE`

, the centroid for negative`y`

values will be calculated normally, effectively pulling the centroid towards the x axis.- warn_xlim_out_of_range
logical whether warning should be issued when xlim is lower than the lowest x value or higher than the highest x value.

- warn_negative_y
logical whether warning should be issued when

`neg.rm == FALSE`

but some y values are below 0.- ...
Other arguments to pass to

`centroid`

## Value

A scalar for the x value (if `return = 'x'`

) or
y value (if `return = 'y'`

) of the centroid of the data

## Details

This function uses st_centroid to calculate the centroid of mass