Provides the generic function
similarity and the S4 method
to compute similarities among a collection of sequences.
is.subset, is.superset find subsequence or supersequence
relationships among a collection of sequences.
similarity(x, y = NULL, ...)
# S4 method for sequences similarity(x, y = NULL, method = c("jaccard", "dice", "cosine", "subset"), strict = FALSE)
# S4 method for sequences is.subset(x, y = NULL, proper = FALSE) # S4 method for sequences is.superset(x, y = NULL, proper = FALSE)
- x, y
- an object.
- further (unused) arguments.
- a string specifying the similarity measure to use (see details).
- a logical value specifying if strict itemset matching should be used.
- a logical value specifying if only strict relationships (omitting equality) should be indicated.
Let the number of common elements of two sequences refer to those that occur in a longest common subsequence. The following similarity measures are implemented:
- The number of common elements divided by the total number of elements (the sum of the lengths of the sequences minus the length of the longest common subsequence).
- Uses two times the number of common elements.
- Uses the square root of the product of the sequence lengths for the denominator.
- Zero if the first sequence is not a subsequence of the second. Otherwise the number of common elements divided by the number of elements in the first sequence.
strict = TRUE the elements (itemsets) of the sequences must
be equal to be matched. Otherwise matches are quantified by the
similarity of the itemsets (as specified by
at 0.5, and the common sequence by the sum of the similarities.
is.subset, is.superset returns an object of class
Computation of the longest common subsequence of two sequences of
n, m takes
The supported set of operations for the above matrix classes depends
on package Matrix. In case of problems, expand to full storage
as(x, "matrix") or
For efficiency use
as(x, "dist") to convert a symmetric
result matrix for clustering.
## use example data data(zaki) z <- as(zaki, "timedsequences") similarity(z) # require equality similarity(z, strict = TRUE) ## emphasize common similarity(z, method = "dice") ## is.subset(z) is.subset(z, proper = TRUE)