问题标签 [sna]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
6796 浏览

r - 使用 InfoMap 算法进行社区检测,产生一个庞大的模块

我正在使用igraph包中的 InfoMap 算法对有向和非加权图(34943 个顶点,206366 个边)执行社区检测。在图中,顶点代表网站,边代表网站之间是否存在超链接。

我在运行该算法后遇到的一个问题是,大多数顶点都属于一个庞大的社区(32920 或 94%)。其余的顶点分散到数百个其他小社区中。

我尝试了nb.trials参数的不同设置(即50、100,现在运行500)。但是,这似乎并没有太大改变结果。

我感到相当恼火,因为算法的运行时间相当长,所以我每次都必须等待结果(还没有运气!!)。

非常感谢。

0 投票
1 回答
936 浏览

r - 根据顶点属性的某些值删除顶点

我有一个带有属性颜色(数字)的图表,表示使用fastgreedy.community. 其中一些社区只是由几个顶点(5个或更少)复合而成。

1我想删除它们,理想情况下,我可以使用一个函数来计算每个社区的顶点数并删除与小社区相关的那些顶点。例如,删除小于任意顶点数的社区顶点。我真的不知道该怎么做。我将不胜感激任何帮助。

2我试图以一种非常简单的方式解决这个问题,但没有成功。

我手动识别了那些小社区,并尝试删除它们的顶点,如下所示:

g2 <-remove.vertex.attribute(g, V(g)[ V(g)[color >13]%--% V(g)[color >13] ])

我只是从其他问题中复制了这段代码,似乎我不太了解它。

更新

按照下面的建议,做2的正确方法是:

g3 <-delete.vertices(g, V(g)[ V(g)[color >13] ])

但是,如果有人帮助我解决我的问题的第1部分,我仍然会很感激,因为我必须重复很多次并且手动完成它将永远花费我。

再次,任何帮助将不胜感激

0 投票
0 回答
994 浏览

r - 相对大规模数据的中介中心性

使用 R,我尝试计算大约 100 万个节点和超过 2000 万条边的介数中心性。为此,我有一台相当不错的机器,配备 128GB 内存和 4*2.40GHz CPU 和 64 位窗口。然而,使用 Igraph 的 betweeness() 需要很长时间。我想知道有什么快速的解决方案吗?如果我使用 Gephi 会更快吗?

0 投票
1 回答
57 浏览

r - 如何在 R 中制作链接数据/边缘列表

列表数据“lt”如下。

我想从“lt”制作结果数据..

我不知道如何在 R 中得到这个结果

0 投票
1 回答
213 浏览

r - 将循环赛的名义结果转换为邻接矩阵列表

我想从循环锦标赛中获取名义结果并将它们转换为二进制邻接矩阵列表。

按照惯例,这些比赛的结果是通过记录获胜者的名字来写的。这是一个示例表的代码,其中四个人(A、B、C、D)相互竞争:

这是表格:

此表显示了三场循环赛的获胜者。在每场比赛中,有两组:每个球员在主场与其他所有球员比赛一次,一次作为访客。这样一来,每场循环赛总共进行 12 次选拔赛。

所以,在第一盘的第一场比赛中,选手 D 击败了选手 B。在第一盘的第二场比赛中,选手 A 击败了选手 C,以此类推。

我想将这些结果变成六个邻接矩阵的列表。每个矩阵将从每个循环赛中的每个集合中导出。赢在行上记为“1”,输在行上记为“0” 。(“家”和“访客”的名称与后面的内容无关)。

这是第一轮循环赛第 1 组的邻接矩阵的样子:

这是第一轮循环赛第 2 组的样子:

后一个矩阵显示,例如,玩家 A 赢得了 2 次尝试,玩家 B 赢得了 1 次尝试,玩家 C 赢得了 0 次尝试,玩家 D 赢得了 3 次尝试。

因此,这种操作的技巧是将每次胜利(记录为名称)转换为邻接矩阵相应行中的得分“1”,而损失记录为“0”。

任何帮助深表感谢。

0 投票
2 回答
54 浏览

r - 合并两个文件中的行条目,同时在名称常见的地方添加权重

我在尝试将两个数据帧合并为一个时遇到问题。

我想组合具有相同结构的两个数据帧,并在两个条目中的 FROM 和 TO 字段相同时添加权重。否则,我只想将一个条目与另一个条目结合起来。我想要一个新的数据框来给我输出

谢谢

0 投票
1 回答
1848 浏览

python - 如何将python字典转换为图形对象,NetworkX

我是 python 新手,我正在尝试将字典转换为 Networkx 中的图形对象。词典:

我希望键是一个自我节点,值是他们的改变节点(出度从一个自我到一个改变)。这有可能在 Python 中实现吗?

0 投票
1 回答
2643 浏览

python - 如何将邻接表读入 NetworkX 以创建有向图?

我有一个 .csv 邻接列表,第 1 行表示源节点,第 2 行表示目标节点。我尝试使用 NetworkX 读取文件,但我总是得到一个无向图。如何从这样的文件创建有向图?谢谢。

0 投票
1 回答
858 浏览

r - 从 R 中的共同授权网络创建边缘列表

我正在尝试使用 igraph 为共同作者网络分析项目创建一个边缘列表。我的数据存储方式是特定论文的每个作者都按行收听,这意味着每篇论文都是观察结果,列包含该论文的作者。

是否可以使用 combn 函数为每篇论文中的每个作者组合创建边缘列表?

0 投票
1 回答
1614 浏览

r - Assigning random edge weights to graph

I want to create a random weighted and directed graph in R. I use the erdos.renyi.game to create a random directed graph, but I am unsure of how to create weights to the established connections:

How do I make this weighted?