2016-03-26 6 views
1

igraphパッケージを使用して解析しているネットワークグラフ(1000+隣接行列)のリストを使用しています。グラフは分割されたファイルに格納され、各グラフは一意のIDを持ちます。igraph、r:行列のリストのリストノードの中心点スコア

私は次のコードを使用して、それぞれのグラフでは、個々のノードの媒介中心スコアを計算しています今

b <- function (b) betweenness(b, directed = FALSE, normalized = TRUE) 
Between <- lapply (listofgraphs, b) 

show(Between) #looks like this: 

$`35630`   #Graph ID 
1676 1741 1750  #Node ID 
0 1 0  #Scores 

$`35631` 
1738 1750 
0  1 

$`35633` 
1738 1750 4110 
0 0 0 

を、私は必要なものをグラフIDの、ノードIDの、個々のためのcolumsと1つのデータフレームですbetweennessのスコア。このように:

Graph.ID Node.ID Betweenness 
35630  1676  0 
35630  1741  1 
35630  1759  0 
35631  1738  0 
35631  1750  1 
35631  1738  0  
35633  1750  0 
35633  et cetera ..... 

私は非公開に、rbindとこのようなものにしようとしましたが、何らかの理由で私はこの仕事を得ることができません。もし誰かがこれで私を助けることができたらそれはすばらしいでしょう!

+0

liststack後INGの名前のvectormeltことができ、溶融(間) ' – akrun

+0

ありがとう、それは、ノードIDのではなく、グラフIDのために働いた。 (つまり、 'Graph.ID'と 'Betweenness'を含む2つの列が得られます) 両方を含める方法はありますか? –

+0

試してみる '溶融(lapply(Between、stack))[ - 2]' – akrun

答えて

0

我々は `melt`すなわち`ライブラリ(reshape2)で試してみてくださいlist

library(reshape2) 
melt(lapply(Between, stack))[-2] 
関連する問題