gooddata_pandas.series.SeriesFactory
- class gooddata_pandas.series.SeriesFactory(sdk: GoodDataSdk, workspace_id: str)
Bases:
object
- __init__(sdk: GoodDataSdk, workspace_id: str) None
Methods
__init__
(sdk, workspace_id)indexed
(index_by, data_by[, filter_by])Creates pandas Series from data points calculated from a single data_by that will be computed on granularity of the index labels.
not_indexed
(data_by[, granularity, filter_by])Creates pandas Series from data points calculated from a single data_by that will be computed on granularity of the specified labels.
- indexed(index_by: IndexDef, data_by: Union[SimpleMetric, str, ObjId, Attribute], filter_by: Optional[Union[Filter, list[Filter]]] = None) pandas.Series
Creates pandas Series from data points calculated from a single data_by that will be computed on granularity of the index labels. The elements of the index labels will be used to construct simple or hierarchical index.
- Parameters:
index_by –
label to index by; specify either:
string with id:
some_label_id
,object identifier:
ObjId(id='some_label_id', type='label')
,string representation of object identifier:
label/some_label_id
or an Attribute object used in the compute model:
Attribute(local_id=..., label='some_label_id')
dict containing mapping of index name to label to use for indexing - specified in one of the ways list above
data_by –
label, fact or metric to that will provide data (metric values or label elements); specify either:
object identifier:
ObjId(id='some_id', type='<type>')
- where type is eitherlabel
,fact
ormetric
string representation of object identifier:
<type>/some_id
- where type is eitherlabel
,fact
ormetric
Attribute object used in the compute model:
Attribute(local_id=..., label='some_label_id')
SimpleMetric object used in the compute model:
SimpleMetric(local_id=..., item=..., aggregation=...)
filter_by –
optionally specify filter to apply during computation on the server, reference to filtering column can be one of:
string reference to index key
object identifier in string form
object identifier:
ObjId(id='some_label_id', type='<type>')
Attribute or Metric depending on type of filter
- Returns:
pandas series instance
- not_indexed(data_by: Union[SimpleMetric, str, ObjId, Attribute], granularity: Optional[Union[list[LabelItemDef], IndexDef]] = None, filter_by: Optional[Union[Filter, list[Filter]]] = None) pandas.Series
Creates pandas Series from data points calculated from a single data_by that will be computed on granularity of the specified labels. No index will be constructed.
Note that data_by may also be a label in which case the Series will contain label elements.
- Parameters:
data_by –
label, fact or metric to get data from; specify either:
object identifier:
ObjId(id='some_id', type='<type>')
- where type is eitherlabel
,fact
ormetric
string representation of object identifier:
<type>/some_id
- where type is eitherlabel
,fact
ormetric
Attribute object used in the compute model:
Attribute(local_id=..., label='some_label_id')
SimpleMetric object used in the compute model:
SimpleMetric(local_id=..., item=..., aggregation=...)
granularity –
optionally specify label to slice the metric by; specify either:
string with id:
some_label_id
,object identifier:
ObjId(id='some_label_id', type='label')
,string representation of object identifier:
label/some_label_id
or an Attribute object used in the compute model:
Attribute(local_id=..., label='some_label_id')
list containing multiple labels to slice the metric by - specified in one of the ways list above
dict containing mapping of index name to label to use for indexing - specified in one of the ways list above; this option is available so that you can easily switch from indexed factory method to this one if needed
filter_by –
optionally specify filter to apply during computation on the server, reference to filtering column can be one of:
object identifier in string form
object identifier:
ObjId(id='some_label_id', type='<type>')
Attribute or Metric depending on type of filter
- Returns:
pandas series instance