私は、igraphパッケージを使ってネットワーク上でいくつかの統計を得るつもりです。
model1 <- ug(~a:b, ~a:c:d,~b:c)
> model1
A graphNEL graph with undirected edges
Number of Nodes = 4
Number of Edges = 5
問題:関数を使用する:
cluster.distribution(model1)
返品
Error in cluster.distribution(model1) : Not a graph object.
今私は関数を適用する:
degree(model1)
私は同じエラーが発生します:
Error in degree(model1) : Not a graph object
しかし、igraphパッケージをデタッチすると、次のようになります。
> detach("package:igraph", unload=TRUE)
Warning message:
"igraph" namespace cannot be unloaded:
namespace "igraph" is imported by "gRbase", "gRain" so cannot be unloaded
> degree(model1)
a b c d
3 2 3 2
問題はパッケージに関連していると思うが、私のRスキルは、自分でこの問題を理解することができない限りは行っていない。
> search()
[1] ".GlobalEnv" "package:gRain" "package:grid"
[4] "package:gRbase" "package:graph" "tools:rstudio"
[7] "package:stats" "package:utils" "package:datasets"
[10] "package:methods" "Autoloads" "package:base"
私は本当にigraphパッケージの関数を使うことに本当に関心を持っています。なぜなら、明らかにグラフオブジェクトであっても、なぜこのエラーが出るのか理解してください。
THX!
回答:
回答№1は2あなたはあなたの graph
パッケージと igraph
パッケージ。一方で作成されたオブジェクトは、他方の関数で使用することはできません。
ザ igraph
オブジェクトはクラスのものです igraph
> g=graph.full(4)
> class(g)
[1] "igraph"
作成したオブジェクトは ug
から来た graph
パッケージとは異なるクラスです。
私はこれを自分自身でテストしますが、現在 graph
パッケージがCRANから削除されました。アーカイブから追いかける気分ではありません。
http://cran.r-project.org/web/packages/graph/index.html