Python Networkx到R igraph的转换有错误
我正在尝试将以下Python代码(用于Python Networkx到R igraph的转换有错误,python,r,igraph,networkx,Python,R,Igraph,Networkx,我正在尝试将以下Python代码(用于Networkx)转换为R(用于igraph) 下面是我尝试从Python到R的部分转换 # R code library("data.table") library("igraph") dogs <- make_empty_graph() dogcsv <- fread("dogs.csv") dogid <- 0 nodeStr <- c("id", "species", "Location 1", "Location
Networkx
)转换为R(用于igraph
)
下面是我尝试从Python到R的部分转换
# R code
library("data.table")
library("igraph")
dogs <- make_empty_graph()
dogcsv <- fread("dogs.csv")
dogid <- 0
nodeStr <- c("id", "species", "Location 1", "Location 2")
nodeInt <- "sumflu"
fluCols <- c("Influenza-1", "Influenza-2", "Influenza-3", "Influenza-4",
"Influenza-5", "Influenza-6", "Influenza-7", "Influenza-8")
for(flu in fluCols) {
dogs[flu] <- dogs %>% add_vertices(8) %>% add_vertices(dogs[flu], typ = "host")
}
在PythonNetworkx
中,可以通过graphname.function(例如DG.add_节点(dogID,typ='animal')
调用图形
R'sigraph
中是否有等效项
是否有任何方法可以调用R的igraph
中的节点,而不必定义节点数
此外,您是否会就完成R的翻译提供提示或建议
多谢各位
以下内容包含.csv数据: id、物种、位置1、位置2、动物id、苏姆病毒、流感1、流感2、流感3、流感4、流感5、流感6、流感7、流感8、流感9
MW 391,1,0,0,0,0,0,0,0,0,公园4号公园1号主机YUI-4322
MW 390,0,0,0,0,0,0,0,0,0,0,公园4号公园2号主机YUI-4321
MW 389,1,0,0,0,0,0,0,0,0,公园4号公园2号主机YUI-4320
MW 388,0,0,0,0,0,0,0,0,0,0公园4公园2号主机YUI-4319
MW 387,1,0,0,0,0,0,0,0,0公园4公园2号主机YUI-7318
MW 386,0,0,0,0,0,0,0,0,0,0公园4公园1号主机YUI-4317
MW 385,1,1,0,0,0,0,0,0,0,0公园4公园2号主机YUI-4316
YUI-2315,主机1,避难所2,避难所,MV319,1,0,0,0,0,0,1,0,0
YUI-4314,主机1,避难所2,避难所,MV 332,1,0,0,0,0,0,0,1,0,0
我对你所做的感到困惑,但我可以告诉你,狗是一个图形对象,你试图在一条直线上同时做多件没有意义的事情 呼叫狗[流感]会给出所有与流感相关的顶点 添加顶点(8)是将8个新顶点添加到图形中 add_顶点(dogs[flu],typ=“host”)是将相同的节点添加到图形中,如果dogs[flu]是可调用的,则该节点将已经存在 只需在之前添加所有节点(添加顶点[fluCols],尽管它可能需要整数而不是字符串),然后在之后修改这些节点。您可能会感兴趣[。存在igraph Python版本;可能作为中间步骤,您可以将其转换为。但是如何离开networkx?;-)
# R code
library("data.table")
library("igraph")
dogs <- make_empty_graph()
dogcsv <- fread("dogs.csv")
dogid <- 0
nodeStr <- c("id", "species", "Location 1", "Location 2")
nodeInt <- "sumflu"
fluCols <- c("Influenza-1", "Influenza-2", "Influenza-3", "Influenza-4",
"Influenza-5", "Influenza-6", "Influenza-7", "Influenza-8")
for(flu in fluCols) {
dogs[flu] <- dogs %>% add_vertices(8) %>% add_vertices(dogs[flu], typ = "host")
}
Error in intI(i, n = x@Dim[1], dn[[1]], give.dn = FALSE) :
no 'dimnames[[.]]': cannot use character indexing