Learn R Programming

recommenderlab (version 0.1-9)

dissimilarity: Dissimilarity and Similarity Calculation Between Rating Data

Description

Calculate dissimilarities/similarities between ratings by users and for items.

Usage

## S3 method for class 'binaryRatingMatrix':
dissimilarity(x, y = NULL, method = NULL, args = NULL, which="users")
## S3 method for class 'realRatingMatrix':
dissimilarity(x, y = NULL, method = NULL, args = NULL, which="users")

similarity(x, y = NULL, method = NULL, args = NULL, ...) ## S3 method for class 'ratingMatrix': similarity(x, y = NULL, method = NULL, args = NULL, which="users")

Arguments

x
a ratingMatrix.
y
NULL or a second ratingMatrix to calculate cross-(dis)similarities.
method
(dis)similarity measure to use. Available measures are typically "cosine", "pearson", "jaccard", etc. See dissimilarity for class itemMatrix in arules for details about meas
args
a list of additional arguments for the methods.
which
a character string indicating if the (dis)similarity should be calculated between "users" (rows) or "items" (columns).
...
further arguments.

Value

  • returns an object of class dist, simil or an appropriate object (e.g., a matrix) to represent a cross-(dis)similarity.

Details

Similarities are computed from dissimilarities using $s=1/(1+d)$ or $s=1-d$ depending on the measure. For Pearson we use 1 - positive correlation.

See Also

ratingMatrix and dissimilarity in arules.

Examples

Run this code
data(MSWeb)

## between 5 users
dissimilarity(MSWeb[1:5,], method = "jaccard")
similarity(MSWeb[1:5,], method = "jaccard")

## between first 3 items
dissimilarity(MSWeb[,1:3], method = "jaccard", which = "items")
similarity(MSWeb[,1:3], method = "jaccard", which = "items")

## cross-similarity between first 2 users and users 10-20
similarity(MSWeb[1:2,], MSWeb[10:20,], method="jaccard")

Run the code above in your browser using DataLab