/ / igraph "グラフオブジェクトではありません" - r、igraph

igraph "グラフオブジェクトではありません" - r、igraph

私は、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