igraph (version 1.0.0)

local_scan: Compute local scan statistics on graphs

Description

The scan statistic is a summary of the locality statistics that is computed from the local neighborhood of each vertex. The local_scan function computes the local statistics for each vertex for a given neighborhood size and the statistic function.

Usage

local_scan(graph.us, graph.them = NULL, k = 1, FUN = NULL,
  weighted = FALSE, mode = c("out", "in", "all"), neighborhoods = NULL,
  ...)

Arguments

graph.us,graph
An igraph object, the graph for which the scan statistics will be computed
graph.them
An igraph object or NULL, if not NULL, then the them statistics is computed, i.e. the neighborhoods calculated from graph.us are evaluated on graph.them.
k
An integer scalar, the size of the local neighborhood for each vertex. Should be non-negative.
FUN
Character, a function name, or a function object itself, for computing the local statistic in each neighborhood. If NULL(the default value), ecount is used for unweighted graphs (if weighted=FALSE) and a function tha
weighted
Logical scalar, TRUE if the edge weights should be used for computation of the scan statistic. If TRUE, the graph should be weighted. Note that this argument is ignored if FUN is not NULL, "ecount" and "sumwei
mode
Character scalar, the kind of neighborhoods to use for the calculation. One of out, in, all or total. This argument is ignored for undi
neighborhoods
A list of neighborhoods, one for each vertex, or NULL. If it is not NULL, then the function is evaluated on the induced subgraphs specified by these neighborhoods.

In theory this could be useful if the same graph.us<

...
Arguments passed to FUN, the function that computes the local statistics.

Value

  • For local_scan typically a numeric vector containing the computed local statistics for each vertex. In general a list or vector of objects, as returned by FUN.

Details

See the given reference below for the details on the local scan statistics.

local_scan calculates exact local scan statistics.

If graph.them is NULL, then local_scan computes the us variant of the scan statistics. Otherwise, graph.them should be an igraph object and the them variant is computed using graph.us to extract the neighborhood information, and applying FUN on these neighborhoods in graph.them.

References

Priebe, C. E., Conroy, J. M., Marchette, D. J., Park, Y. (2005). Scan Statistics on Enron Graphs. Computational and Mathematical Organization Theory.

See Also

Other scan statistics: scan_stat

Examples

Run this code
pair <- sample_correlated_gnp_pair(n = 10^3, corr = 0.8, p = 0.1)
local_0_us <- local_scan(graph.us = pair$graph1, k = 0)
local_1_us <- local_scan(graph.us = pair$graph1, k = 1)

local_0_them <- local_scan(graph.us = pair$graph1,
                           graph.them = pair$graph2, k = 0)
local_1_them <- local_scan(graph.us = pair$graph1,
                           graph.them = pair$graph2, k = 1)

Neigh_1 <- neighborhood(pair$graph1, order = 1)
local_1_them_nhood <- local_scan(graph.us = pair$graph1,
                                 graph.them = pair$graph2,
                                 neighborhoods = Neigh_1)

Run the code above in your browser using DataLab