首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >igraph“不是图形对象”

igraph“不是图形对象”
EN

Stack Overflow用户
提问于 2014-01-20 16:03:49
回答 1查看 10.5K关注 0票数 0

我打算使用igraph包来获取一个网络的一些统计数据。

代码语言:javascript
复制
model1 <- ug(~a:b, ~a:c:d,~b:c)
> model1
A graphNEL graph with undirected edges
Number of Nodes = 4 
Number of Edges = 5 

问题:使用函数:

代码语言:javascript
复制
cluster.distribution(model1)

返回

代码语言:javascript
复制
Error in cluster.distribution(model1) : Not a graph object.

现在,如果我应用这个函数:

代码语言:javascript
复制
degree(model1)

我得到了相同的错误:

代码语言:javascript
复制
Error in degree(model1) : Not a graph object

但是,如果我分离igraph包,我会得到:

代码语言:javascript
复制
> 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技能还不足以让我自己解决这个问题。

代码语言:javascript
复制
> 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包中的函数很感兴趣,所以请帮助我找出为什么会出现这个错误,尽管它显然是一个图形对象。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-20 17:27:43

您似乎正在尝试使用graph包和igraph包。其中一个创建的对象似乎不能用于另一个的函数中。

igraph对象属于igraph

代码语言:javascript
复制
> g=graph.full(4)
> class(g)
[1] "igraph"

而您使用ug创建的对象来自graph包,因此是一个不同的类。

我自己测试过,但是目前graph包已经从CRAN中删除了,我没有心情去从归档中去追逐它:

http://cran.r-project.org/web/packages/graph/index.html

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21228884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档