我需要使用 igraph 从图 (g) 中获取种子节点(节点的输入列表;file.txt)及其第一个交互器(邻居)的子图。不幸的是,我最终在子图中只有一个节点,而不是所有其余的节点和连接它们的边(顶点)。
g<-read.graph("DATABASE.ncol",format="ncol",directed=FALSE) #load the data
g2<-simplify(g, remove.multiple=TRUE, remove.loops=TRUE) # Remove the self-loops in the data
DAT1 <- readLines("file.txt") #It provides a character vector right away
list_nodes_1 = neighbors(g2, DAT1) #list of nodes to be fetched in subnetwork
list_nodes_1 # 16
g3 <- induced.subgraph(graph=g2,vids=DAT1) #subnetwork construction
g3 # GRAPH UN-- 1 0 --; indicating only one node
plot (g3)
对于获取整个子网(包括节点和顶点)有什么建议吗?或者是否有任何其他功能可用于创建子图?
数据库.ncol:
MAP2K4 FLNC
MYPN ACTN2
ACVR1 FNTA
GATA2 PML
RPA2 STAT3
ARF1 GGA3
ARF3 ARFIP2
ARF3 ARFIP1
XRN1 ALDOA
APP APPBP2
APLP1 DAB1
CITED2 TFAP2A
EP300 TFAP2A
APOB MTTP
ARRB2 RALGDS
CSF1R GRB2
PRRC2A GRB2
LSM1 NARS
SLC4A1 SLC4A1AP
BCL3 BARD1
它是一个简单的文本文件,每行一个边。一条边由两个由制表符分隔的符号顶点名称定义:
文件.txt
ALDOA
APLP1
GRB2
RPA2
FLNC
BCL3
APP
RALGDS
PRRC2A
NARS
LSM1
GGA3
FNTA