σ
    ώφhθ  γ                  σ    S SK Jr  S SKJr  S SKJr  \(       a  S SKJr  SS.SS jjr	SS.SS jjr
SS	 jrSS
 jrSS jrSS jrg)ι    )Ϊannotations)ΪTYPE_CHECKINGN)ΪExprT©Ϊignore_nullsc                σ|    U(       d  [         R                  " S5      $ [         R                  " U6 R                  U S9$ )uM  
Either return an expression representing all columns, or evaluate a bitwise AND operation.

If no arguments are passed, this function is syntactic sugar for `col("*")`.
Otherwise, this function is syntactic sugar for `col(names).all()`.

Parameters
----------
*names
    Name(s) of the columns to use in the aggregation.
ignore_nulls

    * If set to `True` (default), null values are ignored. If there
      are no non-null values, the output is `True`.
    * If set to `False`, `Kleene logic`_ is used to deal with nulls:
      if the column contains any null values and no `False` values,
      the output is null.

    .. _Kleene logic: https://en.wikipedia.org/wiki/Three-valued_logic

See Also
--------
all_horizontal

Examples
--------
Selecting all columns.

>>> df = pl.DataFrame(
...     {
...         "a": [True, False, True],
...         "b": [False, False, False],
...     }
... )
>>> df.select(pl.all().sum())
shape: (1, 2)
βββββββ¬ββββββ
β a   β b   β
β --- β --- β
β u32 β u32 β
βββββββͺββββββ‘
β 2   β 0   β
βββββββ΄ββββββ

Evaluate bitwise AND for a column.

>>> df.select(pl.all("a"))
shape: (1, 1)
βββββββββ
β a     β
β ---   β
β bool  β
βββββββββ‘
β false β
βββββββββ
Ϊ*r   )ΪFΪcolΪall©r   Ϊnamess     Ϊ_/home/james-whalen/.local/lib/python3.13/site-packages/polars/functions/aggregation/vertical.pyr   r      s2    φr άuuSzΠδ55%=ΧΡ¨,ΠΠ7Π7σ    c                σB    [         R                  " U6 R                  U S9$ )ul  
Evaluate a bitwise OR operation.

Syntactic sugar for `col(names).any()`.

See Also
--------
any_horizontal

Parameters
----------
*names
    Name(s) of the columns to use in the aggregation.
ignore_nulls

    * If set to `True` (default), null values are ignored. If there
      are no non-null values, the output is `False`.
    * If set to `False`, `Kleene logic`_ is used to deal with nulls:
      if the column contains any null values and no `True` values,
      the output is null.

    .. _Kleene logic: https://en.wikipedia.org/wiki/Three-valued_logic

Examples
--------
>>> df = pl.DataFrame(
...     {
...         "a": [True, False, True],
...         "b": [False, False, False],
...     }
... )
>>> df.select(pl.any("a"))
shape: (1, 1)
ββββββββ
β a    β
β ---  β
β bool β
ββββββββ‘
β true β
ββββββββ
r   )r
   r   Ϊanyr   s     r   r   r   J   s!    τT 55%=ΧΡ¨,ΠΠ7Π7r   c                 σD    [         R                  " U 6 R                  5       $ )u2  
Get the maximum value.

Syntactic sugar for `col(names).max()`.

Parameters
----------
*names
    Name(s) of the columns to use in the aggregation.

See Also
--------
max_horizontal

Examples
--------
Get the maximum value of a column.

>>> df = pl.DataFrame(
...     {
...         "a": [1, 8, 3],
...         "b": [4, 5, 2],
...         "c": ["foo", "bar", "foo"],
...     }
... )
>>> df.select(pl.max("a"))
shape: (1, 1)
βββββββ
β a   β
β --- β
β i64 β
βββββββ‘
β 8   β
βββββββ

Get the maximum value of multiple columns.

>>> df.select(pl.max("^a|b$"))
shape: (1, 2)
βββββββ¬ββββββ
β a   β b   β
β --- β --- β
β i64 β i64 β
βββββββͺββββββ‘
β 8   β 5   β
βββββββ΄ββββββ
>>> df.select(pl.max("a", "b"))
shape: (1, 2)
βββββββ¬ββββββ
β a   β b   β
β --- β --- β
β i64 β i64 β
βββββββͺββββββ‘
β 8   β 5   β
βββββββ΄ββββββ
)r
   r   Ϊmax©r   s    r   r   r   w   σ    τr 55%=ΧΡΣΠr   c                 σD    [         R                  " U 6 R                  5       $ )u2  
Get the minimum value.

Syntactic sugar for `col(names).min()`.

Parameters
----------
*names
    Name(s) of the columns to use in the aggregation.

See Also
--------
min_horizontal

Examples
--------
Get the minimum value of a column.

>>> df = pl.DataFrame(
...     {
...         "a": [1, 8, 3],
...         "b": [4, 5, 2],
...         "c": ["foo", "bar", "foo"],
...     }
... )
>>> df.select(pl.min("a"))
shape: (1, 1)
βββββββ
β a   β
β --- β
β i64 β
βββββββ‘
β 1   β
βββββββ

Get the minimum value of multiple columns.

>>> df.select(pl.min("^a|b$"))
shape: (1, 2)
βββββββ¬ββββββ
β a   β b   β
β --- β --- β
β i64 β i64 β
βββββββͺββββββ‘
β 1   β 2   β
βββββββ΄ββββββ
>>> df.select(pl.min("a", "b"))
shape: (1, 2)
βββββββ¬ββββββ
β a   β b   β
β --- β --- β
β i64 β i64 β
βββββββͺββββββ‘
β 1   β 2   β
βββββββ΄ββββββ
)r
   r   Ϊminr   s    r   r   r   ³   r   r   c                 σD    [         R                  " U 6 R                  5       $ )uΑ  
Sum all values.

Syntactic sugar for `col(name).sum()`.

Parameters
----------
*names
    Name(s) of the columns to use in the aggregation.

Notes
-----
If there are no non-null values, then the output is `0`.
If you would prefer empty sums to return `None`, you can
use `pl.when(pl.col(name).count()>0).then(pl.sum(name))` instead
of `pl.sum(name)`.

See Also
--------
sum_horizontal

Examples
--------
Sum a column.

>>> df = pl.DataFrame(
...     {
...         "a": [1, 2],
...         "b": [3, 4],
...         "c": [5, 6],
...     }
... )
>>> df.select(pl.sum("a"))
shape: (1, 1)
βββββββ
β a   β
β --- β
β i64 β
βββββββ‘
β 3   β
βββββββ

Sum multiple columns.

>>> df.select(pl.sum("a", "c"))
shape: (1, 2)
βββββββ¬ββββββ
β a   β c   β
β --- β --- β
β i64 β i64 β
βββββββͺββββββ‘
β 3   β 11  β
βββββββ΄ββββββ
>>> df.select(pl.sum("^.*[bc]$"))
shape: (1, 2)
βββββββ¬ββββββ
β b   β c   β
β --- β --- β
β i64 β i64 β
βββββββͺββββββ‘
β 7   β 11  β
βββββββ΄ββββββ
)r
   r   Ϊsumr   s    r   r   r   ο   s    τ@ 55%=ΧΡΣΠr   c                 σD    [         R                  " U 6 R                  5       $ )uχ  
Cumulatively sum all values.

Syntactic sugar for `col(names).cum_sum()`.

Parameters
----------
*names
    Name(s) of the columns to use in the aggregation.

See Also
--------
cumsum_horizontal

Examples
--------
>>> df = pl.DataFrame(
...     {
...         "a": [1, 2, 3],
...         "b": [4, 5, 6],
...     }
... )
>>> df.select(pl.cum_sum("a"))
shape: (3, 1)
βββββββ
β a   β
β --- β
β i64 β
βββββββ‘
β 1   β
β 3   β
β 6   β
βββββββ
)r
   r   Ϊcum_sumr   s    r   r   r   2  s    τF 55%=Χ Ρ Σ"Π"r   )r   Ϊstrr   ΪboolΪreturnr   )r   r   r   r   r   zExpr | bool | None)r   r   r   r   )Ϊ
__future__r   Ϊtypingr   Ϊpolars.functionsΪ	functionsr
   Ϊpolarsr   r   r   r   r   r   r   © r   r   Ϊ<module>r&      sB   πέ "ε  ε ζέπ +/χ <8π~ +/χ *8τZ9τx9τx@υF##r   