DataFrameFactory.

for_arrow_table

for_arrow_table(table: pa.Table, execution_response: BareExecutionResponse | None, label_overrides: Optional[LabelOverrides], grand_totals_position: Literal['pinnedBottom', 'pinnedTop', 'bottom', 'top']) -> tuple[pandas.DataFrame, DataFrameMetadata]

Creates a DataFrame from an already-obtained PyArrow Table.

Use this when you have fetched Arrow IPC bytes yourself (e.g. from the raw export REST API or a future Flight RPC endpoint) and converted them to a ``pa.Table``. For the common case of submitting an execution and reading the result in one call, use :meth:for_exec_def_arrow instead.

Technical Arrow parameters (self_destruct, types_mapper, custom_mapping) are configured on the factory via ArrowConfig.

Parameters

nametypedescription
tablepa.TablePyArrow Table as returned by the GoodData binary execution endpoint.
execution_responseBareExecutionResponse | NoneOptional ``BareExecutionResponse`` from the execution that produced this table. When provided, ``DataFrameMetadata.row_totals_indexes`` and ``DataFrameMetadata.column_totals_indexes`` are computed accurately and ``DataFrameMetadata.execution_response`` is populated. When omitted, both totals indexes are empty lists and ``execution_response`` is ``None``.
label_overridesOptional[LabelOverrides]Label overrides for metrics and attributes.
grand_totals_positionLiteral['pinnedBottom', 'pinnedTop', 'bottom', 'top']Position where grand total rows should be placed. ``"pinnedBottom"`` and ``"bottom"`` keep totals at the end (default). ``"pinnedTop"`` and ``"top"`` move grand total rows to the beginning of the DataFrame. Subtotal rows are not repositioned. Defaults to ``"bottom"``.

Returns

typedescription
tuple[pandas.DataFrame, DataFrameMetadata]Tuple[pandas.DataFrame, DataFrameMetadata]