NetworkInference: Quick Start Guide

Fridolin Linder

2025-11-28


Introduction


This package provides an R implementation of the netinf algorithm created by @gomez2010inferring (see here for more information and the original C++ implementation). Given a set of events that spread between a set of nodes the algorithm infers the most likely stable diffusion network that is underlying the diffusion process.


Installation


The package can be installed from CRAN:

install.packages("NetworkInference")

The latest development version can be installed from github:

#install.packages(devtools)
devtools::install_github('desmarais-lab/NetworkInference')

Quick start guide


To get started, get your data into the cascades format required by the netinf function:

library(NetworkInference)

# Simulate random cascade data
df <- simulate_rnd_cascades(50, n_node = 20)

# Cast data into `cascades` object
## From long format
cascades <- as_cascade_long(df)

## From wide format
df_matrix <- as.matrix(cascades) ### Create example matrix
cascades <- as_cascade_wide(df_matrix)

Then fit the model:

result <- netinf(cascades, quiet = TRUE, p_value_cutoff = 0.05)
head(result)
origin_node destination_node improvement p_value
2 11 347.6 3.209e-07
11 10 315.1 2.741e-06
17 9 298.6 2.823e-06
11 5 281.4 7.051e-06
12 14 269.9 1.905e-05
11 13 269.9 1.931e-05