我正在构建一个基因网络。我有一个双列数据框,我将其转换成邻接矩阵并在igraph中使用它。问题是我有一些带有自环的基因,我想去掉自环,然后从网络中去掉没有边(可能是孤立的)的顶点。我尝试了几种方法,但它们都不起作用。我的代码是:
InnatedGraph <- graph.data.frame(innate,directed=FALSE)
V(InnatedGraph)$label.cex = 0.4
plot(InnatedGraph,vertex.label=V(InnatedGraph)$symbol, vertex.size=5)
innate是我的双列数据框。我已经尝试使用degree函数删除度数为0的顶点,但不幸的是它似乎不起作用(也许是因为自环基因的度数为1)。
bad.vs<-V(InnatedGraph)[degree(InnatedGraph) == 0]
clean <-delete.vertices(InnatedGraph, bad.vs)
我尝试使用 BioNet 软件包中的另一个函数 "rmSelfLoops",借助该函数,我能够删除自环边,但仍无法删除没有边的顶点。
test<-rmSelfLoops(InnatedGraph)
fromColumn
和toColumns
值相同的行? - zx8754simplify
函数。 - Brooks Ambrose