moran: Computes Moran's I correlation index

View source: R/moran.r

moranR Documentation

Computes Moran's I correlation index

Description

Natively built for computing Moran's I on dgCMatrix objects, this routine allows computing the I on large sparse matrices (graphs). Part of its implementation was based on ape::Moran.I, which computes the I for dense matrices.

Usage

moran(x, w, normalize.w = TRUE, alternative = "two.sided")

Arguments

x

Numeric vector of size n.

w

Numeric matrix of size n\times n. Weights. It can be either a object of class matrix or dgCMatrix from the Matrix package.

normalize.w

Logical scalar. When TRUE normalizes rowsums to one (or zero).

alternative

Character String. Specifies the alternative hypothesis that is tested against the null of no autocorrelation; must be of one "two.sided", "less", or "greater".

Details

In the case that the vector x is close to constant (degenerate random variable), the statistic becomes irrelevant, and furthermore, the standard error tends to be undefined (NaN).

Value

A list of class diffnet_moran with the following elements:

observed

Numeric scalar. Observed correlation index.

expected

Numeric scalar. Expected correlation index equal to -1/(N-1).

sd

Numeric scalar. Standard error under the null.

p.value

Numeric scalar. p-value of the specified alternative.

Author(s)

George G. Vega Yon

References

Moran's I. (2015, September 3). In Wikipedia, The Free Encyclopedia. Retrieved 06:23, December 22, 2015, from https://en.wikipedia.org/w/index.php?title=Moran%27s_I&oldid=679297766

See Also

Other statistics: bass, classify_adopters(), cumulative_adopt_count(), dgr(), ego_variance(), exposure(), hazard_rate(), infection(), struct_equiv(), threshold(), vertex_covariate_dist()

Other Functions for inference: bootnet(), struct_test()

Examples


if (require("ape")) {

  # Generating a small random graph
  set.seed(123)
  graph <- rgraph_ba(t = 4)
  w <- approx_geodesic(graph)
  x <- rnorm(5)

  # Computing Moran's I
  moran(x, w)

  # Comparing with the ape's package version
  ape::Moran.I(x, as.matrix(w))

}


netdiffuseR documentation built on Aug. 30, 2023, 5:07 p.m.