如何在igraph R中创建自环? [英] How to create self loop in igraph R?

查看:108
本文介绍了如何在igraph R中创建自环?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在更改c(i,i)=1的更改Adjacency matrix的同时向图中添加self loop,在igraph R程序包中有执行此操作的功能吗?

How to add self loop to a graph beside changing Adjacency matrix which is changing c(i,i)=1, is there a function to do that in igraph R package?

编辑:图形创建:

  network=read.csv(file.choose())
  network[,1]=as.character(network[,1]) 
  network[,2]=as.character(network[,2])
  mygraph=graph.data.frame(network,directed=TRUE)
  E(mygraph)$weight=as.numeric(network[,3]) 

可复制示例:

karate <- graph.famous("Zachary")
E(karate)$weight <- 2
adjacency<-get.adjacency(karate, 
              attr="weight", edges=FALSE, names=TRUE)
for (i in 1:vcount(karate)){
      adjacency[i,i]<-1
    }
karate2<-graph.adjacency(adjacency, mode="directed", weighted=TRUE)

我正在寻找一个更快,更轻松的解决方案,也许是一个实现此目的的功能.

I am looking for a faster and easier solution, mayebe a function to do that.

推荐答案

要在karate示例中为每个顶点添加一个自环,只需执行

To add a self-loop for each vertex in the karate example, just do

karate[from=V(karate), to=V(karate)] <- 1

这会给你

这篇关于如何在igraph R中创建自环?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆