This function massages an input sample of quaternion time series to turn it into a pairwise distance matrix.

## Usage

```
dist(x, metric, ...)
# S3 method for default
dist(
x,
metric = c("euclidean", "maximum", "manhattan", "canberra", "binary", "minkowski"),
diag = FALSE,
upper = FALSE,
p = 2,
...
)
# S3 method for qts_sample
dist(
x,
metric = c("l2", "pearson", "dtw"),
warping_class = c("affine", "dilation", "none", "shift", "srsf"),
cluster_on_phase = FALSE,
labels = NULL,
...
)
```

## Arguments

- x
A numeric matrix, data frame, stats::dist object or object of class qts_sample specifying the sample on which to compute the pairwise distance matrix.

- metric
A character string specifying the distance measure to be used. This must be one of

`"euclidean"`

,`"maximum"`

,`"manhattan"`

,`"canberra"`

,`"binary"`

or`"minkowski"`

if`x`

is not a QTS sample. Otherwise, it must be one of`"l2"`

,`"pearson"`

or`"dtw"`

.- ...
not used.

- diag
logical value indicating whether the diagonal of the distance matrix should be printed by

`print.dist`

.- upper
logical value indicating whether the upper triangle of the distance matrix should be printed by

`print.dist`

.- p
The power of the Minkowski distance.

- warping_class
A string specifying the warping class Choices are

`"affine"`

,`"dilation"`

,`"none"`

,`"shift"`

or`"srsf"`

. Defaults to`"affine"`

. The SRSF class is the only class which is boundary-preserving.- cluster_on_phase
A boolean specifying whether clustering should be based on phase variation or amplitude variation. Defaults to

`FALSE`

which implies amplitude variation.- labels
A character vector specifying curve labels. Defaults to

`NULL`

which uses sequential numbers as labels.

## Value

An object of class stats::dist.