将空间权重列表转换为R中的权重矩阵

将空间权重列表转换为R中的权重矩阵,r,list,matrix,numeric,R,List,Matrix,Numeric,在R中,我试图将包含空间权重的列表转换为n×n空间权重矩阵 我在StackOverflow上尝试了不同的建议解决方案,但没有效果(我也相信它们不可能是解决方案,但我不知道如何以不同的方式实现) 也就是说,当我尝试: W2 <- as.matrix(W) W3 <- data.matrix(W) W2您应该指定您正在使用的软件包,并提供一个可复制的示例(您的不起作用)。我认为您有一个类为“knn”的对象,它是由spdep中的knearneigh函数生成的。如果是这样,这里有一个可重复

在R中,我试图将包含空间权重的列表转换为n×n空间权重矩阵

我在StackOverflow上尝试了不同的建议解决方案,但没有效果(我也相信它们不可能是解决方案,但我不知道如何以不同的方式实现)

也就是说,当我尝试:

W2 <- as.matrix(W)
W3 <- data.matrix(W)

W2您应该指定您正在使用的软件包,并提供一个可复制的示例(您的不起作用)。我认为您有一个类为“knn”的对象,它是由spdep中的knearneigh函数生成的。如果是这样,这里有一个可重复的例子,说明如何获得矩阵;以下是spdep中帮助文件中的示例

library(spdep)
library(RANN)
example(columbus)
coords <- coordinates(columbus)
col.knn <- knearneigh(coords, k=4)
k <- knn2nb(col.knn)
m <- nb2mat(k)
库(spdep)
图书馆(RANN)
例如(哥伦布)
坐标