首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >weighted将加权邻接矩阵转换为加权边列表

weighted将加权邻接矩阵转换为加权边列表
EN

Stack Overflow用户
提问于 2014-07-15 02:02:38
回答 1查看 11.5K关注 0票数 5

我有一个nxm邻接矩阵,其中(i,j)表示i和j之间的关联分数。我需要将其转换为以下格式:i j <score1>

使用R‘igraph包,并将其输出为文本文件。

我可以推导出边缘列表,但它在没有权重的情况下出现。我使用了以下代码:

library(igraph) g <- graph.adjacency(myAdjacencymatrix) get.edgelist(g)

但是,它不会显示权重。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-15 04:29:53

代码语言:javascript
复制
library(igraph)
set.seed(1)                # for reproducible example
myAdjacencyMatrix <- matrix(runif(400),nc=20,nr=20)

g  <- graph.adjacency(myAdjacencyMatrix,weighted=TRUE)
df <- get.data.frame(g)
head(df)
#   from to    weight
# 1    1  1 0.2655087
# 2    1  2 0.9347052
# 3    1  3 0.8209463
# 4    1  4 0.9128759
# 5    1  5 0.4346595
# 6    1  6 0.6547239

需要在对graph.adjacency(...)的调用中使用weighted=TRUE,才能将权重指定给边。然后,默认情况下,get.data.frame(...)将返回具有所有边属性的边的数据框。您可以使用what=...参数来返回,例如,带有属性的顶点列表。

未来:提供一个示例,而不是强迫我们为您创建一个!

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

https://stackoverflow.com/questions/24742882

复制
相关文章

相似问题

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