netdiffuseR (version 1.17.0)

threshold: Retrive threshold levels from the exposure matrix

Description

Thresholds are each vertexes exposure at the time of adoption. Substantively it is the proportion of adopters required for each ego to adopt. (see exposure).

Usage

threshold(obj, toa, t0 = min(toa, na.rm = TRUE), include_censored = FALSE, lags = 0L, ...)

Arguments

obj
Either a $n * T$ matrix (eposure to the innovation obtained from exposure) or a diffnet object.
toa
Integer vector. Indicating the time of adoption of the innovation.
t0
Integer scalar. See toa_mat.
include_censored
Logical scalar. When TRUE (default), threshold
lags
Integer scalar. Number of lags to consider when computing thresholds. lags=1 defines threshold as exposure at $T-1$, where T is time of adoption. levels are not reported for observations adopting in the first time period.
...
Further arguments to be passed to exposure.

Value

A vector of size $n$ indicating the threshold for each node.

Details

By default exposure is not computed for vertices adopting at the first time period, include_censored=FALSE, as estimating threshold for left censored data may yield biased outcomes.

See Also

Threshold can be visualized using plot_threshold

Other statistics: classify_adopters, cumulative_adopt_count, dgr, ego_variance, exposure, hazard_rate, infection, moran, struct_equiv, vertex_covariate_dist

Examples

Run this code
# Generating a random graph with random Times of Adoption
set.seed(783)
toa <- sample.int(4, 5, TRUE)
graph <- rgraph_er(n=5, t=max(toa) - min(toa) + 1)

# Computing exposure using Structural Equivalnece
adopt <- toa_mat(toa)
se <- struct_equiv(graph)
se <- lapply(se, function(x) methods::as((x$SE)^(-1), "dgCMatrix"))
expo <- exposure(graph, adopt$cumadopt, alt.graph=se)

# Retrieving threshold
threshold(expo, toa)

# We can do the same by creating a diffnet object
diffnet <- as_diffnet(graph, toa)
threshold(diffnet, alt.graph=se)

Run the code above in your browser using DataLab