Author: Fridolin Linder
Date: 2025-11-28

# 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