nucleic.util module

class nucleic.util.DictMostCommonMixin[source]

Give any dict-like object a most common method.

Examples

>>> class MyDict(DictMostCommonMixin, dict):
...     def __init__(self, *args, **kwargs):
...         super().__init__(*args, **kwargs)
>>> mapping = MyDict({'sample-1': 2, 'sample-2': 10})
>>> mapping.most_common()
[('sample-2', 10), ('sample-1', 2)]
>>> mapping.most_common(n=1)
[('sample-2', 10)]
most_common(n: Optional[int] = None) → List[Tuple[Any, Any]][source]

List the n most common elements and their counts.

Method returns items from the most common to the least. If n is None, then list all element counts.

Parameters:n – The n most common items to return, optional.
class nucleic.util.DictNpArrayMixin[source]

Make any dict-like object methods return numpy.ndarray by default.

Examples

>>> class MyDict(DictNpArrayMixin, dict):
...     def __init__(self, *args, **kwargs):
...         super().__init__(*args, **kwargs)
>>> mapping = MyDict({'sample-1': 2})
>>> mapping.keys()
array(['sample-1'], dtype='<U8')
>>> mapping.values()
array([2])
keys() → numpy.ndarray[source]

Return this dictionary’s keys as a numpy.ndarray.

values() → numpy.ndarray[source]

Return this dictionary’s values as a numpy.ndarray.

class nucleic.util.DictPrettyReprMixin[source]

Make any dict-like object pretty print when DictPrettyReprMixin.__repr__() is called.

Examples

>>> class AReallyLongDictName(DictPrettyReprMixin, dict):
...     def __init__(self, *args, **kwargs):
...         super().__init__(*args, **kwargs)
>>> AReallyLongDictName({
...     'ScientificObservation1': 1,
...     'ScientificObservation2': 2,
...     'ScientificObservation3': 3,
...     'ScientificObservation4': 4})
AReallyLongDictName({'ScientificObservation1': 1,
                     'ScientificObservation2': 2,
                     'ScientificObservation3': 3,
                     'ScientificObservation4': 4})