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 @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