Мне интересно запустить аутологическую модель в пакете ngspatial в R. Мои объекты данных - полигоны.Обычно матрицы смежности для многоугольников строятся на основе координат центроидов многоугольников.Тем не менее, я определил свою смежность (0/1) на основе критерия минимального расстояния между полигонами, измеренного от и до границы каждого полигона.Я сделал это в arcmap, а затем с помощью пакета igraph сгенерировал матрицу смежности:
g <-graph_from_data_frame (Мои данные) </p>
A <-as_adjacency_matrix (g, attr =)"Dist") </p>
A
42 x 42 разреженной матрицы класса "dgCMatrix" [[подавление 42 имен столбцов '1', '2', '3' ...]]
Моя матрица состоит из 0 и 1 значений, полностью симметричная (42 x 42).
Однако, когда я пытаюсь использовать ее в аутологичной модели в ngspatial, я получаю сообщение об ошибке:
ms_autolog <-autologistic (Occupancy ~ Area, A = A) </p>
'Вы должны указать числовую и симметричную матрицу смежности'.
Я предположил, что dgCMatrix просто не совместим с ngspatial, но не нашел, как его преобразовать.Я также попытался напрямую сформировать свой файл data.csv в виде матрицы, прочитать его как матрицу, но все же он не может быть прочитан автологистической моделью.
У кого-нибудь есть идеи, как я могу решить эту проблему?
Большое спасибо заранее!
Ана Мария.