在 igraph 中创建新度量

Posted

技术标签:

【中文标题】在 igraph 中创建新度量【英文标题】:Creating new measures in igraph 【发布时间】:2011-11-01 16:46:25 【问题描述】:

我想为 Burt 的有效尺寸创建一个函数。 公式归结为:

有效尺寸 = n - 2t/n

其中 t 是关系数(不包括与自我的关系) n 是网络中的人数(不包括自我)。

我不确定从哪里开始在 igraph 内/为 igraph 编写函数。

如果更详细的信息会有所帮助,请告诉我...

谢谢。

【问题讨论】:

提供一个示例图,以及到目前为止您为计算大小所做的尝试。 【参考方案1】:

先模拟一个基本图:

require(igraph)

alters = 50
ties   = 10
set.seed(12345)
edgelist = rbind(0, 1:alters)
edgelist = cbind(edgelist, replicate(ties, sample(alters, 2)))
g = graph(edgelist, directed=F)

dev.new(width=5, height=5)
plot(g, layout=layout.kamada.kawai)

然后编写一个简单的函数来计算有效尺寸。 (这里在g 上运行的函数都很好地记录在igraph 手册和网络上的各种示例中。)

EffectiveSize <- function(g, ego=0) 
  n = neighbors(g, ego)
  t = length(E(g)[to(n) & !to(ego)])
  n = length(n)
  n - 2 * t / n

> EffectiveSize(g)
[1] 49.6

【讨论】:

啊。谢谢!对于多余/基本的问题,我很抱歉,但我真的不确定我是否必须在 C 中调用/编辑。我没有意识到我可以创建普通的 R 函数来使用 igraph。 是的,它真的很灵活。 igraph 也是一个很棒的包,通过这些巧妙的方法在顶点和边上进行索引/迭代。祝你的项目好运!

以上是关于在 igraph 中创建新度量的主要内容,如果未能解决你的问题,请参考以下文章

添加中心性度量作为顶点属性

可以在 Excel 中的 PowerPivot 中创建维度和度量分组吗?

Istio中使用Prometheus进行应用程序指标度量

PY YTD 计算的可以处理闰年 MDX 的度量

如何在PBI中将计算得出的度量值放入“新表”中

从 mlr 包的 resample 函数中获取特定的随机森林变量重要性度量