polars.Expr.shift
-
Сдвигает значения на указанное количество индексов.
- Параметры:
-
- n
-
Количество индексов для сдвига вперёд. Если передано отрицательное значение, значения сдвигаются в противоположном направлении.
- fill_value
-
Заполнить получившиеся значения null этим скалярным значением.
См. также
Примечания
Этот метод аналогичен операции
LAGв SQL, если значениеnположительно. При отрицательном значенииnон аналогиченLEAD.Примеры
По умолчанию значения сдвигаются вперёд на один индекс.
>>> df = pl.DataFrame({"a": [1, 2, 3, 4]}) >>> df.with_columns(shift=pl.col("a").shift()) shape: (4, 2) ┌─────┬───────┐ │ a ┆ shift │ │ --- ┆ --- │ │ i64 ┆ i64 │ ╞═════╪═══════╡ │ 1 ┆ null │ │ 2 ┆ 1 │ │ 3 ┆ 2 │ │ 4 ┆ 3 │ └─────┴───────┘Передайте отрицательное значение, чтобы сдвинуть значения в противоположном направлении.
>>> df.with_columns(shift=pl.col("a").shift(-2)) shape: (4, 2) ┌─────┬───────┐ │ a ┆ shift │ │ --- ┆ --- │ │ i64 ┆ i64 │ ╞═════╪═══════╡ │ 1 ┆ 3 │ │ 2 ┆ 4 │ │ 3 ┆ null │ │ 4 ┆ null │ └─────┴───────┘Укажите
fill_value, чтобы заполнить получившиеся значения null.>>> df.with_columns(shift=pl.col("a").shift(-2, fill_value=100)) shape: (4, 2) ┌─────┬───────┐ │ a ┆ shift │ │ --- ┆ --- │ │ i64 ┆ i64 │ ╞═════╪═══════╡ │ 1 ┆ 3 │ │ 2 ┆ 4 │ │ 3 ┆ 100 │ │ 4 ┆ 100 │ └─────┴───────┘
Expr.shift(
n: int | IntoExprColumn = 1,
*,
fill_value: IntoExpr | None = None,
) → Expr
© 2020 Ritchie Vink
© 2022 Polars contributors
Licensed under the MIT License.
https://docs.pola.rs/api/python/stable/reference/expressions/api/polars.Expr.shift.html