Learn R Programming

TSclust (version 1.1)

diss.PER: Periodogram Based Dissimilarity

Description

Computes the distance between two time series based on their periodograms.

Usage

diss.PER(x, y, logarithm=FALSE, normalize=FALSE)

Arguments

x
Numeric vector containing the first of the two time series.
y
Numeric vector containing the second of the two time series.
logarithm
Boolean. If TRUE logarithm of the periodogram coefficients will be taken.
normalize
Boolean. If TRUE, the periodograms will be normalized by the variance of their respective series.

Value

  • The computed distance.

Details

Computes the Euclidean distance between the periodogram coefficients of the series x and y. Additional transformations can be performed on the coefficients depending on the values of logarithm and normalize.

References

Caiado, J., Crato, N. and Peña, D. (2006) A periodogram-based metric for time series classification. Comput. Statist. Data Anal., 50(10), 2668--2684.

See Also

link{diss.INT.PER}

Examples

Run this code
## Create three sample time series
x <- cumsum(rnorm(100))
y <- cumsum(rnorm(100))
z <- sin(seq(0, pi, length.out=100))
## Compute the distance and check for coherent results
diss.PER(x, y)
diss.PER(x, z)
diss.PER(y, z)
diss.PER(x, y, TRUE, TRUE)
diss.PER(x, z, TRUE, TRUE)
diss.PER(y, z, TRUE, TRUE)
#create a dist object for its use with clustering functions like pam or hclust
if (require(proxy)) {
	proxy::dist( rbind(x,y,z), diss.PER, logarithm=TRUE, normalize=TRUE)
}

Run the code above in your browser using DataLab