2016-10-18 6 views
0

Rパッケージのigraphを使用してグラフのクリークを印刷します。私は ABCとして印刷したいデータの形式(Res1を、RES2、RES3形式でこのデータを示す...)R igraphライブラリを使用してクリークを印刷する

データ: Res1をRES2重 AB 10 AC 1 CB 10 SB 1 LA 2

library(igraph) 
file <- read.table("GraphDemo.net", header=TRUE) 
graph <- graph.data.frame(file, directed=F) 
Cliq <- cliques(graph, min = 3, max = NULL) 

我々は、端末

CLIQでCLIQを印刷したい場合は

名前0

[[1]] + 3/5頂点、すべて非常に良好である [1] C B

。私たちは、ファイルに印刷する場合でも:

write.table(t(Cliq), file="demo.dat",sep = "\t",quote=F,row.names = FALSE) 

しかし、ファイルからの結果である: V1 C(1、2、5)

私は、ノード名 ABなどのデータを印刷したいですC. 男の出方は何ですか.. !!

答えて

2

as_ids()を使用して、igraph.vsオブジェクトを名前のベクトルに変換します。あなたはそれらをリストにコンパイルして、適切にエクスポートすることができます。

試してみてください。

g <- erdos.renyi.game(10,0.5,type="gnp",directed=F) 
cliq<-cliques(g,min=3) 
V(g)$name <- c("a","b", "c","d","e","f","g","h","i","j") 
#Here's the function that will get the vertex names 
names <- lapply(1:length(cliq), function(x) as_ids(cliq[[x]])) 

さて、これはすべてのクリークを抽出します。サイズ3のクリークだけに興味がある場合は、cliques()コールまたはlapply()機能を使用して制限することができます。

関連する問題