如何解决矩阵节点与 igraph 中的矩阵具有相同的属性转换
解决方法
非igraph
方法
你可以试试下面的代码(不需要igraph
)
> +((with(a,outer(type,type,`==`)) * mat) > 0)
A B C
A 0 0 1
B 0 0 0
C 1 0 0
igraph
方法
如果您无论如何都想使用 igraph
,一种可能的选择可能是
graph_from_adjacency_matrix(mat > 0,mode = "undirected") %>%
get.data.frame() %>%
filter(a[from,] == a[to,]) %>%
graph_from_data_frame(directed = FALSE,vertices = row.names(a)) %>%
get.adjacency(sparse = FALSE)
给出
A B C
A 0 0 1
B 0 0 0
C 1 0 0
数据
mat <- `dimnames<-`(
matrix(c(0,2,3,1,0),3),rep(list(LETTERS[1:3]),2)
)
a <- `rownames<-`(data.frame(type = c("edu","company","edu")),LETTERS[1:3])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。