Удалить дубликаты GPS-координат в группирующей переменной
У меня есть набор данных, состоящий из мест сбора GPS для многих особей разных видов. В частности, мой набор данных имеет 3 столбца: долгота, широта и виды. Я хотел бы удалить дубликаты и очень похожие места сбора внутри каждого вида, рассматривая каждый вид независимо для этой цели. Работая в пакете R sp, я могу сделать это (игнорируя виды), используя следующий код:
data = read.csv(file="Population_locality.csv", header=T)
coordinates(data) <- 1:2
reduced <- remove.duplicates(data, zero = 1, remove.second = TRUE)
Тем не менее, я не смог выяснить, как удалить дубликаты внутри каждого вида, рассматривая каждый вид независимо. Спасибо за любую помощь.
1 ответ
data = read.csv(file="Population_locality.csv", header=T)
coordinates(data) <- 1:2
splitData <- split(data, data$species)
newData <- lapply(splitData, remove.duplicates, zero = 1, remove.second = TRUE)
Используйте функцию разделения, чтобы разделить виды на отдельные списки. Затем вы можете применить свою функцию к каждому элементу списка. Если вам нужно объединить их вместе do.call("rbind", newData)
должно сработать.