Spatstat, используя кластерный процесс Матерна для создания однородных ландшафтов, как мне интерпретировать K-функцию Рипли?

Я хочу разработать точечный процесс, который варьируется от однородного, т.е. без корреляции между точками, до точечного кластерного процесса, который имеет корреляцию между точками. Экспериментируя, я вижу, что с помощью кластерного процесса Matérn я могу создавать кластерные ландшафты.

library(spatstat)
plot(rMatClust(kappa=3,r=0.1,mu=50))

введите описание изображения здесь

Я хочу использовать простейший код, который увеличивает уровень однородности, т.е. уменьшает зависимость точек друг от друга. Я не хочу использовать бинарную модель, в которой шаблон либо однороден, либо нет. т.е. просто процесс Пуассона, который может быть сгенерирован, например:

plot(rpoispp(150))

введите описание изображения здесь

Экспериментируя, я заметил, что если я увеличиваю радиус кластеров с помощью кластерного процесса Матерна, мне кажется, что создается псевдооднородный узор.

plot(rMatClust(kappa=3,r=0.3,mu=50))

введите описание изображения здесь

plot(rMatClust(kappa=3,r=0.7,mu=50))

введите описание изображения здесь

Это хороший способ получения степени однородности? Я понимаю, что могу использовать статистические тесты для измерения степени кластеризации по сравнению с полным процессом Пуассона, таким как тест Рипли К. Например, если я присваиваю данные кластерного процесса Matérn переменным, таким как:

a<-rMatClust(kappa=3,r=0.1,mu=50)
b<-rMatClust(kappa=3,r=0.3,mu=50)
c<-rMatClust(kappa=3,r=0.7,mu=50)

Затем используйте тест Ripley K и нанесите на график результаты:

plot(Kest(a))

введите описание изображения здесь

plot(Kest(b))

введите описание изображения здесь

plot(Kest(c))

введите описание изображения здесь

Я вижу, что разница между однородным пуассоновским процессом и кластерным точечным процессом уменьшается. Я до сих пор не полностью понимаю значение различных значений K в зависимости от краевых эффектов и так далее, и как интерпретировать K-функцию Рипли, но я думаю, что это правильное направление, в котором нужно двигаться? Как интерпретировать K-функцию Рипли? Другая проблема - это количество точек на каждом графике, у меня нет постоянного количества точек на каждом графике, что можно увидеть по:

summary(a)
summary(b)
summary(c)

Мы очень ценим любые компетентные отзывы по этому поводу.


person OpenSauce    schedule 23.11.2020    source источник


Ответы (1)


Стандартная терминология заключается в том, что вы хотите создать кластерный точечный узор.

Функция rMatClust генерирует кластерный точечный образец случайным образом в двухэтапном процессе. Первый этап - это случайное генерирование родительских точек. На втором этапе для каждого родителя генерируется случайное количество точек потомка и помещаются точки потомства внутри круга радиуса R вокруг их родителя. Конечный результат - это сбор всех точек потомства. Из этого описания (и help(rMatClust)) вы можете выяснить, что происходит для разных значений параметров.

Функция K (не тест K) представляет собой сводку расстояния между точками в точечном шаблоне. На расстоянии r значение K(r) представляет собой нормализованное среднее количество точек, попадающих на расстояние r от типичной точки в шаблоне. Он нормализован так, что не зависит от количества точек, что позволяет сравнивать паттерны с разным количеством точек.

Когда вы строите график функции K, одна из кривых является теоретической кривой, которую можно было бы ожидать, если точки полностью случайны, а другие кривые вычисляются на основе шаблона точек данных. Это позволяет оценить, выглядит ли точечный узор сгруппированным.

Я настоятельно рекомендую вам прочитать главу 7 книги spatstat. Вы можете скачать эту главу бесплатно.

person Adrian Baddeley    schedule 24.11.2020
comment
Большое спасибо, это очень четкое объяснение, я не осознавал, что функция K была нормализована. Я новичок в пространственной статистике, поэтому обязательно прочитаю рекомендованную главу. - person OpenSauce; 26.11.2020