pandagg.node.aggs.bucket module

class pandagg.node.aggs.bucket.AdjacencyMatrix(filters: Dict[str, Dict[str, Dict[str, Any]]], separator: Optional[str] = None, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'adjacency_matrix'
VALUE_ATTRS = ['doc_count']
class pandagg.node.aggs.bucket.AutoDateHistogram(field: str, buckets: Optional[int] = None, format: Optional[str] = None, time_zone: Optional[str] = None, minimum_interval: Optional[str] = None, missing: Optional[str] = None, key_as_string: bool = True, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'auto_date_histogram'
VALUE_ATTRS = ['doc_count']
class pandagg.node.aggs.bucket.Children(type: str, **body)[source]

Bases: pandagg.node.aggs.abstract.UniqueBucketAgg

KEY = 'children'
VALUE_ATTRS = ['doc_count']
class pandagg.node.aggs.bucket.DateHistogram(field: str, interval: str = None, calendar_interval: str = None, fixed_interval: str = None, key_as_string: bool = True, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'date_histogram'
VALUE_ATTRS = ['doc_count']
WHITELISTED_MAPPING_TYPES = ['date']
is_convertible_to_composite_source() → bool[source]
class pandagg.node.aggs.bucket.DateRange(field: str, ranges: List[pandagg.types.RangeDict], keyed: bool = False, **body)[source]

Bases: pandagg.node.aggs.bucket.Range

KEY = 'date_range'
VALUE_ATTRS = ['doc_count']
WHITELISTED_MAPPING_TYPES = ['date']
class pandagg.node.aggs.bucket.DiversifiedSampler(field: str, shard_size: Optional[int], max_docs_per_value: Optional[int] = None, execution_hint: Optional[typing_extensions.Literal['map', 'global_ordinals', 'bytes_hash'][map, global_ordinals, bytes_hash]] = None, **body)[source]

Bases: pandagg.node.aggs.abstract.UniqueBucketAgg

KEY = 'diversified_sampler'
VALUE_ATTRS = ['doc_count']
class pandagg.node.aggs.bucket.Filter(filter: Optional[Dict[str, Dict[str, Any]]] = None, meta: Optional[Dict[str, Any]] = None, **body)[source]

Bases: pandagg.node.aggs.abstract.UniqueBucketAgg

KEY = 'filter'
VALUE_ATTRS = ['doc_count']
class pandagg.node.aggs.bucket.Filters(filters: Dict[str, Dict[str, Dict[str, Any]]], other_bucket: bool = False, other_bucket_key: Optional[str] = None, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

DEFAULT_OTHER_KEY = '_other_'
IMPLICIT_KEYED = True
KEY = 'filters'
VALUE_ATTRS = ['doc_count']
class pandagg.node.aggs.bucket.GeoDistance(field: str, origin: str, ranges: List[pandagg.types.RangeDict], unit: Optional[str] = None, distance_type: Optional[typing_extensions.Literal['arc', 'plane'][arc, plane]] = None, keyed: bool = False, **body)[source]

Bases: pandagg.node.aggs.bucket.Range

KEY = 'geo_distance'
VALUE_ATTRS = ['doc_count']
WHITELISTED_MAPPING_TYPES = ['geo_point']
class pandagg.node.aggs.bucket.GeoHashGrid(field: str, precision: Optional[int] = None, bounds: Optional[Dict[KT, VT]] = None, size: Optional[int] = None, shard_size: Optional[int] = None, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'geohash_grid'
VALUE_ATTRS = ['doc_count']
WHITELISTED_MAPPING_TYPES = ['geo_point', 'geo_shape']
class pandagg.node.aggs.bucket.GeoTileGrid(field: str, precision: Optional[int] = None, bounds: Optional[Dict[KT, VT]] = None, size: Optional[int] = None, shard_size: Optional[int] = None, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'geotile_grid'
VALUE_ATTRS = ['doc_count']
WHITELISTED_MAPPING_TYPES = ['geo_point', 'geo_shape']
class pandagg.node.aggs.bucket.Global(**body)[source]

Bases: pandagg.node.aggs.abstract.UniqueBucketAgg

KEY = 'global'
VALUE_ATTRS = ['doc_count']
class pandagg.node.aggs.bucket.Histogram(field: str, interval: int, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'histogram'
VALUE_ATTRS = ['doc_count']
WHITELISTED_MAPPING_TYPES = ['long', 'integer', 'short', 'byte', 'double', 'float', 'half_float', 'scaled_float', 'ip', 'token_count', 'date', 'boolean']
is_convertible_to_composite_source() → bool[source]
class pandagg.node.aggs.bucket.IPRange(field: str, ranges: List[pandagg.types.RangeDict], keyed: bool = False, **body)[source]

Bases: pandagg.node.aggs.bucket.Range

KEY = 'ip_range'
VALUE_ATTRS = ['doc_count']
WHITELISTED_MAPPING_TYPES = ['ip']
class pandagg.node.aggs.bucket.MatchAll(**body)[source]

Bases: pandagg.node.aggs.bucket.Filter

class pandagg.node.aggs.bucket.Missing(field: str, **body)[source]

Bases: pandagg.node.aggs.abstract.UniqueBucketAgg

KEY = 'missing'
VALUE_ATTRS = ['doc_count']
class pandagg.node.aggs.bucket.MultiTerms(terms: List[Dict[KT, VT]], **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'multi_terms'
VALUE_ATTRS = ['doc_count', 'doc_count_error_upper_bound', 'sum_other_doc_count']
class pandagg.node.aggs.bucket.Nested(path: str, **body)[source]

Bases: pandagg.node.aggs.abstract.UniqueBucketAgg

KEY = 'nested'
VALUE_ATTRS = ['doc_count']
WHITELISTED_MAPPING_TYPES = ['nested']
class pandagg.node.aggs.bucket.Parent(type: str, **body)[source]

Bases: pandagg.node.aggs.abstract.UniqueBucketAgg

KEY = 'parent'
VALUE_ATTRS = ['doc_count']
class pandagg.node.aggs.bucket.Range(field: str, ranges: List[pandagg.types.RangeDict], keyed: bool = False, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'range'
VALUE_ATTRS = ['doc_count']
WHITELISTED_MAPPING_TYPES = ['long', 'integer', 'short', 'byte', 'double', 'float', 'half_float', 'scaled_float', 'ip', 'token_count', 'date', 'boolean']
class pandagg.node.aggs.bucket.RareTerms(field: str, max_doc_count: Optional[int] = None, precision: Optional[float] = None, include: Union[str, List[str], None] = None, exclude: Union[str, List[str], None] = None, missing: Optional[Any] = None, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'rare_terms'
VALUE_ATTRS = ['doc_count']
class pandagg.node.aggs.bucket.ReverseNested(path: Optional[str] = None, **body)[source]

Bases: pandagg.node.aggs.abstract.UniqueBucketAgg

KEY = 'reverse_nested'
VALUE_ATTRS = ['doc_count']
WHITELISTED_MAPPING_TYPES = ['nested']
class pandagg.node.aggs.bucket.Sampler(shard_size: Optional[int] = None, **body)[source]

Bases: pandagg.node.aggs.abstract.UniqueBucketAgg

KEY = 'sampler'
VALUE_ATTRS = ['doc_count']
class pandagg.node.aggs.bucket.SignificantTerms(field: str, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'significant_terms'
VALUE_ATTRS = ['doc_count', 'score', 'bg_count']
class pandagg.node.aggs.bucket.SignificantText(field: str, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'significant_text'
VALUE_ATTRS = ['doc_count', 'score', 'bg_count']
WHITELISTED_MAPPING_TYPES = ['text']
class pandagg.node.aggs.bucket.Terms(field: str, missing: Union[str, int, None] = None, size: Optional[int] = None, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

Terms aggregation.

KEY = 'terms'
VALUE_ATTRS = ['doc_count', 'doc_count_error_upper_bound', 'sum_other_doc_count']
is_convertible_to_composite_source() → bool[source]
class pandagg.node.aggs.bucket.VariableWidthHistogram(field: str, buckets: int, **body)[source]

Bases: pandagg.node.aggs.abstract.MultipleBucketAgg

KEY = 'variable_width_histogram'
VALUE_ATTRS = ['doc_count', 'min', 'max']