Learn R Programming

netdiffuseR (version 1.22.6)

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,
  ...
)

Value

A vector of size \(n\) indicating the threshold for each node.

Arguments

obj

Either a \(n\times 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.

Author

George G. Vega Yon & Thomas W. Valente

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: bass, 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