Power-Law Weights According to Neighbourhood Order

Share:

Description

Compute power-law weights with decay parameter d based on a matrix of neighbourhood orders nbmat (e.g., as obtained via nbOrder). Without normalization and truncation, this is just o^{-d} (where o is a neighbourhood order). This function is mainly used internally for W_powerlaw weights in hhh4 models.

Usage

1
zetaweights(nbmat, d = 1, maxlag = max(nbmat), normalize = FALSE)

Arguments

nbmat

numeric, symmetric matrix of neighbourhood orders.

d

single numeric decay parameter (default: 1). Should be positive.

maxlag

single numeric specifying an upper limit for the power law. For neighbourhood orders > maxlag, the resulting weight is 0. Defaults to no truncation.

normalize

Should the resulting weight matrix be normalized such that rows sum to 1?

Value

a numeric matrix with same dimensions and names as the input matrix.

Author(s)

Sebastian Meyer

See Also

W_powerlaw

Examples

1
2
3
4
5
6
7
nbmat <- matrix(c(0,1,2,2,
                  1,0,1,1,
                  2,1,0,2,
                  2,1,2,0), 4, 4, byrow=TRUE)
zetaweights(nbmat, d=1, normalize=FALSE) # harmonic: o^-1
zetaweights(nbmat, d=1, normalize=TRUE)  # rowSums=1
zetaweights(nbmat, maxlag=1, normalize=FALSE) # results in adjacency matrix

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.