Learn R Programming

DepthProc (version 2.1.5)

ddPlot: Depth versus depth plot

Description

Produces a DD plot which allows to compare two multivariate datasets or to compare a subject dataset with theoretical distribution.

Usage

ddPlot(
  x,
  y,
  scale = FALSE,
  location = FALSE,
  name = "X",
  name_y = "Y",
  title = "Depth vs. depth plot",
  depth_params = list()
)

Arguments

x

The first or only data sample for ddPlot.

y

The second data sample. x and y must be of the same space.

scale

logical. determines whether the dispersion is to be aligned.

location

determines whether the location is to be aligned to 0 vector with depth median.

name

name for data set x. It will be passed to drawing function.

name_y

as above for y

title

title of the plot.

depth_params

list of parameters for function depth (method, threads, ndir, la, lb, pdim, mean, cov, exact).

Details

For two probability distributions \( F \) and \( G \), both in \( {{{R}} ^ {d}} \), we can define depth vs. depth plot being very useful generalization of the one dimensional quantile-quantile plot: $$ DD(F, G) = \left\{\left( D({z}, F), D({z}, G) \right), {z} \in {{{R}} ^ {d}} \right\} $$ Its sample counterpart calculated for two samples \( {{{X}} ^ {n}} = \{{{X}_{1}}, ..., {{X}_{n}}\} \) from \( F \), and \( {{Y} ^ {m}} = \{{{Y}_{1}}, ..., {{Y}_{m}}\} \) from \( G \) is defined as $$ DD({{F}_{n}}, {{G}_{m}}) = \left\{\left( D({z}, {{F}_{n}}), D({z}, {{G}_{m}}) \right), {z} \in \{{{{X}} ^ {n}} \cup {{{Y}} ^ {m}}\} \right\} $$

References

Liu, R.Y., Parelius, J.M. and Singh, K. (1999), Multivariate analysis by data depth: Descriptive statistics, graphics and inference (with discussion), Ann. Statist., 27, 822--831.

Liu, R.Y., Singh K. (1993), A Quality Index Based on Data Depth and Multivariate Rank Test, Journal of the American Statistical Association vol. 88.

Examples

Run this code
# NOT RUN {
library(sn)
library(mvtnorm)

# EXAMPLE 1: Location difference
standard <- mvrnorm(1000, c(0, 0), diag(2))
shift <- mvrnorm(1000, c(0.5, 0), diag(2))
ddPlot(x = standard, y = shift, title = "Difference in position")
ddPlot(x = standard, y = shift, location = TRUE, title = "Location aligned")

# EXAMPLE 2: Scale difference
standard <- mvrnorm(1000, c(0, 0), diag(2))
scale <- mvrnorm(1000, c(0, 0), 4 * diag(2))
ddPlot(x = standard, y = scale)
ddPlot(x = standard, y = scale, scale = TRUE)

# }

Run the code above in your browser using DataLab