如何使用R计算二次分配过程?

时间:2017-04-14 18:03:32

标签: r sna

我有3个网络,我想用二次分配程序测量结构等价。我已执行此代码但出现此错误。任何人都可以提供帮助并建议我正确的方式吗?

 rm(list=ls())
    getwd()
    library(sna)
    dat=read.csv(file.choose(),header=TRUE)
    dat1=read.csv(file.choose(),header=TRUE) 
    dat2=read.csv(file.choose(),header=TRUE) 

    el=as.matrix(dat)
    g=graph.edgelist(el,directed=FALSE)

    el=as.matrix(dat1)
    g1=graph.edgelist(el,directed=FALSE)

    el=as.matrix(dat2)
    g2=graph.edgelist(el,directed=FALSE)
    #Perform qap tests of graph correlation
     q.12<-qaptest(g,gcor,g1=1,g2=2)
Error in FUN(X[[i]], ...) : 
  as.sociomatrix.sna input must be an adjacency matrix/array, network, or list.
> q.13<-qaptest(g,gcor,g1=1,g2=3)
Error in FUN(X[[i]], ...) : 
  as.sociomatrix.sna input must be an adjacency matrix/array, network, or list.
> 
> #Examine the results
> summary(q.12)
Error in summary(q.12) : object 'q.12' not found
> plot(q.12)
Error in plot(q.12) : object 'q.12' not found
> summary(q.13)
Error in summary(q.13) : object 'q.13' not found
> plot(q.13)
Error in plot(q.13) : object 'q.13' not found

1 个答案:

答案 0 :(得分:1)

两个网络的节点大小应该相同。意味着如果一个网络有50个节点,则另一个网络应该具有相同的节点集。但是,没有边缘可能不同