私は、次のネットワークがあります。理想的には私が唯一のigraph ego()リストを意味のあるデータフレームに変換するにはどうすればよいですか?
3 2 1 a
4 b NA NA
になるだろう
1 a NA NA
2 1 a NA
3 2 1 a
4 b NA NA
:
edges <- data.frame(from=c('a','1','2','b'), to=c('1','2','3','4'))
edges
from to
1 a 1
2 1 2
3 2 3
4 b 4
をそして、以下のように "へ" のノードの近傍を特定したいです私は 'a'から '3'へと '4'から 'b'へのフルパスを得ることにのみ関心があるからです。 IGRAPHパッケージから自我()関数を使用して
私はこの情報のリストを取得するが、私は上記のフォームでのデータフレームに変換するために管理していない。ここで
test <- ego(graph,4,edges[,2], "in")
test
[[1]]
+ 1/6 vertex, named:
[1] a
[[2]]
+ 2/6 vertices, named:
[1] 1 a
[[3]]
+ 3/6 vertices, named:
[1] 2 1 a
[[4]]
+ 1/6 vertex, named:
[1] b
は私の失敗した試験です。
require(plyr)
> data.frame(ldply(test, rbind))
a X1 X2 b
1 1 NA NA NA
2 1 2 NA NA
3 1 2 3 NA
4 NA NA NA 4
data.frame(t(unlist(test)))
a X1 a.1 X2 X1.1 a.2 b
1 1 2 1 3 2 1 4