Spec-Zone.ru › Polars

polars.Expr.cut

Expr.cut(
    breaks: Sequence[float],
    *,
    labels: Sequence[str_] | None = None,
    left_closed: bool = False,
    include_breaks: bool = False,
) → Expr

Разбивает непрерывные значения на дискретные категории.

движок:В памяти

Предупреждение

Эта функциональность считается нестабильной. Она может быть изменена в любой момент, и это не будет считаться нарушением обратной совместимости.

Параметры:
breaks

Список уникальных точек разбиения.

labels

Названия категорий. Число меток должно быть равно числу точек разбиения плюс один.

left_closed

Задаёт интервалы с включённой левой границей вместо правой.

include_breaks

Добавляет столбец с правой границей интервала, в который попадает каждое наблюдение. Это изменит тип данных результата с Enum на Struct.

Возвращает:
Expr

Выражение типа данных Enum, если для include_breaks задано значение False (по умолчанию); в противном случае — выражение типа данных Struct.

См. также

qcut

Примеры

Разделите столбец на три категории.

>>> df = pl.DataFrame({"foo": [-2, -1, 0, 1, 2]})
>>> df.with_columns(
...     pl.col("foo").cut([-1, 1], labels=["a", "b", "c"]).alias("cut")
... )
shape: (5, 2)
┌─────┬──────┐
│ foo ┆ cut  │
│ --- ┆ ---  │
│ i64 ┆ enum │
╞═════╪══════╡
│ -2  ┆ a    │
│ -1  ┆ a    │
│ 0   ┆ b    │
│ 1   ┆ b    │
│ 2   ┆ c    │
└─────┴──────┘

Добавьте категорию и точку разбиения.

>>> df.with_columns(
...     pl.col("foo").cut([-1, 1], include_breaks=True).alias("cut")
... ).unnest("cut")
shape: (5, 3)
┌─────┬────────────┬────────────┐
│ foo ┆ breakpoint ┆ category   │
│ --- ┆ ---        ┆ ---        │
│ i64 ┆ f64        ┆ enum       │
╞═════╪════════════╪════════════╡
│ -2  ┆ -1.0       ┆ (-inf, -1] │
│ -1  ┆ -1.0       ┆ (-inf, -1] │
│ 0   ┆ 1.0        ┆ (-1, 1]    │
│ 1   ┆ 1.0        ┆ (-1, 1]    │
│ 2   ┆ inf        ┆ (1, inf]   │
└─────┴────────────┴────────────┘

© 2020 Ritchie Vink
© 2022 Polars contributors
Licensed under the MIT License.
https://docs.pola.rs/api/python/stable/reference/expressions/api/polars.Expr.cut.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API