sim: Calculates a Similarity Matrix for a Set of Fingerprints

Description Usage Arguments Value Author(s) See Also Examples

Description

Given a set of fingerprints, a pairwise similarity can be calculated using the various distance metrics defined for binary strings. This function calculates the pairwise similarity matrix for a set of fingerprint or featvec objects supplied in a list structure. Any of the distance metrics provided by distance can be used and the default is the Tanimoto metric.

Note that if the the Euclidean distance is specified then the resultant matrix is a distance matrix and not a similarity matrix

Usage

1
fp.sim.matrix(fplist, fplist2=NULL, method='tanimoto')

Arguments

fplist

A list structure with each element being an object of class fingerprint or featvec. These can be constructed by hand or read from disk via fp.read

fplist2

A list structure with each element being an object of class fingerprint or featvec. if NULL then traditional pairwise similarity is calculated with each member in fplist, otherwise the resultant N x M matrix is derived from the similarity between each member of fplist and fplist2

method

The type of distance metric to use. The default is tanimoto. Partial matching is supported.

Value

A matrix with dimensions equal to (length(fplist), length(fplist)) if fplist2 is NULL, otherwise (length(fplist), length(fplist2))

Author(s)

Rajarshi Guha [email protected]

See Also

distance, fp.read

Examples

1
2
3
4
5
6
# make fingerprint objects
fp1 <- new("fingerprint", nbit=6, bits=c(1,2,5,6))
fp2 <- new("fingerprint", nbit=6, bits=c(1,4,5,6))
fp3 <- new("fingerprint", nbit=6, bits=c(2,3,4,5,6))

fp.sim.matrix( list(fp1,fp2,fp3) )

Example output

     [,1] [,2] [,3]
[1,]  1.0  0.6  0.5
[2,]  0.6  1.0  0.5
[3,]  0.5  0.5  1.0

fingerprint documentation built on May 2, 2019, 2:42 a.m.