# Attach packages
library(rearrr)
library(dplyr)
# Set seed
set.seed(1)
# Create three vectors
x <- runif(10)
y <- runif(10)
z <- runif(10)
# Find coordinates of the data point
# closest to the centroid
most_centered(x, y, z)
# Compare to centroid coordinates
centroid(x, y, z)
#
# For data.frames
#
# Create data frame
df <- data.frame(
"x" = x,
"y" = y,
"z" = z,
"g" = rep(1:2, each = 5)
)
# Find coordinates of the data point
# closest to the centroid
most_centered(df, cols = c("x", "y", "z"))
# When 'df' is grouped
df %>%
dplyr::group_by(g) %>%
most_centered(cols = c("x", "y", "z"))
# Filter to only include most centered data points
df %>%
dplyr::group_by(g) %>%
dplyr::filter(is_most_centered(x, y, z))
Run the code above in your browser using DataLab