tenzing.core.models.tenzing_model

class tenzing.core.models.tenzing_model

Abstract implementation of a tenzing type.

Provides a common API for building custom tenzing datatypes. These can optionally be augmented with mixins from tenzing.core.mixins

i.e.

>>> @singleton.singleton_object
>>> class tenzing_timestamp(tenzing_model):
>>>     def contains_op(self, series):
>>>         return pdt.is_datetime64_dtype(series)
>>>
>>>     def cast_op(self, series):
>>>         return pd.to_datetime(series)
>>>
>>>     def summarization_op(self, series):
>>>         aggregates = ['nunique', 'min', 'max']
>>>         summary = series.agg(aggregates).to_dict()
>>>
>>>         summary['n_records'] = series.shape[0]
>>>         summary['perc_unique'] = summary['nunique'] / summary['n_records']
>>>
>>>         summary['range'] = summary['max'] - summary['min']
>>>         return summary
__init__()

Initialize self. See help(type(self)) for accurate signature.

Methods

__init__() Initialize self.
cast(series[, operation])
cast_op(series)
contains_op(series)
get_series(series)
register_relation(relation)
summarization_op(series)
summarize(series)

Attributes

is_option