Обнаружение пространственно-временной аномалии в Python
У меня есть точечный набор данных (lat, lon
), который имеет измерения в день в течение года. Каждое из этих измерений является непрерывной переменной.
Таким образом, учитывая день, у меня есть подмножество точек в пространстве с их измерениями, такими как Point(Lat, Lon)_t1 = 98.2
,
Я хотел бы обнаружить аномальные точки во времени и пространстве. Я мог бы объединить эти точки с помощью такого инструмента, как DBSCAN, но я боюсь, что могу пропустить некоторые пространственные зависимости в пространстве. Я также могу получать аномальные баллы в день, но тогда я буду пропускать зависимости во времени (в некоторых точках всегда высокие показания).
Таким образом, я хотел бы спросить, как я должен подходить к этой проблеме, и есть ли какой-либо пакет Python, который я могу использовать.
Я буду признателен за вашу помощь с некоторыми примерами. Я пытался прочитать несколько подходов, но ни один из них, кажется, не вписывается в мою проблему:
- Статистика пространственного сканирования: Находит горячие точки в наборах точечных данных и имеет временное расширение, но для него нет пакета Python. Кроме того, у меня есть 1 млн. Баллов, которые были бы исчерпывающими для этого подхода.
- Я слышал, что Кригинг и пространственные вариограммы могут помочь, но я действительно не понимал, как использовать эти инструменты в моем случае.
- Я создал парную весовую матрицу между каждым местоположением и попытался использовать это, чтобы создать ожидание для значения за время, но это, казалось, не определяло аномалии / выбросы.
- Я пытался использовать DBSCAN, но кажется, что это может быть бесполезно, поскольку он пытается определить плотность точек вместо показаний.