网络图,包含数据框中三个上下文的所有可能路径并叠加

时间:2016-10-28 20:33:35

标签: r igraph sna

我想制作一个网络图,其中包含信件/明信片从初始到最终目的地的所有可能方式(数据集中有三个字母,请参见下图)enter image description here。这是虚拟数据。

finally

我想创建一个网络图表,将人员显示为节点'以及帖子作为边缘到达人的路径。例如,图表应覆盖此交易中发生的所有路径1)loveletter#234 2)officalletter#22 3)newyearletter#22和叠加。任何人都可以提出任何想法如何进行此操作?谢谢您的帮助。

2 个答案:

答案 0 :(得分:1)

您可以先创建一个邻接矩阵,然后将其加载到igraph对象中。

t(table(df)) %*% table(df)
post <- t(table(df)) %*% table(df)

g<-graph.adjacency(post, diag=FALSE)

plot(g)

enter image description here

答案 1 :(得分:0)

您可以尝试使用data.table包中的CJ()

library(data.table); library(igraph);

g <- graph.data.frame(setDT(df)[, CJ(person, person), postcard][, .(V1, V2)][V1 != V2])
plot(g)

enter image description here