Class "fingerpint"

Description

This class represents binary fingerprints, usually generated by a variety of cheminformatics software, but not restricted to such

Objects from the Class

Objects can be created by calls of the form new("fingerprint", ...). Fingerprints can traditionally thought of as a vector of 1's and 0's. However for large fingerprints this is inefficient and instead we simply store the positions of the bits that are on. Certain operations also need to know the length of the original bit string and this length is stored in the object at construction. Even though we store extra information along with the bit positions, conceptually we still consider the objects as simple bit strings. Thus the usual bitwise logical operations (&, |, !, xor) can be applied to objects of this class.

Slots

bits:

Object of class "numeric" ~~ A vector indicating the bit positions that are on.

nbit:

Object of class "numeric" ~~ Indicates the length of the original bit string.

folded:

Object of class "logical" ~~ Indicates whether the fingerprint has been folded.

provider:

Object of class "character" ~~ Indicates the source of the fingerprint. Can be useful to keep track of what software generated the fingerprint.

name:

Object of class "character" ~~ The name associated with the fingerprint. If not name is available this gets set to an empty string

Methods

distance

signature(fp1 = "fingerprint", fp2 = "fingerprint", method = "missing"): ...

distance

signature(fp1 = "fingerprint", fp2 = "fingerprint", method = "character"): ...

euc.vector

signature(fp = "fingerprint"): ...

fold

signature(fp = "fingerprint"): ...

random.fingerprint

signature(nbit = "numeric", on = "numeric"): ...

Author(s)

Rajarshi Guha rajarshi.guha@gmail.com

See Also

fp.read, fp.read.to.matrix fp.sim.matrix, fp.to.matrix, fp.factor.matrix random.fingerprint

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
## make fingerprints
x <- new("fingerprint", nbit=128, bits=sample(1:128, 100))
y <- x
distance(x,y) # should be 1
x <- new("fingerprint", nbit=128, bits=sample(1:128, 100))
distance(x,y)
folded <- fold(x)

## binary operations on fingerprints
x <- new("fingerprint", nbit=8, bits=c(1,2,3,6,8))
y <- new("fingerprint", nbit=8, bits=c(1,2,4,5,7,8))
x & y
x | y
!x