Graph 无法将属性添加到sna类的二分网络

Graph 无法将属性添加到sna类的二分网络,graph,bipartite,sna,exp,addattribute,Graph,Bipartite,Sna,Exp,Addattribute,我正在尝试格式化数据以运行ERGM模型。然而,我在组合我想用于ergm模型的两个数据集时遇到了问题。首先,我的实际数据集是一个二分网络,第一类节点(政治家)作为行,第二类节点(政治家对一个主题的投票)作为列。但是,在尝试向政客添加属性时,我遇到了一个错误,即我的sna对象不是图形对象。为了找出问题所在,我使用了网站上的一个例子(link bellow),并对其进行了轻微的修改,使其成为一个二分网络。我遇到了与我的较大原始数据集相同的问题 这里是一个可复制的例子 rm(list = ls())

我正在尝试格式化数据以运行ERGM模型。然而,我在组合我想用于ergm模型的两个数据集时遇到了问题。首先,我的实际数据集是一个二分网络,第一类节点(政治家)作为行,第二类节点(政治家对一个主题的投票)作为列。但是,在尝试向政客添加属性时,我遇到了一个错误,即我的sna对象不是图形对象。为了找出问题所在,我使用了网站上的一个例子(link bellow),并对其进行了轻微的修改,使其成为一个二分网络。我遇到了与我的较大原始数据集相同的问题

这里是一个可复制的例子

rm(list = ls())
# install.packages("statnet", dependencies = TRUE) 
library(statnet)

num_nodes <- 10 # in my real data set, these would be the politicians
num_events <- 30 # in my real data set, these would be the votes

my_sociomatrix <- matrix(round(runif(num_nodes*num_events)), # edge values
                         nrow = num_events, #nrow must be same as ncol
                         ncol = num_nodes)
diag(my_sociomatrix) <- 0
class(my_sociomatrix)
net <- as.network(x = my_sociomatrix, # the network object
                  directed = TRUE, # specify whether the network is directed
                  bipartite = TRUE,
                  loops = FALSE, # do we allow self ties (should not allow them)
                  matrix.type = "adjacency" # the type of input
)
这是需要解决的错误:

Error in i_set_vertex_attr(graph = graph, name = name, index = index,  : 
  Not a graph object

有人知道如何向二部sna对象添加属性吗(sna对象应该允许我运行ERGM)?如果我遵循网站上的示例(上面的链接),代码确实有效,但不适用于双边网络。

任何我可能找到一些信息的建议或提示都会有很大帮助。解决方案在于使用detach(“package:igraph”)
set.vertex.attribute(net, # the name of the network object
                     "Gender", # the name we want to reference the variable by in that object
                     gender # the value we are giving that variable
) 
Error in i_set_vertex_attr(graph = graph, name = name, index = index,  : 
  Not a graph object