Source code for mordred.EccentricConnectivityIndex

from ._base import Descriptor
from ._graph_matrix import Valence, Eccentricity

__all__ = ("EccentricConnectivityIndex",)


[docs]class EccentricConnectivityIndex(Descriptor): r"""eccentric connectivity index descriptor. .. math:: I_{\rm EC} = \sum^A_i {\boldsymbol E}{\boldsymbol V} where :math:`E` is eccentricity of atoms, :math:`V` is valences of atoms. """ __slots__ = () explicit_hydrogens = False
[docs] def description(self): return "eccentric connectivity index"
@classmethod def preset(cls): yield cls() def __str__(self): return "ECIndex" def parameters(self): return () def dependencies(self): return { "E": Eccentricity(self.explicit_hydrogens), "V": Valence(self.explicit_hydrogens), } def calculate(self, E, V): return int((E.astype("int") * V).sum()) rtype = int