This repository is associated with the article Extended Stochastic Block Models with Application to Criminal Networks, and aims at providing detailed materials and codes to implement the general ESBM class presented in the article and to fully reproduce the results presented in Sections 1, 4 and 5.
The documentation is organized in the three main folders described below.
-
Source
. It contains all the sourceR
functions [seeesbm.R
] which are required to perform posterior computation and inference under the ESBM class, and the additionalcpp
file [seestirling.cpp
] that is necessary to study the Gibbs-type priors discussed in the article. The directory also contains thecpp
file [seeJCDC.cpp
] developed by Yuan Zhang, which implements one of the competiting strategies in the simulations and application. -
Simulation
. It contains the three step-by-step tutorials [seescenario_1.md
,scenario_2.md
andscenario_3.md
] to fully reproduce the results for the simulation scenarios 1, 2 and 3, respectively, presented in Section 4 of the article. The folder contains also the simulated networks associated with these three scenarios [seenetwork_1.RData
,network_2.RData
andnetwork_3.RData
]. -
Application
. It contains a step-by-step tutorial [seeapplication.md
] to fully reproduce the pre-processing and the analysis of the Infinito network, presented in Sections 1 and 5 of the article. The folder contains also the pre-processed network studied in the article [seecrime_net.RData
]. Raw data are available at https://sites.google.com/site/ucinetsoftware/datasets/covert-networks/ndrangheta-mafia-2.
The analyses are performed with an iMac (macOS Sierra, version 10.12.6), using the R
version 3.6.1.
All the above functions rely on a basic and reproducible R
implementation, mostly meant to provide a clear understanding of the computational routines associated with the proposed model. Optimized computational routines relying on C++ coding can be easily considered. Generalizations to include additional priors in the Gibbs-type class, and different types of edges and attributes require minor modifications of the functions in the file esbm.R
.