extractDrugBCUT {Rcpi} | R Documentation

## BCUT – Eigenvalue Based Descriptor

### Description

BCUT – Eigenvalue Based Descriptor

### Usage

    extractDrugBCUT(molecules, silent = TRUE)

### Arguments

`molecules` | Parsed molucule object.
`silent` | Logical. Whether the calculating process should be shown or not, default is `TRUE`.

### Details

Eigenvalue based descriptor noted for its utility in chemical diversity. Described by Pearlman et al. The descriptor is based on a weighted version of the Burden matrix which takes into account both the connectivity as well as atomic properties of a molecule. The weights are a variety of atom properties placed along the diagonal of the Burden matrix. Currently three weighting schemes are employed:

- Atomic Weight

- Partial Charge (Gasteiger Marsilli)

- Polarizability (Kang et al.)

### Value

A data frame, each row represents one of the molecules, each column represents one feature. This function returns 6 columns:

- `BCUTw-1l, BCUTw-2l ...` - n high lowest atom weighted BCUTS

- `BCUTw-1h, BCUTw-2h ...` - n low highest atom weighted BCUTS

- `BCUTc-1l, BCUTc-2l ...` - n high lowest partial charge weighted BCUTS

- `BCUTc-1h, BCUTc-2h ...` - n low highest partial charge weighted BCUTS

- `BCUTp-1l, BCUTp-2l ...` - n high lowest polarizability weighted BCUTS

- `BCUTp-1h, BCUTp-2h ...` - n low highest polarizability weighted BCUTS

### Note

By default, the descriptor will return the highest and lowest eigenvalues for the three classes of descriptor in a single ArrayList (in the order shown above). However it is also possible to supply a parameter list indicating how many of the highest and lowest eigenvalues (for each class of descriptor) are required. The descriptor works with the hydrogen depleted molecule.

A side effect of specifying the number of highest and lowest eigenvalues is that it is possible to get two copies of all the eigenvalues. That is, if a molecule has 5 heavy atoms, then specifying the 5 highest eigenvalues returns all of them, and specifying the 5 lowest eigenvalues returns all of them, resulting in two copies of all the eigenvalues.

Note that it is possible to specify an arbitrarily large number of eigenvalues to be returned. However if the number (i.e., nhigh or nlow) is larger than the number of heavy atoms, the remaining eignevalues will be `NaN`.

Given the above description, if the aim is to gt all the eigenvalues for a molecule, you should set nlow to 0 and specify the number of heavy atoms (or some large number) for nhigh (or vice versa).

### Author(s)

Nan Xiao <https://nanx.me>

### References

Pearlman, R.S. and Smith, K.M., Metric Validation and the Receptor-Relevant Subspace Concept, J. Chem. Inf. Comput. Sci., 1999, 39:28-35.

Burden, F.R., Molecular identification number for substructure searches, J. Chem. Inf. Comput. Sci., 1989, 29:225-227.

Burden, F.R., Chemically Intuitive Molecular Index, Quant. Struct. -Act. Relat., 1997, 16:309-314

Kang, Y.K. and Jhon, M.S., Additivity of Atomic Static Polarizabilities and Dispersion Coefficients, Theoretica Chimica Acta, 1982, 61:41-48

### Examples

    smi = system.file('vignettedata/FDAMDD.smi', package = 'Rcpi')

    mol = readMolFromSmi(smi, type = 'mol')
    dat = extractDrugBCUT(mol)
    head(dat)

[Package Rcpi version 1.20.1 Index]