Не совсем понятно, что вы делаете после этого, и, пожалуйста, следуйте советам, как задать полный, воспроизводимый вопрос. «Пустая матрица смежности» является немного нелогичным и намекает на понимание новичком R.
Вы можете легко выполнить анализ смежности с использованием spdep. Надеюсь, это близко к тому, что вам нужно.
Во-первых, библиотеки загрузки и примеры данных (Маас из библиотеки зр)
library(sp)
library(spdep)
data(meuse)
coordinates(meuse) <- ~x+y
Теперь мы создаем соседний объект и посмотреть на первые шесть наблюдений соседней матрицы с четырьмя соседями, связанными. Номер строки соответствует номеру строки meuse, и каждый столбец является индексом строки ближайшего соседа.
meuse.knn <- knearneigh(coordinates(meuse), k=4)
head(meuse.knn$nn)
Мы можем построить связи к = 4, с использованием структуры графа
plot(meuse, pch=19)
plot(knn2nb(meuse.knn), coordinates(meuse), add=TRUE)
title(main="K nearest neighbours, k=4")
В настоящее время, для целей иллюстрации, мы можем Подмножество пятого наблюдения в Мезе, и это связанно (к = 4), ближайший наблюдения.
nn1.ids <- as.vector(meuse.knn$nn[5,])
nn1 <- meuse[nn1.ids,]
А затем постройте пятое наблюдение в Мезу с 4 ближайшими соседями.
plot(nn1, pch=19, col="red")
plot(meuse[5,], pch=19, col="black", add=TRUE)
Фактическая матрица смежности содержится в объекте knearneigh (x $ nn).
Добро пожаловать в StackOverflow. Пожалуйста, ознакомьтесь с этими советами о том, как создать [минимальный, полный и проверенный пример] (http://stackoverflow.com/help/mcve), а также этот пост в [создании отличного примера в R] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example). Возможно, следующие советы по [заданию хорошего вопроса] (http://stackoverflow.com/help/how-to-ask) также могут быть полезны для чтения. – lmo
Ваш код не имеет смысла. Во-первых, «пустая матрица смежности» - это просто пустая матрица. Во-вторых, '' function'' не является командой. В-третьих, откуда вы взяли '' distMatrix''? Все это предполагает, что вам нужно начать с шагов ребенка с R, прежде чем переходить к созданию матриц ... –
Матрица расстояний - это * плотная * матрица, где каждый элемент - это расстояние между объектом, индексированным строкой, и объектом, индексированным колонка. Матрица смежности * разрежена * в том смысле, что только смежные объекты (т. Е. На графике) имеют элемент, отличный от нуля. Итак, каков критерий смежности, который у вас есть, является функцией расстояния? – aichao