R: lp norm of a vector

lp_norm {LambertW} | R Documentation

## lp norm of a vector

### Description

Computes the \ell^p norm of an n-dimensional (real/complex) vector \mathbf{x} \in \mathbf{C}^n

≤ft|≤ft| \mathbf{x} \right|\right|_p = ≤ft( ∑_{i=1}^n ≤ft| x_i \right|^p \right)^{1/p}, p \in [0, ∞],

where ≤ft| x_i \right| is the absolute value of x_i. For p=2 this is Euclidean norm; for p=1 it is Manhattan norm. For p=0 it is defined as the number of non-zero elements in \mathbf{x}; for p = ∞ it is the maximum of the absolute values of \mathbf{x}.

The norm of \mathbf{x} equals 0 if and only if \mathbf{x} = \mathbf{0}.

### Usage

    lp_norm(x, p = 2)

### Arguments

`x` | n-dimensional vector (possibly complex values)
`p` | which norm? Allowed values p ≥q 0 including `Inf`. Default: `2` (Euclidean norm).

### Value

Non-negative float, the norm of \mathbf{x}.

### Examples

    kRealVec <- c(3, 4)
    # Pythagoras
    lp_norm(kRealVec)
    # did not know Manhattan,
    lp_norm(kRealVec, p = 1)

    # so he just imagined running in circles.
    kComplexVec <- exp(1i * runif(20, -pi, pi))
    plot(kComplexVec)
    sapply(kComplexVec, lp_norm)

[Package LambertW version 0.6.7 Index]