You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datafusion.apache.org by gi...@apache.org on 2026/03/12 09:57:09 UTC
(datafusion-python) branch asf-site updated: Publish built docs triggered by d7c6e8fe80f2ebc31df163926b9361a78fdae071
This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/datafusion-python.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 89d30fce Publish built docs triggered by d7c6e8fe80f2ebc31df163926b9361a78fdae071
89d30fce is described below
commit 89d30fcec8c6f939dffab7d244b41da21097ab5d
Author: github-actions[bot] <gi...@users.noreply.github.com>
AuthorDate: Thu Mar 12 09:57:05 2026 +0000
Publish built docs triggered by d7c6e8fe80f2ebc31df163926b9361a78fdae071
---
_sources/autoapi/datafusion/index.rst.txt | 466 ++++++++++++++
autoapi/datafusion/index.html | 835 ++++++++++++++++++++++++-
genindex.html | 188 +++++-
objects.inv | Bin 9249 -> 9481 bytes
searchindex.js | 2 +-
user-guide/common-operations/aggregations.html | 38 +-
user-guide/common-operations/basic-info.html | 34 +-
user-guide/common-operations/functions.html | 20 +-
user-guide/introduction.html | 2 +-
9 files changed, 1505 insertions(+), 80 deletions(-)
diff --git a/_sources/autoapi/datafusion/index.rst.txt b/_sources/autoapi/datafusion/index.rst.txt
index a97cdf7d..24fecff4 100644
--- a/_sources/autoapi/datafusion/index.rst.txt
+++ b/_sources/autoapi/datafusion/index.rst.txt
@@ -44,6 +44,10 @@ Attributes
datafusion.DFSchema
datafusion.col
datafusion.column
+ datafusion.udaf
+ datafusion.udf
+ datafusion.udtf
+ datafusion.udwf
Classes
@@ -51,6 +55,8 @@ Classes
.. autoapisummary::
+ datafusion.Accumulator
+ datafusion.AggregateUDF
datafusion.Catalog
datafusion.CsvReadOptions
datafusion.DataFrameWriteOptions
@@ -65,9 +71,12 @@ Classes
datafusion.RecordBatchStream
datafusion.RuntimeEnvBuilder
datafusion.SQLOptions
+ datafusion.ScalarUDF
datafusion.SessionConfig
datafusion.Table
+ datafusion.TableFunction
datafusion.WindowFrame
+ datafusion.WindowUDF
Functions
@@ -87,6 +96,179 @@ Functions
Package Contents
----------------
+.. py:class:: Accumulator
+
+ Defines how an :py:class:`AggregateUDF` accumulates values.
+
+
+ .. py:method:: evaluate() -> pyarrow.Scalar
+ :abstractmethod:
+
+
+ Return the resultant value.
+
+ While this function template expects a PyArrow Scalar value return type,
+ you can return any value that can be converted into a Scalar. This
+ includes basic Python data types such as integers and strings. In
+ addition to primitive types, we currently support PyArrow, nanoarrow,
+ and arro3 objects in addition to primitive data types. Other objects
+ that support the Arrow FFI standard will be given a "best attempt" at
+ conversion to scalar objects.
+
+
+
+ .. py:method:: merge(states: list[pyarrow.Array]) -> None
+ :abstractmethod:
+
+
+ Merge a set of states.
+
+
+
+ .. py:method:: state() -> list[pyarrow.Scalar]
+ :abstractmethod:
+
+
+ Return the current state.
+
+ While this function template expects PyArrow Scalar values return type,
+ you can return any value that can be converted into a Scalar. This
+ includes basic Python data types such as integers and strings. In
+ addition to primitive types, we currently support PyArrow, nanoarrow,
+ and arro3 objects in addition to primitive data types. Other objects
+ that support the Arrow FFI standard will be given a "best attempt" at
+ conversion to scalar objects.
+
+
+
+ .. py:method:: update(*values: pyarrow.Array) -> None
+ :abstractmethod:
+
+
+ Evaluate an array of values and update state.
+
+
+
+.. py:class:: AggregateUDF(name: str, accumulator: collections.abc.Callable[[], Accumulator], input_types: list[pyarrow.DataType], return_type: pyarrow.DataType, state_type: list[pyarrow.DataType], volatility: Volatility | str)
+ AggregateUDF(name: str, accumulator: AggregateUDFExportable, input_types: None = ..., return_type: None = ..., state_type: None = ..., volatility: None = ...)
+
+ Class for performing scalar user-defined functions (UDF).
+
+ Aggregate UDFs operate on a group of rows and return a single value. See
+ also :py:class:`ScalarUDF` for operating on a row by row basis.
+
+ Instantiate a user-defined aggregate function (UDAF).
+
+ See :py:func:`udaf` for a convenience function and argument
+ descriptions.
+
+
+ .. py:method:: __call__(*args: datafusion.expr.Expr) -> datafusion.expr.Expr
+
+ Execute the UDAF.
+
+ This function is not typically called by an end user. These calls will
+ occur during the evaluation of the dataframe.
+
+
+
+ .. py:method:: __repr__() -> str
+
+ Print a string representation of the Aggregate UDF.
+
+
+
+ .. py:method:: from_pycapsule(func: AggregateUDFExportable | _typeshed.CapsuleType) -> AggregateUDF
+ :staticmethod:
+
+
+ Create an Aggregate UDF from AggregateUDF PyCapsule object.
+
+ This function will instantiate a Aggregate UDF that uses a DataFusion
+ AggregateUDF that is exported via the FFI bindings.
+
+
+
+ .. py:method:: udaf(input_types: pyarrow.DataType | list[pyarrow.DataType], return_type: pyarrow.DataType, state_type: list[pyarrow.DataType], volatility: Volatility | str, name: str | None = None) -> collections.abc.Callable[Ellipsis, AggregateUDF]
+ udaf(accum: collections.abc.Callable[[], Accumulator], input_types: pyarrow.DataType | list[pyarrow.DataType], return_type: pyarrow.DataType, state_type: list[pyarrow.DataType], volatility: Volatility | str, name: str | None = None) -> AggregateUDF
+ udaf(accum: AggregateUDFExportable) -> AggregateUDF
+ udaf(accum: _typeshed.CapsuleType) -> AggregateUDF
+ :staticmethod:
+
+
+ Create a new User-Defined Aggregate Function (UDAF).
+
+ This class allows you to define an aggregate function that can be used in
+ data aggregation or window function calls.
+
+ Usage:
+ - As a function: ``udaf(accum, input_types, return_type, state_type, volatility, name)``.
+ - As a decorator: ``@udaf(input_types, return_type, state_type, volatility, name)``.
+ When using ``udaf`` as a decorator, do not pass ``accum`` explicitly.
+
+ Function example:
+
+ If your :py:class:`Accumulator` can be instantiated with no arguments, you
+ can simply pass it's type as `accum`. If you need to pass additional
+ arguments to it's constructor, you can define a lambda or a factory method.
+ During runtime the :py:class:`Accumulator` will be constructed for every
+ instance in which this UDAF is used. The following examples are all valid::
+
+ import pyarrow as pa
+ import pyarrow.compute as pc
+
+ class Summarize(Accumulator):
+ def __init__(self, bias: float = 0.0):
+ self._sum = pa.scalar(bias)
+
+ def state(self) -> list[pa.Scalar]:
+ return [self._sum]
+
+ def update(self, values: pa.Array) -> None:
+ self._sum = pa.scalar(self._sum.as_py() + pc.sum(values).as_py())
+
+ def merge(self, states: list[pa.Array]) -> None:
+ self._sum = pa.scalar(self._sum.as_py() + pc.sum(states[0]).as_py())
+
+ def evaluate(self) -> pa.Scalar:
+ return self._sum
+
+ def sum_bias_10() -> Summarize:
+ return Summarize(10.0)
+
+ udaf1 = udaf(Summarize, pa.float64(), pa.float64(), [pa.float64()],
+ "immutable")
+ udaf2 = udaf(sum_bias_10, pa.float64(), pa.float64(), [pa.float64()],
+ "immutable")
+ udaf3 = udaf(lambda: Summarize(20.0), pa.float64(), pa.float64(),
+ [pa.float64()], "immutable")
+
+ Decorator example:::
+
+ @udaf(pa.float64(), pa.float64(), [pa.float64()], "immutable")
+ def udf4() -> Summarize:
+ return Summarize(10.0)
+
+ :param accum: The accumulator python function. Only needed when calling as a
+ function. Skip this argument when using ``udaf`` as a decorator.
+ If you have a Rust backed AggregateUDF within a PyCapsule, you can
+ pass this parameter and ignore the rest. They will be determined
+ directly from the underlying function. See the online documentation
+ for more information.
+ :param input_types: The data types of the arguments to ``accum``.
+ :param return_type: The data type of the return value.
+ :param state_type: The data types of the intermediate accumulation.
+ :param volatility: See :py:class:`Volatility` for allowed values.
+ :param name: A descriptive name for the function.
+
+ :returns: A user-defined aggregate function, which can be used in either data
+ aggregation or window function calls.
+
+
+
+ .. py:attribute:: _udaf
+
+
.. py:class:: Catalog(catalog: datafusion._internal.catalog.RawCatalog)
DataFusion data catalog.
@@ -1903,6 +2085,101 @@ Package Contents
.. py:attribute:: options_internal
+.. py:class:: ScalarUDF(name: str, func: collections.abc.Callable[Ellipsis, _R], input_fields: list[pyarrow.Field], return_field: _R, volatility: Volatility | str)
+
+ Class for performing scalar user-defined functions (UDF).
+
+ Scalar UDFs operate on a row by row basis. See also :py:class:`AggregateUDF` for
+ operating on a group of rows.
+
+ Instantiate a scalar user-defined function (UDF).
+
+ See helper method :py:func:`udf` for argument details.
+
+
+ .. py:method:: __call__(*args: datafusion.expr.Expr) -> datafusion.expr.Expr
+
+ Execute the UDF.
+
+ This function is not typically called by an end user. These calls will
+ occur during the evaluation of the dataframe.
+
+
+
+ .. py:method:: __repr__() -> str
+
+ Print a string representation of the Scalar UDF.
+
+
+
+ .. py:method:: from_pycapsule(func: ScalarUDFExportable) -> ScalarUDF
+ :staticmethod:
+
+
+ Create a Scalar UDF from ScalarUDF PyCapsule object.
+
+ This function will instantiate a Scalar UDF that uses a DataFusion
+ ScalarUDF that is exported via the FFI bindings.
+
+
+
+ .. py:method:: udf(input_fields: collections.abc.Sequence[pyarrow.DataType | pyarrow.Field] | pyarrow.DataType | pyarrow.Field, return_field: pyarrow.DataType | pyarrow.Field, volatility: Volatility | str, name: str | None = None) -> collections.abc.Callable[Ellipsis, ScalarUDF]
+ udf(func: collections.abc.Callable[Ellipsis, _R], input_fields: collections.abc.Sequence[pyarrow.DataType | pyarrow.Field] | pyarrow.DataType | pyarrow.Field, return_field: pyarrow.DataType | pyarrow.Field, volatility: Volatility | str, name: str | None = None) -> ScalarUDF
+ udf(func: ScalarUDFExportable) -> ScalarUDF
+ :staticmethod:
+
+
+ Create a new User-Defined Function (UDF).
+
+ This class can be used both as either a function or a decorator.
+
+ Usage:
+ - As a function: ``udf(func, input_fields, return_field, volatility, name)``.
+ - As a decorator: ``@udf(input_fields, return_field, volatility, name)``.
+ When used a decorator, do **not** pass ``func`` explicitly.
+
+ In lieu of passing a PyArrow Field, you can pass a DataType for simplicity.
+ When you do so, it will be assumed that the nullability of the inputs and
+ output are True and that they have no metadata.
+
+ :param func: Only needed when calling as a function.
+ Skip this argument when using `udf` as a decorator. If you have a Rust
+ backed ScalarUDF within a PyCapsule, you can pass this parameter
+ and ignore the rest. They will be determined directly from the
+ underlying function. See the online documentation for more information.
+ :type func: Callable, optional
+ :param input_fields: The data types or Fields
+ of the arguments to ``func``. This list must be of the same length
+ as the number of arguments.
+ :type input_fields: list[pa.Field | pa.DataType]
+ :param return_field: The field of the return value from the function.
+ :type return_field: _R
+ :param volatility: See `Volatility` for allowed values.
+ :type volatility: Volatility | str
+ :param name: A descriptive name for the function.
+ :type name: Optional[str]
+
+ :returns: A user-defined function that can be used in SQL expressions,
+ data aggregation, or window function calls.
+
+ Example: Using ``udf`` as a function::
+
+ def double_func(x):
+ return x * 2
+ double_udf = udf(double_func, [pa.int32()], pa.int32(),
+ "volatile", "double_it")
+
+ Example: Using ``udf`` as a decorator::
+
+ @udf([pa.int32()], pa.int32(), "volatile", "double_it")
+ def double_udf(x):
+ return x * 2
+
+
+
+ .. py:attribute:: _udf
+
+
.. py:class:: SessionConfig(config_options: dict[str, str] | None = None)
Session configuration options.
@@ -2111,6 +2388,59 @@ Package Contents
Returns the schema associated with this table.
+.. py:class:: TableFunction(name: str, func: collections.abc.Callable[[], any], ctx: datafusion.SessionContext | None = None)
+
+ Class for performing user-defined table functions (UDTF).
+
+ Table functions generate new table providers based on the
+ input expressions.
+
+ Instantiate a user-defined table function (UDTF).
+
+ See :py:func:`udtf` for a convenience function and argument
+ descriptions.
+
+
+ .. py:method:: __call__(*args: datafusion.expr.Expr) -> Any
+
+ Execute the UDTF and return a table provider.
+
+
+
+ .. py:method:: __repr__() -> str
+
+ User printable representation.
+
+
+
+ .. py:method:: _create_table_udf(func: collections.abc.Callable[Ellipsis, Any], name: str) -> TableFunction
+ :staticmethod:
+
+
+ Create a TableFunction instance from function arguments.
+
+
+
+ .. py:method:: _create_table_udf_decorator(name: str | None = None) -> collections.abc.Callable[[collections.abc.Callable[[], WindowEvaluator]], collections.abc.Callable[Ellipsis, datafusion.expr.Expr]]
+ :staticmethod:
+
+
+ Create a decorator for a WindowUDF.
+
+
+
+ .. py:method:: udtf(name: str) -> collections.abc.Callable[Ellipsis, Any]
+ udtf(func: collections.abc.Callable[[], Any], name: str) -> TableFunction
+ :staticmethod:
+
+
+ Create a new User-Defined Table Function (UDTF).
+
+
+
+ .. py:attribute:: _udtf
+
+
.. py:class:: WindowFrame(units: str, start_bound: Any | None, end_bound: Any | None)
Defines a window frame for performing window operations.
@@ -2153,6 +2483,134 @@ Package Contents
.. py:attribute:: window_frame
+.. py:class:: WindowUDF(name: str, func: collections.abc.Callable[[], WindowEvaluator], input_types: list[pyarrow.DataType], return_type: pyarrow.DataType, volatility: Volatility | str)
+
+ Class for performing window user-defined functions (UDF).
+
+ Window UDFs operate on a partition of rows. See
+ also :py:class:`ScalarUDF` for operating on a row by row basis.
+
+ Instantiate a user-defined window function (UDWF).
+
+ See :py:func:`udwf` for a convenience function and argument
+ descriptions.
+
+
+ .. py:method:: __call__(*args: datafusion.expr.Expr) -> datafusion.expr.Expr
+
+ Execute the UDWF.
+
+ This function is not typically called by an end user. These calls will
+ occur during the evaluation of the dataframe.
+
+
+
+ .. py:method:: __repr__() -> str
+
+ Print a string representation of the Window UDF.
+
+
+
+ .. py:method:: _create_window_udf(func: collections.abc.Callable[[], WindowEvaluator], input_types: pyarrow.DataType | list[pyarrow.DataType], return_type: pyarrow.DataType, volatility: Volatility | str, name: str | None = None) -> WindowUDF
+ :staticmethod:
+
+
+ Create a WindowUDF instance from function arguments.
+
+
+
+ .. py:method:: _create_window_udf_decorator(input_types: pyarrow.DataType | list[pyarrow.DataType], return_type: pyarrow.DataType, volatility: Volatility | str, name: str | None = None) -> collections.abc.Callable[[collections.abc.Callable[[], WindowEvaluator]], collections.abc.Callable[Ellipsis, datafusion.expr.Expr]]
+ :staticmethod:
+
+
+ Create a decorator for a WindowUDF.
+
+
+
+ .. py:method:: _get_default_name(func: collections.abc.Callable) -> str
+ :staticmethod:
+
+
+ Get the default name for a function based on its attributes.
+
+
+
+ .. py:method:: _normalize_input_types(input_types: pyarrow.DataType | list[pyarrow.DataType]) -> list[pyarrow.DataType]
+ :staticmethod:
+
+
+ Convert a single DataType to a list if needed.
+
+
+
+ .. py:method:: from_pycapsule(func: WindowUDFExportable) -> WindowUDF
+ :staticmethod:
+
+
+ Create a Window UDF from WindowUDF PyCapsule object.
+
+ This function will instantiate a Window UDF that uses a DataFusion
+ WindowUDF that is exported via the FFI bindings.
+
+
+
+ .. py:method:: udwf(input_types: pyarrow.DataType | list[pyarrow.DataType], return_type: pyarrow.DataType, volatility: Volatility | str, name: str | None = None) -> collections.abc.Callable[Ellipsis, WindowUDF]
+ udwf(func: collections.abc.Callable[[], WindowEvaluator], input_types: pyarrow.DataType | list[pyarrow.DataType], return_type: pyarrow.DataType, volatility: Volatility | str, name: str | None = None) -> WindowUDF
+ :staticmethod:
+
+
+ Create a new User-Defined Window Function (UDWF).
+
+ This class can be used both as either a function or a decorator.
+
+ Usage:
+ - As a function: ``udwf(func, input_types, return_type, volatility, name)``.
+ - As a decorator: ``@udwf(input_types, return_type, volatility, name)``.
+ When using ``udwf`` as a decorator, do not pass ``func`` explicitly.
+
+ Function example::
+
+ import pyarrow as pa
+
+ class BiasedNumbers(WindowEvaluator):
+ def __init__(self, start: int = 0) -> None:
+ self.start = start
+
+ def evaluate_all(self, values: list[pa.Array],
+ num_rows: int) -> pa.Array:
+ return pa.array([self.start + i for i in range(num_rows)])
+
+ def bias_10() -> BiasedNumbers:
+ return BiasedNumbers(10)
+
+ udwf1 = udwf(BiasedNumbers, pa.int64(), pa.int64(), "immutable")
+ udwf2 = udwf(bias_10, pa.int64(), pa.int64(), "immutable")
+ udwf3 = udwf(lambda: BiasedNumbers(20), pa.int64(), pa.int64(), "immutable")
+
+
+ Decorator example::
+
+ @udwf(pa.int64(), pa.int64(), "immutable")
+ def biased_numbers() -> BiasedNumbers:
+ return BiasedNumbers(10)
+
+ :param func: Only needed when calling as a function. Skip this argument when
+ using ``udwf`` as a decorator. If you have a Rust backed WindowUDF
+ within a PyCapsule, you can pass this parameter and ignore the rest.
+ They will be determined directly from the underlying function. See
+ the online documentation for more information.
+ :param input_types: The data types of the arguments.
+ :param return_type: The data type of the return value.
+ :param volatility: See :py:class:`Volatility` for allowed values.
+ :param name: A descriptive name for the function.
+
+ :returns: A user-defined window function that can be used in window function calls.
+
+
+
+ .. py:attribute:: _udwf
+
+
.. py:function:: configure_formatter(**kwargs: Any) -> None
Configure the global DataFrame HTML formatter.
@@ -2282,3 +2740,11 @@ Package Contents
.. py:data:: column
:type: Col
+.. py:data:: udaf
+
+.. py:data:: udf
+
+.. py:data:: udtf
+
+.. py:data:: udwf
+
diff --git a/autoapi/datafusion/index.html b/autoapi/datafusion/index.html
index 92df89d6..49b2d73f 100644
--- a/autoapi/datafusion/index.html
+++ b/autoapi/datafusion/index.html
@@ -442,6 +442,109 @@
Package Contents
</a>
<ul class="visible nav section-nav flex-column">
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.Accumulator">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ Accumulator
+ </span>
+ </code>
+ </a>
+ <ul class="nav section-nav flex-column">
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.Accumulator.evaluate">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ Accumulator.evaluate()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.Accumulator.merge">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ Accumulator.merge()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.Accumulator.state">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ Accumulator.state()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.Accumulator.update">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ Accumulator.update()
+ </span>
+ </code>
+ </a>
+ </li>
+ </ul>
+ </li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.AggregateUDF">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ AggregateUDF
+ </span>
+ </code>
+ </a>
+ <ul class="nav section-nav flex-column">
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.AggregateUDF.__call__">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ AggregateUDF.__call__()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.AggregateUDF.__repr__">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ AggregateUDF.__repr__()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.AggregateUDF.from_pycapsule">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ AggregateUDF.from_pycapsule()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.AggregateUDF.udaf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ AggregateUDF.udaf()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.AggregateUDF._udaf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ AggregateUDF._udaf
+ </span>
+ </code>
+ </a>
+ </li>
+ </ul>
+ </li>
<li class="toc-h3 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.Catalog">
<code class="docutils literal notranslate">
@@ -2682,6 +2785,62 @@
</li>
</ul>
</li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.ScalarUDF">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ ScalarUDF
+ </span>
+ </code>
+ </a>
+ <ul class="nav section-nav flex-column">
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.ScalarUDF.__call__">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ ScalarUDF.__call__()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.ScalarUDF.__repr__">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ ScalarUDF.__repr__()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.ScalarUDF.from_pycapsule">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ ScalarUDF.from_pycapsule()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.ScalarUDF.udf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ ScalarUDF.udf()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.ScalarUDF._udf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ ScalarUDF._udf
+ </span>
+ </code>
+ </a>
+ </li>
+ </ul>
+ </li>
<li class="toc-h3 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.SessionConfig">
<code class="docutils literal notranslate">
@@ -2884,6 +3043,71 @@
</li>
</ul>
</li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.TableFunction">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ TableFunction
+ </span>
+ </code>
+ </a>
+ <ul class="nav section-nav flex-column">
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.TableFunction.__call__">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ TableFunction.__call__()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.TableFunction.__repr__">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ TableFunction.__repr__()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.TableFunction._create_table_udf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ TableFunction._create_table_udf()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.TableFunction._create_table_udf_decorator">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ TableFunction._create_table_udf_decorator()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.TableFunction.udtf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ TableFunction.udtf()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.TableFunction._udtf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ TableFunction._udtf
+ </span>
+ </code>
+ </a>
+ </li>
+ </ul>
+ </li>
<li class="toc-h3 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.WindowFrame">
<code class="docutils literal notranslate">
@@ -2940,6 +3164,98 @@
</li>
</ul>
</li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.WindowUDF">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ WindowUDF
+ </span>
+ </code>
+ </a>
+ <ul class="nav section-nav flex-column">
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.WindowUDF.__call__">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ WindowUDF.__call__()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.WindowUDF.__repr__">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ WindowUDF.__repr__()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.WindowUDF._create_window_udf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ WindowUDF._create_window_udf()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.WindowUDF._create_window_udf_decorator">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ WindowUDF._create_window_udf_decorator()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.WindowUDF._get_default_name">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ WindowUDF._get_default_name()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.WindowUDF._normalize_input_types">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ WindowUDF._normalize_input_types()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.WindowUDF.from_pycapsule">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ WindowUDF.from_pycapsule()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.WindowUDF.udwf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ WindowUDF.udwf()
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h4 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.WindowUDF._udwf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ WindowUDF._udwf
+ </span>
+ </code>
+ </a>
+ </li>
+ </ul>
+ </li>
<li class="toc-h3 nav-item toc-entry">
<a class="reference internal nav-link" href="#datafusion.configure_formatter">
<code class="docutils literal notranslate">
@@ -3030,6 +3346,42 @@
</code>
</a>
</li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.udaf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ udaf
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.udf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ udf
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.udtf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ udtf
+ </span>
+ </code>
+ </a>
+ </li>
+ <li class="toc-h3 nav-item toc-entry">
+ <a class="reference internal nav-link" href="#datafusion.udwf">
+ <code class="docutils literal notranslate">
+ <span class="pre">
+ udwf
+ </span>
+ </code>
+ </a>
+ </li>
</ul>
</li>
</ul>
@@ -3094,6 +3446,18 @@ See <a class="reference external" href="https://datafusion.apache.org/python">ht
<tr class="row-odd"><td><p><a class="reference internal" href="#datafusion.column" title="datafusion.column"><code class="xref py py-obj docutils literal notranslate"><span class="pre">column</span></code></a></p></td>
<td><p></p></td>
</tr>
+<tr class="row-even"><td><p><a class="reference internal" href="#datafusion.udaf" title="datafusion.udaf"><code class="xref py py-obj docutils literal notranslate"><span class="pre">udaf</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p><a class="reference internal" href="#datafusion.udf" title="datafusion.udf"><code class="xref py py-obj docutils literal notranslate"><span class="pre">udf</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-even"><td><p><a class="reference internal" href="#datafusion.udtf" title="datafusion.udtf"><code class="xref py py-obj docutils literal notranslate"><span class="pre">udtf</span></code></a></p></td>
+<td><p></p></td>
+</tr>
+<tr class="row-odd"><td><p><a class="reference internal" href="#datafusion.udwf" title="datafusion.udwf"><code class="xref py py-obj docutils literal notranslate"><span class="pre">udwf</span></code></a></p></td>
+<td><p></p></td>
+</tr>
</tbody>
</table>
</section>
@@ -3101,6 +3465,12 @@ See <a class="reference external" href="https://datafusion.apache.org/python">ht
<h2>Classes<a class="headerlink" href="#classes" title="Link to this heading">¶</a></h2>
<table class="autosummary longtable table autosummary">
<tbody>
+<tr class="row-odd"><td><p><a class="reference internal" href="#datafusion.Accumulator" title="datafusion.Accumulator"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Accumulator</span></code></a></p></td>
+<td><p>Defines how an <a class="reference internal" href="#datafusion.AggregateUDF" title="datafusion.AggregateUDF"><code class="xref py py-class docutils literal notranslate"><span class="pre">AggregateUDF</span></code></a> accumulates values.</p></td>
+</tr>
+<tr class="row-even"><td><p><a class="reference internal" href="#datafusion.AggregateUDF" title="datafusion.AggregateUDF"><code class="xref py py-obj docutils literal notranslate"><span class="pre">AggregateUDF</span></code></a></p></td>
+<td><p>Class for performing scalar user-defined functions (UDF).</p></td>
+</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#datafusion.Catalog" title="datafusion.Catalog"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Catalog</span></code></a></p></td>
<td><p>DataFusion data catalog.</p></td>
</tr>
@@ -3143,15 +3513,24 @@ See <a class="reference external" href="https://datafusion.apache.org/python">ht
<tr class="row-even"><td><p><a class="reference internal" href="#datafusion.SQLOptions" title="datafusion.SQLOptions"><code class="xref py py-obj docutils literal notranslate"><span class="pre">SQLOptions</span></code></a></p></td>
<td><p>Options to be used when performing SQL queries.</p></td>
</tr>
-<tr class="row-odd"><td><p><a class="reference internal" href="#datafusion.SessionConfig" title="datafusion.SessionConfig"><code class="xref py py-obj docutils literal notranslate"><span class="pre">SessionConfig</span></code></a></p></td>
+<tr class="row-odd"><td><p><a class="reference internal" href="#datafusion.ScalarUDF" title="datafusion.ScalarUDF"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ScalarUDF</span></code></a></p></td>
+<td><p>Class for performing scalar user-defined functions (UDF).</p></td>
+</tr>
+<tr class="row-even"><td><p><a class="reference internal" href="#datafusion.SessionConfig" title="datafusion.SessionConfig"><code class="xref py py-obj docutils literal notranslate"><span class="pre">SessionConfig</span></code></a></p></td>
<td><p>Session configuration options.</p></td>
</tr>
-<tr class="row-even"><td><p><a class="reference internal" href="#datafusion.Table" title="datafusion.Table"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Table</span></code></a></p></td>
+<tr class="row-odd"><td><p><a class="reference internal" href="#datafusion.Table" title="datafusion.Table"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Table</span></code></a></p></td>
<td><p>A DataFusion table.</p></td>
</tr>
+<tr class="row-even"><td><p><a class="reference internal" href="#datafusion.TableFunction" title="datafusion.TableFunction"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TableFunction</span></code></a></p></td>
+<td><p>Class for performing user-defined table functions (UDTF).</p></td>
+</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#datafusion.WindowFrame" title="datafusion.WindowFrame"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WindowFrame</span></code></a></p></td>
<td><p>Defines a window frame for performing window operations.</p></td>
</tr>
+<tr class="row-even"><td><p><a class="reference internal" href="#datafusion.WindowUDF" title="datafusion.WindowUDF"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WindowUDF</span></code></a></p></td>
+<td><p>Class for performing window user-defined functions (UDF).</p></td>
+</tr>
</tbody>
</table>
</section>
@@ -3185,6 +3564,175 @@ See <a class="reference external" href="https://datafusion.apache.org/python">ht
</section>
<section id="package-contents">
<h2>Package Contents<a class="headerlink" href="#package-contents" title="Link to this heading">¶</a></h2>
+<dl class="py class">
+<dt class="sig sig-object py" id="datafusion.Accumulator">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">Accumulator</span></span><a class="headerlink" href="#datafusion.Accumulator" title="Link to this definition">¶</a></dt>
+<dd><p>Defines how an <a class="reference internal" href="#datafusion.AggregateUDF" title="datafusion.AggregateUDF"><code class="xref py py-class docutils literal notranslate"><span class="pre">AggregateUDF</span></code></a> accumulates values.</p>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.Accumulator.evaluate">
+<em class="property"><span class="pre">abstract</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">evaluate</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">pyarrow.Scalar</span></span></span><a class="headerlink" href="#datafusion.Accumulator.evaluate" title="Link to this definition">¶</a></dt>
+<dd><p>Return the resultant value.</p>
+<p>While this function template expects a PyArrow Scalar value return type,
+you can return any value that can be converted into a Scalar. This
+includes basic Python data types such as integers and strings. In
+addition to primitive types, we currently support PyArrow, nanoarrow,
+and arro3 objects in addition to primitive data types. Other objects
+that support the Arrow FFI standard will be given a “best attempt” at
+conversion to scalar objects.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.Accumulator.merge">
+<em class="property"><span class="pre">abstract</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">merge</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">states</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">pyarrow.Array</span><span class="p"><span class [...]
+<dd><p>Merge a set of states.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.Accumulator.state">
+<em class="property"><span class="pre">abstract</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">state</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">pyarrow.Scalar</span><span class="p"><span class="pre">]</span></span></sp [...]
+<dd><p>Return the current state.</p>
+<p>While this function template expects PyArrow Scalar values return type,
+you can return any value that can be converted into a Scalar. This
+includes basic Python data types such as integers and strings. In
+addition to primitive types, we currently support PyArrow, nanoarrow,
+and arro3 objects in addition to primitive data types. Other objects
+that support the Arrow FFI standard will be given a “best attempt” at
+conversion to scalar objects.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.Accumulator.update">
+<em class="property"><span class="pre">abstract</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">values</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">pyarrow.Array</span></span></em><span class="sig-paren">)</span> <span clas [...]
+<dd><p>Evaluate an array of values and update state.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="py class">
+<dt class="sig sig-object py" id="datafusion.AggregateUDF">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">AggregateUDF</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-p [...]
+<dt class="sig sig-object py">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">AggregateUDF</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-p [...]
+<dd><p>Class for performing scalar user-defined functions (UDF).</p>
+<p>Aggregate UDFs operate on a group of rows and return a single value. See
+also <a class="reference internal" href="#datafusion.ScalarUDF" title="datafusion.ScalarUDF"><code class="xref py py-class docutils literal notranslate"><span class="pre">ScalarUDF</span></code></a> for operating on a row by row basis.</p>
+<p>Instantiate a user-defined aggregate function (UDAF).</p>
+<p>See <a class="reference internal" href="#datafusion.udaf" title="datafusion.udaf"><code class="xref py py-func docutils literal notranslate"><span class="pre">udaf()</span></code></a> for a convenience function and argument
+descriptions.</p>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.AggregateUDF.__call__">
+<span class="sig-name descname"><span class="pre">__call__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="expr/index.html#datafusion.expr.Expr" title="datafusion.expr.Expr"><span class="pre">datafusion.expr.Expr</span></a></span></em><span class= [...]
+<dd><p>Execute the UDAF.</p>
+<p>This function is not typically called by an end user. These calls will
+occur during the evaluation of the dataframe.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.AggregateUDF.__repr__">
+<span class="sig-name descname"><span class="pre">__repr__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#datafusion.AggregateUDF.__repr__" title="Link to this definition">¶</a></dt>
+<dd><p>Print a string representation of the Aggregate UDF.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.AggregateUDF.from_pycapsule">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_pycapsule</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="user_defined/index.html#datafusion.user_defined.AggregateUDFExportable" title="datafusion.user_defined [...]
+<dd><p>Create an Aggregate UDF from AggregateUDF PyCapsule object.</p>
+<p>This function will instantiate a Aggregate UDF that uses a DataFusion
+AggregateUDF that is exported via the FFI bindings.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.AggregateUDF.udaf">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">udaf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">input_types</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">pyarrow.DataType</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><sp [...]
+<dt class="sig sig-object py">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">udaf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">accum</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">collections.abc.Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span> [...]
+<dt class="sig sig-object py">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">udaf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">accum</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="user_defined/index.html#datafusion.user_defined.AggregateUDFExportable" title="datafusion.user_defined.Aggregat [...]
+<dt class="sig sig-object py">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">udaf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">accum</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">_typeshed.CapsuleType</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">& [...]
+<dd><p>Create a new User-Defined Aggregate Function (UDAF).</p>
+<p>This class allows you to define an aggregate function that can be used in
+data aggregation or window function calls.</p>
+<dl class="simple">
+<dt>Usage:</dt><dd><ul class="simple">
+<li><p>As a function: <code class="docutils literal notranslate"><span class="pre">udaf(accum,</span> <span class="pre">input_types,</span> <span class="pre">return_type,</span> <span class="pre">state_type,</span> <span class="pre">volatility,</span> <span class="pre">name)</span></code>.</p></li>
+<li><p>As a decorator: <code class="docutils literal notranslate"><span class="pre">@udaf(input_types,</span> <span class="pre">return_type,</span> <span class="pre">state_type,</span> <span class="pre">volatility,</span> <span class="pre">name)</span></code>.
+When using <code class="docutils literal notranslate"><span class="pre">udaf</span></code> as a decorator, do not pass <code class="docutils literal notranslate"><span class="pre">accum</span></code> explicitly.</p></li>
+</ul>
+</dd>
+</dl>
+<p>Function example:</p>
+<p>If your <a class="reference internal" href="#datafusion.Accumulator" title="datafusion.Accumulator"><code class="xref py py-class docutils literal notranslate"><span class="pre">Accumulator</span></code></a> can be instantiated with no arguments, you
+can simply pass it’s type as <cite>accum</cite>. If you need to pass additional
+arguments to it’s constructor, you can define a lambda or a factory method.
+During runtime the <a class="reference internal" href="#datafusion.Accumulator" title="datafusion.Accumulator"><code class="xref py py-class docutils literal notranslate"><span class="pre">Accumulator</span></code></a> will be constructed for every
+instance in which this UDAF is used. The following examples are all valid:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">pyarrow</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">pa</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">pyarrow.compute</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">pc</span>
+
+<span class="k">class</span><span class="w"> </span><span class="nc">Summarize</span><span class="p">(</span><span class="n">Accumulator</span><span class="p">):</span>
+ <span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">bias</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mf">0.0</span><span class="p">):</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">_sum</span> <span class="o">=</span> <span class="n">pa</span><span class="o">.</span><span class="n">scalar</span><span class="p">(</span><span class="n">bias</span><span class="p">)</span>
+
+ <span class="k">def</span><span class="w"> </span><span class="nf">state</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">list</span><span class="p">[</span><span class="n">pa</span><span class="o">.</span><span class="n">Scalar</span><span class="p">]:</span>
+ <span class="k">return</span> <span class="p">[</span><span class="bp">self</span><span class="o">.</span><span class="n">_sum</span><span class="p">]</span>
+
+ <span class="k">def</span><span class="w"> </span><span class="nf">update</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">values</span><span class="p">:</span> <span class="n">pa</span><span class="o">.</span><span class="n">Array</span><span class="p">)</span> <span class="o">-></span> <span class="kc">None</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">_sum</span> <span class="o">=</span> <span class="n">pa</span><span class="o">.</span><span class="n">scalar</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_sum</span><span class="o">.</span><span class="n">as_py</span><span class="p">()</span> <span class="o">+</span> <span class="n">pc</span><span class="o">.</span><span class="n">sum</span><span class="p">(</s [...]
+
+ <span class="k">def</span><span class="w"> </span><span class="nf">merge</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">states</span><span class="p">:</span> <span class="nb">list</span><span class="p">[</span><span class="n">pa</span><span class="o">.</span><span class="n">Array</span><span class="p">])</span> <span class="o">-></span> <span class="kc">None</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">_sum</span> <span class="o">=</span> <span class="n">pa</span><span class="o">.</span><span class="n">scalar</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_sum</span><span class="o">.</span><span class="n">as_py</span><span class="p">()</span> <span class="o">+</span> <span class="n">pc</span><span class="o">.</span><span class="n">sum</span><span class="p">(</s [...]
+
+ <span class="k">def</span><span class="w"> </span><span class="nf">evaluate</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">pa</span><span class="o">.</span><span class="n">Scalar</span><span class="p">:</span>
+ <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_sum</span>
+
+<span class="k">def</span><span class="w"> </span><span class="nf">sum_bias_10</span><span class="p">()</span> <span class="o">-></span> <span class="n">Summarize</span><span class="p">:</span>
+ <span class="k">return</span> <span class="n">Summarize</span><span class="p">(</span><span class="mf">10.0</span><span class="p">)</span>
+
+<span class="n">udaf1</span> <span class="o">=</span> <span class="n">udaf</span><span class="p">(</span><span class="n">Summarize</span><span class="p">,</span> <span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class="p">(),</span> <span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class="p">(),</span> <span class="p">[</span><span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class="p" [...]
+ <span class="s2">"immutable"</span><span class="p">)</span>
+<span class="n">udaf2</span> <span class="o">=</span> <span class="n">udaf</span><span class="p">(</span><span class="n">sum_bias_10</span><span class="p">,</span> <span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class="p">(),</span> <span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class="p">(),</span> <span class="p">[</span><span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class=" [...]
+ <span class="s2">"immutable"</span><span class="p">)</span>
+<span class="n">udaf3</span> <span class="o">=</span> <span class="n">udaf</span><span class="p">(</span><span class="k">lambda</span><span class="p">:</span> <span class="n">Summarize</span><span class="p">(</span><span class="mf">20.0</span><span class="p">),</span> <span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class="p">(),</span> <span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class="p">(),</span>
+ <span class="p">[</span><span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class="p">()],</span> <span class="s2">"immutable"</span><span class="p">)</span>
+</pre></div>
+</div>
+<p>Decorator example::</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="nd">@udaf</span><span class="p">(</span><span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class="p">(),</span> <span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class="p">(),</span> <span class="p">[</span><span class="n">pa</span><span class="o">.</span><span class="n">float64</span><span class="p">()],</span> <span class= [...]
+<span class="k">def</span><span class="w"> </span><span class="nf">udf4</span><span class="p">()</span> <span class="o">-></span> <span class="n">Summarize</span><span class="p">:</span>
+ <span class="k">return</span> <span class="n">Summarize</span><span class="p">(</span><span class="mf">10.0</span><span class="p">)</span>
+</pre></div>
+</div>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>accum</strong> – The accumulator python function. Only needed when calling as a
+function. Skip this argument when using <code class="docutils literal notranslate"><span class="pre">udaf</span></code> as a decorator.
+If you have a Rust backed AggregateUDF within a PyCapsule, you can
+pass this parameter and ignore the rest. They will be determined
+directly from the underlying function. See the online documentation
+for more information.</p></li>
+<li><p><strong>input_types</strong> – The data types of the arguments to <code class="docutils literal notranslate"><span class="pre">accum</span></code>.</p></li>
+<li><p><strong>return_type</strong> – The data type of the return value.</p></li>
+<li><p><strong>state_type</strong> – The data types of the intermediate accumulation.</p></li>
+<li><p><strong>volatility</strong> – See <code class="xref py py-class docutils literal notranslate"><span class="pre">Volatility</span></code> for allowed values.</p></li>
+<li><p><strong>name</strong> – A descriptive name for the function.</p></li>
+</ul>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>A user-defined aggregate function, which can be used in either data
+aggregation or window function calls.</p>
+</dd>
+</dl>
+</dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="datafusion.AggregateUDF._udaf">
+<span class="sig-name descname"><span class="pre">_udaf</span></span><a class="headerlink" href="#datafusion.AggregateUDF._udaf" title="Link to this definition">¶</a></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
<dl class="py class">
<dt class="sig sig-object py" id="datafusion.Catalog">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">Catalog</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">catalog</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">datafusion._internal.catalog.RawCatalog</s [...]
@@ -5053,6 +5601,99 @@ multiple spillable operators that all will spill.</p>
</dd></dl>
+<dl class="py class">
+<dt class="sig sig-object py" id="datafusion.ScalarUDF">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">ScalarUDF</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-para [...]
+<dd><p>Class for performing scalar user-defined functions (UDF).</p>
+<p>Scalar UDFs operate on a row by row basis. See also <a class="reference internal" href="#datafusion.AggregateUDF" title="datafusion.AggregateUDF"><code class="xref py py-class docutils literal notranslate"><span class="pre">AggregateUDF</span></code></a> for
+operating on a group of rows.</p>
+<p>Instantiate a scalar user-defined function (UDF).</p>
+<p>See helper method <a class="reference internal" href="#datafusion.udf" title="datafusion.udf"><code class="xref py py-func docutils literal notranslate"><span class="pre">udf()</span></code></a> for argument details.</p>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.ScalarUDF.__call__">
+<span class="sig-name descname"><span class="pre">__call__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="expr/index.html#datafusion.expr.Expr" title="datafusion.expr.Expr"><span class="pre">datafusion.expr.Expr</span></a></span></em><span class= [...]
+<dd><p>Execute the UDF.</p>
+<p>This function is not typically called by an end user. These calls will
+occur during the evaluation of the dataframe.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.ScalarUDF.__repr__">
+<span class="sig-name descname"><span class="pre">__repr__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#datafusion.ScalarUDF.__repr__" title="Link to this definition">¶</a></dt>
+<dd><p>Print a string representation of the Scalar UDF.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.ScalarUDF.from_pycapsule">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_pycapsule</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="user_defined/index.html#datafusion.user_defined.ScalarUDFExportable" title="datafusion.user_defined.Sc [...]
+<dd><p>Create a Scalar UDF from ScalarUDF PyCapsule object.</p>
+<p>This function will instantiate a Scalar UDF that uses a DataFusion
+ScalarUDF that is exported via the FFI bindings.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.ScalarUDF.udf">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">udf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">input_fields</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">collections.abc.Sequence</span><span class="p"><span class="pre">[</span></span><span class="pre">pyarrow.DataType</span><s [...]
+<dt class="sig sig-object py">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">udf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">collections.abc.Callable</span><span class="p"><span class="pre">[</span></span><span class="pre">Ellipsis</span><span class="p"><s [...]
+<dt class="sig sig-object py">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">udf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="user_defined/index.html#datafusion.user_defined.ScalarUDFExportable" title="datafusion.user_defined.ScalarUDFExpo [...]
+<dd><p>Create a new User-Defined Function (UDF).</p>
+<p>This class can be used both as either a function or a decorator.</p>
+<dl class="simple">
+<dt>Usage:</dt><dd><ul class="simple">
+<li><p>As a function: <code class="docutils literal notranslate"><span class="pre">udf(func,</span> <span class="pre">input_fields,</span> <span class="pre">return_field,</span> <span class="pre">volatility,</span> <span class="pre">name)</span></code>.</p></li>
+<li><p>As a decorator: <code class="docutils literal notranslate"><span class="pre">@udf(input_fields,</span> <span class="pre">return_field,</span> <span class="pre">volatility,</span> <span class="pre">name)</span></code>.
+When used a decorator, do <strong>not</strong> pass <code class="docutils literal notranslate"><span class="pre">func</span></code> explicitly.</p></li>
+</ul>
+</dd>
+</dl>
+<p>In lieu of passing a PyArrow Field, you can pass a DataType for simplicity.
+When you do so, it will be assumed that the nullability of the inputs and
+output are True and that they have no metadata.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>func</strong> (<em>Callable</em><em>, </em><em>optional</em>) – Only needed when calling as a function.
+Skip this argument when using <cite>udf</cite> as a decorator. If you have a Rust
+backed ScalarUDF within a PyCapsule, you can pass this parameter
+and ignore the rest. They will be determined directly from the
+underlying function. See the online documentation for more information.</p></li>
+<li><p><strong>input_fields</strong> (<em>list</em><em>[</em><em>pa.Field</em><em> | </em><em>pa.DataType</em><em>]</em>) – The data types or Fields
+of the arguments to <code class="docutils literal notranslate"><span class="pre">func</span></code>. This list must be of the same length
+as the number of arguments.</p></li>
+<li><p><strong>return_field</strong> (<em>_R</em>) – The field of the return value from the function.</p></li>
+<li><p><strong>volatility</strong> (<a class="reference internal" href="user_defined/index.html#datafusion.user_defined.Volatility" title="datafusion.user_defined.Volatility"><em>Volatility</em></a><em> | </em><em>str</em>) – See <cite>Volatility</cite> for allowed values.</p></li>
+<li><p><strong>name</strong> (<em>Optional</em><em>[</em><em>str</em><em>]</em>) – A descriptive name for the function.</p></li>
+</ul>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>A user-defined function that can be used in SQL expressions,
+data aggregation, or window function calls.</p>
+</dd>
+</dl>
+<p>Example: Using <code class="docutils literal notranslate"><span class="pre">udf</span></code> as a function:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">def</span><span class="w"> </span><span class="nf">double_func</span><span class="p">(</span><span class="n">x</span><span class="p">):</span>
+ <span class="k">return</span> <span class="n">x</span> <span class="o">*</span> <span class="mi">2</span>
+<span class="n">double_udf</span> <span class="o">=</span> <span class="n">udf</span><span class="p">(</span><span class="n">double_func</span><span class="p">,</span> <span class="p">[</span><span class="n">pa</span><span class="o">.</span><span class="n">int32</span><span class="p">()],</span> <span class="n">pa</span><span class="o">.</span><span class="n">int32</span><span class="p">(),</span>
+<span class="s2">"volatile"</span><span class="p">,</span> <span class="s2">"double_it"</span><span class="p">)</span>
+</pre></div>
+</div>
+<p>Example: Using <code class="docutils literal notranslate"><span class="pre">udf</span></code> as a decorator:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="nd">@udf</span><span class="p">([</span><span class="n">pa</span><span class="o">.</span><span class="n">int32</span><span class="p">()],</span> <span class="n">pa</span><span class="o">.</span><span class="n">int32</span><span class="p">(),</span> <span class="s2">"volatile"</span><span class="p">,</span> <span class="s2">"double_it"</span><span class="p">)</span>
+<span class="k">def</span><span class="w"> </span><span class="nf">double_udf</span><span class="p">(</span><span class="n">x</span><span class="p">):</span>
+ <span class="k">return</span> <span class="n">x</span> <span class="o">*</span> <span class="mi">2</span>
+</pre></div>
+</div>
+</dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="datafusion.ScalarUDF._udf">
+<span class="sig-name descname"><span class="pre">_udf</span></span><a class="headerlink" href="#datafusion.ScalarUDF._udf" title="Link to this definition">¶</a></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
<dl class="py class">
<dt class="sig sig-object py" id="datafusion.SessionConfig">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">SessionConfig</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">config_options</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">dict</span><span class="p"><s [...]
@@ -5311,6 +5952,54 @@ interface (advanced)</p></li>
</dd></dl>
+<dl class="py class">
+<dt class="sig sig-object py" id="datafusion.TableFunction">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">TableFunction</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig- [...]
+<dd><p>Class for performing user-defined table functions (UDTF).</p>
+<p>Table functions generate new table providers based on the
+input expressions.</p>
+<p>Instantiate a user-defined table function (UDTF).</p>
+<p>See <a class="reference internal" href="#datafusion.udtf" title="datafusion.udtf"><code class="xref py py-func docutils literal notranslate"><span class="pre">udtf()</span></code></a> for a convenience function and argument
+descriptions.</p>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.TableFunction.__call__">
+<span class="sig-name descname"><span class="pre">__call__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="expr/index.html#datafusion.expr.Expr" title="datafusion.expr.Expr"><span class="pre">datafusion.expr.Expr</span></a></span></em><span class= [...]
+<dd><p>Execute the UDTF and return a table provider.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.TableFunction.__repr__">
+<span class="sig-name descname"><span class="pre">__repr__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#datafusion.TableFunction.__repr__" title="Link to this definition">¶</a></dt>
+<dd><p>User printable representation.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.TableFunction._create_table_udf">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">_create_table_udf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">collections.abc.Callable</span><span class="p"><span class="pre">[</span></span><span class="pre">Ellipsis</span><spa [...]
+<dd><p>Create a TableFunction instance from function arguments.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.TableFunction._create_table_udf_decorator">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">_create_table_udf_decorator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span> [...]
+<dd><p>Create a decorator for a WindowUDF.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.TableFunction.udtf">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">udtf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <spa [...]
+<dt class="sig sig-object py">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">udtf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">collections.abc.Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span>< [...]
+<dd><p>Create a new User-Defined Table Function (UDTF).</p>
+</dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="datafusion.TableFunction._udtf">
+<span class="sig-name descname"><span class="pre">_udtf</span></span><a class="headerlink" href="#datafusion.TableFunction._udtf" title="Link to this definition">¶</a></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
<dl class="py class">
<dt class="sig sig-object py" id="datafusion.WindowFrame">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">WindowFrame</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">units</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-p [...]
@@ -5360,6 +6049,128 @@ parameter must be set.</p></li>
</dd></dl>
+<dl class="py class">
+<dt class="sig sig-object py" id="datafusion.WindowUDF">
+<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">WindowUDF</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-para [...]
+<dd><p>Class for performing window user-defined functions (UDF).</p>
+<p>Window UDFs operate on a partition of rows. See
+also <a class="reference internal" href="#datafusion.ScalarUDF" title="datafusion.ScalarUDF"><code class="xref py py-class docutils literal notranslate"><span class="pre">ScalarUDF</span></code></a> for operating on a row by row basis.</p>
+<p>Instantiate a user-defined window function (UDWF).</p>
+<p>See <a class="reference internal" href="#datafusion.udwf" title="datafusion.udwf"><code class="xref py py-func docutils literal notranslate"><span class="pre">udwf()</span></code></a> for a convenience function and argument
+descriptions.</p>
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.WindowUDF.__call__">
+<span class="sig-name descname"><span class="pre">__call__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="expr/index.html#datafusion.expr.Expr" title="datafusion.expr.Expr"><span class="pre">datafusion.expr.Expr</span></a></span></em><span class= [...]
+<dd><p>Execute the UDWF.</p>
+<p>This function is not typically called by an end user. These calls will
+occur during the evaluation of the dataframe.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.WindowUDF.__repr__">
+<span class="sig-name descname"><span class="pre">__repr__</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">str</span></span></span><a class="headerlink" href="#datafusion.WindowUDF.__repr__" title="Link to this definition">¶</a></dt>
+<dd><p>Print a string representation of the Window UDF.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.WindowUDF._create_window_udf">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">_create_window_udf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">collections.abc.Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[< [...]
+<dd><p>Create a WindowUDF instance from function arguments.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.WindowUDF._create_window_udf_decorator">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">_create_window_udf_decorator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">input_types</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">pyarrow.DataType</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><sp [...]
+<dd><p>Create a decorator for a WindowUDF.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.WindowUDF._get_default_name">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">_get_default_name</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">collections.abc.Callable</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig [...]
+<dd><p>Get the default name for a function based on its attributes.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.WindowUDF._normalize_input_types">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">_normalize_input_types</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">input_types</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">pyarrow.DataType</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span cla [...]
+<dd><p>Convert a single DataType to a list if needed.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.WindowUDF.from_pycapsule">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_pycapsule</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="user_defined/index.html#datafusion.user_defined.WindowUDFExportable" title="datafusion.user_defined.Wi [...]
+<dd><p>Create a Window UDF from WindowUDF PyCapsule object.</p>
+<p>This function will instantiate a Window UDF that uses a DataFusion
+WindowUDF that is exported via the FFI bindings.</p>
+</dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="datafusion.WindowUDF.udwf">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">udwf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">input_types</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">pyarrow.DataType</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><sp [...]
+<dt class="sig sig-object py">
+<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">udwf</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">collections.abc.Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span>< [...]
+<dd><p>Create a new User-Defined Window Function (UDWF).</p>
+<p>This class can be used both as either a function or a decorator.</p>
+<dl class="simple">
+<dt>Usage:</dt><dd><ul class="simple">
+<li><p>As a function: <code class="docutils literal notranslate"><span class="pre">udwf(func,</span> <span class="pre">input_types,</span> <span class="pre">return_type,</span> <span class="pre">volatility,</span> <span class="pre">name)</span></code>.</p></li>
+<li><p>As a decorator: <code class="docutils literal notranslate"><span class="pre">@udwf(input_types,</span> <span class="pre">return_type,</span> <span class="pre">volatility,</span> <span class="pre">name)</span></code>.
+When using <code class="docutils literal notranslate"><span class="pre">udwf</span></code> as a decorator, do not pass <code class="docutils literal notranslate"><span class="pre">func</span></code> explicitly.</p></li>
+</ul>
+</dd>
+</dl>
+<p>Function example:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">pyarrow</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">pa</span>
+
+<span class="k">class</span><span class="w"> </span><span class="nc">BiasedNumbers</span><span class="p">(</span><span class="n">WindowEvaluator</span><span class="p">):</span>
+ <span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">start</span><span class="p">:</span> <span class="nb">int</span> <span class="o">=</span> <span class="mi">0</span><span class="p">)</span> <span class="o">-></span> <span class="kc">None</span><span class="p">:</span>
+ <span class="bp">self</span><span class="o">.</span><span class="n">start</span> <span class="o">=</span> <span class="n">start</span>
+
+ <span class="k">def</span><span class="w"> </span><span class="nf">evaluate_all</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">values</span><span class="p">:</span> <span class="nb">list</span><span class="p">[</span><span class="n">pa</span><span class="o">.</span><span class="n">Array</span><span class="p">],</span>
+ <span class="n">num_rows</span><span class="p">:</span> <span class="nb">int</span><span class="p">)</span> <span class="o">-></span> <span class="n">pa</span><span class="o">.</span><span class="n">Array</span><span class="p">:</span>
+ <span class="k">return</span> <span class="n">pa</span><span class="o">.</span><span class="n">array</span><span class="p">([</span><span class="bp">self</span><span class="o">.</span><span class="n">start</span> <span class="o">+</span> <span class="n">i</span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">num_rows</span><span class="p">)])</span>
+
+<span class="k">def</span><span class="w"> </span><span class="nf">bias_10</span><span class="p">()</span> <span class="o">-></span> <span class="n">BiasedNumbers</span><span class="p">:</span>
+ <span class="k">return</span> <span class="n">BiasedNumbers</span><span class="p">(</span><span class="mi">10</span><span class="p">)</span>
+
+<span class="n">udwf1</span> <span class="o">=</span> <span class="n">udwf</span><span class="p">(</span><span class="n">BiasedNumbers</span><span class="p">,</span> <span class="n">pa</span><span class="o">.</span><span class="n">int64</span><span class="p">(),</span> <span class="n">pa</span><span class="o">.</span><span class="n">int64</span><span class="p">(),</span> <span class="s2">"immutable"</span><span class="p">)</span>
+<span class="n">udwf2</span> <span class="o">=</span> <span class="n">udwf</span><span class="p">(</span><span class="n">bias_10</span><span class="p">,</span> <span class="n">pa</span><span class="o">.</span><span class="n">int64</span><span class="p">(),</span> <span class="n">pa</span><span class="o">.</span><span class="n">int64</span><span class="p">(),</span> <span class="s2">"immutable"</span><span class="p">)</span>
+<span class="n">udwf3</span> <span class="o">=</span> <span class="n">udwf</span><span class="p">(</span><span class="k">lambda</span><span class="p">:</span> <span class="n">BiasedNumbers</span><span class="p">(</span><span class="mi">20</span><span class="p">),</span> <span class="n">pa</span><span class="o">.</span><span class="n">int64</span><span class="p">(),</span> <span class="n">pa</span><span class="o">.</span><span class="n">int64</span><span class="p">(),</span> <span class=" [...]
+</pre></div>
+</div>
+<p>Decorator example:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="nd">@udwf</span><span class="p">(</span><span class="n">pa</span><span class="o">.</span><span class="n">int64</span><span class="p">(),</span> <span class="n">pa</span><span class="o">.</span><span class="n">int64</span><span class="p">(),</span> <span class="s2">"immutable"</span><span class="p">)</span>
+<span class="k">def</span><span class="w"> </span><span class="nf">biased_numbers</span><span class="p">()</span> <span class="o">-></span> <span class="n">BiasedNumbers</span><span class="p">:</span>
+ <span class="k">return</span> <span class="n">BiasedNumbers</span><span class="p">(</span><span class="mi">10</span><span class="p">)</span>
+</pre></div>
+</div>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>func</strong> – Only needed when calling as a function. Skip this argument when
+using <code class="docutils literal notranslate"><span class="pre">udwf</span></code> as a decorator. If you have a Rust backed WindowUDF
+within a PyCapsule, you can pass this parameter and ignore the rest.
+They will be determined directly from the underlying function. See
+the online documentation for more information.</p></li>
+<li><p><strong>input_types</strong> – The data types of the arguments.</p></li>
+<li><p><strong>return_type</strong> – The data type of the return value.</p></li>
+<li><p><strong>volatility</strong> – See <code class="xref py py-class docutils literal notranslate"><span class="pre">Volatility</span></code> for allowed values.</p></li>
+<li><p><strong>name</strong> – A descriptive name for the function.</p></li>
+</ul>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>A user-defined window function that can be used in window function calls.</p>
+</dd>
+</dl>
+</dd></dl>
+
+<dl class="py attribute">
+<dt class="sig sig-object py" id="datafusion.WindowUDF._udwf">
+<span class="sig-name descname"><span class="pre">_udwf</span></span><a class="headerlink" href="#datafusion.WindowUDF._udwf" title="Link to this definition">¶</a></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
<dl class="py function">
<dt class="sig sig-object py" id="datafusion.configure_formatter">
<span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">configure_formatter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Any</span></span></em><span class="sig-paren">)</span> <span [...]
@@ -5526,6 +6337,26 @@ file.</p></li>
<span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">column</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">Col</span></em><a class="headerlink" href="#datafusion.column" title="Link to this definition">¶</a></dt>
<dd></dd></dl>
+<dl class="py data">
+<dt class="sig sig-object py" id="datafusion.udaf">
+<span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">udaf</span></span><a class="headerlink" href="#datafusion.udaf" title="Link to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="datafusion.udf">
+<span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">udf</span></span><a class="headerlink" href="#datafusion.udf" title="Link to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="datafusion.udtf">
+<span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">udtf</span></span><a class="headerlink" href="#datafusion.udtf" title="Link to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<dl class="py data">
+<dt class="sig sig-object py" id="datafusion.udwf">
+<span class="sig-prename descclassname"><span class="pre">datafusion.</span></span><span class="sig-name descname"><span class="pre">udwf</span></span><a class="headerlink" href="#datafusion.udwf" title="Link to this definition">¶</a></dt>
+<dd></dd></dl>
+
</section>
</section>
diff --git a/genindex.html b/genindex.html
index 3dfadc6f..277d439e 100644
--- a/genindex.html
+++ b/genindex.html
@@ -490,9 +490,15 @@
<li><a href="autoapi/datafusion/dataframe/index.html#datafusion.dataframe.DataFrame.__arrow_c_stream__">(datafusion.dataframe.DataFrame method)</a>
</li>
</ul></li>
- <li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter.CellFormatter.__call__">__call__() (datafusion.dataframe_formatter.CellFormatter method)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.AggregateUDF.__call__">__call__() (datafusion.AggregateUDF method)</a>
<ul>
+ <li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter.CellFormatter.__call__">(datafusion.dataframe_formatter.CellFormatter method)</a>
+</li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.ScalarUDF.__call__">(datafusion.ScalarUDF method)</a>
+</li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.TableFunction.__call__">(datafusion.TableFunction method)</a>
+</li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDF.__call__">(datafusion.user_defined.AggregateUDF method)</a>
</li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.ScalarUDF.__call__">(datafusion.user_defined.ScalarUDF method)</a>
@@ -500,6 +506,8 @@
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.TableFunction.__call__">(datafusion.user_defined.TableFunction method)</a>
</li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDF.__call__">(datafusion.user_defined.WindowUDF method)</a>
+</li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.WindowUDF.__call__">(datafusion.WindowUDF method)</a>
</li>
</ul></li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDFExportable.__datafusion_aggregate_udf__">__datafusion_aggregate_udf__() (datafusion.user_defined.AggregateUDFExportable method)</a>
@@ -612,9 +620,11 @@
<li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.Expr.__rand__">(datafusion.expr.Expr attribute)</a>
</li>
</ul></li>
- <li><a href="autoapi/datafusion/index.html#datafusion.Catalog.__repr__">__repr__() (datafusion.Catalog method)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.AggregateUDF.__repr__">__repr__() (datafusion.AggregateUDF method)</a>
<ul>
+ <li><a href="autoapi/datafusion/index.html#datafusion.Catalog.__repr__">(datafusion.Catalog method)</a>
+</li>
<li><a href="autoapi/datafusion/catalog/index.html#datafusion.catalog.Catalog.__repr__">(datafusion.catalog.Catalog method)</a>
</li>
<li><a href="autoapi/datafusion/catalog/index.html#datafusion.catalog.CatalogList.__repr__">(datafusion.catalog.CatalogList method)</a>
@@ -642,8 +652,12 @@
<li><a href="autoapi/datafusion/plan/index.html#datafusion.plan.ExecutionPlan.__repr__">(datafusion.plan.ExecutionPlan method)</a>
</li>
<li><a href="autoapi/datafusion/plan/index.html#datafusion.plan.LogicalPlan.__repr__">(datafusion.plan.LogicalPlan method)</a>
+</li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.ScalarUDF.__repr__">(datafusion.ScalarUDF method)</a>
</li>
<li><a href="autoapi/datafusion/index.html#datafusion.Table.__repr__">(datafusion.Table method)</a>
+</li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.TableFunction.__repr__">(datafusion.TableFunction method)</a>
</li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDF.__repr__">(datafusion.user_defined.AggregateUDF method)</a>
</li>
@@ -654,6 +668,8 @@
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDF.__repr__">(datafusion.user_defined.WindowUDF method)</a>
</li>
<li><a href="autoapi/datafusion/index.html#datafusion.WindowFrame.__repr__">(datafusion.WindowFrame method)</a>
+</li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.WindowUDF.__repr__">(datafusion.WindowUDF method)</a>
</li>
</ul></li>
</ul></td>
@@ -732,14 +748,30 @@
</li>
<li><a href="autoapi/datafusion/context/index.html#datafusion.context.SessionContext._convert_table_partition_cols">_convert_table_partition_cols() (datafusion.context.SessionContext static method)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.TableFunction._create_table_udf">_create_table_udf() (datafusion.user_defined.TableFunction static method)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.TableFunction._create_table_udf">_create_table_udf() (datafusion.TableFunction static method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.TableFunction._create_table_udf">(datafusion.user_defined.TableFunction static method)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.TableFunction._create_table_udf_decorator">_create_table_udf_decorator() (datafusion.user_defined.TableFunction static method)</a>
+ </ul></li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.TableFunction._create_table_udf_decorator">_create_table_udf_decorator() (datafusion.TableFunction static method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.TableFunction._create_table_udf_decorator">(datafusion.user_defined.TableFunction static method)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDF._create_window_udf">_create_window_udf() (datafusion.user_defined.WindowUDF static method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/index.html#datafusion.WindowUDF._create_window_udf">(datafusion.WindowUDF static method)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDF._create_window_udf_decorator">_create_window_udf_decorator() (datafusion.user_defined.WindowUDF static method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/index.html#datafusion.WindowUDF._create_window_udf_decorator">(datafusion.WindowUDF static method)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter.DataFrameHtmlFormatter._custom_cell_builder">_custom_cell_builder (datafusion.dataframe_formatter.DataFrameHtmlFormatter attribute)</a>
</li>
<li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter.DataFrameHtmlFormatter._custom_header_builder">_custom_header_builder (datafusion.dataframe_formatter.DataFrameHtmlFormatter attribute)</a>
@@ -753,7 +785,11 @@
<li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter.DataFrameHtmlFormatter._get_default_css">_get_default_css() (datafusion.dataframe_formatter.DataFrameHtmlFormatter method)</a>
</li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDF._get_default_name">_get_default_name() (datafusion.user_defined.WindowUDF static method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/index.html#datafusion.WindowUDF._get_default_name">(datafusion.WindowUDF static method)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter.DataFrameHtmlFormatter._get_javascript">_get_javascript() (datafusion.dataframe_formatter.DataFrameHtmlFormatter method)</a>
</li>
<li><a href="autoapi/datafusion/catalog/index.html#datafusion.catalog.Table._inner">_inner (datafusion.catalog.Table attribute)</a>
@@ -767,7 +803,11 @@
<li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter.DataFrameHtmlFormatter._max_rows">_max_rows (datafusion.dataframe_formatter.DataFrameHtmlFormatter attribute)</a>
</li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDF._normalize_input_types">_normalize_input_types() (datafusion.user_defined.WindowUDF static method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/index.html#datafusion.WindowUDF._normalize_input_types">(datafusion.WindowUDF static method)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.Window._null_treatment">_null_treatment (datafusion.expr.Window attribute)</a>
</li>
<li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.Window._order_by">_order_by (datafusion.expr.Window attribute)</a>
@@ -806,14 +846,30 @@
</ul></li>
<li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter.DataFrameHtmlFormatter._type_formatters">_type_formatters (datafusion.dataframe_formatter.DataFrameHtmlFormatter attribute)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDF._udaf">_udaf (datafusion.user_defined.AggregateUDF attribute)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.AggregateUDF._udaf">_udaf (datafusion.AggregateUDF attribute)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDF._udaf">(datafusion.user_defined.AggregateUDF attribute)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.ScalarUDF._udf">_udf (datafusion.user_defined.ScalarUDF attribute)</a>
+ </ul></li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.ScalarUDF._udf">_udf (datafusion.ScalarUDF attribute)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.ScalarUDF._udf">(datafusion.user_defined.ScalarUDF attribute)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.TableFunction._udtf">_udtf (datafusion.user_defined.TableFunction attribute)</a>
+ </ul></li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.TableFunction._udtf">_udtf (datafusion.TableFunction attribute)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.TableFunction._udtf">(datafusion.user_defined.TableFunction attribute)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDF._udwf">_udwf (datafusion.user_defined.WindowUDF attribute)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/index.html#datafusion.WindowUDF._udwf">(datafusion.WindowUDF attribute)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter._validate_bool">_validate_bool() (in module datafusion.dataframe_formatter)</a>
</li>
<li><a href="autoapi/datafusion/dataframe_formatter/index.html#datafusion.dataframe_formatter._validate_formatter_parameters">_validate_formatter_parameters() (in module datafusion.dataframe_formatter)</a>
@@ -836,8 +892,12 @@
<li><a href="autoapi/datafusion/functions/index.html#datafusion.functions.abs">(in module datafusion.functions)</a>
</li>
</ul></li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.Accumulator">Accumulator (class in datafusion.user_defined)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.Accumulator">Accumulator (class in datafusion)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.Accumulator">(class in datafusion.user_defined)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/index.html#datafusion.Expr.acos">acos() (datafusion.Expr method)</a>
<ul>
@@ -860,8 +920,12 @@
</li>
<li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.AggregateFunction">AggregateFunction (in module datafusion.expr)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDF">AggregateUDF (class in datafusion.user_defined)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.AggregateUDF">AggregateUDF (class in datafusion)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDF">(class in datafusion.user_defined)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDFExportable">AggregateUDFExportable (class in datafusion.user_defined)</a>
</li>
<li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.Alias">Alias (in module datafusion.expr)</a>
@@ -947,11 +1011,11 @@
<li><a href="autoapi/datafusion/functions/index.html#datafusion.functions.array_indexof">array_indexof() (in module datafusion.functions)</a>
</li>
<li><a href="autoapi/datafusion/functions/index.html#datafusion.functions.array_intersect">array_intersect() (in module datafusion.functions)</a>
-</li>
- <li><a href="autoapi/datafusion/functions/index.html#datafusion.functions.array_join">array_join() (in module datafusion.functions)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
+ <li><a href="autoapi/datafusion/functions/index.html#datafusion.functions.array_join">array_join() (in module datafusion.functions)</a>
+</li>
<li><a href="autoapi/datafusion/index.html#datafusion.Expr.array_length">array_length() (datafusion.Expr method)</a>
<ul>
@@ -1827,9 +1891,11 @@
<li><a href="autoapi/datafusion/options/index.html#datafusion.options.CsvReadOptions.escape">(datafusion.options.CsvReadOptions attribute)</a>
</li>
</ul></li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.Accumulator.evaluate">evaluate() (datafusion.user_defined.Accumulator method)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.Accumulator.evaluate">evaluate() (datafusion.Accumulator method)</a>
<ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.Accumulator.evaluate">(datafusion.user_defined.Accumulator method)</a>
+</li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowEvaluator.evaluate">(datafusion.user_defined.WindowEvaluator method)</a>
</li>
</ul></li>
@@ -2005,12 +2071,18 @@
<li><a href="autoapi/datafusion/plan/index.html#datafusion.plan.LogicalPlan.from_proto">(datafusion.plan.LogicalPlan static method)</a>
</li>
</ul></li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDF.from_pycapsule">from_pycapsule() (datafusion.user_defined.AggregateUDF static method)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.AggregateUDF.from_pycapsule">from_pycapsule() (datafusion.AggregateUDF static method)</a>
<ul>
+ <li><a href="autoapi/datafusion/index.html#datafusion.ScalarUDF.from_pycapsule">(datafusion.ScalarUDF static method)</a>
+</li>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDF.from_pycapsule">(datafusion.user_defined.AggregateUDF static method)</a>
+</li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.ScalarUDF.from_pycapsule">(datafusion.user_defined.ScalarUDF static method)</a>
</li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDF.from_pycapsule">(datafusion.user_defined.WindowUDF static method)</a>
+</li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.WindowUDF.from_pycapsule">(datafusion.WindowUDF static method)</a>
</li>
</ul></li>
<li><a href="autoapi/datafusion/context/index.html#datafusion.context.SessionContext.from_pydict">from_pydict() (datafusion.context.SessionContext method)</a>
@@ -2511,8 +2583,12 @@
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.Accumulator.merge">merge() (datafusion.user_defined.Accumulator method)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.Accumulator.merge">merge() (datafusion.Accumulator method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.Accumulator.merge">(datafusion.user_defined.Accumulator method)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/object_store/index.html#datafusion.object_store.MicrosoftAzure">MicrosoftAzure (in module datafusion.object_store)</a>
</li>
<li><a href="autoapi/datafusion/functions/index.html#datafusion.functions.min">min() (in module datafusion.functions)</a>
@@ -3002,8 +3078,12 @@
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.ScalarSubquery">ScalarSubquery (in module datafusion.expr)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.ScalarUDF">ScalarUDF (class in datafusion.user_defined)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.ScalarUDF">ScalarUDF (class in datafusion)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.ScalarUDF">(class in datafusion.user_defined)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.ScalarUDFExportable">ScalarUDFExportable (class in datafusion.user_defined)</a>
</li>
<li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.ScalarVariable">ScalarVariable (in module datafusion.expr)</a>
@@ -3206,8 +3286,12 @@
</li>
<li><a href="autoapi/datafusion/functions/index.html#datafusion.functions.starts_with">starts_with() (in module datafusion.functions)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.Accumulator.state">state() (datafusion.user_defined.Accumulator method)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.Accumulator.state">state() (datafusion.Accumulator method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.Accumulator.state">(datafusion.user_defined.Accumulator method)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/dataframe/index.html#datafusion.dataframe.ParquetColumnOptions.statistics_enabled">statistics_enabled (datafusion.dataframe.ParquetColumnOptions attribute)</a>
<ul>
@@ -3300,8 +3384,12 @@
<li><a href="autoapi/datafusion/options/index.html#datafusion.options.CsvReadOptions.table_partition_cols">(datafusion.options.CsvReadOptions attribute)</a>
</li>
</ul></li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.TableFunction">TableFunction (class in datafusion.user_defined)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.TableFunction">TableFunction (class in datafusion)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.TableFunction">(class in datafusion.user_defined)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/context/index.html#datafusion.context.TableProviderExportable">TableProviderExportable (class in datafusion.context)</a>
</li>
<li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.TableScan">TableScan (in module datafusion.expr)</a>
@@ -3352,6 +3440,8 @@
</li>
<li><a href="autoapi/datafusion/dataframe/index.html#datafusion.dataframe.DataFrame.to_polars">to_polars() (datafusion.dataframe.DataFrame method)</a>
</li>
+ </ul></td>
+ <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="autoapi/datafusion/index.html#datafusion.ExecutionPlan.to_proto">to_proto() (datafusion.ExecutionPlan method)</a>
<ul>
@@ -3362,8 +3452,6 @@
<li><a href="autoapi/datafusion/plan/index.html#datafusion.plan.LogicalPlan.to_proto">(datafusion.plan.LogicalPlan method)</a>
</li>
</ul></li>
- </ul></td>
- <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="autoapi/datafusion/record_batch/index.html#datafusion.record_batch.RecordBatch.to_pyarrow">to_pyarrow() (datafusion.record_batch.RecordBatch method)</a>
<ul>
@@ -3442,22 +3530,56 @@
<h2 id="U">U</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
<td style="width: 33%; vertical-align: top;"><ul>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.udaf">udaf (in module datafusion.user_defined)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.udaf">udaf (in module datafusion)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.udaf">(in module datafusion.user_defined)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDF.udaf">udaf() (datafusion.user_defined.AggregateUDF static method)</a>
+ </ul></li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.AggregateUDF.udaf">udaf() (datafusion.AggregateUDF static method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.AggregateUDF.udaf">(datafusion.user_defined.AggregateUDF static method)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.udf">udf (in module datafusion.user_defined)</a>
+ </ul></li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.udf">udf (in module datafusion)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.udf">(in module datafusion.user_defined)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.ScalarUDF.udf">udf() (datafusion.user_defined.ScalarUDF static method)</a>
+ </ul></li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.ScalarUDF.udf">udf() (datafusion.ScalarUDF static method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.ScalarUDF.udf">(datafusion.user_defined.ScalarUDF static method)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.udtf">udtf (in module datafusion.user_defined)</a>
+ </ul></li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.udtf">udtf (in module datafusion)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.udtf">(in module datafusion.user_defined)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.TableFunction.udtf">udtf() (datafusion.user_defined.TableFunction static method)</a>
+ </ul></li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.TableFunction.udtf">udtf() (datafusion.TableFunction static method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.TableFunction.udtf">(datafusion.user_defined.TableFunction static method)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.udwf">udwf (in module datafusion.user_defined)</a>
+ </ul></li>
+ <li><a href="autoapi/datafusion/index.html#datafusion.udwf">udwf (in module datafusion)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.udwf">(in module datafusion.user_defined)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDF.udwf">udwf() (datafusion.user_defined.WindowUDF static method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/index.html#datafusion.WindowUDF.udwf">(datafusion.WindowUDF static method)</a>
</li>
+ </ul></li>
+ </ul></td>
+ <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="autoapi/datafusion/dataframe/index.html#datafusion.dataframe.Compression.UNCOMPRESSED">UNCOMPRESSED (datafusion.dataframe.Compression attribute)</a>
</li>
<li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.Union">Union (in module datafusion.expr)</a>
@@ -3466,8 +3588,6 @@
</li>
<li><a href="autoapi/datafusion/dataframe/index.html#datafusion.dataframe.DataFrame.union_distinct">union_distinct() (datafusion.dataframe.DataFrame method)</a>
</li>
- </ul></td>
- <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.Unnest">Unnest (in module datafusion.expr)</a>
</li>
<li><a href="autoapi/datafusion/dataframe/index.html#datafusion.dataframe.DataFrame.unnest_columns">unnest_columns() (datafusion.dataframe.DataFrame method)</a>
@@ -3478,8 +3598,12 @@
</li>
<li><a href="autoapi/datafusion/unparser/index.html#datafusion.unparser.Unparser.unparser">unparser (datafusion.unparser.Unparser attribute)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.Accumulator.update">update() (datafusion.user_defined.Accumulator method)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.Accumulator.update">update() (datafusion.Accumulator method)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.Accumulator.update">(datafusion.user_defined.Accumulator method)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/index.html#datafusion.Expr.upper">upper() (datafusion.Expr method)</a>
<ul>
@@ -3562,8 +3686,12 @@
</ul></li>
<li><a href="autoapi/datafusion/expr/index.html#datafusion.expr.WindowFrameBound">WindowFrameBound (class in datafusion.expr)</a>
</li>
- <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDF">WindowUDF (class in datafusion.user_defined)</a>
+ <li><a href="autoapi/datafusion/index.html#datafusion.WindowUDF">WindowUDF (class in datafusion)</a>
+
+ <ul>
+ <li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDF">(class in datafusion.user_defined)</a>
</li>
+ </ul></li>
<li><a href="autoapi/datafusion/user_defined/index.html#datafusion.user_defined.WindowUDFExportable">WindowUDFExportable (class in datafusion.user_defined)</a>
</li>
<li><a href="autoapi/datafusion/context/index.html#datafusion.context.SQLOptions.with_allow_ddl">with_allow_ddl() (datafusion.context.SQLOptions method)</a>
diff --git a/objects.inv b/objects.inv
index 905cdeae..c8c4788a 100644
Binary files a/objects.inv and b/objects.inv differ
diff --git a/searchindex.js b/searchindex.js
index 715cc498..235db5bf 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"API Reference": [[19, null]], "Additional Resources": [[37, "additional-resources"]], "Aggregate Functions": [[24, "aggregate-functions"], [31, "aggregate-functions"], [33, "aggregate-functions"]], "Aggregation": [[24, null]], "Alternative Approach": [[20, "alternative-approach"]], "Apache Iceberg": [[35, "apache-iceberg"]], "Arrays": [[26, "arrays"]], "Arrow": [[39, null]], "Attributes": [[4, "attributes"], [7, "attributes"], [12, "attributes"], [18, "att [...]
\ No newline at end of file
+Search.setIndex({"alltitles": {"API Reference": [[19, null]], "Additional Resources": [[37, "additional-resources"]], "Aggregate Functions": [[24, "aggregate-functions"], [31, "aggregate-functions"], [33, "aggregate-functions"]], "Aggregation": [[24, null]], "Alternative Approach": [[20, "alternative-approach"]], "Apache Iceberg": [[35, "apache-iceberg"]], "Arrays": [[26, "arrays"]], "Arrow": [[39, null]], "Attributes": [[4, "attributes"], [7, "attributes"], [12, "attributes"], [18, "att [...]
\ No newline at end of file
diff --git a/user-guide/common-operations/aggregations.html b/user-guide/common-operations/aggregations.html
index edce52dc..d2b473a6 100644
--- a/user-guide/common-operations/aggregations.html
+++ b/user-guide/common-operations/aggregations.html
@@ -620,15 +620,15 @@ Pokemon set. Since there will be many entries of <code class="docutils literal n
<span class="o">+----------+--------------------------------------------------+</span>
<span class="o">|</span> <span class="n">Type</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">Type</span> <span class="mi">2</span> <span class="n">List</span> <span class="o">|</span>
<span class="o">+----------+--------------------------------------------------+</span>
-<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[,</span> <span class="n">Grass</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Poison</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Poison</span> <span class="o">|</span> <span class="p">[</span><span class="n">Ground</span><span class="p">,</span> <span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Electric</span> <span class="o">|</span> <span class="p">[,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Steel</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="p">,</span> <span class="n">Grass</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Poison</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="p">,</span> <span class="n">Ground</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Electric</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="p">,</span> <span class="n">Steel</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Fairy</span> <span class="o">|</span> <span class="p">[]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Normal</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="p">,</span> <span class="n">Fairy</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Normal</span> <span class="o">|</span> <span class="p">[</span><span class="n">Fairy</span><span class="p">,</span> <span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Ice</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Grass</span> <span class="o">|</span> <span class="p">[</span><span class="n">Psychic</span><span class="p">,</span> <span class="p">,</span> <span class="n">Poison</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Fire</span> <span class="o">|</span> <span class="p">[</span><span class="n">Dragon</span><span class="p">,</span> <span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Ice</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">,</span> <span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Dark</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Fighting</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Grass</span> <span class="o">|</span> <span class="p">[,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Fire</span> <span class="o">|</span> <span class="p">[,</span> <span class="n">Dragon</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Dark</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Ice</span><span class="p">,</span> <span class="n">Fighting</span><span class="p">,</span> <span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Ground</span> <span class="o">|</span> <span class="p">[</span><span class="n">Rock</span><span class="p">,</span> <span class="p">]</span> <span class="o">|</span>
<span class="o">+----------+--------------------------------------------------+</span>
<span class="n">Data</span> <span class="n">truncated</span><span class="o">.</span>
@@ -644,14 +644,14 @@ entries entirely removed. The second is we can use the <code class="docutils lit
<span class="o">+----------+------------------------------------------------+</span>
<span class="o">|</span> <span class="n">Type</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">Type</span> <span class="mi">2</span> <span class="n">List</span> <span class="o">|</span>
<span class="o">+----------+------------------------------------------------+</span>
-<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[</span><span class="n">Poison</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Grass</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Poison</span> <span class="o">|</span> <span class="p">[</span><span class="n">Ground</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Electric</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Steel</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Normal</span> <span class="o">|</span> <span class="p">[</span><span class="n">Fairy</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Ice</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Grass</span><span class="p">,</span> <span class="n">Poison</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Poison</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Ground</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Electric</span> <span class="o">|</span> <span class="p">[</span><span class="n">Steel</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Normal</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Fairy</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Ice</span> <span class="o">|</span> <span class="p">[</span><span class="n">Psychic</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Grass</span> <span class="o">|</span> <span class="p">[</span><span class="n">Poison</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Fire</span> <span class="o">|</span> <span class="p">[</span><span class="n">Dragon</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Fighting</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Dark</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">,</span> <span class="n">Ice</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Fire</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Dragon</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Psychic</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Ice</span><span class="p">,</span> <span class="n">Dark</span><span class="p">,</span> <span class="n">Fighting</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Rock</span> <span class="o">|</span> <span class="p">[</span><span class="n">Ground</span><span class="p">,</span> <span class="n">Water</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Ghost</span> <span class="o">|</span> <span class="p">[</span><span class="n">Poison</span><span class="p">]</span> <span class="o">|</span>
<span class="o">+----------+------------------------------------------------+</span>
@@ -663,15 +663,15 @@ entries entirely removed. The second is we can use the <code class="docutils lit
<span class="o">+----------+------------------------------------------------+</span>
<span class="o">|</span> <span class="n">Type</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">Type</span> <span class="mi">2</span> <span class="n">List</span> <span class="o">|</span>
<span class="o">+----------+------------------------------------------------+</span>
-<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[</span><span class="n">Grass</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Bug</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Grass</span><span class="p">,</span> <span class="n">Poison</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Poison</span> <span class="o">|</span> <span class="p">[</span><span class="n">Ground</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Electric</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Steel</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Electric</span> <span class="o">|</span> <span class="p">[</span><span class="n">Steel</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Fairy</span> <span class="o">|</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Normal</span> <span class="o">|</span> <span class="p">[</span><span class="n">Fairy</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Normal</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Fairy</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Ice</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Grass</span> <span class="o">|</span> <span class="p">[</span><span class="n">Poison</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Fire</span> <span class="o">|</span> <span class="p">[</span><span class="n">Flying</span><span class="p">,</span> <span class="n">Dragon</span><span class="p">]</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Poison</span><span class="p">,</span> <span class="n">Dark</span><span class="p">,</span> <span class="n">Fighting</span><span class="p">,</span> <span class="n">Ice</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Fire</span> <span class="o">|</span> <span class="p">[</span><span class="n">Dragon</span><span class="p">,</span> <span class="n">Flying</span><span class="p">]</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">Water</span> <span class="o">|</span> <span class="p">[</span><span class="n">Fighting</span><span class="p">,</span> <span class="n">Psychic</span><span class="p">,</span> <span class="n">Ice</span><span class="p">,</span> <span class="n">Flying</span><span class="p">,</span> <span class="n">Poison</span><span class="p">,</span> <span class="n">Dark</span><span class="p">]</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">Ground</span> <span class="o">|</span> <span class="p">[</span><span class="n">Rock</span><span class="p">]</span> <span class="o">|</span>
<span class="o">+----------+------------------------------------------------+</span>
<span class="n">Data</span> <span class="n">truncated</span><span class="o">.</span>
diff --git a/user-guide/common-operations/basic-info.html b/user-guide/common-operations/basic-info.html
index a8eb1c08..7ae87351 100644
--- a/user-guide/common-operations/basic-info.html
+++ b/user-guide/common-operations/basic-info.html
@@ -456,11 +456,11 @@
<span class="o">+-----+---------+--------+--------+</span>
<span class="o">|</span> <span class="n">nrs</span> <span class="o">|</span> <span class="n">names</span> <span class="o">|</span> <span class="n">random</span> <span class="o">|</span> <span class="n">groups</span> <span class="o">|</span>
<span class="o">+-----+---------+--------+--------+</span>
-<span class="o">|</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">python</span> <span class="o">|</span> <span class="mi">628</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mi">89</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">3</span> <span class="o">|</span> <span class="n">java</span> <span class="o">|</span> <span class="mi">789</span> <span class="o">|</span> <span class="n">B</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">4</span> <span class="o">|</span> <span class="n">haskell</span> <span class="o">|</span> <span class="mi">911</span> <span class="o">|</span> <span class="n">C</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">5</span> <span class="o">|</span> <span class="n">go</span> <span class="o">|</span> <span class="mi">878</span> <span class="o">|</span> <span class="n">B</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">python</span> <span class="o">|</span> <span class="mi">23</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mi">939</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">3</span> <span class="o">|</span> <span class="n">java</span> <span class="o">|</span> <span class="mi">615</span> <span class="o">|</span> <span class="n">B</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">4</span> <span class="o">|</span> <span class="n">haskell</span> <span class="o">|</span> <span class="mi">887</span> <span class="o">|</span> <span class="n">C</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">5</span> <span class="o">|</span> <span class="n">go</span> <span class="o">|</span> <span class="mi">382</span> <span class="o">|</span> <span class="n">B</span> <span class="o">|</span>
<span class="o">+-----+---------+--------+--------+</span>
</pre></div>
</div>
@@ -471,8 +471,8 @@
<span class="o">+-----+--------+--------+--------+</span>
<span class="o">|</span> <span class="n">nrs</span> <span class="o">|</span> <span class="n">names</span> <span class="o">|</span> <span class="n">random</span> <span class="o">|</span> <span class="n">groups</span> <span class="o">|</span>
<span class="o">+-----+--------+--------+--------+</span>
-<span class="o">|</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">python</span> <span class="o">|</span> <span class="mi">628</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mi">89</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">1</span> <span class="o">|</span> <span class="n">python</span> <span class="o">|</span> <span class="mi">23</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mi">939</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
<span class="o">+-----+--------+--------+--------+</span>
</pre></div>
</div>
@@ -490,11 +490,11 @@ passing them to an Arrow table, and then converting them to a pandas DataFrame.<
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="n">In</span> <span class="p">[</span><span class="mi">8</span><span class="p">]:</span> <span class="n">df</span><span class="o">.</span><span class="n">to_pandas</span><span class="p">()</span>
<span class="n">Out</span><span class="p">[</span><span class="mi">8</span><span class="p">]:</span>
<span class="n">nrs</span> <span class="n">names</span> <span class="n">random</span> <span class="n">groups</span>
-<span class="mi">0</span> <span class="mi">1</span> <span class="n">python</span> <span class="mi">628</span> <span class="n">A</span>
-<span class="mi">1</span> <span class="mi">2</span> <span class="n">ruby</span> <span class="mi">89</span> <span class="n">A</span>
-<span class="mi">2</span> <span class="mi">3</span> <span class="n">java</span> <span class="mi">789</span> <span class="n">B</span>
-<span class="mi">3</span> <span class="mi">4</span> <span class="n">haskell</span> <span class="mi">911</span> <span class="n">C</span>
-<span class="mi">4</span> <span class="mi">5</span> <span class="n">go</span> <span class="mi">878</span> <span class="n">B</span>
+<span class="mi">0</span> <span class="mi">1</span> <span class="n">python</span> <span class="mi">23</span> <span class="n">A</span>
+<span class="mi">1</span> <span class="mi">2</span> <span class="n">ruby</span> <span class="mi">939</span> <span class="n">A</span>
+<span class="mi">2</span> <span class="mi">3</span> <span class="n">java</span> <span class="mi">615</span> <span class="n">B</span>
+<span class="mi">3</span> <span class="mi">4</span> <span class="n">haskell</span> <span class="mi">887</span> <span class="n">C</span>
+<span class="mi">4</span> <span class="mi">5</span> <span class="n">go</span> <span class="mi">382</span> <span class="n">B</span>
</pre></div>
</div>
<p><a class="reference internal" href="../../autoapi/datafusion/dataframe/index.html#datafusion.dataframe.DataFrame.describe" title="datafusion.dataframe.DataFrame.describe"><code class="xref py py-func docutils literal notranslate"><span class="pre">describe()</span></code></a> shows a quick statistic summary of your data:</p>
@@ -506,11 +506,11 @@ passing them to an Arrow table, and then converting them to a pandas DataFrame.<
<span class="o">+------------+--------------------+-------+-------------------+--------+</span>
<span class="o">|</span> <span class="n">count</span> <span class="o">|</span> <span class="mf">5.0</span> <span class="o">|</span> <span class="mi">5</span> <span class="o">|</span> <span class="mf">5.0</span> <span class="o">|</span> <span class="mi">5</span> <span class="o">|</span>
<span class="o">|</span> <span class="n">null_count</span> <span class="o">|</span> <span class="mf">0.0</span> <span class="o">|</span> <span class="mi">0</span> <span class="o">|</span> <span class="mf">0.0</span> <span class="o">|</span> <span class="mi">0</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">mean</span> <span class="o">|</span> <span class="mf">3.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">659.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">std</span> <span class="o">|</span> <span class="mf">1.5811388300841898</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">336.9814534955893</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
-<span class="o">|</span> <span class="nb">min</span> <span class="o">|</span> <span class="mf">1.0</span> <span class="o">|</span> <span class="n">go</span> <span class="o">|</span> <span class="mf">89.0</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
-<span class="o">|</span> <span class="nb">max</span> <span class="o">|</span> <span class="mf">5.0</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mf">911.0</span> <span class="o">|</span> <span class="n">C</span> <span class="o">|</span>
-<span class="o">|</span> <span class="n">median</span> <span class="o">|</span> <span class="mf">3.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">789.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">mean</span> <span class="o">|</span> <span class="mf">3.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">569.2</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">std</span> <span class="o">|</span> <span class="mf">1.5811388300841898</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">378.5580536720887</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
+<span class="o">|</span> <span class="nb">min</span> <span class="o">|</span> <span class="mf">1.0</span> <span class="o">|</span> <span class="n">go</span> <span class="o">|</span> <span class="mf">23.0</span> <span class="o">|</span> <span class="n">A</span> <span class="o">|</span>
+<span class="o">|</span> <span class="nb">max</span> <span class="o">|</span> <span class="mf">5.0</span> <span class="o">|</span> <span class="n">ruby</span> <span class="o">|</span> <span class="mf">939.0</span> <span class="o">|</span> <span class="n">C</span> <span class="o">|</span>
+<span class="o">|</span> <span class="n">median</span> <span class="o">|</span> <span class="mf">3.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span> <span class="mf">615.0</span> <span class="o">|</span> <span class="n">null</span> <span class="o">|</span>
<span class="o">+------------+--------------------+-------+-------------------+--------+</span>
</pre></div>
</div>
diff --git a/user-guide/common-operations/functions.html b/user-guide/common-operations/functions.html
index b4e4a5c3..1afdcb7e 100644
--- a/user-guide/common-operations/functions.html
+++ b/user-guide/common-operations/functions.html
@@ -566,16 +566,16 @@ In here we will cover some of the more popular use cases. If you want to view al
<span class="o">+-------------------------------+</span>
<span class="o">|</span> <span class="n">now</span><span class="p">()</span> <span class="o">|</span>
<span class="o">+-------------------------------+</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">02</span><span class="o">-</span><span class="mi">23</span><span class="n">T12</span><span class="p">:</span><span class="mi">53</span><span class="p">:</span><span class="mf">06.752343449</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">02</span><span class="o">-</span><span class="mi">23</span><span class="n">T12</span><span class="p">:</span><span class="mi">53</span><span class="p">:</span><span class="mf">06.752343449</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">02</span><span class="o">-</span><span class="mi">23</span><span class="n">T12</span><span class="p">:</span><span class="mi">53</span><span class="p">:</span><span class="mf">06.752343449</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">02</span><span class="o">-</span><span class="mi">23</span><span class="n">T12</span><span class="p">:</span><span class="mi">53</span><span class="p">:</span><span class="mf">06.752343449</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">02</span><span class="o">-</span><span class="mi">23</span><span class="n">T12</span><span class="p">:</span><span class="mi">53</span><span class="p">:</span><span class="mf">06.752343449</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">02</span><span class="o">-</span><span class="mi">23</span><span class="n">T12</span><span class="p">:</span><span class="mi">53</span><span class="p">:</span><span class="mf">06.752343449</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">02</span><span class="o">-</span><span class="mi">23</span><span class="n">T12</span><span class="p">:</span><span class="mi">53</span><span class="p">:</span><span class="mf">06.752343449</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">02</span><span class="o">-</span><span class="mi">23</span><span class="n">T12</span><span class="p">:</span><span class="mi">53</span><span class="p">:</span><span class="mf">06.752343449</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">02</span><span class="o">-</span><span class="mi">23</span><span class="n">T12</span><span class="p">:</span><span class="mi">53</span><span class="p">:</span><span class="mf">06.752343449</span> <span class="o">|</span>
-<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">02</span><span class="o">-</span><span class="mi">23</span><span class="n">T12</span><span class="p">:</span><span class="mi">53</span><span class="p">:</span><span class="mf">06.752343449</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">12</span><span class="n">T09</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mf">53.757149654</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">12</span><span class="n">T09</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mf">53.757149654</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">12</span><span class="n">T09</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mf">53.757149654</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">12</span><span class="n">T09</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mf">53.757149654</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">12</span><span class="n">T09</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mf">53.757149654</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">12</span><span class="n">T09</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mf">53.757149654</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">12</span><span class="n">T09</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mf">53.757149654</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">12</span><span class="n">T09</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mf">53.757149654</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">12</span><span class="n">T09</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mf">53.757149654</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2026</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">12</span><span class="n">T09</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mf">53.757149654</span> <span class="o">|</span>
<span class="o">+-------------------------------+</span>
<span class="n">Data</span> <span class="n">truncated</span><span class="o">.</span>
</pre></div>
diff --git a/user-guide/introduction.html b/user-guide/introduction.html
index 439c369f..00a760dd 100644
--- a/user-guide/introduction.html
+++ b/user-guide/introduction.html
@@ -457,7 +457,7 @@ DataFusion through various examples and highlight the most effective ways of usi
<div class="highlight-ipython notranslate"><div class="highlight"><pre><span></span><span class="n">In</span> <span class="p">[</span><span class="mi">1</span><span class="p">]:</span> <span class="kn">import</span><span class="w"> </span><span class="nn">datafusion</span>
<span class="n">In</span> <span class="p">[</span><span class="mi">2</span><span class="p">]:</span> <span class="n">datafusion</span><span class="o">.</span><span class="n">__version__</span>
-<span class="n">Out</span><span class="p">[</span><span class="mi">2</span><span class="p">]:</span> <span class="s1">'52.0.0'</span>
+<span class="n">Out</span><span class="p">[</span><span class="mi">2</span><span class="p">]:</span> <span class="s1">'52.3.0'</span>
</pre></div>
</div>
<p>In this documentation we will also show some examples for how DataFusion integrates
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datafusion.apache.org
For additional commands, e-mail: commits-help@datafusion.apache.org