グラフの検定

MikuHatsune2018-04-24

グラフの相同性とか統計量とかの話で、cug.test という検定を後輩から教えてもらった。
sna パッケージでできる。
 
グラフ隣接行列からランダムな隣接行列を作りまくって分布を作成して、p値を計算するらしい。
グラフとしてはこんな感じで

検定は以下のようになる。transitivity を見ているので、ランダムに作るグラフのtransitivity よりかは小さいようである。

library(sna)
library(igraph)

g <- rguman(1,15,mut=0.25,asym=0.05,null=0.7)
G <- graph_from_adjacency_matrix(g)
test <- cug.test(g, gtrans, cmode="size")
Univariate Conditional Uniform Graph Test

Conditioning Method: size 
Graph Type: digraph 
Diagonal Used: FALSE 
Replications: 1000 

Observed Value: 0.2294118 
Pr(X>=Obs): 1 
Pr(X<=Obs): 0