0

我的问题类似于此处发布的问题:网络添加边缘错误

我正在从头开始创建一个网络:我有大约 228 个顶点的数据,时间跨度为 13 年。在第一年,我只有 1781 条边:它们不涉及我的所有顶点(几乎只有 164 个),因此剩余的节点应该是孤立的。

我使用代码从我的边缘列表开始创建网络

fdi.graph.2003 <- graph_from_data_frame(fdi.edge.2003, directed = T, vertices = fdi.attr.2003)

其中fdi.edge.2003是包含边属性(包括一些潜在的权重列)的 data.frame:它仅涉及fdi.attr定义的总顶点中的 164 个顶点。2003是包含每个顶点的行的 data.frame包含在边缘列表中(总共 164 个)。

我得到的只是一个有 164 个顶点且没有孤立点的网络。但是,我知道它们确实存在于我的数据中!关于如何做的任何建议?我认为我应该初始化一个包含所有 228 个顶点的网络,添加它们的属性,然后添加边。但是,我没有尝试任何工作:相反,我收到了与“addEdges_R 中的非法顶点引用”相关的最不同的错误。

任何建议都非常受欢迎,在涉及替代包 igraph 的情况下,我也发现了同样的问题

菲利波

4

1 回答 1

2

add.isolates从 sna 包中使用

net1 = as.network(cbind(1:3, 3:5)) #5 vertices, 3 edges
net2 = as.network(add.isolates(net1, 10), matrix.type = "edgelist") #15 v, 3 e

然后你可能想要创建新的顶点名称,例如

net2%v%"vertex.names" = 1:15
于 2018-03-28T23:05:54.243 回答