网络具有三维边列表?

问题描述

我有一些数据,可提供有关参与者c的流量的信息,并按源s的输入细分给伙伴p。

网络数据通常只有一个信息:来自A-> B,B-> C等的数据/信息流。

但是,我的数据显示,从A-> B到C的流量,然后从A-> B到D的流量。

数据结构为三列边列表。

source <- c("A","D","B","B")
country <- c("B","A","A")
partner <- c("C","C","D")
value <- c("5","0","2","4")

df <- data.frame(source,country,partner,value)

df

我有点看不到如何将其用作网络数据-但是,如果有人对如何使用这种更细粒度的网络有了一个想法,那真是令人惊讶((:

最好

莫里兹

解决方法

也许是这样的:

library(igraph)

g <- graph_from_data_frame(
  rbind(
    setNames(df[,c(1,2,4)],c("from","to","value")),setNames(df[,3,"value"))
  )
)

plot(g)

enter image description here

,

我不确定下面的代码是否是您想要的

library(igraph)
v <- c(3,1)
g <- Reduce(union,lapply(v,function(k) graph_from_data_frame(df[-k])))

plot(g)给出

enter image description here

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...