问题标签 [statnet]
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.
r - 在 R 中使用 statnet 将边缘属性添加到网络对象
我正在尝试使用函数向对象添加network
边缘属性。statnet
R
add.edge.attribute()
这是network
对象:
然后我使用add.edge.attribute()
, 和下面的connections
,它的长度与网络中的边数相同:
但是,当我检查network
对象时,似乎没有任何改变:
然而,当我检查时get.edge.attribute()
,它似乎奏效了:
而且,当我尝试将 edge 属性用作ergm
模型的一部分时 - 我尝试使用edgecov()
,返回以下错误:
是什么赋予了?为什么没有显示边缘属性名称?为什么它似乎不能作为 ergm 模型的一部分?
r - 在 R 中使用 ergm 包恢复未覆盖的 ergm 运行
我正在使用ergm
包R
来探索网络数据的指数随机图模型。这是网络:
edges
在拟合更简单的模型后,一个带有and的术语,mutual
一个带有edges
, mutual
, and的模型nodefactor("membership", base = 4)
(其中membership
是一个具有四个级别的因子),我拟合了一个nodematch("membership", diff = T)
添加的模型,如下所示:
虽然以前的模型融合了,但这个模型导致了这样的信息:
按照指示,我看了看?control.ergm
:Passing control.ergm(init=coef(prev.fit)) can be used to “resume” an uncoverged ergm run, but see enformulate.curved.
好的,这听起来不错,我搜索了如何使用,并从这个页面control.ergm
中找到了一个示例,我通过作为参数传递来测试它是否有效,它将从 20 增加到 50。然后我做了以下事情:control = control.ergm(MCMLE.maxit = 50)
number of times the parameters for the MCMC should be updated by maximizing the MCMC likelihood
但是,返回此消息:Error in coef(prev.fit) : object 'prev.fit' not found
。
我还尝试传递模型对象(即model1a
)而不是prev.fit
,但这导致了这个不太高效的错误:
那么,我如何通过传递control.ergm(init = coef(prev.fit))
或通过不同的方法“恢复”未收敛的模型?
r - 如何在ggnet2或ggnetwork中按顶点属性对节点进行分组
我想使用 GGally 或 ggnetwork 绘制一个网络对象,并且我希望能够生成一个布局,其中节点按顶点属性分组。我花了一些时间寻找一种方法来做到这一点,但还没有弄清楚。是否可以按属性在布局中对节点进行分组,使得所有具有属性“a”的节点都在一个集群中,具有属性“b”的节点都在一个集群中,等等?
提前致谢。
这里有两个例子:
r - 创建图(网络分析 R)?
我对 R 很陌生,并且遇到以下问题:
我正在 Twitter 上研究比利时的政治家,并想看看 Twitter 上的政党内部是否形成了任何网络。
我有两个数据文件
- 包含政治家是否关联的矩阵文件 (politicixpolitici.csv)
- 包含具有相应拳头、姓名、政党、twitterhandle 和议会的所有政客的文件
(data.csv)
我想创建一个显示网络的图表,但节点由其政党着色(此变量在 data.csv 文件中称为“fractie”)。
我试过这样做如下:
首先,我尝试按如下方式组合文件:
=> 我已经绘制了这个网络,但它出来的时候非常草率,而且名字也在那里,这使得很难看到 + 节点显然没有根据派对着色。
然后,我使用 statnet 进行了尝试,但是当我想创建图形时,我在创建顶点属性时遇到了麻烦:
有人可以帮我绘制这个网络,节点根据他们所属的政党(“Fractie”)着色吗?
文件可以在这里找到
谢谢,这对我的论文有帮助。
r - 网络包更改了字符向量的摘要行为,破坏了 summary.data.frame (打印所有值,前面为 NULL: )
加载network
包后,summary.data.frame
函数出现问题:如果存在类列"character"
,而不是通常的输出,summary 将打印所有行的值,前缀为NULL:
. 这是一个玩具示例:
请注意,输出包括字符向量的所有元素,包括重复项,因此您会得到 1000 行的 1000 行摘要,这会使摘要函数无法使用。分离网络包后,此行为会一直存在,直到重新启动新的 R 会话。
出了什么问题:通常UseMethod("summary")
用于字符向量调用summary.default
,它产生正常的输出,它有names
.
network 包定义了一个summary.character
函数,它简单地将一个"summary.character"
类添加到字符对象中,以便它的 print 调用network::print.summary.character
,它生成具有10
最常见值的表。对象本身是不变的,所以它names
是NULL
。
麻烦来自以下三行summary.data.frame
:
它在列的for
循环内,当前列sms
的输出在哪里。summary
对于 的输出summary.character
,sms
实际上是整个列,并且names(sms)
是NULL
,因此是问题所在。
问题的核心原因是summary.character
返回原始对象,而不是委托给print.summary.character
. summary.data.frame
只需将其与其他摘要一起粘贴,即可倾倒整列。
任何关于如何在不深入研究来源的情况下解决此问题的想法network
将不胜感激。
r - R - 基于其他邻接矩阵构造邻接矩阵
我有看起来类似于这两个邻接矩阵的数据:
请注意,在 1999 年,节点 D 和 B 有一个链接。
请注意,在 2000 年,节点 D 和 C 有一个链接。
基于这些信息,我想构建一个新的邻接矩阵(包含我的 2000 数据的所有节点),其中 BD 和 DB 的值为 1,而其余的值为 0:
在我的真实数据中,1999 年的数据可能有 2000 年不会返回的额外节点,反之亦然。
有任何想法吗?
r - 当所有节点都没有属性时(通过调查进行网络),如何创建节点属性的数据框?
我一直在努力解决这个问题,但无济于事。我正在使用这两个 statnet 从调查数据中创建一些网络。调查中测量网络的方式允许受访者列出调查中未包括的网络联系人。结果是,对许多网络响应进行了调查,只有少数没有。我正在尝试根据其他调查响应将颜色映射到节点。
这是我的问题的复制。我想用它们的属性标记具有可用属性的节点,并将那些没有的节点标记为“未知”或 NA 或“”。
r - 无法将边缘权重计入时间网络中心性分数
我的时间网络数据子集如下:
但是,这会返回不考虑权重的中心性分数。
我如何确保networkDynamic
考虑到(1)每年的权重很重要,因此它不会将相同两个国家之间的多重联系计算为总网络中的一个边缘,(2)权重被计入中心性分数正确,并且(3)获得degree()
包含国家名称的输出?理想情况下,我想获得从 1968 年到 2017 年网络每个部分中每个国家的中心性分数。
r - 在 R 中的 Statnet 中导入网络
我是 STATNET 的新手,对此一无所知。我有一个包含 3 列的数据集。第一列和第二列包含节点,而第三列包含边值。我应该如何将其导入 STATNET?我怀疑我需要将此数据集转换为矩阵。我怎么能在 R 中做到这一点?