code: def test_shift_and_fill() -> None:
      ldf = pl.LazyFrame({"a": [1, 2, 3, 4, 5], "b": [1, 2, 3, 4, 5]})
  
      # use exprs
      out = ldf.with_columns(
          pl.col("a").shift(n=-2, fill_value=pl.col("b").mean())
      ).collect()
      assert out["a"].null_count() == 0
  
      # use df method
      out = ldf.shift(n=2, fill_value=pl.col("b").std()).collect()
      assert out["a"].null_count() == 0
  
file_path: polars/py-polars/tests/unit/operations/test_shift.py
imports: from __future__ import annotations
  from datetime import date
  import pytest
  import polars
  from polars.testing import assert_frame_equal, assert_series_equal
label_desc: Use image node_id 3 for calling a global function with example usage: test_shift_and_fill() without return types