# distl2dnorm: L^2 distance between L^2-normed probability densities In dad: Three-Way / Multigroup Data Analysis Through Densities

 distl2dnorm R Documentation

## `L^2` distance between `L^2`-normed probability densities

### Description

`L^2` distance between two multivariate (`p > 1`) or univariate (dimension: `p = 1`) `L^2`-normed probability densities, estimated from samples, where a `L^2`-normed probability density is the original probability density function divided by its `L^2`-norm.

### Usage

``````distl2dnorm(x1, x2, method = "gaussiand", check = FALSE, varw1 = NULL, varw2 = NULL)
``````

### Arguments

 `x1, x2` the samples from the probability densities (see `l2d`. `method` string. It can be: `"gaussiand"` if the densities are considered to be Gaussian. `"kern"` if they are estimated using the Gaussian kernel method. `check` logical. When `TRUE` (the default is `FALSE`) the function checks if the covariance matrices (if `method = "gaussiand"`) or smoothing bandwidth matrices (if `method = "kern"`) are not degenerate, before computing the inner product. Notice that if `p = 1`, it checks if the variances or smoothing parameters are not zero. `varw1, varw2` the bandwidths when the densities are estimated by the kernel method (see `l2d`.

### Details

Given densities `f_1` and `f_2`, the function `distl2dnormpar` computes the distance between the `L^2`-normed densities `f_1 / ||f_1||` and `f_2 / ||f_2||`:

`2 - 2 <f_1, f_2> / (||f_1|| ||f_2||)`

For some information about the method used to compute the `L^2` inner product or about the arguments, see `l2d`.

### Value

The `L^2` distance between the two `L^2`-normed densities.

Be careful! If `check = FALSE` and one smoothing bandwidth matrix is degenerate, the result returned can not be considered.

### Author(s)

Rachid Boumaza, Pierre Santagostini, Smail Yousfi, Gilles Hunault, Sabine Demotes-Mainard

`distl2d` for the distance between two probability densities.

`matdistl2dnorm` in order to compute pairwise distances between several `L^2`-normed densities.

### Examples

``````require(MASS)
m1 <- c(0,0)
v1 <- matrix(c(1,0,0,1),ncol = 2)
m2 <- c(0,1)
v2 <- matrix(c(4,1,1,9),ncol = 2)
x1 <- mvrnorm(n = 3,mu = m1,Sigma = v1)
x2 <- mvrnorm(n = 5, mu = m2, Sigma = v2)
distl2dnorm(x1, x2, method = "gaussiand")
distl2dnorm(x1, x2, method = "kern")
distl2dnorm(x1, x2, method = "kern", varw1 = v1, varw2 = v2)
``````

dad documentation built on Aug. 30, 2023, 5:06 p.m.