Path: blob/main/py-polars/tests/unit/functions/test_horizontal.py
6939 views
import pytest12import polars as pl345@pytest.mark.parametrize(6"f",7[8"min",9"max",10"sum",11"mean",12],13)14def test_shape_mismatch_19336(f: str) -> None:15a = pl.Series([1, 2, 3])16b = pl.Series([1, 2])17fn = getattr(pl, f"{f}_horizontal")1819with pytest.raises(pl.exceptions.ShapeError):20pl.select((fn)(a, b))212223def test_fold_reduce_output_dtype_24011() -> None:24df = pl.DataFrame(25{26"x": [0, 1, 2],27"y": [1.1, 2.2, 3.3],28}29)3031def f(acc: pl.Series, x: pl.Series) -> pl.Series:32return acc + x3334q = df.lazy().select(35fold=pl.fold(acc=pl.lit(0), function=f, exprs=pl.col("*")),36reduce=pl.reduce(function=f, exprs=pl.col("*")),37cum_fold=pl.cum_fold(acc=pl.lit(0), function=f, exprs=pl.col("*")),38cum_reduce=pl.cum_reduce(function=f, exprs=pl.col("*")),39)4041assert q.collect_schema() == q.collect().schema424344